diff --git a/H5LiveClient.cpp b/H5LiveClient.cpp index 2529d003..49f959c0 100644 --- a/H5LiveClient.cpp +++ b/H5LiveClient.cpp @@ -54,8 +54,7 @@ struct H5LCBase { val::global("clearTimeout")(videoTimeoutId); emscripten_log(0, "FlvDecoder release!\n"); - if (videoDecoder) - delete videoDecoder; + if (audioDecoder) delete audioDecoder; } @@ -108,14 +107,15 @@ struct H5LCBase unsigned int timestamp = buffer.readUInt24B(); u8 ext = buffer.readu8(); buffer.readUInt24B(); - MemoryStream ms(buffer.readString(length)); + MemoryStream ms; + ms << buffer.readString(length); switch (type) { case 0x08: - decodeAudio(timestamp, ms); + decodeAudio(timestamp, move(ms)); break; case 0x09: - decodeVideo(timestamp, ms); + decodeVideo(timestamp, move(ms)); break; } length = buffer.readUInt32B(); @@ -130,13 +130,13 @@ struct H5LCBase case 1: { MemoryStream ms(data.substr(1)); - decodeAudio(ms.readUInt32B(), ms); + decodeAudio(ms.readUInt32B(), move(ms)); } break; case 2: { MemoryStream ms(data.substr(1)); - decodeVideo(ms.readUInt32B(), ms); + decodeVideo(ms.readUInt32B(), move(ms)); } break; default: @@ -145,7 +145,7 @@ struct H5LCBase } } } - void decodeAudio(clock_t timestamp, MemoryStream &ms) + void decodeAudio(clock_t timestamp, MemoryStream &&ms) { unsigned char flag = 0; ms.readB<1>(flag); @@ -191,10 +191,8 @@ struct H5LCBase audioDecoder = new AudioDecoder(frameCount * channels * 2); call("initAudio", frameCount, samplerate, channels, (int)audioDecoder->outputBuffer >> 1); } - void decodeVideo(clock_t _timestamp, MemoryStream &data) + void decodeVideo(clock_t _timestamp, MemoryStream &&data) { - if (videoDecoder == nullptr) - return; if (waitFirstVideo) { u8 frame_type = data[0]; @@ -224,15 +222,19 @@ struct H5LCBase else { data >>= 5; - if (videoBuffer && checkTimeout(_timestamp)) + if (videoBuffer && (bufferIsPlaying || checkTimeout(_timestamp))) { - videoBuffers.emplace(_timestamp, move(data)); + videoBuffers.emplace(_timestamp, forward(data)); + // emscripten_log(0, "push timestamp:%d", _timestamp); // auto &&info = val::object(); // info.set("code", "NetStream.Play.Start"); // call("onNetStatus", info); } else + { + // emscripten_log(0, "play timestamp:%d", _timestamp); videoDecoder->decode(data); + } } } void decodeVideoBuffer() @@ -243,6 +245,7 @@ struct H5LCBase auto &v = videoBuffers.front(); if (check && checkTimeout(v.timestamp)) return; + // emscripten_log(0, "play timestamp:%d", v.timestamp); videoDecoder->decode(v.data); videoBuffers.pop(); check = true; @@ -253,7 +256,7 @@ struct H5LCBase { auto timeout = getTimespan(timestamp); bool isTimeout = timeout > 0; - if (isTimeout && !bufferIsPlaying) + if (isTimeout) { bufferIsPlaying = true; videoTimeoutId = call("playVideoBuffer", timeout); @@ -262,17 +265,17 @@ struct H5LCBase } clock_t getTimespan(clock_t t) { - return call("timespan",t) + videoBuffer * 1000; + return call("timespan", t) + videoBuffer * 1000; } void $close() { val::global("clearTimeout")(videoTimeoutId); - while (!videoBuffers.empty()) - { - videoBuffers.pop(); - } - if (videoDecoder) - videoDecoder->clear(); + videoBuffers = queue(); + // while (!videoBuffers.empty()) + // { + // videoBuffers.pop(); + // } + videoDecoder->clear(); if (audioDecoder) audioDecoder->clear(); videoTimeoutId = 0; diff --git a/H5LiveClient.js b/H5LiveClient.js index 65f92f9d..7d9f5202 100644 --- a/H5LiveClient.js +++ b/H5LiveClient.js @@ -314,6 +314,7 @@ mergeInto(LibraryManager.library, { _this.decodeVideoBuffer(); } this.playVideoBuffer = function(t) { + // console.log("setTimeout:", t); return setTimeout(playVideo, t, this) } }, diff --git a/MemoryStream.h b/MemoryStream.h index 85ac1814..dad51fd2 100644 --- a/MemoryStream.h +++ b/MemoryStream.h @@ -49,7 +49,7 @@ class MemoryStream } return *this; } - MemoryStream(string &&right) : data(move(right)), offset(0) + MemoryStream(string &&right) : data(forward(right)), offset(0) { } MemoryStream(string &right) : data(move(right)), offset(0) diff --git a/ffmpeg.h b/ffmpeg.h index 1e023e06..273bdd92 100644 --- a/ffmpeg.h +++ b/ffmpeg.h @@ -1,5 +1,6 @@ #pragma once -extern "C" { +extern "C" +{ #include } @@ -11,7 +12,6 @@ class FFmpeg : public VideoDecoder AVCodecContext *dec_ctx = NULL; AVFrame *frame; AVPacket *pkt; - MemoryStream extradata; FFmpeg() : pkt(av_packet_alloc()), frame(av_frame_alloc()) { emscripten_log(0, "FFMpeg init"); @@ -19,48 +19,32 @@ class FFmpeg : public VideoDecoder ~FFmpeg() { emscripten_log(0, "FFMpeg destory"); - av_parser_close(parser); - avcodec_free_context(&dec_ctx); + clear(); av_frame_free(&frame); av_packet_free(&pkt); } - void clear() override{ + void clear() override + { VideoDecoder::clear(); - extradata.clear(); - av_parser_close(parser); - avcodec_free_context(&dec_ctx); + av_parser_close(parser); + free(dec_ctx->extradata); + avcodec_free_context(&dec_ctx); } void decodeHeader(MemoryStream &data, int codec_id) override { codec = avcodec_find_decoder(codec_id == 7 ? AV_CODEC_ID_H264 : AV_CODEC_ID_H265); - emscripten_log(0, "codec = %d,ptr = %d", codec_id,codec); + emscripten_log(0, "codec = %d,ptr = %d", codec_id, codec); parser = av_parser_init(codec->id); dec_ctx = avcodec_alloc_context3(codec); if (codec_id == 7) { - u8 lengthSizeMinusOne = data[9]; - lengthSizeMinusOne &= 0x03; - NAL_unit_length = lengthSizeMinusOne; data >>= 5; - extradata << data; - extradata.consoleHex(); - extradata.offset = data.offset; - dec_ctx->extradata = (u8 *)(const u8 *)extradata; - dec_ctx->extradata_size = extradata.length(); + //dec_ctx->extradata = (u8 *)(const u8 *)data; + dec_ctx->extradata_size = data.length(); + dec_ctx->extradata = (u8 *)malloc(dec_ctx->extradata_size); + memcpy( dec_ctx->extradata,(const u8 *)data,dec_ctx->extradata_size); auto ret = avcodec_open2(dec_ctx, codec, NULL); - emscripten_log(0, "avcodec_open2:%d",ret); - // int spsLen = 0; - // int ppsLen = 0; - // data.read2B(spsLen); - // if (spsLen > 0) { - // _decode((const char*)data,spsLen); - // data >>= spsLen; - // } - // data >>= 1; - // data.read2B(ppsLen); - // if (ppsLen > 0) { - // _decode((const char*)data,ppsLen); - // } + emscripten_log(0, "avcodec_open2:%d", ret); } else { @@ -86,7 +70,7 @@ class FFmpeg : public VideoDecoder _decode((const char *)data, data.length()); } void _decode(const char *data, int len) override - { + { //emscripten_log(0, "len:%d", len); int ret = av_parser_parse2(parser, dec_ctx, &pkt->data, &pkt->size, (const u8 *)(data), len, AV_NOPTS_VALUE, AV_NOPTS_VALUE, 0); if (ret >= 0 && pkt->size) @@ -100,12 +84,14 @@ class FFmpeg : public VideoDecoder p_yuv[0] = (u32)frame->data[0]; p_yuv[1] = (u32)frame->data[1]; p_yuv[2] = (u32)frame->data[2]; - if (videoWidth != frame->width || videoHeight!= frame->height) + if (videoWidth != frame->width || videoHeight != frame->height) decodeVideoSize(frame->width, frame->height); decodeYUV420(); } - }else{ - emscripten_log(0,"ffmpeg decode ret:%d",ret); + } + else + { + emscripten_log(0, "ffmpeg decode ret:%d", ret); } } }; diff --git a/h5lc.py b/h5lc.py index 99f84cf4..8b34a871 100644 --- a/h5lc.py +++ b/h5lc.py @@ -36,9 +36,9 @@ emcc_args = [ '-IBroadway', '-I.', #'-I../libid3tag', '-Iffmpeg/include', - # '-DUSE_MP3', + '-DUSE_MP3', #'-DUSE_LIBDE265', - '-DUSE_AAC', + # '-DUSE_AAC', '-DUSE_FFMPEG', '--js-library', 'H5LiveClient.js' ] diff --git a/js/FlvClient.js b/js/FlvClient.js index 8ed6fdab..73a11014 100644 --- a/js/FlvClient.js +++ b/js/FlvClient.js @@ -1,23 +1,23 @@ -var Module=typeof Module!=="undefined"?Module:{};((function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.WebGLCanvas=factory()}}))(this,(function(){function H264bsdCanvas(canvas,forceNoGL,contextOptions){this.canvasElement=canvas;this.contextOptions=contextOptions;if(!forceNoGL)this.initContextGL();if(this.contextGL){this.initProgram();this.initBuffers();this.initTextures()}}H264bsdCanvas.prototype.isWebGL=(function(){return this.contextGL});H264bsdCanvas.prototype.initContextGL=(function(){var canvas=this.canvasElement;var gl=null;var validContextNames=["webgl","experimental-webgl","moz-webgl","webkit-3d"];var nameIndex=0;while(!gl&&nameIndex1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){Module["printErr"]("node.js exiting due to unhandled promise rejection");process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};Module["setWindowTitle"]=(function(title){document.title=title})}else{throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)")}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;stackSave=stackRestore=stackAlloc=setTempRet0=getTempRet0=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){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(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function makeBigInt(low,high,unsigned){return unsigned?+(low>>>0)+ +(high>>>0)*4294967296:+(low>>>0)+ +(high|0)*4294967296}function dynCall(sig,ptr,args){if(args&&args.length){assert(args.length==sig.length-1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{assert(sig.length==1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}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 allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval((function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;Module.printErr("still waiting on run dependencies:")}Module.printErr("dependency: "+dep)}if(shown){Module.printErr("(end of list)")}}),1e4)}}else{Module.printErr("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{Module.printErr("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var ASM_CONSTS=[(function($0){return(new Date).getTime()}),(function($0){clearTimeout($0)})];function _emscripten_asm_const_ii(code,a0){return ASM_CONSTS[code](a0)}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+263552;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_FlvClient_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})},{func:(function(){___emscripten_environ_constructor()})});memoryInitializer="data:application/octet-stream;base64,zKgBAJm+AQB8qQEAWr4BAAAAAAABAAAACAAAAAAAAADMqAEA0L8BAMyoAQCPwAEA9KgBAIfAAQAwAAAAAAAAAMyoAQASwQEAYKkBAGHBAQAAAAAASAAAAGCpAQBtwQEAAQAAAEgAAABp5wEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHHnAQADAQAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeecBAAMAAAAgAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAMAAAABAAAAAAAAAAgAAAACAAAABwAAAAIAAAAAAAAAAwAAAAIAAAAAAAAACAAAAAIAAAAHAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/5wEAAwAAACAAAAAAAAAAAAAAAAMAAAACAAAAAAAAAAgAAAACAAAABwAAAAMAAAAAAAAAAwAAAAEAAAAAAAAACAAAAAIAAAAHAAAAAgAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIXnAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjecBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACV5wEAAwICABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ3nAQADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASXICAAEAAABAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApecBAAAAAACu5wEAAQAAAAQAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALTnAQABAAAABAAAAAAAAAAAAAAAAQAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuucBAAEAAAACAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/5wEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjnAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0ecBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADa5wEAAwEAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLnAQADAgAAAAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAGAAAAAAAAAAAAAAAIAAAABQAAAAcAAAABAAAAAAAAAAYAAAADAAAAAAAAAAgAAAAFAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7OcBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADx5wEAAwAAACQAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAEAAAADAAAAAAAAAAQAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPbnAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOgBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAYAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF6AEAAwAAACQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAEAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAroAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFOgBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ6AEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7oAQAEAAAAoAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAI+gBAAQAAACgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAo6AEABAAAAKAAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAAC3oAQAEAAAAoAAAAAAAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAMugBAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+gBAAAAAABB6AEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABK6AEAAAAAAFDoAQADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWOgBAAMAAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABh6AEABAEBAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAGroAQADAAAAIQAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcugBAAMAAAAgAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAQAAAAAAAAAEAAAAAUAAAAPAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB66AEAAwAAACEAAAAAAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIPoAQADAAAAIAAAAAAAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjOgBAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACV6AEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ7oAQADAAAAIQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp+gBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACw6AEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALnoAQADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwugBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADN6AEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANjoAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ugBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu6AEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAProAQADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABukBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAS6QEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7pAQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKukBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA06QEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3pAQADAAAAIQAAAAAAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARukBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAEAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABP6QEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAA/////wAAAAAEAAAAAQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFjpAQACAAAAgAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzpAQAAAAAAY+kBAAMAAAAhAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABr6QEAAwAAACAAAAAAAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHPpAQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfukBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJ6QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJXpAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoekBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACt6QEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALnpAQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxOkBAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADP6QEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANvpAQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5+kBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADy6QEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP3pAQADAAAAMAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuoBAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6gEAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABLqAQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG+oBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk6gEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3qAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANuoBAAQBAACQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAA/6gEABAAAAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAEjqAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAVOoBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAABg6gEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAGzqAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAeOoBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACE6gEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAJDqAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAneoBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAACq6gEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAALfqAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAxOoBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADR6gEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAN7qAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAA6+oBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAD46gEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAXrAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAEusBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAf6wEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAACzrAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMusBAAMAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAQAAAAMAAAABQAAAAsAAAABAAAAAAAAAAYAAAACAAAABAAAAAwAAAAFAAAACwAAAAMAAAAAAAAABgAAAAQAAAAEAAAADAAAAAUAAAALAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA66wEAAwAAAAEAAAAAAAAAAAAAAAYAAAAAAAAABAAAAAwAAAAFAAAACwAAAAEAAAAAAAAABgAAAAIAAAAEAAAADAAAAAUAAAALAAAAAwAAAAAAAAAGAAAABAAAAAQAAAAMAAAABQAAAAsAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAELrAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR+sBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAAAAAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAAAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABO6wEAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAAAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFXrAQAEAAAAoQAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAXusBAAQAAACgAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAABn6wEABAAAAKEAAAAAAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAHDrAQAEAAAAoAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAeesBAAMBAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACB6wEAAgAAAIEAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIjrAQACAAAAgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj+sBAAQAAACwAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAACV6wEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAJ/rAQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAqesBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACt6wEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALLrAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvusBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADD6wEAAwAAACAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjrAQADAAAAIAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzesBAAMAAAAgAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADS6wEAAwAAACAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANfrAQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4+sBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADv6wEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPvrAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+wBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT7AEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/sAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK+wBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA37AEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEPsAQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT+wBAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABb7AEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGfsAQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcOwBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB57AEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAILsAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAi+wBAAMCAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACU7AEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKDsAQADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArOwBAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC47AEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMTsAQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0+wBAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADi7AEAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPHsAQADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO0BAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7QEAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7tAQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALe0BAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA87QEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHtAQADAAEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATe0BAAMAAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABZ7QEAAwABABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGXtAQADAAEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAce0BAAQAAACAAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAAAAAB67QEABAAAAIEAAAAAAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAAAAAAAIPtAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlO0BAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAABgAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAGAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACb7QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAABgAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAGAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAYAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKLtAQAEAAAAsQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAADAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAArO0BAAQAAACwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAC27QEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAMDtAQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAyu0BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADV7QEAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADe7QEAAAAAAOTtAQABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO3tAQAAAAAA8+0BAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/O0BAAAAAAAC7gEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7gEAAAAAABHuAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAQAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGO4BAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAABAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf7gEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXuAQABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3uAQAAAAAAMu4BAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOu4BAAAAAAA/7gEAAwAAADECAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEnuAQADAAAAMAIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAQAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU+4BAAQAAACxAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAMAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAABe7gEABAAAALACAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAwAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAGnuAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc+4BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFTAIATEwCAJxpAAASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA/AAAAAAAAAABTTAIAU0wCAKBpAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBAAAAAAAAAAABjTAIAbUwCAOhzAAASAAAA//////////8AAAAAAADwvwAAAAAAAPA/EgAAAAAAAACgTAIAq0wCAGhkAAABAAAA//////////8AAAAAAADwvwAAwP///99BEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADnYAIAAQAAAAQAAAAAAAAA7GACAAIAAAADAAAAAAAAAPNgAgADAAAACwAAAAAAAAD3YAIAAwAAAAcAAAAAAAAA+2ACAAMAAAADAQAAAAAAAAVhAgAEAAAABwEAAAAAAAAJYQIABAAAADMAAAAAAAAADmECAAQAAAADBgAAAAAAABlhAgAEAAAADwAAAAAAAAAdYQIABQAAADcAAAAAAAAAIWECAAUAAAAHBgAAAAAAACthAgAFAAAADwEAAAAAAAAvYQIABgAAAD8AAAAAAAAAM2ECAAYAAAAPBgAAAAAAAD1hAgAGAAAABwcAAAAAAABBYQIABgAAAMMGAAAAAAAATGECAAYAAAA3AQAAAAAAAFZhAgAHAAAADwcAAAAAAABaYQIABwAAAD8BAAAAAAAAZGECAAcAAADLBgAAAAAAAG9hAgAHAAAANwYAAAAAAABzYQIABwAAAMcGAAAAAAAAfmECAAgAAAA/BgAAAAAAAIJhAgAIAAAA/wAAAAAAAACMYQIACAAAAM8GAAAAAAAAm2ECAAgAAAA3BwAAAAAAAKVhAgAQAAAAN/cDgAEAAACzYQIAAgAAAAAAAGAAAAAAvmMCAAAAAABpVxSLCr8FQMBjAgAAAAAAGC1EVPshCUDDYwIAAAAAAKj0l5t34/k/x2MCAAAAAAAAAAAAAIBdQAAAAAAAALBDAMhOZ23Bq0MSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANBBAAAAAGXNzUEJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJBAAAAAAABAj0ADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBBAAAAAICELkEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBDAAA0JvVrDEMPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHBCAAAAopQabUIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBEtJ3ZeUN46kQYAAAAAAAAAAAAAAAAAFBEUO/i1uQaS0QVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA8rEPS0V1yMjzuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIpyjfmiKIQ/exSuR+F6hD/+AAAAAAAAADxuPaX+Zbk/mpmZmZmZuT//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANA8Flbnnq8D0jzxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5uPaX+ZVlAAAAAAAAAWUACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJBAAAAAAABAj0ADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFA//Knx0k1iUD/9AAAAAAAAAAAAAAAAABA+ldYm6AsuET73AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHA9EeotgZmXcT30AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALA+je21oPfGsD76AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPA6p46omcJX8zroAAAAAAAAAAAAAAAAAJA7T5sOCrTjkjvrAAAAAAAAAOBvAgDibwIAKAAAAAIAAABADQMAAAAAAAAAAAAAAAAAAAAAAAAA4EMZAAAAAAAAAPpvAgDibwIAKAAAAAIAAAAA9AEAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAP1vAgAAcAIAMAAAAAEAAAAACT0AAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAABRxAgAAAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70E7AAAAFHECABpxAgAkcQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFHECAE9xAgBTcQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAINxAgCIcQIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAKhxAgCtcQIAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAL1xAgDEcQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAFHECANVxAgDbcQIAAAAAAAoAAAAAAgAAAAAAAAAAAAAAAODBAADA////30EAAAAAFHECAA9yAgAVcgIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30EAAAAAFHECAElyAgBOcgIAAAAAAAoAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ETAAAAFHECAGtyAgBwcgIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAJ9yAgCpcgIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAFHECANVyAgDbcgIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAO5yAgD4cgIAAAAAAAoAAAAAAAgAAAAAAAAAAAAAAODBAADA////30ETAAAAFHECAAhzAgAWcwIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30EZAAAAFHECAFJzAgBbcwIAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30E7AAAAFHECAIdzAgCLcwIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAL5zAgDDcwIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAOBzAgDlcwIAAAAAAAoAAAAAAACAAAAAAAAAAAAAAODBAADA////30ERAAAAFHECAPBzAgD/cwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFHECACh0AgAtdAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVXQCAFx0AgBidAIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVXQCAHp0AgCFdAIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAVXQCAKp0AgC3dAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAVXQCAPZ0AgD9dAIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAVXQCACx1AgA0dQIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30ESAAAAVXQCAF51AgBpdQIAAAAAAAoAAAAAAAAQAAAAAAAAAAAAAODBAADA////30ESAAAAVXQCAJd1AgCjdQIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ESAAAAVXQCAOZ1AgD4dQIAAAAAAAoAAAAAAABAAAAAAAAAAAAAAODBAADA////30EiAAAAVXQCACJ2AgAAAAAATAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAACx2AgAudgIAbAAAAAEAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFJ2AgBVdgIAWAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAAHV2AgB4dgIAXAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAAJV2AgCcdgIAcAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAAAAAALF2AgAAAAAAZAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAALx2AgAAAAAAaAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAMl2AgAAAAAAWAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAM92AgDVdgIAmAEAAAQAAAAAAAAAAADgPwAAAOD//+/HAAAA4P//70cRAAAAAAAAAE13AgBTdwIAnAEAAAQAAAAAAAAAAADgPwAAAAAAAPC/AAAA4P//70cRAAAAAAAAAHR3AgB5dwIAoAEAAAEAAAACAAAAAAAAAAAAAAAAAPC/AAAAAABAUUARAAAAAAAAAJ13AgCidwIApAEAAAEAAAAfAAAAAAAAAAAAAAAAAPC/AAAAAAAAkEARAAAAAAAAAMZ3AgDMdwIAqAEAAAEAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAAJ4AgAFeAIAfAAAAAEAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30ERAAAAAAAAADl4AgBDeAIAgAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAGV4AgBweAIAhAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJh4AgCbeAIABAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALV4AgAAAAAACAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAL14AgAAAAAADAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAMl4AgAAAAAAEAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAANR4AgAAAAAAFAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAN94AgAAAAAAGAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAOd4AgAAAAAAHAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAO94AgAAAAAAIAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAPp4AgAAAAAAJAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAR5AgAAAAAAKAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAA95AgAAAAAAFAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABl5AgAdeQIANAIAAAAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAEd5AgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAFJ5AgBdeQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAJN5AgCYeQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCALl5AgDEeQIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAN95AgAAAAAAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAON5AgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAO95AgD4eQIAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCACx6AgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCADl6AgBKegIAAAAAAAoAAAAAAgAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAIZ6AgCLegIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAL56AgAAAAAAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAMp6AgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCANJ6AgDVegIAAAAAAAoAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCAA17AgATewIAAAAAAAoAAAAAQAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCACR7AgAAAAAAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAGXkCACp7AgAxewIAOAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAKnsCAFZ7AgBbewIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAKnsCACp7AgCtewIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAKnsCAPx7AgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAKnsCAAN8AgAOfAIAAAAAAAoAAAD//////////wAAAAAAAODBAADA////30EbAAAAKnsCACp8AgA3fAIAAAAAAAoAAAD+/////////wAAAAAAAODBAADA////30EbAAAAKnsCAGJ8AgBsfAIAiAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAI58AgCZfAIARAIAAAAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCALN8AgC8fAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCANF8AgDbfAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAAV9AgAMfQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAC19AgA1fQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAF19AgBofQIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAHZ9AgB+fQIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAOR9AgDufQIAAAAAAAoAAAAAAAIAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCABt+AgAmfgIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30EaAAAAjnwCAGR+AgAAAAAAjAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAHF+AgAAAAAAbAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAH1+AgCIfgIAkAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAK1+AgAAAAAAsAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAL9+AgDHfgIAuAEAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EZAAAAAAAAAAh/AgAQfwIAwAEAAAIAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAHR/AgB8fwIArAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAKJ/AgCsfwIAlAAAAAQAAACamZmZmZnpvwAAAOD//+/HAAAA4P//70cRAAAAAAAAAM5/AgDYfwIAmAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAPp/AgD+fwIAmAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAA+n8CAAyAAgARgAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CACeAAgAvgAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CAM2mAgA8gAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CAE2AAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CAFGAAgAAAAAAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CAFmAAgBegAIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA+n8CAHWAAgB/gAIAnAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAALGAAgC8gAIAoAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAANiAAgDjgAIApAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAP6AAgAFgQIAqAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAABOBAgAdgQIArAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAE2BAgBSgQIAnAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAATYECAAyAAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAM2mAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAG2BAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAHSBAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAH6BAgAAAAAAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAFGAAgAAAAAAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAIKBAgAAAAAAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAIyBAgAAAAAAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAJqBAgAAAAAAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAKaBAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECALGBAgAAAAAAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECALaBAgC+gQIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAOGBAgDngQIAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAP+BAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAATYECAAqCAgAAAAAAsAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABaCAgAZggIAPAIAAAAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFoICADiCAgBCggIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFoICAG2CAgB1ggIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAFoICAJ+CAgCrggIAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAFoICANSCAgAAAAAAoAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAOqCAgDvggIAtAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6oICAAGDAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6oICAAaDAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6oICAAyDAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA6oICABODAgAagwIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAC6DAgAagwIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAADKDAgA4gwIAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30E7AAAAMoMCAFKDAgBXgwIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAGSDAgBngwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAMoMCANF8AgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAHSDAgB8gwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAJGDAgCUgwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCALqDAgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAMSDAgAAAAAAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCANODAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCANiDAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAOKDAgDlgwIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAPeDAgD8gwIAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCACmEAgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAC6EAgA2hAIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAMoMCAFGEAgBchAIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAMoMCAHGEAgB2hAIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30EaAAAAMoMCAI+EAgCThAIAxAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCALmEAgDAhAIAyAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCANyEAgDihAIAzAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAP6EAgAHhQIA0AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCACeFAgAwhQIA1AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFqFAgBkhQIA2AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJiFAgCehQIA3AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALSFAgC7hQIA4AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAOKFAgDmhQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAAiGAgAMhgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCACKGAgAnhgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAPp/AgBYhgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAGtyAgCEhgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCALyGAgDAhgIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAOSGAgDnhgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAAWHAgAKhwIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAAyHAgARhwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCADaHAgA7hwIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAF+HAgBkhwIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAJCHAgAAAAAAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAJeHAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAJ6HAgCjhwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCANGHAgDehwIA5AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAABGIAgAWiAIA6AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAADiIAgBBiAIA7AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHOIAgAAAAAANAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAIKIAgAAAAAA1AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAgogCAIiIAgCMiAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAgogCAHV2AgCyiAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAgogCAMOIAgDHiAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAgogCANmIAgDdiAIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAgogCAO6IAgD2iAIA2AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAASJAgAAAAAA8AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABCJAgAUiQIA9AAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEARAAAAEIkCAG2BAgBGiQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIkCAFCJAgBViQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIkCAOSGAgBliQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIkCAH6JAgCLiQIAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAKKJAgCliQIABAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALWJAgDHiQIA0AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFV0AgAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70EbAAAAVXQCABeKAgAfigIAsAIAAAEAAAABAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAF4oCAAyAAgA5igIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAF4oCAGiKAgBrigIACAEAAAEAAAAAAAAAAAAAAAAAAAAAACDAAAAAAAAAMEARAAAAAAAAAH6KAgCEigIAyAIAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJCKAgCZigIADAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAANCKAgDcigIAEAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAABaLAgAAAAAAzAIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAFosCAB6LAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAAFosCACaLAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAC+LAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCADeLAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAD+LAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAEeLAgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAE6LAgAAAAAAAAAAAAoAAAAcAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAFiLAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAF+LAgAAAAAAAAAAAAoAAAAmAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAGeLAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAHWLAgAAAAAAAAAAAAoAAACDAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAIKLAgAAAAAAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAIaLAgAAAAAAAAAAAAoAAAAeAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAI2LAgAAAAAAAAAAAAoAAAAoAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAJeLAgAAAAAAAAAAAAoAAAAyAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAKKLAgAAAAAAAAAAAAoAAAA8AAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAKyLAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFosCALWLAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFosCAMCLAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFosCAMuLAgAAAAAAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFosCANWLAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAFosCANyLAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFosCAOGLAgAAAAAA0AIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAA4YsCAB6LAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAA4YsCAOeLAgDuiwIAqAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EaAAAAAAAAABmMAgAojAIA3AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAD2MAgBJjAIA4AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAFuMAgBkjAIA5AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHiMAgCAjAIA6AEAAAEAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAsIQCAJyMAgCjjAIAFAEAAAEAAADsAAAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAMyMAgDTjAIAGAEAAAEAAABKDgAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAPyMAgABjQIAHAEAAAEAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAADyNAgBNjQIA1AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAIuNAgCVjQIA2AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAMaNAgDRjQIA3AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAPeNAgD8jQIAAAAAAAoAAADw/////////wAAAAAAAODBAADA////30ESAAAAgY0CAA2OAgAVjgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CACyOAgAyjgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAFOOAgBZjgIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAHqOAgCAjgIAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAKSOAgCsjgIAAAAAAAoAAAAYAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAM+OAgDTjgIAAAAAAAoAAAAwAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAgY0CAOaOAgDzjgIAIAEAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEARAAAAAAAAADOPAgA9jwIAJAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAGuPAgB2jwIAKAEAAAEAAAAZAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJqPAgCfjwIALAEAAAEAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANSPAgDhjwIAMAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAPyPAgAEkAIA7AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAACmQAgAAAAAANAEAAAEAAAAAAQAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAADeQAgBFkAIAOAEAAAEAAAAoAAAAAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAAG6QAgAAAAAAOAAAAAEAAAD//////////wAAAAAAAODBAADA////30EZAAAAAAAAAICQAgAAAAAA8AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAAJWQAgAAAAAA9AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAAKqQAgC/kAIA+AEAAAIAAAD//////////wAAAAAAAPC/AAAAAAAA4EMRAAAAAAAAAPmQAgAAAAAApAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAA2RAgAAAAAAeAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMLAAAADZECAByRAgAAAAAAgAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMKAAAAHJECADORAgAAAAAAyAEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAEKRAgAAAAAAzAEAAAQAAAAAAAAAAAAIQAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAFGRAgAAAAAAVAAAAAEAAAABAAAAAAAAAAAAAAAAAPA/AADA////30EbAAAAAAAAAGGRAgBxkQIAPAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAgZECAJaRAgCckQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAB6LAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAK+RAgC2kQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAL+RAgDHkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECANGRAgDbkQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAOeRAgDxkQIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAP2RAgACkgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAAeSAgAOkgIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECABaSAgAfkgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECACuSAgAfkgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECADaSAgA/kgIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAEuSAgBUkgIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAGCSAgBqkgIAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAHSSAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAgZECAICSAgCKkgIAQAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAqZICAJaRAgCckQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAB6LAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICALiSAgC2kQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAMCSAgDHkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICANGRAgDbkQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAOeRAgDxkQIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAMiSAgDPkgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICANaSAgDdkgIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAOGSAgDokgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAPiSAgAFkwIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICABOTAgAbkwIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICACOTAgAwkwIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAD6TAgBIkwIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAFmTAgBjkwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAHSTAgB+kwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICABaSAgAfkgIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAImTAgCWkwIAAAAAAAoAAAASAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAHSSAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAKOTAgDdkgIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAKeTAgDokgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICALCTAgAFkwIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAL2TAgAbkwIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAMSTAgAwkwIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICANGTAgBIkwIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAN6TAgBjkwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICACuSAgAfkgIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAqZICAOuTAgD2kwIARAEAAAEAAAACAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAApQCABKUAgAWlAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAJaRAgCckQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAB6LAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCABqUAgAelAIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAL+RAgDHkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCANGRAgDbkQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAOeRAgDxkQIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCACKUAgAolAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAC6UAgA3lAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAEOUAgBLlAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAFaUAgBglAIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAHSSAgCjkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAGuUAgAolAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAHGUAgA3lAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAHyUAgBLlAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAApQCAIaUAgCSlAIASAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAnpQCAB6LAgCjkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCAK+UAgCylAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCAMWUAgDIlAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCAHSSAgCjkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCANWUAgCylAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCANqUAgDIlAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAnpQCAN+UAgD2lAIATAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAADZUCAB6LAgCjkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAAGDAgAplQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAC6VAgA1lQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCADyVAgBElQIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAE2VAgBRlQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAFWVAgBglQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAGyVAgBzlQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAHSSAgCjkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAADZUCAHqVAgCLlQIABAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAKSVAgCrlQIAUAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAOOVAgDvlQIAtAIAAAAAAAADAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAA45UCAAqWAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA45UCABCWAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAA45UCABaWAgAplgIAiAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAJAAAAFpYCADyWAgA/lgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAFKWAgBVlgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAF2WAgBglgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAHKWAgB1lgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAIaWAgCJlgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAJKWAgCVlgIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAKCWAgCjlgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAK2WAgCwlgIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCALuWAgC+lgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAFpYCAMaWAgDZlgIAjAEAAA0AAAD//////////wAAAAAAAPC/AADA////30EKAAAAxpYCAASXAgAAAAAABAMAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAABGXAgAdlwIAMAMAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0AiAAAAAAAAAEmXAgBalwIANAMAAAAAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30EiAAAASZcCAIuXAgAAAAAAAAAAAAoAAAD//////////wAAAAAAAODBAADA////30EiAAAASZcCAAyAAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EiAAAASZcCAJaXAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EiAAAASZcCAKKXAgCylwIAYAMAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8iAAAAopcCANOXAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EiAAAAopcCANeXAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EiAAAAopcCAOiXAgAAAAAAlAEAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8aAAAAAAAAAPqXAgAAAAAA8AIAABIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8ZAAAAAAAAABGYAgAAAAAAeAMAABIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8SAAAAAAAAACCYAgArmAIAOAMAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8D8SAAAAAAAAAEGYAgBNmAIAVAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFEATAAAAQZgCAFmYAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAQZgCAGWYAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAQZgCAGiYAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAQZgCAGuYAgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAQZgCAP1vAgAAAAAAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAQZgCAG6YAgB9mAIASAMAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0A7AAAAAAAAAKKYAgCymAIATAMAAAUAAAAAAAAAAAAAAAAAAAAAAGDAAAAAAADAX0A6AAAAAAAAAN+YAgDsmAIAcAAAAAwAAAD//////////wAAAAAAAPC/AADA////30EAAAAAAAAAAP2YAgAImQIAXAAAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAABeZAgAimQIAaAMAAAIAAAD///9/AAAAAAAAAAAAAAAAAADA////30E7AAAAAAAAADuZAgAAAAAAdAMAAAAAAAABAAAAAAAAAAAAAAAAAAAAAADg////70ESAAAAO5kCAEmZAgBWmQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAO5kCANaZAgDnmQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAO5kCAFyaAgBzmgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAO5kCANuaAgDrmgIAfAMAAAEAAAD//////////wAAAAAAAPC/AADA////30ESAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHypAQBfqwIAAAAAAAEAAAAIAAAAAAAAAHypAQAgqwIAAAAAAAEAAAAIAAAAAAAAAMyoAQABqwIAzKgBAOKqAgDMqAEAw6oCAMyoAQCkqgIAzKgBAIWqAgDMqAEAZqoCAMyoAQBHqgIAzKgBACiqAgDMqAEACaoCAMyoAQDqqQIAzKgBAMupAgDMqAEArKkCAF09f2aeoOY/AAAAAACIOT1EF3X6UrDmPwAAAAAAANg8/tkLdRLA5j8AAAAAAHgovb921N3cz+Y/AAAAAADAHj0pGmU8st/mPwAAAAAAANi84zpZmJLv5j8AAAAAAAC8vIaTUfl9/+Y/AAAAAADYL72jLfRmdA/nPwAAAAAAiCy9w1/s6HUf5z8AAAAAAMATPQXP6oaCL+c/AAAAAAAwOL1SgaVImj/nPwAAAAAAwAC9/MzXNb1P5z8AAAAAAIgvPfFnQlbrX+c/AAAAAADgAz1IbauxJHDnPwAAAAAA0Ce9OF3eT2mA5z8AAAAAAADdvAAdrDi5kOc/AAAAAAAA4zx4AetzFKHnPwAAAAAAAO28YNB2CXux5z8AAAAAAEAgPTPBMAHtwec/AAAAAAAAoDw2hv9iatLnPwAAAAAAkCa9O07PNvPi5z8AAAAAAOACvejDkYSH8+c/AAAAAABYJL1OGz5UJwToPwAAAAAAADM9GgfRrdIU6D8AAAAAAAAPPX7NTJmJJeg/AAAAAADAIb3QQrkeTDboPwAAAAAA0Ck9tcojRhpH6D8AAAAAABBHPbxbnxf0V+g/AAAAAABgIj2vkUSb2WjoPwAAAAAAxDK9laMx2cp56D8AAAAAAAAjvbhlitnHiug/AAAAAACAKr0AWHik0JvoPwAAAAAAAO28I6IqQuWs6D8AAAAAACgzPfoZ1roFvug/AAAAAAC0Qj2DQ7UWMs/oPwAAAAAA0C69TGYIXmrg6D8AAAAAAFAgvQd4FZmu8eg/AAAAAAAoKD0OLCjQ/gLpPwAAAAAAsBy9lv+RC1sU6T8AAAAAAOAFvfkvqlPDJek/AAAAAABA9TxKxs2wNzfpPwAAAAAAIBc9rphfK7hI6T8AAAAAAAAJvctSyMtEWuk/AAAAAABoJT0hb3aa3WvpPwAAAAAA0Da9Kk7en4J96T8AAAAAAAABvaMjeuQzj+k/AAAAAAAALT0EBspw8aDpPwAAAAAApDi9if9TTbuy6T8AAAAAAFw1PVvxo4KRxOk/AAAAAAC4Jj3FuEsZdNbpPwAAAAAAAOy8jiPjGWPo6T8AAAAAANAXPQLzB41e+uk/AAAAAABAFj1N5V17ZgzqPwAAAAAAAPW89riO7Xoe6j8AAAAAAOAJPScuSuybMOo/AAAAAADYKj1dCkaAyULqPwAAAAAA8Bq9myU+sgNV6j8AAAAAAGALPRNi9IpKZ+o/AAAAAACIOD2nszATnnnqPwAAAAAAIBE9jS7BU/6L6j8AAAAAAMAGPdL8eVVrnuo/AAAAAAC4Kb24bzUh5bDqPwAAAAAAcCs9gfPTv2vD6j8AAAAAAADZPIAnPDr/1eo/AAAAAAAA5Dyj0lqZn+jqPwAAAAAAkCy9Z/Mi5kz76j8AAAAAAFAWPZC3jSkHDus/AAAAAADULz2piZpsziDrPwAAAAAAcBI9SxpPuKIz6z8AAAAAAEdNPedHtxWERus/AAAAAAA4OL06WeWNclnrPwAAAAAAAJg8asXxKW5s6z8AAAAAANAKPVBe+/J2f+s/AAAAAACA3jyySSfyjJLrPwAAAAAAwAS9AwahMLCl6z8AAAAAAHANvWZvmrfguOs/AAAAAACQDT3/wUuQHszrPwAAAAAAoAI9b6Hzw2nf6z8AAAAAAHgfvbgd11vC8us/AAAAAACgEL3pskFhKAbsPwAAAAAAQBG94FKF3ZsZ7D8AAAAAAOALPe5k+tkcLew/AAAAAABACb0v0P9fq0DsPwAAAAAA0A69Ff36eEdU7D8AAAAAAGY5PcvQVy7xZ+w/AAAAAAAQGr22wYiJqHvsPwAAAACARVi9M+cGlG2P7D8AAAAAAEgavd/EUVdAo+w/AAAAAAAAyzyUkO/cILfsPwAAAAAAQAE9iRZtLg/L7D8AAAAAACDwPBLEXVUL3+w/AAAAAABg8zw7q1tbFfPsPwAAAAAAkAa9vIkHSi0H7T8AAAAAAKAJPfrICCtTG+0/AAAAAADgFb2Fig0Ihy/tPwAAAAAAKB09A6LK6shD7T8AAAAAAKABPZGk+9wYWO0/AAAAAAAA3zyh5mLodmztPwAAAAAAoAO9ToPJFuOA7T8AAAAAANgMvZBg/3Fdle0/AAAAAADA9DyuMtsD5qntPwAAAAAAkP88JYM61ny+7T8AAAAAAIDpPEW0AfMh0+0/AAAAAAAg9by/BRxk1eftPwAAAAAAcB297Jp7M5f87T8AAAAAABQWvV59GWtnEe4/AAAAAABICz3no/UURibuPwAAAAAAzkA9XO4WOzM77j8AAAAAAGgMPbQ/i+cuUO4/AAAAAAAwCb1obWckOWXuPwAAAAAAAOW8REzH+1F67j8AAAAAAPgHvSa3zXd5j+4/AAAAAABw87zokKSir6TuPwAAAAAA0OU85Mp8hvS57j8AAAAAABoWPQ1oji1Iz+4/AAAAAABQ9TwUhRiiquTuPwAAAAAAQMY8E1ph7hv67j8AAAAAAIDuvAZBthycD+8/AAAAAACI+rxjuWs3KyXvPwAAAAAAkCy9dXLdSMk67z8AAAAAAACqPCRFblt2UO8/AAAAAADw9Lz9RIh5MmbvPwAAAAAAgMo8OL6crf177z8AAAAAALz6PII8JALYke8/AAAAAABg1LyOkJ6BwafvPwAAAAAADAu9EdWSNrq97z8AAAAAAODAvJRxjyvC0+8/AAAAAIDeEL3uIypr2envPwAAAAAAQ+48AAAAAAAA8D8AAAAAAAAAAL68WvoaC/A/AAAAAABAs7wDM/upPRbwPwAAAAAAFxK9ggI7FGgh8D8AAAAAAEC6PGyAdz6aLPA/AAAAAACY7zzKuxEu1DfwPwAAAAAAQMe8iX9u6BVD8D8AAAAAADDYPGdU9nJfTvA/AAAAAAA/Gr1ahRXTsFnwPwAAAAAAhAK9lR88Dgpl8D8AAAAAAGDxPBr33SlrcPA/AAAAAAAkFT0tqHIr1HvwPwAAAAAAoOm80Jt1GEWH8D8AAAAAAEDmPMgHZva9kvA/AAAAAAB4AL2D88bKPp7wPwAAAAAAAJi8MDkfm8ep8D8AAAAAAKD/PPyI+WxYtfA/AAAAAADI+ryKbORF8cDwPwAAAAAAwNk8FkhyK5LM8D8AAAAAACAFPdhdOSM72PA/AAAAAADQ+rzz0dMy7OPwPwAAAAAArBs9pqnfX6Xv8D8AAAAAAOgEvfDS/q9m+/A/AAAAAAAwDb1LI9coMAfxPwAAAAAAUPE8W1sS0AET8T8AAAAAAADsPPkqXqvbHvE/AAAAAAC8Fj3VMWzAvSrxPwAAAAAAQOg8fQTyFKg28T8AAAAAANAOvektqa6aQvE/AAAAAADg6Dw4MU+TlU7xPwAAAAAAQOs8cY6lyJha8T8AAAAAADAFPd/DcVSkZvE/AAAAAAA4Az0RUn08uHLxPwAAAAAA1Cg9n7uVhtR+8T8AAAAAANAFvZONjDj5ivE/AAAAAACIHL1mXTdYJpfxPwAAAAAA8BE9p8tv61uj8T8AAAAAAEgQPeOHE/iZr/E/AAAAAAA5R71UXQSE4LvxPwAAAAAA5CQ9QxwolS/I8T8AAAAAACAKvbK5aDGH1PE/AAAAAACA4zwxQLRe5+DxPwAAAAAAwOo8ONn8IlDt8T8AAAAAAJABPffNOITB+fE/AAAAAAB4G72PjWKIOwbyPwAAAAAAlC09Hqh4Nb4S8j8AAAAAAADYPEHdfZFJH/I/AAAAAAA0Kz0jE3mi3SvyPwAAAAAA+Bk952F1bno48j8AAAAAAMgZvScUgvsfRfI/AAAAAAAwAj0CprJPzlHyPwAAAAAASBO9sM4ecYVe8j8AAAAAAHASPRZ94mVFa/I/AAAAAADQET0P4B00DnjyPwAAAAAA7jE9PmP14d+E8j8AAAAAAMAUvTC7kXW6kfI/AAAAAADYE70J3x/1nZ7yPwAAAAAAsAg9mw7RZoqr8j8AAAAAAHwivTra2tB/uPI/AAAAAAA0Kj35Gnc5fsXyPwAAAAAAgBC92QLkpoXS8j8AAAAAANAOvXkVZB+W3/I/AAAAAAAg9LzPLj6pr+zyPwAAAAAAmCS9Ioi9StL58j8AAAAAADAWvSW2MQr+BvM/AAAAAAA2Mr0Lpe7tMhTzPwAAAACA33C9uNdM/HAh8z8AAAAAAEgivaLpqDu4LvM/AAAAAACYJb1mF2SyCDzzPwAAAAAA0B49J/rjZmJJ8z8AAAAAAADcvA+fkl/FVvM/AAAAAADYML25iN6iMWTzPwAAAAAAyCI9Oao6N6dx8z8AAAAAAGAgPf50HiMmf/M/AAAAAABgFr042AVtrozzPwAAAAAA4Aq9wz5xG0Ca8z8AAAAAAHJEvSCg5TTbp/M/AAAAAAAgCD2Vbuy/f7XzPwAAAAAAgD498qgTwy3D8z8AAAAAAIDvPCLh7UTl0PM/AAAAAACgF727NBJMpt7zPwAAAAAAMCY9zE4c33Ds8z8AAAAAAKZIvYx+rARF+vM/AAAAAADcPL27oGfDIgj0PwAAAAAAuCU9lS73IQoW9D8AAAAAAMAePUZGCSf7I/Q/AAAAAABgE70gqVDZ9TH0PwAAAAAAmCM967mEP/o/9D8AAAAAAAD6PBmJYWAITvQ/AAAAAADA9rwB0qdCIFz0PwAAAAAAwAu9FgAd7UFq9D8AAAAAAIASvSYzi2ZtePQ/AAAAAADgMD0APMG1oob0PwAAAAAAQC29BK+S4eGU9D8AAAAAACAMPXLT1/Aqo/Q/AAAAAABQHr0BuG3qfbH0PwAAAAAAgAc94Sk21dq/9D8AAAAAAIATvTLBF7hBzvQ/AAAAAACAAD3b3f2Zstz0PwAAAAAAcCw9lqvYgS3r9D8AAAAAAOAcvQItnXay+fQ/AAAAAAAgGT3BMUV/QQj1PwAAAAAAwAi9KmbPotoW9T8AAAAAAAD6vOpRP+h9JfU/AAAAAAAISj3aTp1WKzT1PwAAAAAA2Ca9Gqz29OJC9T8AAAAAAEQyvduUXcqkUfU/AAAAAAA8SD1rEendcGD1PwAAAAAAsCQ93im1Nkdv9T8AAAAAAFpBPQ7E4tsnfvU/AAAAAADgKb1vx5fUEo31PwAAAAAACCO9TAv/Jwic9T8AAAAAAOxNPSdUSN0Hq/U/AAAAAAAAxLz0eqj7Ebr1PwAAAAAACDA9C0ZZiibJ9T8AAAAAAMgmvT+OmZBF2PU/AAAAAACaRj3hIK0Vb+f1PwAAAAAAQBu9yuvcIKP29T8AAAAAAHAXPbjcdrnhBfY/AAAAAAD4Jj0V983mKhX2PwAAAAAAAAE9MVU6sH4k9j8AAAAAANAVvbUpGR3dM/Y/AAAAAADQEr0Tw8w0RkP2PwAAAAAAgOq8+o68/rlS9j8AAAAAAGAovZczVYI4YvY/AAAAAAD+cT2OMgjHwXH2PwAAAAAAIDe9fqlM1FWB9j8AAAAAAIDmPHGUnrH0kPY/AAAAAAB4Kb3MqAEAyscCAPSoAQAqyAIAYM0AAAAAAAD0qAEA18cCAHDNAAAAAAAAzKgBAPjHAgD0qAEABcgCAFDNAAAAAAAA9KgBAAzJAgBIzQAAAAAAAPSoAQAcyQIAiM0AAAAAAAD0qAEAUckCAGDNAAAAAAAA9KgBAC3JAgCozQAAAAAAAPSoAQBzyQIAYM0AAAAAAABEqQEAm8kCAESpAQCdyQIARKkBAOBvAgBEqQEAAjUCAESpAQCgyQIARKkBAKLJAgBEqQEApMkCAESpAQCmyQIARKkBAKjJAgBEqQEAqskCAESpAQCsyQIARKkBAK7JAgBEqQEAsMkCAESpAQCyyQIA9KgBALTJAgBQzQAAAAAAABAAAADYzQAAGM4AABjOAAAYzgAA2M0AABjOAAAYzgAAGM4AANjNAADYzQAAKAAAABjOAAAozgAAAAAAADgAAAABAAAAAgAAAAMAAAABAAAAAQAAAAIAAAAAAAAAMAAAAAQAAAAFAAAABgAAAAMAAAACAAAAAQAAANjNAAAgzgAAIM4AABjOAABQAAAA2M0AAFAAAAAoAAAA2M0AAFAAAADozQAAGM4AAFAAAAAYzgAAGM4AANjNAABQAAAA2M0AAFAAAAAoAAAA6M0AACgAAABQAAAAEAAAAJypAQDUqQEA9KkBAAAAAAD2qQEAAAADAAaqAQAAAAMAJqoBAAAAAwAAAAAAAAAAAEaqAQAAAAMAeqoBAAAABACyqgEAAAAEADKrAQAAAAQAtqsBAAAABAAirAEAAAAEAO6sAQAAAAQAvq0BAAAABAB+rgEAAAAEAAAAAAAAAAAAmrEBAAAABACStAEAAQAEAJK0AQACAAQAkrQBAAMABACStAEABAAEAJK0AQAGAAQAkrQBAAgABACStAEACgAEAJK0AQANAAQAtrcBAAQABAC2twEABQAEALa3AQAGAAQAtrcBAAcABAC2twEACAAEALa3AQAJAAQAtrcBAAsABAC2twEADQAEAAAAAAD5////NQAAAI3////9AQAA+Pr//2wGAABk2///SEkAAJwkAABsBgAACAUAAP0BAABzAAAANQAAAAcAAAAAAAAA+f///zUAAACN/////QEAAPj6//9sBgAAZNv//0hJAACcJAAAbAYAAAgFAAD9AQAAcwAAADUAAAAHAAAAAAAAAPj///83AAAAfv////QBAACd+v//0gUAAJbZ//88SQAAziIAAPgGAACtBAAABAIAAGQAAAA0AAAABwAAAAAAAAD4////NwAAAH7////0AQAAnfr//9IFAACW2f//PEkAAM4iAAD4BgAArQQAAAQCAABkAAAANAAAAAcAAAAAAAAA9////zgAAABv////6AEAAEL6//8qBQAAytf//xpJAAAAIQAAdgcAAFIEAAAIAgAAVwAAADMAAAAGAAAAAAAAAPf///84AAAAb////+gBAABC+v//KgUAAMrX//8aSQAAACEAAHYHAABSBAAACAIAAFcAAAAzAAAABgAAAAAAAAD2////OAAAAF/////ZAQAA6fn//3QEAAAA1v//4kgAADMfAADnBwAA+AMAAAoCAABKAAAAMQAAAAUAAAAAAAAA9v///zgAAABf////2QEAAOn5//90BAAAANb//+JIAAAzHwAA5wcAAPgDAAAKAgAASgAAADEAAAAFAAAAAAAAAPb///85AAAATv///8gBAACR+f//sAMAADvU//+SSAAAaB0AAEsIAACeAwAACQIAAD0AAAAwAAAABQAAAAAAAAD2////OQAAAE7////IAQAAkfn//7ADAAA71P//kkgAAGgdAABLCAAAngMAAAkCAAA9AAAAMAAAAAUAAAAAAAAA9f///zkAAAA9////swEAADr5///eAgAAetL//y1IAACgGwAAoggAAEYDAAAHAgAAMQAAAC4AAAAEAAAAAAAAAPX///85AAAAPf///7MBAAA6+f//3gIAAHrS//8tSAAAoBsAAKIIAABGAwAABwIAADEAAAAuAAAABAAAAAAAAAD0////OQAAACz///+bAQAA5vj///0BAAC+0P//skcAAN0ZAADtCAAA7wIAAAICAAAmAAAALAAAAAQAAAAAAAAA9P///zkAAAAs////mwEAAOb4///9AQAAvtD//7JHAADdGQAA7QgAAO8CAAACAgAAJgAAACwAAAAEAAAA//////P///85AAAAGv///4ABAACV+P//DwEAAArP//8hRwAAHhgAACsJAACaAgAA/AEAABwAAAAqAAAABAAAAP/////z////OQAAABr///+AAQAAlfj//w8BAAAKz///IUcAAB4YAAArCQAAmgIAAPwBAAAcAAAAKgAAAAQAAAD/////8f///zgAAAAI////YgEAAEb4//8SAAAAXc3//3pGAABkFgAAXgkAAEcCAAD0AQAAEgAAACgAAAADAAAA//////H///84AAAACP///2IBAABG+P//EgAAAF3N//96RgAAZBYAAF4JAABHAgAA9AEAABIAAAAoAAAAAwAAAP/////w////NwAAAPb+//9AAQAA/Pf//wb///+4y///v0UAALEUAACGCQAA9gEAAOsBAAAJAAAAJwAAAAMAAAD/////8P///zcAAAD2/v//QAEAAPz3//8G////uMv//79FAACxFAAAhgkAAPYBAADrAQAACQAAACcAAAADAAAA/////+////82AAAA5P7//xsBAAC19///7f3//x3K///wRAAABhMAAKIJAACnAQAA4AEAAAEAAAAlAAAAAwAAAP/////v////NgAAAOT+//8bAQAAtff//+39//8dyv//8EQAAAYTAACiCQAApwEAAOABAAABAAAAJQAAAAMAAAD/////7v///zQAAADR/v//8wAAAHP3///H/P//jcj//wxEAABiEQAAtAkAAFsBAADUAQAA+f///yMAAAACAAAA/////+7///80AAAA0f7///MAAABz9///x/z//43I//8MRAAAYhEAALQJAABbAQAA1AEAAPn///8jAAAAAgAAAP/////s////MgAAAL/+///HAAAANvf//5P7//8Jx///FUMAAMcPAAC8CQAAEgEAAMYBAADy////IQAAAAIAAAD/////7P///zIAAAC//v//xwAAADb3//+T+///Ccf//xVDAADHDwAAvAkAABIBAADGAQAA8v///yEAAAACAAAA/////+v///8vAAAArf7//5cAAAD/9v//Ufr//5DF//8LQgAANQ4AALoJAADMAAAAuAEAAOv///8fAAAAAgAAAP/////r////LwAAAK3+//+XAAAA//b//1H6//+Qxf//C0IAADUOAAC6CQAAzAAAALgBAADr////HwAAAAIAAAD/////6f///ywAAACb/v//ZQAAAM72//8D+f//JsT///BAAACtDAAArwkAAIgAAACpAQAA5f///x0AAAACAAAA/////+n///8sAAAAm/7//2UAAADO9v//A/n//ybE///wQAAArQwAAK8JAACIAAAAqQEAAOX///8dAAAAAgAAAP/////o////KQAAAIn+//8uAAAApPb//6n3///Jwv//wz8AADALAACcCQAASAAAAJkBAADg////HAAAAAIAAAD/////6P///ykAAACJ/v//LgAAAKT2//+p9///ycL//8M/AAAwCwAAnAkAAEgAAACZAQAA4P///xwAAAACAAAA/////+b///8lAAAAeP7///X///+A9v//Qvb//3vB//+FPgAAvgkAAIAJAAALAAAAiAEAANv///8aAAAAAQAAAP/////m////JQAAAHj+///1////gPb//0L2//97wf//hT4AAL4JAACACQAACwAAAIgBAADb////GgAAAAEAAAB+wgEAlMIBALvCAQDhwgEA98IBAB7DAQBEwwEAWsMBAIHDAQCnwwEAvcMBAOTDAQAIxAEAHsQBAEXEAQAIxAEAacQBAJDEAQAIxAEAacQBAJDEAQAIxAEAacQBAJDEAQC0xAEAysQBAPHEAQAAAAAAAAAAFL4oCh3NpVMkqX9ZJnViRixyjHMtgfyxLgAAADTXIK40lNZiNZauHTb0R942ek+kN2W+NzwkyJ88vigKPfXGdj0LjOU9YWNWPi46yT4+/z0/vKK0PwWLFkTNpVNEapuRRPtl0EQAABBFUWRQRRWOkUW7eNNF8x8WRql/WUYAlJ1GTFniRhHMJ0f86G1H46y0R78U/EfXDiJMdWJGTOcDa0zo8Y9MPyu1TMCu2kxJewBNxo8mTSrrTE1yjHNNpXKaTdOcwU0SCulNgrkQTkiqOE6R22BO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DgAAAAkAAAAAAAAASM4AAAsAAAAVAAAADQAAAA4AAAAHAAAAAwAAAAMAAAADAAAABAFEAYIBogFJAIkAKQAZAAMAAwADAAMAAwADAAMAAwDVAPUAtQB1AOUApQCTAJMAYwDDAFMAMwD5AHkAuQA5ANkAWQCZABkA6QBpAKkAKQDJAEkAiQAJAAEAFwEHARUAFQADAAMAAwADAIYAFwEHARcAAwADAAMAAwAnAgcCFQIVAiUBJQElACUAhgAXABUBFQEFAQUBBQAFACcCBwIVAhUCJQElASUAJQCIABcBBwEXAAMAAwADAAMAggE5AjcBNwEZAwkDOQApAhcCFwInAScBBwIHAicAJwAzAyMDBgGCAaIBGQIpASkABwEHARUBFQEVARUBFwAXAAcABwA3AwcDJQMlAzUCNQI1ADUAEwMzASMCAwIIAQgCBAMZAQcBBwEXABcAAwADAAMAAwADAAMAAwADAEQDggOiAxkFWQHCA1kA4gMpBEkCFwQXBEcBRwFHAEcACQQpAzkCCQMXAxcDNwE3ATcANwAnAicCFQIVAhUCFQIjASMBBQIlAFUFRQVVBFUDMwVDBCMFUwIDBTMEQwMzAwgBCAIZAikBFQEVARUBFQEHAQcBFwAXAAUABQAFAAUABgOEA8IDGQVZAeIDAgQpBEkCGQRHAUcBCQRJACkDOQIZAzkBCQM5ACUCJQIlAiUCBQIFAgUCBQIlACUAJQAlAFcFVwRFBUUFUwNTA1MDUwM1BUUEIwUjBVMCAwUzBEMDUwAzAwgBBgKEAsQCAgMZAikBKQAXARcBBwEHARcAFwAHAAcAIgM5BVkDQgNJBCkFWQIZBVcBVwE3BDcERwNHA1kACQQnBEcCNwNHABUEFQRFAUUBJQM1AhMDEwMzATMBBQM1ACMCAwJTBUMFUwQDBQgBCAIEAxkBBwEHARcAFwADAAMAAwADAAMAAwADAAMARgPEAwYEggSkBOQEJAUZB3kBYgWEBcQFGQZpAWkAAgYiBkIGGQRJAUkAKQM5AgkDFwMXAzcBNwE3ADcAJwInAhUCJQEFAiUAdwdnB3cGVwd3BWcGRQdFB3UEVQZlBTUHdQN1A0UGRQZXBVcEZQNlAyMHcwJlBAUHcwBzAGMCYwJFBTUFAwYDBlUDRQQzBiMGJQVVAhMFEwVTAVMBNQRFAwMFUwAjBEMCMwMDBAgBCAIIAwYEGQKCBBcBFwEHAQcBFwAXAAUABQAFAAUApATmBGQFogXEBSkHeQICBncBdwEZB3kAOQZpA2kAIgZCBhkFZwJnAikGCQYXBhcGZwFnAVkBOQRZAGIGKQRJAhkESQEJBEkAJwMnAzcCNwIVAxUDFQMVAzUBNQE1ATUBBwM3ACUCJQIjASMBIwEjAQMCIwB1B2UHdQZ1BWUGZQZFB0UHdQR1BFcHVwVVBmUFMwczB3MDQwZFBVUENQVVA2MEAwdDBCMFUwIDBUMDMwMIAQgCCAMEBEYEwgQZAikB4gQJABcBFwEHAQcBFwAXAAQFQgViBYIFWQY5B6IFKQd5AkkGaQQZB3kBwgU5BmkDSQVZBEkE4gUnBicGZwJnAmcBZwEZBmkAOQVZAykFWQIXBRcFVwFXATcENwRHA0cDWQAJBCcEJwRHAkcCFwQXBDUDRQElAzUCRwAHAzUANQATAxMDEwMTAzMBIwIDAiMAdQdlB3MGcwZTB3MFYwZDB3MEYwVzA1MFAwdzAAMGAwUIAQgCCAMEBBkBCQEXABcAAwADAAMAAwADAAMAAwADAEgESAVIBkgHSAhICUYKxgpGC8YLRgzGDEINZA2mDSIORA6EDsQOBA+JAUIPYg+CD6QP4g8ZBVkBAhAiEEIQGQRHAUcBCQRJACkDOQIXAxcDNwE3AQcDBwM3ADcAJwInAhUCJQEFAiUAaBBoEWgSZhPkEyQUZhTkFCIVRBWEFcQVBBZEFhkP+QH5AIIWohbCFukC4hYZDukBAhciF0IXYheCF6IXyQY5DcIXKQ3ZAhkNuQfiFwIYyQMiGEkL1wHXAQkN2QCJCqkISQzJBGkLuQY3DDcMJwwnDMcCxwJXC1cLuQWJCRcMFwzHAccBmQgJDMcAxwC5BGkKqQZ5CTcLNwu3A7cDiQhZCicLJwupBWkJpwSnBHkIiQeXBJcEeQd5BrUCtQK1ArUCFQsVC7UBtQEHC7cAlwZHCjcKpwNXCZcFJQolCqUCpQIVChUKpQGlAQcKZwilAKUAhwZHCZUDlQM3CVcIhwVnByUJJQmVApUCVwd3BTUINQiFA4UDZwZHB3cEVwZnBXcDEwmTAQUJlQBFCIUEdQJ1AkcGZwQjCCMIIwgjCIMCEwg1ByUHEwcTB3MBcwFVBQUHdQA1BmUDRQVVBCUGZQI1BQMIgwATBmMBAwZjAFUDRQQjBSMFUwIDBTMEQwNTACMEQwIzA0YY+Q/pD9kP6Q7JD9kOuQ/5C8kO2QzCGOcM5wzXDdcN+QrJDbcOtw7nC+cLlw+XD/cJ9wnnCucKtw23DdcL1wuHD4cP9wj3CMcMxwypDpkOhw6HDnkPeQ71B/UH9Qf1B9UK1QqnDbcMxwv3BmUPZQ/lCFUPlQ3VCfUF5QelDLULRQ9FD/UE9QTHCucG9QP1AzMPMw+FDdUIIw/zAmUOlQwDDwMPxQlVDqMLowt1DdUHQw5DDsUI1QYzDjMOswmzCZULpQqzCuMF4wSDDGMN4wMjDgMO4wBTDdMFcwzDB0MNgwuzCNMEkwqjCWMM0wNzC1MMwwWTCXMKoweTB/cO9wz1DfUN4w3jDeMN4w2jD+MJCAEIAggDCAQIBQYGhgYEB0IHYgcXARcBCQEZAAcABwCIB4gIiAmICogLhgwGDYgNhg4GD4YPBhCEEMYQRhHEEQQSRBKEEsQSBBNEE4QTxBMCFCIUQhRkFKIUwhTkFCIVQhViFZkBghWiFcIV4hUCFikIiQIZCIkBIhZCFmIWghYpB3kCaQQZB1kFeQGiFjkGaQNJBVkEKQZpAhkGwhY5BWcBZwFZA0kEJwUnBVcCVwIXBRcFVwFXAQkFWQA3BDcERwMnBEcCNwNFAUUBFwQHBCUDJQM1AjUCRwAHAxUDFQM1ATUAIwIjAhMCIwEDAiMA4hYCF+kOIhdCF2IX+QuCF9kNqQ/5CrkO6QvJDdkMmQ/5CekKuQ3ZC4kP+QjJDJkO6Ql5D/kHqQ3ZCrkMaQ+iF8cLxwv3BvcGiQ7pCFkPmQ33BfcFdw53DucH5wenDKcMxwrHCrcLtwvZCYkNRw9HD/cE9wQ3DzcP9wP3A9cI1wjnBucGJw8nD/cC9wJpDvkAFw8XD/cB9wGXDJcMxwnHCVcOpwu3CucFdw3XB0cO5wSHDMcINw5nDdcG5wOXC7cJJw4nDqcKpwrnAucCFw4XDucB5wEJDukAVw1XDdcF1wV3DMcHRw2HC9UE1QS3CJcKpwlnDMcGNw3VA9UD1QLVAicNBw0VDRUNdQt1C7UHtQfVAdUBVwzXAMUFxQWFCoUKpQhFDMUEZQu1BrUGlwkHDDUMNQzFA8UDdQp1CqUHpQelBqUGxwAHC8MCwwIlDFULtQUVDIUJlQjFAUULtQRlCjULdQmzA7MDlQeFCCULVQqzArMCpQUVC7MBswG1AGUJlQZFCqUEdQiFBzUKowOjA1MJkwUjCqMCEwqjAQUKpQBjCGMIgwZDCZMEMwmTA5MDdQcFCVMIgwUjCWMHcwaTAhMJkwBDCIMEUwdzBTMIgwNjBkMHcwQDCIMAUwZjBTMHcwNDBgMHcwADBmMA8w/jD/MO0w/zDcMP8wzTDuMNsw/DDuMMow4DDwgBCAIIAwQEGQEJARcAFwADAAMAAwADAAMAAwADAAMARgTGBEQF+Q+EBcIF6AX5AuIGGQ/5AQgHCAgICQgKCAsIDAYNhg0GDoYOBg+GDwYQhBDEEAIRJBFkEaIRWQHCEeIRAhIiEhkESQFCEikDOQIXAxcDNwE3AQkDOQAnAicCFQIlAQUCJQDnD/cO1w/3DccP9wy3D/cLpQ+lD/cKlw/3CfcIhQ+FD3UP9QdlD/UGVQ/1BUMPQw/zBPMD8wDzAPMA8wDzAPMA8wDzADUPNQ81DzUPaBJmE+YTZhQjDwMP5BQkFWQVohXEFQQWQhZkFqQW5BYkF+kDYheCF6IXwhfiFwIYIhgJDUIYYhiCGDkMohgZDMkAwhjnAucCKQ4ZDtkDKQ3ZAtkBOQviGBcNFw3JBGkLyQOpBycMJwzJArkFyQEJDEkLuQRpCqkGtwO3A1kKqQUnCycLtwK3AhcLFwu3AbcBCQu5AGkJmQZJCqkEeQiJB6cDpwM5ClkJJwonCpkFaQinAacBiQZ5B5cElwRJCVkHZwdnB6UCpQKlAqUCFQoVCgcKpwA3CZcDVwiHBSUJJQmVApUCdwYHCRUJFQmVAZUBlwBHCIcEdwU3CIcDZwYnCIUChQJHB3cEFQgVCIUBhQGFAIUABwhXBjUHNQd1A3UDZwVHBiUHJQd1AnUCZwRXBQUHBQcTBxMHEwcTB3MBcwF1ADUGZQNFBVUEJQZjAhMGYwFjAQUGZQBTA1MDNQVFBCMFUwITBQMFMwRDA1MAIwRDAjMDAwRDAMkOAhnXDtcO5wnnCekK2QnlDuUO5Q7lDucN5w3nC+cLtQ61DsUNxQ3XDNcLpQ6lDsUMxQynDdcKdw6nDMUKxQrHCXcNVQ5VDrMNsw2zDbMNkw6TDrUMxQuFDuUIlQ3lB7ULhQ3VCGUO4waTDKULtQrlBdUHQw5DDuUEhQzDCDMOYw1jDdUGlQu1CaUK4wHjAdME0wS1CKUJcwtzC7UH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RU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAGluaXRBdWRpbwBwbGF5QXVkaW8AT25seSBzdXBwb3J0IHZpZGVvIGguMjY0L2F2YyBvciBoLjI2NS9oZXZjIGNvZGVjLiBhY3R1YWw9JWQAY29kZQBOZXRTdHJlYW0uUGxheS5TdGFydABvbk5ldFN0YXR1cwBzZXRUaW1lb3V0IHRvIHBsYXkgdmlkZW8gYnVmZmVyICVkAGNoZWNrVmlkZW9CdWZmZXIAeyByZXR1cm4gKG5ldyBEYXRlKCkpLmdldFRpbWUoKTsgfQBOMTBlbXNjcmlwdGVuM3ZhbEUAcmVjb25uZWN0AHtjbGVhclRpbWVvdXQoJDApfQBGbHZEZWNvZGVyIGNsZWFyIQoAaW5pdEF1ZGlvLGZyYW1lQ291bnQ6JWQsY2hhbm5lbHM6JWQAYXVkaW8gaW5pdCEgJWQAbXAzIGluaXQhAE5ldFN0cmVhbS5CdWZmZXIuRW1wdHkAd2ViZ2w6JXMAdHJ1ZQBmYWxzZQBGRk1wZWcgaW5pdAA2RkZtcGVnADEyVmlkZW9EZWNvZGVyAGNvZGVjID0gJWQAdmlkZW8gZGVjb2RlciByZWxlYXNlIQoARkZNcGVnIGRlc3RvcnkAY29kZWMgPSAlZCxwdHIgPSAlZABjYW52YXM6JWQsJWQAc2V0VmlkZW9TaXplAGRyYXcALmZsdgBXZWJTb2NrZXQAOUZsdkNsaWVudABGbHZEZWNvZGVyIHJlbGVhc2UhCgBhdWRpbyBkZWNvZGVyIHJlbGVhc2UKAGF1ZGlvIGRlY29kZXIgcmVsZWFzZSEKAFA5Rmx2Q2xpZW50AFBLOUZsdkNsaWVudABpaQB2AHZpaWkAaWlpaWkAdmlpAGlpaQB2aWlpaQBpaWlpAGxheWVyMy5jAAYFBQUJCQkJBgkJCQYFBwMJCQwGBgkMBgsKAAASEgAADxIAAAcHBwAMDAwABg8MAAYGBgMMCQkGBgwJBggIBQAPDAkABhIJAAAAAAEAAgADAwABAQECAQMCAQICAgMDAQMCAwMEAgQDAAAAAAAAAAAAAAABAQEBAgIDAwMCAHJlcXVhbnRpemUgb3ZlcmZsb3cgKCVmICogMl4lZCkKAC1iaXRzX2xlZnQgPD0gTUFEX0JVRkZFUl9HVUFSRCAqIENIQVJfQklUAElJSV9odWZmZGVjb2RlAAQEBAQEBAYGBggKDBASFhwiKC42NsAEBAQEBAQEBAQEBAQGBgYGBgYKCgoMDAwODg4QEBAUFBQaGhpCQkIEBAQEBAQGBgQEBAYGBgYGBgoKCgwMDA4ODhAQEBQUFBoaGkJCQgQEBAQEBAYGCAgKDBAUGBwiKjI2TJ4EBAQEBAQEBAQEBAQGBgYICAgKCgoMDAwODg4SEhIWFhYeHh44ODgEBAQEBAQGBgQEBAYGBggICAoKCgwMDA4ODhISEhYWFh4eHjg4OAQEBAQEBAYGCAoMEBQYHiYuOERUZhoEBAQEBAQEBAQEBAQGBgYICAgMDAwQEBAUFBQaGhoiIiIqKioMDAwEBAQEBAQGBgQEBAYGBggICAwMDBAQEBQUFBoaGiIiIioqKgwMDAYGBgYGBggKDA4QEhYaICYuNj5GTCQEBAQEBAQEBAQGBgYICAgKCgoMDAwODg4SEhIYGBggICAsLCwMDAwGBgYGBgYGBgYICAgKCgoMDAwODg4SEhIYGBggICAsLCwMDAwGBgYGBgYICgwOEBQYHCAmLjQ8RDo2BAQEBAQEBAQEBgYGBgYGCAgICgoKDg4OEhISGhoaICAgKioqEhISBgYGBgYGBgYGBgYGCAgICgoKDg4OEhISGhoaICAgKioqEhISBAQEBAQEBAQEBgYGCAgICgoKDAwMDg4OEhISGBgYHh4eKCgoEhISBgYGBgYGBgYGCAgICgoKDAwMDg4OEhISGBgYHh4eKCgoEhISDAwMDAwMEBQYHCAoMDhATFoCAgICAggICAgICAgICAwMDBAQEBQUFBgYGBwcHCQkJAICAgICAgICAhoaGgwMDAQEBAgICAwMDBAQEBQUFBgYGBwcHCQkJAICAgICAgICAhoaGmRlbm9tICE9IDAAdGltZXIuYwBzY2FsZV9yYXRpb25hbAAAAAEBAgICAgMDAwMDAwMDBAQEBAQEBAQEBAQEBAQEBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHAIBAwCCgYOAQkFDQMLBw8AiISMgoqGjoGJhY2Di4ePgEhETEJKRk5BSUVNQ0tHT0DIxMzCysbOwcnFzcPLx8/AKCQsIiomLiEpJS0jKycvIKikrKKqpq6hqaWto6unr6BoZGxiamZuYWllbWNrZ29g6OTs4urm7uHp5e3j6+fv4BgUHBIaFh4RGRUdExsXHxCYlJySmpaekZmVnZObl5+QWFRcUlpWXlFZVV1TW1dfUNjU3NLa1t7R2dXd09vX39A4NDwyOjY+MTk1PTM7Nz8wuLS8srq2vrG5tb2zu7e/sHh0fHJ6dn5xeXV9c3t3f3D49Pzy+vb+8fn1/fP79//0ZhaWxlZCB0byByZWFsbG9jYXRlIHBhcnNlciBidWZmZXIgdG8gJWQKAG5leHQgPj0gMCB8fCBwYy0+YnVmZmVyAGxpYmF2Y29kZWMvcGFyc2VyLmMAJXMlcyVzJXMAICAgIExhc3QgbWVzc2FnZSByZXBlYXRlZCAlZCB0aW1lcw0AICAgIExhc3QgbWVzc2FnZSByZXBlYXRlZCAlZCB0aW1lcwoAG1sldTszJXVtJXMbWzBtABtbNDg7NTsldW0bWzM4OzU7JWRtJXMbWzBtABtbNDg7NTsldW0bWzM4OzU7JXVtJXMbWzBtAFRFUk0ATk9fQ09MT1IAQVZfTE9HX0ZPUkNFX05PQ09MT1IAQVZfTE9HX0ZPUkNFX0NPTE9SAEFWX0xPR19GT1JDRV8yNTZDT0xPUgAyNTZjb2xvcgBbJXMgQCAlcF0gAFslc10gAHBhbmljAGZhdGFsAGVycm9yAHdhcm5pbmcAaW5mbwB2ZXJib3NlAHF1aWV0AAABAgMEBQYIQSBub24tTlVMTCBwYWNrZXQgc2VudCBhZnRlciBhbiBFT0YuCgBDb2RlYyAnJXMnICglZCkgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgYml0c3RyZWFtIGZpbHRlciAnJXMnLiBTdXBwb3J0ZWQgY29kZWNzIGFyZTogACVzICglZCkgAG1wZWcxdmlkZW8AbXBlZzJ2aWRlbwBoMjYxAGgyNjMAcnYxMABydjIwAG1qcGVnAG1qcGVnYgBsanBlZwBzcDV4AGpwZWdscwBtcGVnNAByYXd2aWRlbwBtc21wZWc0djEAbXNtcGVnNHYyAG1zbXBlZzR2MwB3bXYxAHdtdjIAaDI2M3AAaDI2M2kAZmx2MQBzdnExAHN2cTMAZHZ2aWRlbwBodWZmeXV2AGN5dXYAaW5kZW8zAHZwMwB0aGVvcmEAYXN2MQBhc3YyAGZmdjEANHhtAHZjcjEAY2xqcgBtZGVjAHJvcQBpbnRlcnBsYXl2aWRlbwB4YW5fd2MzAHhhbl93YzQAcnB6YQBjaW5lcGFrAHdzX3ZxYQBtc3JsZQBtc3ZpZGVvMQBpZGNpbgA4YnBzAHNtYwBmbGljAHRydWVtb3Rpb24xAHZtZHZpZGVvAG1zemgAemxpYgBxdHJsZQB0c2NjAHVsdGkAcWRyYXcAdml4bABxcGVnAHBuZwBwcG0AcGJtAHBnbQBwZ215dXYAcGFtAGZmdmh1ZmYAcnYzMABydjQwAHZjMQB3bXYzAGxvY28Ad252MQBhYXNjAGluZGVvMgBmcmFwcwB0cnVlbW90aW9uMgBibXAAY3NjZABtbXZpZGVvAHptYnYAYXZzAHNtYWNrdmlkZW8AbnV2AGttdmMAZmxhc2hzdgBjYXZzAGpwZWcyMDAwAHZtbmMAdnA1AHZwNgB2cDZmAHRhcmdhAGRzaWNpbnZpZGVvAHRpZXJ0ZXhzZXF2aWRlbwB0aWZmAGdpZgBkeGEAZG54aGQAdGhwAHNnaQBjOTMAYmV0aHNvZnR2aWQAcHR4AHR4ZAB2cDZhAHZiAHBjeABzdW5yYXN0AGluZGVvNABpbmRlbzUAbWltaWMAcmwyAGVzY2FwZTEyNABkaXJhYwBiZmkAY212AG1vdGlvbnBpeGVscwB0Z3YAdGdxAHRxaQBhdXJhAGF1cmEyAHYyMTB4AHRtdgB2MjEwAGRweABtYWQAZnJ3dQBmbGFzaHN2MgBjZGdyYXBoaWNzAHIyMTAAYW5tAGJpbmt2aWRlbwBpZmZfaWxibQBrZ3YxAHlvcAB2cDgAcGljdG9yAGFuc2kAYTY0X211bHRpAGE2NF9tdWx0aTUAcjEwawBteHBlZwBsYWdhcml0aABwcm9yZXMAanYAZGZhAHdtdjNpbWFnZQB2YzFpbWFnZQB1dHZpZGVvAGJtdl92aWRlbwB2YmxlAGR4dG9yeQB2NDEwAHh3ZABjZHhsAHhibQB6ZXJvY29kZWMAbXNzMQBtc2ExAHRzY2MyAG10czIAY2xsYwBtc3MyAHZwOQBlc2NhcGUxMzAAZzJtAHdlYnAAaG5tNHZpZGVvAGhldmMAZmljAGFsaWFzX3BpeABicmVuZGVyX3BpeABwYWZfdmlkZW8AZXhyAHZwNwBzYW5tAHNnaXJsZQBtdmMxAG12YzIAaHF4AHRkc2MAaHFfaHFhAGhhcABkZHMAZHh2AHNjcmVlbnByZXNzbwByc2NjAHk0MXAAYXZycAAwMTJ2AGF2dWkAYXl1dgB0YXJnYV95MjE2AHYzMDgAdjQwOAB5dXY0AGF2cm4AY3BpYQB4ZmFjZQBzbm93AHNtdmpwZWcAYXBuZwBkYWFsYQBjZmhkAHRydWVtb3Rpb24ycnQAbTEwMQBtYWdpY3l1dgBzaGVlcnZpZGVvAHlsYwBwc2QAcGl4bGV0AHNwZWVkaHEAZm12YwBzY3ByAGNsZWFydmlkZW8AeHBtAGF2MQBiaXRwYWNrZWQAbXNjYwBzcmdjAHN2ZwBnZHYAZml0cwBwY21fczE2bGUAcGNtX3MxNmJlAHBjbV91MTZsZQBwY21fdTE2YmUAcGNtX3M4AHBjbV91OABwY21fbXVsYXcAcGNtX2FsYXcAcGNtX3MzMmxlAHBjbV9zMzJiZQBwY21fdTMybGUAcGNtX3UzMmJlAHBjbV9zMjRsZQBwY21fczI0YmUAcGNtX3UyNGxlAHBjbV91MjRiZQBwY21fczI0ZGF1ZABwY21fem9yawBwY21fczE2bGVfcGxhbmFyAHBjbV9kdmQAcGNtX2YzMmJlAHBjbV9mMzJsZQBwY21fZjY0YmUAcGNtX2Y2NGxlAHBjbV9ibHVyYXkAcGNtX2x4ZgBzMzAybQBwY21fczhfcGxhbmFyAHBjbV9zMjRsZV9wbGFuYXIAcGNtX3MzMmxlX3BsYW5hcgBwY21fczE2YmVfcGxhbmFyAHBjbV9zNjRsZQBwY21fczY0YmUAcGNtX2YxNmxlAHBjbV9mMjRsZQBhZHBjbV9pbWFfcXQAYWRwY21faW1hX3dhdgBhZHBjbV9pbWFfZGszAGFkcGNtX2ltYV9kazQAYWRwY21faW1hX3dzAGFkcGNtX2ltYV9zbWpwZWcAYWRwY21fbXMAYWRwY21fNHhtAGFkcGNtX3hhAGFkcGNtX2FkeABhZHBjbV9lYQBhZHBjbV9nNzI2AGFkcGNtX2N0AGFkcGNtX3N3ZgBhZHBjbV95YW1haGEAYWRwY21fc2Jwcm9fNABhZHBjbV9zYnByb18zAGFkcGNtX3NicHJvXzIAYWRwY21fdGhwAGFkcGNtX2ltYV9hbXYAYWRwY21fZWFfcjEAYWRwY21fZWFfcjMAYWRwY21fZWFfcjIAYWRwY21faW1hX2VhX3NlYWQAYWRwY21faW1hX2VhX2VhY3MAYWRwY21fZWFfeGFzAGFkcGNtX2VhX21heGlzX3hhAGFkcGNtX2ltYV9pc3MAYWRwY21fZzcyMgBhZHBjbV9pbWFfYXBjAGFkcGNtX3ZpbWEAYWRwY21fYWZjAGFkcGNtX2ltYV9va2kAYWRwY21fZHRrAGFkcGNtX2ltYV9yYWQAYWRwY21fZzcyNmxlAGFkcGNtX3RocF9sZQBhZHBjbV9wc3gAYWRwY21fYWljYQBhZHBjbV9pbWFfZGF0NABhZHBjbV9tdGFmAGFtcl9uYgBhbXJfd2IAcmFfMTQ0AHJhXzI4OAByb3FfZHBjbQBpbnRlcnBsYXlfZHBjbQB4YW5fZHBjbQBzb2xfZHBjbQBzZHgyX2RwY20AZ3JlbWxpbl9kcGNtAG1wMgBtcDMAYWFjAGFjMwB2b3JiaXMAZHZhdWRpbwB3bWF2MQB3bWF2MgBtYWNlMwBtYWNlNgB2bWRhdWRpbwBmbGFjAG1wM2FkdQBtcDNvbjQAc2hvcnRlbgBhbGFjAHdlc3R3b29kX3NuZDEAZ3NtAHFkbTIAY29vawB0cnVlc3BlZWNoAHR0YQBzbWFja2F1ZGlvAHFjZWxwAHdhdnBhY2sAZHNpY2luYXVkaW8AaW1jAG11c2VwYWNrNwBtbHAAZ3NtX21zAGF0cmFjMwBhcGUAbmVsbHltb3NlcgBtdXNlcGFjazgAc3BlZXgAd21hdm9pY2UAd21hcHJvAHdtYWxvc3NsZXNzAGF0cmFjM3AAZWFjMwBzaXByAG1wMQB0d2ludnEAdHJ1ZWhkAG1wNGFscwBhdHJhYzEAYmlua2F1ZGlvX3JkZnQAYmlua2F1ZGlvX2RjdABhYWNfbGF0bQBxZG1jAGNlbHQAZzcyM18xAGc3MjkAOHN2eF9leHAAOHN2eF9maWIAYm12X2F1ZGlvAHJhbGYAaWFjAGlsYmMAb3B1cwBjb21mb3J0bm9pc2UAdGFrAG1ldGFzb3VuZABwYWZfYXVkaW8AYXZjAGRzc19zcABjb2RlYzIAd2F2ZXN5bnRoAHNvbmljAHNvbmljbHMAZXZyYwBzbXYAZHNkX2xzYmYAZHNkX21zYmYAZHNkX2xzYmZfcGxhbmFyAGRzZF9tc2JmX3BsYW5hcgA0Z3YAaW50ZXJwbGF5YWNtAHhtYTEAeG1hMgBkc3QAYXRyYWMzYWwAYXRyYWMzcGFsAGRvbGJ5X2UAYXB0eABhcHR4X2hkAHNiYwBkdmRfc3VidGl0bGUAZHZiX3N1YnRpdGxlAHRleHQAeHN1YgBzc2EAbW92X3RleHQAaGRtdl9wZ3Nfc3VidGl0bGUAZHZiX3RlbGV0ZXh0AHNydABtaWNyb2R2ZABlaWFfNjA4AGphY29zdWIAc2FtaQByZWFsdGV4dABzdGwAc3Vidmlld2VyMQBzdWJ2aWV3ZXIAc3VicmlwAHdlYnZ0dABtcGwyAHZwbGF5ZXIAcGpzAGhkbXZfdGV4dF9zdWJ0aXRsZQB0dGYAc2N0ZV8zNQBiaW50ZXh0AHhiaW4AaWRmAG90ZgBrbHYAZHZkX25hdl9wYWNrZXQAdGltZWRfaWQzAGJpbl9kYXRhAHdyYXBwZWRfYXZmcmFtZQBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0AYXBwbGljYXRpb24vdm5kLm1zLW9wZW50eXBlAGFwcGxpY2F0aW9uL3gtdHJ1ZXR5cGUtZm9udABhcHBsaWNhdGlvbi94LWZvbnQAaW1hZ2Uvc3ZnK3htbABpbWFnZS94LXhwaXhtYXAAaW1hZ2UvcG5nAGltYWdlL3dlYnAAaW1hZ2UveC14Yml0bWFwAGltYWdlL3gteHdpbmRvd2R1bXAAaW1hZ2UveC1wY3gAaW1hZ2UvZ2lmAGltYWdlL3RpZmYAaW1hZ2UveC10YXJnYQBpbWFnZS94LXRnYQBpbWFnZS9qcDIAaW1hZ2Uv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AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBICAgICAgICAfICAgICAgIA8QERITFBUWFxgZGhscHR4HBwcHCAgICAkJCQkKCgoKCwsLCwwMDAwNDQ0NDg4ODgMDAwMDAwMDAwMDAwMDAwMEBAQEBAQEBAQEBAQEBAQEBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgYBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARERERERERERARERERERERCPgJ9wr2C/UM9A3zDvIP8QQEBAT8/Pz8BQUFBfv7+/sGBgYG+vr6+gcHBwf5+fn5AgICAgICAgICAgICAgICAv7+/v7+/v7+/v7+/v7+/v4DAwMDAwMDAwMDAwMDAwMD/f39/f39/f39/f39/f39/QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDAQYFLx8PABcbHR4HCw0OJystLhADBQoMExUaHCMlKiwBAgQIERIUGAYJFhkgISIkKCYpABABAgQIIAMFCgwPLwcLDQ4GCR8jJSosISIkKCcrLS4REhQYExUaHBcbHR4WGSYpABAgMAAgEEBgMFBwCg0QCw4SDRAUDhIXEBQZEhcdAAMEAwMBBQEEBQIFAwEFARQSIBMZGBYTIxUcGhoXKhghHxwZLRojISAcMx4oJiQgOiIuKwABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMEBQABAgMAAAAAAAABAQEBAQECAgICAgIDAwMDAwMEBAQEBAQFBQUFBQUGBgYGBgYHBwcHBwcICAgICAgJCQkJCQkKCgoKCgoLCwsLCwsMDAwMDAwNDQ0NDQ0ODg4OAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHR4fICAhIiIjIyQkJSUlJiYmJycnJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyMkJSYmJygoKSkqKisrKywsLC0tLS0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkpKissLC0uLi8vMDAxMTEyMjIzMzMzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vLzAxMjIzNDQ1NTY2Nzc3ODg4OTk5OQAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTU2Nzg4OTo6Ozs8PD09PT4+Pj8/Pz8AAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs7PD0+Pj9AQEFBQkJDQ0NERERFRUVFAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQUJDRERFRkZHR0hISUlJSkpKS0tLS2gyNjQAdGhyZWFkX3JlbGVhc2VfYnVmZmVyIGNhbGxlZCBvbiBwaWMgJXAKAGZyYW1lLT5uYl9leHRlbmRlZF9idWYgPT0gMABsaWJhdmNvZGVjL2RlY29kZS5jAGRlZmF1bHRfZ2V0X2J1ZmZlciBjYWxsZWQgb24gZnJhbWUgJXAAcGljLT5kYXRhWypdIT1OVUxMIGluIGF2Y29kZWNfZGVmYXVsdF9nZXRfYnVmZmVyCgBVbmFibGUgdG8gZ2V0IHBpeGVsIGZvcm1hdCBkZXNjcmlwdG9yIGZvciBmb3JtYXQgJXMKAGRlZmF1bHRfZ2V0X2J1ZmZlciBjYWxsZWQgb24gcGljICVwCgB5dXY0MjBwAHl1eXY0MjIAcmdiMjQAYmdyMjQAeXV2NDIycAB5dXY0NDRwAHl1djQxMHAAeXV2NDExcABncmF5OCx5OABtb25vdwBtb25vYgBwYWw4AHl1dmo0MjBwAHl1dmo0MjJwAHl1dmo0NDRwAHV5dnk0MjIAdXl5dnl5NDExAGJncjgAYmdyNABiZ3I0X2J5dGUAcmdiOAByZ2I0AHJnYjRfYnl0ZQBudjEyAG52MjEAYXJnYgByZ2JhAGFiZ3IAYmdyYQBncmF5MTZiZQB5MTZiZQBncmF5MTZsZQB5MTZsZQB5dXY0NDBwAHl1dmo0NDBwAHl1dmE0MjBwAHJnYjQ4YmUAcmdiNDhsZQByZ2I1NjViZQByZ2I1NjVsZQByZ2I1NTViZQByZ2I1NTVsZQBiZ3I1NjViZQBiZ3I1NjVsZQBiZ3I1NTViZQBiZ3I1NTVsZQB2YWFwaV9tb2NvAHZhYXBpX2lkY3QAdmFhcGlfdmxkAHl1djQyMHAxNmxlAHl1djQyMHAxNmJlAHl1djQyMnAxNmxlAHl1djQyMnAxNmJlAHl1djQ0NHAxNmxlAHl1djQ0NHAxNmJlAGR4dmEyX3ZsZAByZ2I0NDRsZQByZ2I0NDRiZQBiZ3I0NDRsZQBiZ3I0NDRiZQB5YTgAZ3JheThhAGJncjQ4YmUAYmdyNDhsZQB5dXY0MjBwOWJlAHl1djQyMHA5bGUAeXV2NDIwcDEwYmUAeXV2NDIwcDEwbGUAeXV2NDIycDEwYmUAeXV2NDIycDEwbGUAeXV2NDQ0cDliZQB5dXY0NDRwOWxlAHl1djQ0NHAxMGJlAHl1djQ0NHAxMGxlAHl1djQyMnA5YmUAeXV2NDIycDlsZQBnYnJwAGdicnA5YmUAZ2JycDlsZQBnYnJwMTBiZQBnYnJwMTBsZQBnYnJwMTZiZQBnYnJwMTZsZQB5dXZhNDIycAB5dXZhNDQ0cAB5dXZhNDIwcDliZQB5dXZhNDIwcDlsZQB5dXZhNDIycDliZQB5dXZhNDIycDlsZQB5dXZhNDQ0cDliZQB5dXZhNDQ0cDlsZQB5dXZhNDIwcDEwYmUAeXV2YTQyMHAxMGxlAHl1dmE0MjJwMTBiZQB5dXZhNDIycDEwbGUAeXV2YTQ0NHAxMGJlAHl1dmE0NDRwMTBsZQB5dXZhNDIwcDE2YmUAeXV2YTQyMHAxNmxlAHl1dmE0MjJwMTZiZQB5dXZhNDIycDE2bGUAeXV2YTQ0NHAxNmJlAHl1dmE0NDRwMTZsZQB2ZHBhdQB4eXoxMmxlAHh5ejEyYmUAbnYxNgBudjIwbGUAbnYyMGJlAHJnYmE2NGJlAHJnYmE2NGxlAGJncmE2NGJlAGJncmE2NGxlAHl2eXU0MjIAeWExNmJlAHlhMTZsZQBnYnJhcABnYnJhcDE2YmUAZ2JyYXAxNmxlAHFzdgBtbWFsAGQzZDExdmFfdmxkAGN1ZGEAMHJnYgByZ2IwADBiZ3IAYmdyMAB5dXY0MjBwMTJiZQB5dXY0MjBwMTJsZQB5dXY0MjBwMTRiZQB5dXY0MjBwMTRsZQB5dXY0MjJwMTJiZQB5dXY0MjJwMTJsZQB5dXY0MjJwMTRiZQB5dXY0MjJwMTRsZQB5dXY0NDRwMTJiZQB5dXY0NDRwMTJsZQB5dXY0NDRwMTRiZQB5dXY0NDRwMTRsZQBnYnJwMTJiZQBnYnJwMTJsZQBnYnJwMTRiZQBnYnJwMTRsZQB5dXZqNDExcABiYXllcl9iZ2dyOABiYXllcl9yZ2diOABiYXllcl9nYnJnOABiYXllcl9ncmJnOABiYXllcl9iZ2dyMTZsZQBiYXllcl9iZ2dyMTZiZQBiYXllcl9yZ2diMTZsZQBiYXllcl9yZ2diMTZiZQBiYXllcl9nYnJnMTZsZQBiYXllcl9nYnJnMTZiZQBiYXllcl9ncmJnMTZsZQBiYXllcl9ncmJnMTZiZQB4dm1jAHl1djQ0MHAxMGxlAHl1djQ0MHAxMGJlAHl1djQ0MHAxMmxlAHl1djQ0MHAxMmJlAGF5dXY2NGxlAGF5dXY2NGJlAHZpZGVvdG9vbGJveF92bGQAcDAxMGxlAHAwMTBiZQBnYnJhcDEyYmUAZ2JyYXAxMmxlAGdicmFwMTBiZQBnYnJhcDEwbGUAbWVkaWFjb2RlYwBncmF5MTJiZQB5MTJiZQBncmF5MTJsZQB5MTJsZQBncmF5MTBiZQB5MTBiZQBncmF5MTBsZQB5MTBsZQBwMDE2bGUAcDAxNmJlAGQzZDExAGdyYXk5YmUAeTliZQBncmF5OWxlAHk5bGUAZ2JycGYzMmJlAGdicnBmMzJsZQBnYnJhcGYzMmJlAGdicmFwZjMybGUAZHJtX3ByaW1lAG9wZW5jbABGYWlsZWQgdG8gbWFwIGZyYW1lIGludG8gZGVyaXZlZCBmcmFtZSBjb250ZXh0OiAlZC4KAEludmFsaWQgbWFwcGluZyBmb3VuZCB3aGVuIGF0dGVtcHRpbmcgdW5tYXAuCgBhdl9pbWFnZV9nZXRfbGluZXNpemUgZmFpbGVkCgBhYnMoc3JjX2xpbmVzaXplKSA+PSBieXRld2lkdGgAbGliYXZ1dGlsL2ltZ3V0aWxzLmMAYWJzKGRzdF9saW5lc2l6ZSkgPj0gYnl0ZXdpZHRoAFBpY3R1cmUgc2l6ZSAldXgldSBpcyBpbnZhbGlkCgBQaWN0dXJlIHNpemUgJXV4JXUgZXhjZWVkcyBzcGVjaWZpZWQgbWF4IHBpeGVsIGNvdW50ICVsbGQsIHNlZSB0aGUgZG9jdW1lbnRhdGlvbiBpZiB5b3Ugd2lzaCB0byBpbmNyZWFzZSBpdAoASU1HVVRJTFMAIWRzdC0+Zi0+YnVmWzBdAGxpYmF2Y29kZWMvaDI2NF9waWN0dXJlLmMAc3JjLT5mLT5idWZbMF0Ac3JjLT50Zi5mID09IHNyYy0+ZgAhZHN0LT5wcm9ncmVzcwBsaWJhdmNvZGVjL3V0aWxzLmMAYnVmX2luZGV4IDw9IGJ1Zl9zaXplAGxpYmF2Y29kZWMvaDI2NGRlYy5jAG5vIGZyYW1lIQoAcGljdC0+YnVmWzBdIHx8ICEqZ290X2ZyYW1lAER1cGxpY2F0aW5nIGZpZWxkICVkIHRvIGZpbGwgbWlzc2luZwoAc3RlcmVvX21vZGUAY2hlY2tlcmJvYXJkX3JsAGNoZWNrZXJib2FyZF9scgBjb2xfaW50ZXJsZWF2ZWRfcmwAY29sX2ludGVybGVhdmVkX2xyAHJvd19pbnRlcmxlYXZlZF9ybAByb3dfaW50ZXJsZWF2ZWRfbHIAcmlnaHRfbGVmdABsZWZ0X3JpZ2h0AGJvdHRvbV90b3AAdG9wX2JvdHRvbQBibG9ja19ybABibG9ja19scgBoYXJkd2FyZSBhY2NlbGVyYXRvciBmYWlsZWQgdG8gZGVjb2RlIHBpY3R1cmUKACVwIGZpbmlzaGVkICVkIGZpZWxkICVkCgBTUFMgaXMgdW5zZXQKAG5vIG1tY28gaGVyZQoAbW1jbzolZCAlZCAlZAoAbW1jbzogdW5yZWYgc2hvcnQgZmFpbHVyZQoAbW1jbzogdW5yZWYgc2hvcnQgJWQgY291bnQgJWQKAG1tY286IHVucmVmIGxvbmcgZmFpbHVyZQoAbW1jbzogY2Fubm90IGFzc2lnbiBjdXJyZW50IHBpY3R1cmUgdG8gc2hvcnQgYW5kIGxvbmcgYXQgdGhlIHNhbWUgdGltZQoAbW1jbzogY2Fubm90IGFzc2lnbiBjdXJyZW50IHBpY3R1cmUgdG8gMiBsb25nIHRlcm0gcmVmZXJlbmNlcwoAIWgtPmN1cl9waWNfcHRyLT5sb25nX3JlZgBsaWJhdmNvZGVjL2gyNjRfcmVmcy5jAGlsbGVnYWwgc2hvcnQgdGVybSByZWZlcmVuY2UgYXNzaWdubWVudCBmb3Igc2Vjb25kIGZpZWxkIGluIGNvbXBsZW1lbnRhcnkgZmllbGQgcGFpciAoZmlyc3QgZmllbGQgaXMgbG9uZyB0ZXJtKQoAaWxsZWdhbCBzaG9ydCB0ZXJtIGJ1ZmZlciBzdGF0ZSBkZXRlY3RlZAoAbnVtYmVyIG9mIHJlZmVyZW5jZSBmcmFtZXMgKCVkKyVkKSBleGNlZWRzIG1heCAoJWQ7IHByb2JhYmx5IGNvcnJ1cHQgaW5wdXQpLCBkaXNjYXJkaW5nIG9uZQoAbG9uZyB0ZXJtIGxpc3Q6CgAldSBmbjolZCBwb2M6JWQgJXAKAHNob3J0IHRlcm0gbGlzdDoKAHJlbW92ZSBzaG9ydCAlZCBjb3VudCAlZAoAJWQgJWQgJXAKAEVycm9yIHNwbGl0dGluZyB0aGUgaW5wdXQgaW50byBOQUwgdW5pdHMuCgBJbnZhbGlkIGludGVyIElEUiBmcmFtZQoAaW52YWxpZCBtaXhlZCBJRFIgLyBub24gSURSIGZyYW1lcyBjYW5ub3QgYmUgZGVjb2RlZCBpbiBzbGljZSBtdWx0aXRocmVhZGluZyBtb2RlCgBkYXRhIHBhcnRpdGlvbmluZwBTUFMgZGVjb2RpbmcgZmFpbHVyZSwgdHJ5aW5nIGFnYWluIHdpdGggdGhlIGNvbXBsZXRlIE5BTAoAVW5rbm93biBOQUwgY29kZTogJWQgKCVkIGJpdHMpCgBkZWNvZGVfc2xpY2VfaGVhZGVyIGVycm9yCgBpZ25vcmluZyBsYXN0IG1pc3Npbmcgc2xpY2UKAENhbm5vdCB1c2UgcHJldmlvdXMgcGljdHVyZSBpbiBlcnJvciBjb25jZWFsbWVudAoAQ2Fubm90IHVzZSBuZXh0IHBpY3R1cmUgaW4gZXJyb3IgY29uY2VhbG1lbnQKAFdhcm5pbmcgTVZzIG5vdCBhdmFpbGFibGUKACUyWCAACgBjb25jZWFsaW5nICVkIERDLCAlZCBBQywgJWQgTVYgZXJyb3JzIGluICVjIGZyYW1lCgBzLT5hdmN0eC0+Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURfSDI2NABsaWJhdmNvZGVjL2Vycm9yX3Jlc2lsaWVuY2UuYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9zLT5xdWFydGVyX3NhbXBsZQBndWVzc19kYygpIGlzIG91dCBvZiBtZW1vcnkKAG5leHRfYmxvY2tsaXN0X2xlbmd0aCA8PSBtYl9oZWlnaHQgKiBtYl93aWR0aAB0aHJlYWQgYXdhaXRpbmcgJWQgZmllbGQgJWQgZnJvbSAlcAoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFBQUyAoJXp1ID4gJXp1KQoAc3BzX2lkICV1IG91dCBvZiByYW5nZQoASW52YWxpZCBsdW1hIGJpdCBkZXB0aD0lZAoAVW5pbXBsZW1lbnRlZCBsdW1hIGJpdCBkZXB0aD0lZABGTU8gbm90IHN1cHBvcnRlZAoAcmVmZXJlbmNlIG92ZXJmbG93IChwcHMpCgBDQUJBQwBDQVZMQwB3ZWlnaHRlZABMUEFSAENPTlNUUgBSRURVADh4OERDVABwcHM6JXUgc3BzOiV1ICVzIHNsaWNlX2dyb3VwczolZCByZWY6JXUvJXUgJXMgcXA6JWQvJWQvJWQvJWQgJXMgJXMgJXMgJXMKAAYKDRASFxkbCgsQEhcZGx0NEBIXGRsdHxASFxkbHR8hEhcZGx0fISQXGRsdHyEkJhkbHR8hJCYoGx0fISQmKCoJDQ8RExUWGA0NERMVFhgZDxETFRYYGRsRExUWGBkbHBMVFhgZGxweFRYYGRscHiAWGBkbHB4gIRgZGxweICEjBg0UHA0UHCAUHCAlHCAlKgoOFBgOFBgbFBgbHhgbHiIAAQQIBQIDBgkMDQoHCw4PAAABCBAJAgMKERggGRILBAUMExohKDApIhsUDQYHDhUcIyoxODkyKyQdFg8XHiUsMzo7NC0mHycuNTw9Ni83Pj9kZWx0YSBzY2FsZSAlZCBpcyBpbnZhbGlkCgBDdXJyZW50IHByb2ZpbGUgZG9lc24ndCBwcm92aWRlIG1vcmUgUkJTUCBkYXRhIGluIFBQUywgc2tpcHBpbmcKACBpcyBub3QgaW1wbGVtZW50ZWQuIFVwZGF0ZSB5b3VyIEZGbXBlZyB2ZXJzaW9uIHRvIHRoZSBuZXdlc3Qgb25lIGZyb20gR2l0LiBJZiB0aGUgcHJvYmxlbSBzdGlsbCBvY2N1cnMsIGl0IG1lYW5zIHRoYXQgeW91ciBmaWxlIGhhcyBhIGZlYXR1cmUgd2hpY2ggaGFzIG5vdCBiZWVuIGltcGxlbWVudGVkLgoASWYgeW91IHdhbnQgdG8gaGVscCwgdXBsb2FkIGEgc2FtcGxlIG9mIHRoaXMgZmlsZSB0byBmdHA6Ly91cGxvYWQuZmZtcGVnLm9yZy9pbmNvbWluZy8gYW5kIGNvbnRhY3QgdGhlIGZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QuIChmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZykKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBTUFMKAGNocm9tYV9mb3JtYXRfaWRjICV1AHNlcGFyYXRlIGNvbG9yIHBsYW5lcyBhcmUgbm90IHN1cHBvcnRlZAoARGlmZmVyZW50IGNocm9tYSBhbmQgbHVtYSBiaXQgZGVwdGgAaWxsZWdhbCBiaXQgZGVwdGggdmFsdWUgKCVkLCAlZCkKAGxvZzJfbWF4X2ZyYW1lX251bV9taW51czQgb3V0IG9mIHJhbmdlICgwLTEyKTogJWQKAGxvZzJfbWF4X3BvY19sc2IgKCVkKSBpcyBvdXQgb2YgcmFuZ2UKAHBvY19jeWNsZV9sZW5ndGggb3ZlcmZsb3cgJWQKAGlsbGVnYWwgUE9DIHR5cGUgJWQKAHRvbyBtYW55IHJlZmVyZW5jZSBmcmFtZXMgJWQKAGhlaWdodCBvdmVyZmxvdwoAbWJfd2lkdGgvaGVpZ2h0IG92ZXJmbG93CgBkaXNjYXJkaW5nIHNwcyBjcm9wcGluZywgb3JpZ2luYWwgdmFsdWVzIGFyZSBsOiVkIHI6JWQgdDolZCBiOiVkCgBjcm9wIHZhbHVlcyBpbnZhbGlkICVkICVkICVkICVkIC8gJWQgJWQKAFZVSQBPdmVycmVhZCAlcyBieSAlZCBiaXRzCgBNQi1BRkYAUElDLUFGRgBGUk0AOEI4AEdyYXkANDIwAAA0MjIAADQ0NAAAc3BzOiV1IHByb2ZpbGU6JWQvJWQgcG9jOiVkIHJlZjolZCAlZHglZCAlcyAlcyBjcm9wOiV1LyV1LyV1LyV1ICVzICVzICVkLyVkIGIlZCByZW86JWQKAGlsbGVnYWwgYXNwZWN0IHJhdGlvCgBUcnVuY2F0ZWQgVlVJCgB0aW1lX3NjYWxlL251bV91bml0c19pbl90aWNrIGludmFsaWQgb3IgdW5zdXBwb3J0ZWQgKCV1LyV1KQoAQ2xpcHBpbmcgaWxsZWdhbCBudW1fcmVvcmRlcl9mcmFtZXMgJWQKAGNwYl9jb3VudCAlZCBpbnZhbGlkCgBnYnIAcmVzZXJ2ZWQAY2hyb21hLWRlcml2ZWQtbmMAY2hyb21hLWRlcml2ZWQtYwBpY3RjcABHcmVlbiBNZXRhZGF0YSBJbmZvIFNFSSBtZXNzYWdlCgAgIGdyZWVuX21ldGFkYXRhX3R5cGU6ICVkCgAgIGdyZWVuX21ldGFkYXRhX3BlcmlvZF90eXBlOiAlZAoAICBncmVlbl9tZXRhZGF0YV9udW1fc2Vjb25kczogJWQKACAgZ3JlZW5fbWV0YWRhdGFfbnVtX3BpY3R1cmVzOiAlZAoAICBTRUkgR1JFRU4gQ29tcGxleGl0eSBNZXRyaWNzOiAlZiAlZiAlZiAlZgoAICB4c2RfbWV0cmljX3R5cGU6ICVkCgAgIHhzZF9tZXRyaWNfdmFsdWU6ICVmCgBTRUkgdHlwZSAlZCBzaXplICVkIHRydW5jYXRlZCBhdCAlZAoAdW5rbm93biBTRUkgdHlwZSAl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4izgIu4i8SjxIfkj+yEAJgIhDRcjDTr9R/oq+zL9Nv4+ADoBP/5I/0r3W/tD+xv9J/4sAC7wQPhE9k76TfZW9FzxN/Y8+j78QfRJ+Ez5UPdY7279R/oq+zL9Nv4+ADoBP/5I/0r3W/tD+xv9J/4sAC7wQPhE9k76TfZW9FzxN/Y8+j78QfRJ+Ez5UPdY7279Rvhd9lrif/1G+F32WuJ//Ub4XfZa4n9saWJhdnV0aWwvbWVtX2ludGVybmFsLmgATXVsdGlwbGUgZmZfdGhyZWFkX2ZpbmlzaF9zZXR1cCgpIGNhbGxzCgBUb28gbWFueSBmaWVsZHMKAEJyb2tlbiBmcmFtZSBwYWNrZXRpemluZwoAc2wgPT0gaC0+c2xpY2VfY3R4AFBQUyBjaGFuZ2VkIGJldHdlZW4gc2xpY2VzCgBTUFMgY2hhbmdlZCBpbiB0aGUgbWlkZGxlIG9mIHRoZSBmcmFtZQoAQ2hhbmdpbmcgZmllbGQgbW9kZSAoJWQgLT4gJWQpIGJldHdlZW4gc2xpY2VzIGlzIG5vdCBhbGxvd2VkCgB1bnNldCBjdXJfcGljX3B0ciBvbiBzbGljZSAlZAoASW52YWxpZCBtaXggb2YgSURSIGFuZCBub24tSURSIHNsaWNlcwoAZmlyc3RfbWJfaW5fc2xpY2Ugb3ZlcmZsb3cKAFBvc3NpYmx5IHRvbyBtYW55IHNsaWNlcyAoJWQgPj0gJWQpLCBpbmNyZWFzZSBNQVhfU0xJQ0VTIGFuZCByZWNvbXBpbGUgaWYgdGhlcmUgYXJlIGFydGlmYWN0cwoAVABCAEYAIGZpeAAgSURSAGMAU1BBVABURU1QAHNsaWNlOiVkICVzIG1iOiVkICVjJXMlcyBmcmFtZTolZCBwb2M6JWQvJWQgcmVmOiVkLyVkIHFwOiVkIGxvb3A6JWQ6JWQ6JWQgd2VpZ2h0OiVkJXMgJXMKAGN1ci0+bWJhZmYgPT0gKGgpLT5tYl9hZmZfZnJhbWUAbGliYXZjb2RlYy9oMjY0X2RpcmVjdC5jAGNvIGxvY2F0ZWQgUE9DcyB1bmF2YWlsYWJsZQoAcG9jZGlmZiBvdmVyZmxvdwoAcG9jZGlmZjAgb3ZlcmZsb3cKAGFic19kaWZmX3BpY19udW0gb3ZlcmZsb3cKAGxvbmdfdGVybV9waWNfaWR4IG92ZXJmbG93CgByZWZlcmVuY2UgcGljdHVyZSBtaXNzaW5nIGR1cmluZyByZW9yZGVyCgBNaXNzaW5nIHJlZmVyZW5jZSBwaWN0dXJlLCBkZWZhdWx0IGlzICVkCgBhdl9idWZmZXJfZ2V0X3JlZl9jb3VudChzbC0+cmVmX2xpc3RbbGlzdF1baW5kZXhdLnBhcmVudC0+Zi0+YnVmWzBdKSA+IDAAbGVuIDw9IDMyAERpc2NhcmRpbmcgbWlzbWF0Y2hpbmcgcmVmZXJlbmNlCgBpbmRleCA8IGRlZl9sZW4AaC0+Y3VyX3BpY19wdHIAaC0+Y3VyX3BpY19wdHItPmYtPmJ1ZlswXQBJbnZhbGlkIGZpZWxkIG1vZGUgY29tYmluYXRpb24gJWQvJWQKAEZvdW5kIHJlZmVyZW5jZSBhbmQgbm9uLXJlZmVyZW5jZSBmaWVsZHMgaW4gdGhlIHNhbWUgZnJhbWUsIHdoaWNoAEZyYW1lIG51bSBnYXAgJWQgJWQKAEludmFsaWQgUE9DICVkPCVkCgBJbmNyZWFzaW5nIHJlb3JkZXIgYnVmZmVyIHRvICVkCgBwaWNzIDw9IDE2AG9vbwBubyBwaWN0dXJlICVzCgBBdHRlbXB0IHRvIHN0YXJ0IGEgZnJhbWUgb3V0c2lkZSBTRVRVUCBzdGF0ZQoAbm8gZnJhbWUgYnVmZmVyIGF2YWlsYWJsZQoAZGVzYy0+ZmxhZ3MgJiAoMSA8PCA0KQAhcGljLT5mLT5kYXRhWzBdACFwaWMtPmh3YWNjZWxfcGljdHVyZV9wcml2YXRlAHRocmVhZF9nZXRfYnVmZmVyKCkgZmFpbGVkCgBnZXRfYnVmZmVyKCkgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBmZl90aHJlYWRfZmluaXNoX3NldHVwKCkKAGdldF9idWZmZXIoKSBmYWlsZWQKAHZpZGVvX2dldF9idWZmZXI6IGltYWdlIHBhcmFtZXRlcnMgaW52YWxpZAoAcGljLT5kYXRhWypdIT1OVUxMIGluIGdldF9idWZmZXJfaW50ZXJuYWwKAGZyYW1lLT5kYXRhW2ldAEJ1ZmZlciByZXR1cm5lZCBieSBnZXRfYnVmZmVyMigpIGRpZCBub3QgemVybyB1bnVzZWQgcGxhbmUgcG9pbnRlcnMKAEluY29uc2lzdGVudCBjaGFubmVsIGNvbmZpZ3VyYXRpb24uCgBUb28gbWFueSBjaGFubmVsczogJWQuCgBjaGFuZ2luZyB3aWR0aCAlZCAtPiAlZCAvIGhlaWdodCAlZCAtPiAlZCBvbiBzbGljZSAlZAoAUmVpbml0IGNvbnRleHQgdG8gJWR4JWQsIHBpeF9mbXQ6ICVzCgBoMjY0X3NsaWNlX2hlYWRlcl9pbml0KCkgZmFpbGVkCgBDb3VsZCBub3QgYWxsb2NhdGUgbWVtb3J5CgBVbnN1cHBvcnRlZCBiaXQgZGVwdGggJWQKAGNvbnRleHRfaW5pdCgpIGZhaWxlZC4KAENhbm5vdCBhbGxvY2F0ZSBtZW1vcnkuCgBSZWZlcmVuY2Ugbm90IGF2YWlsYWJsZSBmb3IgZXJyb3IgY29uY2VhbGluZwoAUmVmZXJlbmNlIGludmFsaWQKAGxpYmF2Y29kZWMvaDI2NHByZWQuYwBiaXRfZGVwdGg8PTgAbGliYXZjb2RlYy9oMjY0ZHNwLmMAABAAIICgDA0UFQ4PFhccHSQlHh8mJzQ1PD02Nz4/REVMTUZHTk9cXWRlXl9mZ2xtdHVub3Z3AChQAAQBCAwFCQ0CBgoOAwcLDwAACRESDCgbByM5HR46JjUvAQIYCxMwFA4qMhYlOx88NwgDIAQaKQ0VMSsPLDQnPT4QChkFISIGHDgkFzMtLjY/AAAIEAEJGCARAhkoMDghCgMSKTE5GgsEEyIqMjobDAUUIyszOxwNBhUkLDQ8HQ4WJS01PR4HDyYuNj4XHycvNz8AAAkCOBIaIhsjHCQdLQc2JwgYGSEpCyoMKw0sDjUPPi8QICgKMQQyBTMGNBY9Jhc3AREwAzkTOhQ7FTwlHi4fPwAAAQI1Awc2GwQmKQgiNzAcPgUnLiwqFgkYIzs4MRIdCz80BholKCEvPS0rFRc6EQozGSQgPBQ5EDIfEw8eDg0MaWdub3JpbmcgaW52YWxpZCBTQVI6ICVkLyVkCgBzcHMtPmNyb3BfcmlnaHQgKyBzcHMtPmNyb3BfbGVmdCA8ICh1bnNpZ25lZCloLT53aWR0aABzcHMtPmNyb3BfdG9wICsgc3BzLT5jcm9wX2JvdHRvbSA8ICh1bnNpZ25lZCloLT5oZWlnaHQAZ2V0X2Zvcm1hdCgpIGNhbm5vdCBiZSBjYWxsZWQgYWZ0ZXIgZmZfdGhyZWFkX2ZpbmlzaF9zZXR1cCgpCgBuID49IDEASW52YWxpZCBmb3JtYXQgcmV0dXJuZWQgYnkgZ2V0X2Zvcm1hdCgpIGNhbGxiYWNrLgoARm9ybWF0ICVzIGNob3NlbiBieSBnZXRfZm9ybWF0KCkuCgBJbnZhbGlkIHJldHVybiBmcm9tIGdldF9mb3JtYXQoKTogJXMgbm90IGluIHBvc3NpYmxlIGxpc3QuCgBJbnZhbGlkIHNldHVwIGZvciBmb3JtYXQgJXM6IGRvZXMgbm90IG1hdGNoIHRoZSBmb3JtYXQgb2YgdGhlIHByb3ZpZGVkIGZyYW1lcyBjb250ZXh0LgoASW52YWxpZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBkb2VzIG5vdCBtYXRjaCB0aGUgdHlwZSBvZiB0aGUgcHJvdmlkZWQgZGV2aWNlIGNvbnRleHQuCgBJbnZhbGlkIHNldHVwIGZvciBmb3JtYXQgJXM6IG1pc3NpbmcgY29uZmlndXJhdGlvbi4KAEZvcm1hdCAlcyByZXF1aXJlcyBod2FjY2VsIGluaXRpYWxpc2F0aW9uLgoARm9ybWF0ICVzIG5vdCB1c2FibGUsIHJldHJ5aW5nIGdldF9mb3JtYXQoKSB3aXRob3V0IGl0LgoASWdub3JpbmcgZXhwZXJpbWVudGFsIGh3YWNjZWw6ICVzCgBGYWlsZWQgc2V0dXAgZm9yIGZvcm1hdCAlczogaHdhY2NlbCBpbml0aWFsaXNhdGlvbiByZXR1cm5lZCBlcnJvci4KACFoLT5zZXR1cF9maW5pc2hlZABzbGljZSB0eXBlICVkIHRvbyBsYXJnZSBhdCAlZAoAQSBub24taW50cmEgc2xpY2UgaW4gYW4gSURSIE5BTCB1bml0LgoARnJhbWUgbnVtIGNoYW5nZSBmcm9tICVkIHRvICVkCgBUaGlzIHN0cmVhbSB3YXMgZ2VuZXJhdGVkIGJ5IGEgYnJva2VuIGVuY29kZXIsIGludmFsaWQgOHg4IGluZmVyZW5jZQoAY2FiYWNfaW5pdF9pZGMgJXUgb3ZlcmZsb3cKAFFQICV1IG91dCBvZiByYW5nZQoAZGVibG9ja2luZ19maWx0ZXJfaWRjICV1IG91dCBvZiByYW5nZQoAZGVibG9ja2luZyBmaWx0ZXIgcGFyYW1ldGVycyAlZCAlZCBvdXQgb2YgcmFuZ2UKAGlsbGVnYWwgbG9uZyByZWYgaW4gbWVtb3J5IG1hbmFnZW1lbnQgY29udHJvbCBvcGVyYXRpb24gJWQKAGx1bWFfbG9nMl93ZWlnaHRfZGVub20gJWQgaXMgb3V0IG9mIHJhbmdlCgBjaHJvbWFfbG9nMl93ZWlnaHRfZGVub20gJWQgaXMgb3V0IG9mIHJhbmdlCgBPdXQgb2YgcmFuZ2Ugd2VpZ2h0CgByZWZlcmVuY2UgY291bnQgb3ZlcmZsb3cKAGlsbGVnYWwgbW9kaWZpY2F0aW9uX29mX3BpY19udW1zX2lkYyAldQoAcmVmZXJlbmNlIG92ZXJmbG93ICV1ID4gJXUgb3IgJXUgPiAldQoASW52YWxpZCB6ZXJvLXNpemVkIFZDTCBOQUwgdW5pdAoARXhjZWVkZWQgbmV4dCBOQUxGRiBwb3NpdGlvbiwgcmUtc3luY2luZy4KAE5vIHN0YXJ0IGNvZGUgaXMgZm91bmQuCgBOQUxGRjogQ29uc3VtZWQgb25seSAlZCBieXRlcyBpbnN0ZWFkIG9mICVkCgBJbnZhbGlkIE5BTCB1bml0ICVkLCBza2lwcGluZy4KAG5hbF91bml0X3R5cGU6ICVkLCBuYWxfcmVmX2lkYzogJWQKAG5hbF91bml0X3R5cGU6ICVkKCVzKSwgbnVoX2xheWVyX2lkOiAlZCwgdGVtcG9yYWxfaWQ6ICVkCgA/AFNFSV9TVUZGSVgAU0VJX1BSRUZJWABGRF9OVVQARU9CX05VVABFT1NfTlVUAEFVRABQUFMAU1BTAFZQUwBDUkFfTlVUAElEUl9OX0xQAElEUl9XX1JBREwAQkxBX05fTFAAQkxBX1dfUkFETABCTEFfV19MUABSQVNMX1IAUkFTTF9OAFJBRExfUgBSQURMX04AU1RTQV9SAFNUU0FfTgBUU0FfUgBUU0FfTgBUUkFJTF9SAFRSQUlMX04AbmFsLT5za2lwcGVkX2J5dGVzX3Bvc19zaXplID49IG5hbC0+c2tpcHBlZF9ieXRlcwBsaWJhdmNvZGVjL2gyNjQ1X3BhcnNlLmMAdmFsIHx8ICFtaW5fc2l6ZQAuL2xpYmF2dXRpbC9tZW1faW50ZXJuYWwuaABhdmNDICVkIHRvbyBzaG9ydAoARGVjb2Rpbmcgc3BzICVkIGZyb20gYXZjQyBmYWlsZWQKAERlY29kaW5nIHBwcyAlZCBmcm9tIGF2Y0MgZmFpbGVkCgBTUFMgZGVjb2RpbmcgZmFpbHVyZSwgdHJ5aW5nIGFnYWluIGFmdGVyIGVzY2FwaW5nIHRoZSBOQUwKAHB0aHJlYWRfb25jZSBoYXMgZmFpbGVkLgBFcnJvciByZXNpbGllbmNlIHdpdGggc2xpY2UgdGhyZWFkcyBpcyBlbmFibGVkLiBJdCBpcyB1bnNhZmUgYW5kIHVuc3VwcG9ydGVkIGFuZCBtYXkgY3Jhc2guIFVzZSBpdCBhdCB5b3VyIG93biByaXNrCgACAAAABgEAAAYGAwAGBwcGBggIBwEAAAAHAQAABAYBAAMDAgUCAwIAAQAAAAcCAAAHBwMACQcHBQkJBwYKCgkHCwsKBwwMCwoNDAwLAQAAAA8BAAAODQEABwwLAQYFCgEHBgQJBwYFCAcGBQQHBQQEAQAAAAYCAAAIBgMACQgHBQoJCAYLCgkHDQsKCA0NCwkNDQ0KDg4NCw4ODg0PDw4ODw8PDhAPDw8QEBAPEBAQEBAQEBACAAAABgIAAAYFAwAHBgYECAYGBAgHBwUJCAgGCwkJBgsLCwcMCwsJDAwMCwwMDAsNDQ0MDQ0NDQ0ODQ0ODg4NDg4ODgQAAAAGBAAABgUEAAYFBQQHBQUEBwUFBAcGBgQHBgYECAcHBQgIBwYJCAgHCQkICAkJCQgKCQkJCgoKCgoKCgoKCgoKBgAAAAYGAAAGBgYABgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYBAAAABQEAAAcEAQAHBgUDBwYFAwcGBQQPBgUECw4FBAgKDQQPDgkECwoNDA8OCQwLCg0IDwEJDAsODQgHCgkMBAYFCAMAAAALAgAABwcDAAcKCQUHBgUEBAYFBgcGBQgPBgUECw4NBA8KCQQLDg0MCAoJCA8ODQwLCgkMBwsGCAkICgEHBgUEDwAAAA8OAAALDw0ACAwODA8KCwsLCAkKCQ4NCQgKCQgPDg0NCw4KDA8KDQwLDgkMCAoNCA0HCQwJDAsKBQgHBgEEAwIDAAAAAAEAAAQFBgAICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+PwECAwMBAgIAAQEAAAEBAQABAQAAAQAAAAEDAwQEBAUFAwIDAwMDAwADAwICAwMAAAMCAgIDAAAAAgICAgAAAAACAgEAAAAAAAEBAAAAAAAAAQIDAgMBAQAAAQEEBQYHAAABAQIGBwAABgABAgcAAAAAAQIDAAAAAAABAQAAAAAAAAEAAAAAAAABAwMEBAUFBgYHBwgICQkJAwMDAwMEBAQEBQUGBgYGAAQDAwMEBAMDBAUFBgUGAAAFAwQEAwMDBAMEBQUFAAAABAQEAwMDAwMEBQQFAAAAAAYFAwMDAwMDBAMGAAAAAAAGBQMDAwIDBAMGAAAAAAAABgQFAwICAwMGAAAAAAAAAAYGBAICAwIFAAAAAAAAAAAFBQMCAgIEAAAAAAAAAAAABAQDAwEDAAAAAAAAAAAAAAQEAgEDAAAAAAAAAAAAAAADAwECAAAAAAAAAAAAAAAAAgIBAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQMCAwIDAgMCAwIDAgMCAQcGBQQDBQQDAgMCAwIBAAAFBwYFBAMEAwIDAgEBAAAAAwcFBAYFBAMDAgIBAAAAAAUEAwcGBQQDAgEBAAAAAAABAQcGBQQDAgEBAAAAAAAAAQEFBAMDAgEBAAAAAAAAAAEBAQMDAgIBAAAAAAAAAAABAAEDAgEBAQAAAAAAAAAAAQABAwIBAQAAAAAAAAAAAAABAQIBAwAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAEBAQAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAAAAAAAAABAgIAAAAAAAAAAAAAAAAAAgICAgAAAAAAAAAAAAAAAAICAgMDAAAAAAAAAAAAAAACAgMDAwMAAAAAAAAAAAAAAgMDAwMDAwAAAAAAAAAAAAMDAwMDAwMEBQYHCAkKCwABAAAAAAAAAAAAAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAMCAQAAAAAAAAAAAAAAAAADAgEBAAAAAAAAAAAAAAAAAwIDAgEAAAAAAAAAAAAAAAMAAQMCBQQAAAAAAAAAAAAHBgUEAwIBAQEBAQEBAQEAbmJfY29kZXMgKyAxIDw9IChzaXplb2YobG9jYWxidWYpIC8gc2l6ZW9mKChsb2NhbGJ1ZilbMF0pKQBsaWJhdmNvZGVjL2JpdHN0cmVhbS5jAHN5bWJvbHNfc2l6ZSA8PSAyIHx8ICFzeW1ib2xzAFRvbyBsb25nIFZMQyAoJWQpIGluIGluaXRfdmxjCgBJbnZhbGlkIGNvZGUgJXggZm9yICVkIGluIGluaXRfdmxjCgBuZWVkZWQgJWQgaGFkICVkCgBpbmNvcnJlY3QgY29kZXMKAGgyNjRfc2xpY2VfaGVhZGVyX2luaXQoKSBmYWlsZWQASDI2NCBEZWNvZGVyAGlzX2F2YwBpcyBhdmMAbmFsX2xlbmd0aF9zaXplAGVuYWJsZV9lcgBFbmFibGUgZXJyb3IgcmVzaWxpZW5jZSBvbiBkYW1hZ2VkIGZyYW1lcyAodW5zYWZlKQB4MjY0X2J1aWxkAEFzc3VtZSB0aGlzIHgyNjQgdmVyc2lvbiBpZiBubyB4MjY0IHZlcnNpb24gZm91bmQgaW4gYW55IFNFSQBwIDw9IGVuZABRMjY0AHBwc19pZCAldSBvdXQgb2YgcmFuZ2UKAG5vbi1leGlzdGluZyBQUFMgJXUgcmVmZXJlbmNlZAoAbm9uLWV4aXN0aW5nIFNQUyAldSByZWZlcmVuY2VkCgBtaXNzaW5nIHBpY3R1cmUgaW4gYWNjZXNzIHVuaXQgd2l0aCBzaXplICVkCgBpbGxlZ2FsIHJlb3JkZXJpbmdfb2ZfcGljX251bXNfaWRjICVkCgByZWZlcmVuY2UgY291bnQgJWQgb3ZlcmZsb3cKAGlsbGVnYWwgbWVtb3J5IG1hbmFnZW1lbnQgY29udHJvbCBvcGVyYXRpb24gJWQKAEludmFsaWQgTkFMIHVuaXQgc2l6ZSAoJWQgPiAlZCkuCgBBVkMtcGFyc2VyOiBuYWwgbGVuZ3RoIHNpemUgaW52YWxpZAoAQVZDLXBhcnNlcjogbmFsIHNpemUgJWQgcmVtYWluaW5nICVkCgAAAAEAAQIAAQIDAQIDAgMDAAEAAgEAAwIBAAMCAQMCAwAAAQABAgABAgMAAQIDBAABAgMEBQABAgMEBQYAAQIDBAUGBwECAwQFBgcCAwQFBgcDBAUGBwQFBgcFBgcGBwcAAQACAQADAgEABAMCAQAFBAMCAQAGBQQDAgEABwYFBAMCAQAHBgUEAwIBBwYFBAMCBwYFBAMHBgUEBwYFBwYHbWlzc2luZyBwaWN0dXJlIGluIGFjY2VzcyB1bml0CgBJbnZhbGlkIHNsaWNlIHNlZ21lbnQgYWRkcmVzczogJXUuCgBVbmtub3duIHNsaWNlIHR5cGU6ICVkLgoASW52YWxpZCBVRSBnb2xvbWIgY29kZQoARGVjb2RpbmcgU0VJCgBTa2lwcGVkIFNVRkZJWCBTRUkgJWQKAFNraXBwZWQgUFJFRklYIFNFSSAlZAoAbnVtX3Nwc19pZHNfbWludXMxICVkIGludmFsaWQKAGFjdGl2ZV9wYXJhbWV0ZXJfc2V0X2lkICVkIGludmFsaWQKAEJPVFRPTSBGaWVsZAoAVE9QIEZpZWxkCgBEZWNvZGluZyBQUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBQUFMgKCV0ZCA+ICV6dSkKAFBQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBTUFMgaWQgb3V0IG9mIHJhbmdlOiAlZAoAU1BTICV1IGRvZXMgbm90IGV4aXN0LgoAZGlmZl9jdV9xcF9kZWx0YV9kZXB0aCAlZCBpcyBpbnZhbGlkCgBwcHNfY2JfcXBfb2Zmc2V0IG91dCBvZiByYW5nZTogJWQKAHBwc19jcl9xcF9vZmZzZXQgb3V0IG9mIHJhbmdlOiAlZAoAbnVtX3RpbGVfY29sdW1uc19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAbnVtX3RpbGVfcm93c19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoASW52YWxpZCB0aWxlIHdpZHRocy4KAEludmFsaWQgdGlsZSBoZWlnaHRzLgoAcHBzX2JldGFfb2Zmc2V0X2RpdjIgb3V0IG9mIHJhbmdlOiAlZAoAcHBzX3RjX29mZnNldF9kaXYyIG91dCBvZiByYW5nZTogJWQKAGxvZzJfcGFyYWxsZWxfbWVyZ2VfbGV2ZWxfbWludXMyIG91dCBvZiByYW5nZTogJWQKAE92ZXJyZWFkIFBQUyBieSAlZCBiaXRzCgBjaHJvbWFfcXBfb2Zmc2V0X2xpc3RfbGVuX21pbnVzMSBzaGFsbCBiZSBpbiB0aGUgcmFuZ2UgWzAsIDVdLgoAY2JfcXBfb2Zmc2V0X2xpc3Qgbm90IHRlc3RlZCB5ZXQuCgBJbnZhbGlkIGRlbHRhIGluIHNjYWxpbmcgbGlzdCBkYXRhOiAlZC4KABAQEBAREhUYEBAQEBETFhkQEBESFBYZHRAQEhUYGx8kEREUGB4jKS8SExYbIyw2QRUWGR8pNkZYGBkdJC9BWHMQEBAQERIUGBAQEBESFBgZEBAREhQYGRwQERIUGBkcIRESFBgZHCEpEhQYGRwhKTYUGBkcISk2RxgZHCEpNkdbRGVjb2RpbmcgU1BTCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgU1BTICgldGQgPiAlenUpCgBQYXJzZWQgU1BTOiBpZCAlZDsgY29kZWQgd3hoOiAlZHglZDsgY3JvcHBlZCB3eGg6ICVkeCVkOyBwaXhfZm10OiAlcy4KACEocy0+c3BzX2xpc3RbaWRdICYmIHMtPnNwcyA9PSAoSEVWQ1NQUyopcy0+c3BzX2xpc3RbaWRdLT5kYXRhKQBsaWJhdmNvZGVjL2hldmNfcHMuYwBWUFMgaWQgb3V0IG9mIHJhbmdlOiAlZAoAVlBTICVkIGRvZXMgbm90IGV4aXN0CgBzcHNfbWF4X3N1Yl9sYXllcnMgb3V0IG9mIHJhbmdlOiAlZAoAY2hyb21hX2Zvcm1hdF9pZGMgJWQgaXMgaW52YWxpZAoAZGlzY2FyZGluZyBzcHMgY29uZm9ybWFuY2Ugd2luZG93LCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JXUgcjoldSB0OiV1IGI6JXUKAEx1bWEgYml0IGRlcHRoICglZCkgaXMgZGlmZmVyZW50IGZyb20gY2hyb21hIGJpdCBkZXB0aCAoJWQpLCB0aGlzIGlzIHVuc3VwcG9ydGVkLgoAbG9nMl9tYXhfcGljX29yZGVyX2NudF9sc2JfbWludXM0IG91dCByYW5nZTogJWQKAHNwc19tYXhfZGVjX3BpY19idWZmZXJpbmdfbWludXMxIG91dCBvZiByYW5nZTogJWQKAHNwc19tYXhfbnVtX3Jlb3JkZXJfcGljcyBvdXQgb2YgcmFuZ2U6ICVkCgBJbnZhbGlkIHZhbHVlICVkIGZvciBsb2cyX21pbl9jYl9zaXplAEludmFsaWQgdmFsdWUgJWQgZm9yIGxvZzJfZGlmZl9tYXhfbWluX2NvZGluZ19ibG9ja19zaXplAEludmFsaWQgdmFsdWUgZm9yIGxvZzJfbWluX3RiX3NpemUASW52YWxpZCB2YWx1ZSAlZCBmb3IgbG9nMl9kaWZmX21heF9taW5fdHJhbnNmb3JtX2Jsb2NrX3NpemUAUENNIGJpdCBkZXB0aCAoJWQsICVkKSBpcyBncmVhdGVyIHRoYW4gbm9ybWFsIGJpdCBkZXB0aCAoJWQpCgBUb28gbWFueSBzaG9ydCB0ZXJtIFJQUzogJWQuCgBUb28gbWFueSBsb25nIHRlcm0gcmVmIHBpY3M6ICVkLgoAZXh0ZW5kZWRfcHJlY2lzaW9uX3Byb2Nlc3NpbmdfZmxhZyBub3QgeWV0IGltcGxlbWVudGVkCgBoaWdoX3ByZWNpc2lvbl9vZmZzZXRzX2VuYWJsZWRfZmxhZyBub3QgeWV0IGltcGxlbWVudGVkCgBjYWJhY19ieXBhc3NfYWxpZ25tZW50X2VuYWJsZWRfZmxhZyBub3QgeWV0IGltcGxlbWVudGVkCgBJbnZhbGlkIGNyb3BwaW5nIG9mZnNldHM6ICV1LyV1LyV1LyV1CgBEaXNwbGF5aW5nIHRoZSB3aG9sZSB2aWRlbyBzdXJmYWNlLgoAQ1RCIHNpemUgb3V0IG9mIHJhbmdlOiAyXiVkCgBsb2cyX2N0Yl9zaXplICVkIGRpZmZlcnMgZnJvbSB0aGUgYm91bmRzIG9mIGFueSBrbm93biBwcm9maWxlCgBsb2cyX2N0Yl9zaXplICVkAEludmFsaWQgY29kZWQgZnJhbWUgZGltZW5zaW9ucy4KAG1heF90cmFuc2Zvcm1faGllcmFyY2h5X2RlcHRoX2ludGVyIG91dCBvZiByYW5nZTogJWQKAG1heF90cmFuc2Zvcm1faGllcmFyY2h5X2RlcHRoX2ludHJhIG91dCBvZiByYW5nZTogJWQKAG1heCB0cmFuc2Zvcm0gYmxvY2sgc2l6ZSBvdXQgb2YgcmFuZ2U6ICVkCgBPdmVycmVhZCBTUFMgYnkgJWQgYml0cwoARGVjb2RpbmcgVlVJCgBVbmtub3duIFNBUiBpbmRleDogJXUuCgBJbnZhbGlkIGRlZmF1bHQgZGlzcGxheSB3aW5kb3cKAGRpc2NhcmRpbmcgdnVpIGRlZmF1bHQgZGlzcGxheSB3aW5kb3csIG9yaWdpbmFsIHZhbHVlcyBhcmUgbDoldSByOiV1IHQ6JXUgYjoldQoAU3RyYW5nZSBWVUkgdGltaW5nIGluZm9ybWF0aW9uLCByZXRyeWluZy4uLgoAUmV0cnkgZ290ICV1LyV1IGZwcwoAU3RyYW5nZSBWVUkgYml0c3RyZWFtIHJlc3RyaWN0aW9uIGluZm9ybWF0aW9uLCByZXRyeWluZyBmcm9tIHRpbWluZyBpbmZvcm1hdGlvbi4uLgoAT3ZlcnJlYWQgaW4gVlVJLCByZXRyeWluZyBmcm9tIHRpbWluZyBpbmZvcm1hdGlvbi4uLgoAbmJfY3BiICVkIGludmFsaWQKAEludmFsaWQgdmFsdWUgb2YgZGVsdGFfaWR4IGluIHNsaWNlIGhlYWRlciBSUFM6ICVkID4gJWQuCgBJbnZhbGlkIHZhbHVlIG9mIGFic19kZWx0YV9ycHM6ICVkCgBJbnZhbGlkIG51bV9kZWx0YV9wb2NzOiAlZAoAVG9vIG1hbnkgcmVmcyBpbiBhIHNob3J0IHRlcm0gUlBTLgoASW52YWxpZCB2YWx1ZSBvZiBkZWx0YV9wb2M6ICVkCgBUaGUgZm9sbG93aW5nIGJpdC1kZXB0aHMgYXJlIGN1cnJlbnRseSBzcGVjaWZpZWQ6IDgsIDksIDEwIGFuZCAxMiBiaXRzLCBjaHJvbWFfZm9ybWF0X2lkYyBpcyAlZCwgZGVwdGggaXMgJWQKAFBUTCBpbmZvcm1hdGlvbiB0b28gc2hvcnQKAFBUTCBpbmZvcm1hdGlvbiBmb3Igc3VibGF5ZXIgJWkgdG9vIHNob3J0CgBOb3QgZW5vdWdoIGRhdGEgZm9yIHN1YmxheWVyICVpIGxldmVsX2lkYwoATWFpbiBwcm9maWxlIGJpdHN0cmVhbQoATWFpbiAxMCBwcm9maWxlIGJpdHN0cmVhbQoATWFpbiBTdGlsbCBQaWN0dXJlIHByb2ZpbGUgYml0c3RyZWFtCgBSYW5nZSBFeHRlbnNpb24gcHJvZmlsZSBiaXRzdHJlYW0KAFVua25vd24gSEVWQyBwcm9maWxlOiAlZAoARGVjb2RpbmcgVlBTCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgVlBTICgldGQgPiAlenUpCgB2cHNfcmVzZXJ2ZWRfdGhyZWVfMmJpdHMgaXMgbm90IHRocmVlCgB2cHNfcmVzZXJ2ZWRfZmZmZl8xNmJpdHMgaXMgbm90IDB4ZmZmZgoAdnBzX21heF9zdWJfbGF5ZXJzIG91dCBvZiByYW5nZTogJWQKAHZwc19tYXhfZGVjX3BpY19idWZmZXJpbmdfbWludXMxIG91dCBvZiByYW5nZTogJWQKAHZwc19tYXhfbnVtX3Jlb3JkZXJfcGljcyBvdXQgb2YgcmFuZ2U6ICVkCgB0b28gbWFueSBsYXllcl9pZF9pbmNsdWRlZF9mbGFncwoAdnBzX251bV9ocmRfcGFyYW1ldGVycyAlZCBpcyBpbnZhbGlkCgBPdmVycmVhZCBWUFMgYnkgJWQgYml0cwoAYnVmX3NpemUgPj0gMABsaWJhdmNvZGVjL2J5dGVzdHJlYW0uaABJbnZhbGlkIE5BTCB1bml0IHNpemUgaW4gZXh0cmFkYXRhLgoARGVjb2RpbmcgbmFsIHVuaXQgJWQgJWQgZnJvbSBodmNDIGZhaWxlZAoASWdub3JpbmcgTkFMIHR5cGUgJWQgaW4gZXh0cmFkYXRhCgAvZGV2L3VyYW5kb20AL2Rldi9yYW5kb20Ac2l6ZW9mKHRtcCkgPj0gYXZfc2hhX3NpemUAbGliYXZ1dGlsL3JhbmRvbV9zZWVkLmMAgABGYWlsZWQgdG8gc2V0IGNsb3NlIG9uIGV4ZWMKACAKCQ0AQUxMAEZMAGZyb250IGxlZnQARlIAZnJvbnQgcmlnaHQARkMAZnJvbnQgY2VudGVyAExGRQBsb3cgZnJlcXVlbmN5AEJMAGJhY2sgbGVmdABCUgBiYWNrIHJpZ2h0AEZMQwBmcm9udCBsZWZ0LW9mLWNlbnRlcgBGUkMAZnJvbnQgcmlnaHQtb2YtY2VudGVyAEJDAGJhY2sgY2VudGVyAFNMAHNpZGUgbGVmdABTUgBzaWRlIHJpZ2h0AFRDAHRvcCBjZW50ZXIAVEZMAHRvcCBmcm9udCBsZWZ0AFRGQwB0b3AgZnJvbnQgY2VudGVyAFRGUgB0b3AgZnJvbnQgcmlnaHQAVEJMAHRvcCBiYWNrIGxlZnQAVEJDAHRvcCBiYWNrIGNlbnRlcgBUQlIAdG9wIGJhY2sgcmlnaHQAREwAZG93bm1peCBsZWZ0AERSAGRvd25taXggcmlnaHQAV0wAd2lkZSBsZWZ0AFdSAHdpZGUgcmlnaHQAU0RMAHN1cnJvdW5kIGRpcmVjdCBsZWZ0AFNEUgBzdXJyb3VuZCBkaXJlY3QgcmlnaHQATEZFMgBsb3cgZnJlcXVlbmN5IDIAbW9ubwBzdGVyZW8AMi4xADMuMAAzLjAoYmFjaykANC4wAHF1YWQAcXVhZChzaWRlKQAzLjEANS4wADUuMChzaWRlKQA0LjEANS4xADUuMShzaWRlKQA2LjAANi4wKGZyb250KQBoZXhhZ29uYWwANi4xADYuMShiYWNrKQA2LjEoZnJvbnQpADcuMAA3LjAoZnJvbnQpADcuMQA3LjEod2lkZSkANy4xKHdpZGUtc2lkZSkAb2N0YWdvbmFsAGhleGFkZWNhZ29uYWwAZG93bm1peAAlcwAlZCBjaGFubmVscwAgKAArACkAJWQlKjFbOi9dJWQlYwBjb25zdF92YWx1ZXMgYXJyYXkgdG9vIHNtYWxsIGZvciAlcwoAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiCgAlZgoASW52YWxpZCBjaGFycyAnJXMnIGF0IHRoZSBlbmQgb2YgZXhwcmVzc2lvbiAnJXMnCgBVbmRlZmluZWQgY29uc3RhbnQgb3IgbWlzc2luZyAnKCcgaW4gJyVzJwoATWlzc2luZyAnKScgaW4gJyVzJwoATWlzc2luZyAnKScgb3IgdG9vIG1hbnkgYXJncyBpbiAnJXMnCgBzaW5oAGNvc2gAdGFuaABzaW4AY29zAHRhbgBhdGFuAGFzaW4AYWNvcwBleHAAYWJzAHRpbWUAc3F1aXNoAGdhdXNzAG1vZABtYXgAbWluAGVxAGd0ZQBndABsdGUAbHQAbGQAaXNuYW4AaXNpbmYAc3QAd2hpbGUAdGF5bG9yAHJvb3QAZmxvb3IAY2VpbAByb3VuZABzcXJ0AG5vdABwb3cAcHJpbnQAaHlwb3QAZ2NkAGlmAGlmbm90AGJpdGFuZABiaXRvcgBiZXR3ZWVuAGNsaXAAYXRhbjIAbGVycABVbmtub3duIGZ1bmN0aW9uIGluICclcycKAEUAUEkAUEhJAFFQMkxBTUJEQQBFdmFsAFZhbHVlICVmIGZvciBwYXJhbWV0ZXIgJyVzJyBvdXQgb2YgcmFuZ2UgWyVnIC0gJWddCgBWYWx1ZSAlZiBmb3IgcGFyYW1ldGVyICclcycgaXMgbm90IGEgdmFsaWQgc2V0IG9mIDMyYml0IGludGVnZXIgZmxhZ3MKAGRldGVjdGVkICVkIGxvZ2ljYWwgY29yZXMKAAABHAIdDhgDHhYUDxkRBAgfGw0XFRMQBxoMEgYLBQoJVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIGR1cmF0aW9uCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgY2hhbm5lbCBsYXlvdXQKAEludmFsaWQgb3B0aW9uIHR5cGUuCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgY29sb3IKADB4AHJhbmRvbQBiaWtlc2hlZAAwMTIzNDU2Nzg5QUJDREVGYWJjZGVmAEludmFsaWQgMHhSUkdHQkJbQUFdIGNvbG9yIHN0cmluZzogJyVzJwoAQ2Fubm90IGZpbmQgY29sb3IgJyVzJwoASW52YWxpZCBhbHBoYSB2YWx1ZSBzcGVjaWZpZXIgJyVzJyBpbiAnJXMnCgBBbGljZUJsdWUAQW50aXF1ZVdoaXRlAEFxdWEAQXF1YW1hcmluZQBBenVyZQBCZWlnZQBCaXNxdWUAQmxhY2sAQmxhbmNoZWRBbG1vbmQAQmx1ZQBCbHVlVmlvbGV0AEJyb3duAEJ1cmx5V29vZABDYWRldEJsdWUAQ2hhcnRyZXVzZQBDaG9jb2xhdGUAQ29yYWwAQ29ybmZsb3dlckJsdWUAQ29ybnNpbGsAQ3JpbXNvbgBDeWFuAERhcmtCbHVlAERhcmtDeWFuAERhcmtHb2xkZW5Sb2QARGFya0dyYXkARGFya0dyZWVuAERhcmtLaGFraQBEYXJrTWFnZW50YQBEYXJrT2xpdmVHcmVlbgBEYXJrb3JhbmdlAERhcmtPcmNoaWQARGFya1JlZABEYXJrU2FsbW9uAERhcmtTZWFHcmVlbgBEYXJrU2xhdGVCbHVlAERhcmtTbGF0ZUdyYXkARGFya1R1cnF1b2lzZQBEYXJrVmlvbGV0AERlZXBQaW5rAERlZXBTa3lCbHVlAERpbUdyYXkARG9kZ2VyQmx1ZQBGaXJlQnJpY2sARmxvcmFsV2hpdGUARm9yZXN0R3JlZW4ARnVjaHNpYQBHYWluc2Jvcm8AR2hvc3RXaGl0ZQBHb2xkAEdvbGRlblJvZABHcmF5AEdyZWVuAEdyZWVuWWVsbG93AEhvbmV5RGV3AEhvdFBpbmsASW5kaWFuUmVkAEluZGlnbwBJdm9yeQBLaGFraQBMYXZlbmRlcgBMYXZlbmRlckJsdXNoAExhd25HcmVlbgBMZW1vbkNoaWZmb24ATGlnaHRCbHVlAExpZ2h0Q29yYWwATGlnaHRDeWFuAExpZ2h0R29sZGVuUm9kWWVsbG93AExpZ2h0R3JlZW4ATGlnaHRHcmV5AExpZ2h0UGluawBMaWdodFNhbG1vbgBMaWdodFNlYUdyZWVuAExpZ2h0U2t5Qmx1ZQBMaWdodFNsYXRlR3JheQBMaWdodFN0ZWVsQmx1ZQBMaWdodFllbGxvdwBMaW1lAExpbWVHcmVlbgBMaW5lbgBNYWdlbnRhAE1hcm9vbgBNZWRpdW1BcXVhTWFyaW5lAE1lZGl1bUJsdWUATWVkaXVtT3JjaGlkAE1lZGl1bVB1cnBsZQBNZWRpdW1TZWFHcmVlbgBNZWRpdW1TbGF0ZUJsdWUATWVkaXVtU3ByaW5nR3JlZW4ATWVkaXVtVHVycXVvaXNlAE1lZGl1bVZpb2xldFJlZABNaWRuaWdodEJsdWUATWludENyZWFtAE1pc3R5Um9zZQBNb2NjYXNpbgBOYXZham9XaGl0ZQBOYXZ5AE9sZExhY2UAT2xpdmUAT2xpdmVEcmFiAE9yYW5nZQBPcmFuZ2VSZWQAT3JjaGlkAFBhbGVHb2xkZW5Sb2QAUGFsZUdyZWVuAFBhbGVUdXJxdW9pc2UAUGFsZVZpb2xldFJlZABQYXBheWFXaGlwAFBlYWNoUHVmZgBQZXJ1AFBpbmsAUGx1bQBQb3dkZXJCbHVlAFB1cnBsZQBSZWQAUm9zeUJyb3duAFJveWFsQmx1ZQBTYWRkbGVCcm93bgBTYWxtb24AU2FuZHlCcm93bgBTZWFHcmVlbgBTZWFTaGVsbABTaWVubmEAU2lsdmVyAFNreUJsdWUAU2xhdGVCbHVlAFNsYXRlR3JheQBTbm93AFNwcmluZ0dyZWVuAFN0ZWVsQmx1ZQBUYW4AVGVhbABUaGlzdGxlAFRvbWF0bwBUdXJxdW9pc2UAVmlvbGV0AFdoZWF0AFdoaXRlAFdoaXRlU21va2UAWWVsbG93AFllbGxvd0dyZWVuAG5vdwAlSjolTTolUwAlTTolUwAlSDolTQAlSCVNACVIACVIOiVNOiVTACVIJU0lUwBqYW51YXJ5AGZlYnJ1YXJ5AG1hcmNoAGFwcmlsAG1heQBqdW5lAGp1bHkAYXVndXN0AHNlcHRlbWJlcgBvY3RvYmVyAG5vdmVtYmVyAGRlY2VtYmVyACVZIC0gJW0gLSAlZAAlWSVtJWQAc2FtcGxlIGZvcm1hdABVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgJXMKAFZhbHVlICVkIGZvciBwYXJhbWV0ZXIgJyVzJyBvdXQgb2YgJXMgZm9ybWF0IHJhbmdlIFslZCAtICVkXQoAcGl4ZWwgZm9ybWF0AHJnYjMyAGJncjMyACVzJXMAbGUAdmFhcGkAVW5hYmxlIHRvIHBhcnNlIG9wdGlvbiB2YWx1ZSAiJXMiIGFzIHZpZGVvIHJhdGUKACVkOiVkJWMAbnRzYwBwYWwAcW50c2MAcXBhbABzbnRzYwBzcGFsAG50c2MtZmlsbQBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgaW1hZ2Ugc2l6ZQoAc3FjaWYAcWNpZgBjaWYANGNpZgAxNmNpZgBxcXZnYQBxdmdhAHZnYQBzdmdhAHhnYQB1eGdhAHF4Z2EAc3hnYQBxc3hnYQBoc3hnYQB3dmdhAHd4Z2EAd3N4Z2EAd3V4Z2EAd294Z2EAd3FzeGdhAHdxdXhnYQB3aHN4Z2EAd2h1eGdhAGNnYQBlZ2EAaGQ0ODAAaGQ3MjAAaGQxMDgwADJrADJrZGNpADJrZmxhdAAya3Njb3BlADRrADRrZGNpADRrZmxhdAA0a3Njb3BlAG5oZABocXZnYQB3cXZnYQBmd3F2Z2EAaHZnYQBxaGQAdWhkMjE2MAB1aGQ0MzIwAHRydWUseSx5ZXMsZW5hYmxlLGVuYWJsZWQsb24AZmFsc2UsbixubyxkaXNhYmxlLGRpc2FibGVkLG9mZgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgYm9vbGVhbgoAQVZPcHRpb24gdHlwZSAlZCBvZiBvcHRpb24gJXMgbm90IGltcGxlbWVudGVkIHlldAoARXJyb3Igc2V0dGluZyBvcHRpb24gJXMgdG8gdmFsdWUgJXMuCgBuYl90aHJlYWRzID49IDAAbGliYXZ1dGlsL3NsaWNldGhyZWFkLmMAbmJfam9icyA+IDAARmluYWwgdGhyZWFkIHVwZGF0ZSBmYWlsZWQKAHAtPmF2Y3R4LT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9WSURFTyB8fCBwLT5hdmN0eC0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfQVVESU8AbGliYXZjb2RlYy9wdGhyZWFkX2ZyYW1lLmMAZmN0eC0+YXN5bmNfbG9jawBBc3NlcnRpb24gJXMgZmFpbGVkIGF0ICVzOiVkCgByZXQgPj0gMABsaWJhdmNvZGVjL29wdGlvbnMuYwBBVkNvZGVjQ29udGV4dABiAHNldCBiaXRyYXRlIChpbiBiaXRzL3MpAGFiAGJ0AFNldCB2aWRlbyBiaXRyYXRlIHRvbGVyYW5jZSAoaW4gYml0cy9zKS4gSW4gMS1wYXNzIG1vZGUsIGJpdHJhdGUgdG9sZXJhbmNlIHNwZWNpZmllcyBob3cgZmFyIHJhdGVjb250cm9sIGlzIHdpbGxpbmcgdG8gZGV2aWF0ZSBmcm9tIHRoZSB0YXJnZXQgYXZlcmFnZSBiaXRyYXRlIHZhbHVlLiBUaGlzIGlzIG5vdCByZWxhdGVkIHRvIG1pbmltdW0vbWF4aW11bSBiaXRyYXRlLiBMb3dlcmluZyB0b2xlcmFuY2UgdG9vIG11Y2ggaGFzIGFuIGFkdmVyc2UgZWZmZWN0IG9uIHF1YWxpdHkuAGZsYWdzAHVuYWxpZ25lZABhbGxvdyBkZWNvZGVycyB0byBwcm9kdWNlIHVuYWxpZ25lZCBvdXRwdXQAbXY0AHVzZSBmb3VyIG1vdGlvbiB2ZWN0b3JzIHBlciBtYWNyb2Jsb2NrIChNUEVHLTQpAHFwZWwAdXNlIDEvNC1wZWwgbW90aW9uIGNvbXBlbnNhdGlvbgBsb29wAHVzZSBsb29wIGZpbHRlcgBxc2NhbGUAdXNlIGZpeGVkIHFzY2FsZQBwYXNzMQB1c2UgaW50ZXJuYWwgMi1wYXNzIHJhdGVjb250cm9sIGluIGZpcnN0ICBwYXNzIG1vZGUAcGFzczIAdXNlIGludGVybmFsIDItcGFzcyByYXRlY29udHJvbCBpbiBzZWNvbmQgcGFzcyBtb2RlAGdyYXkAb25seSBkZWNvZGUvZW5jb2RlIGdyYXlzY2FsZQBwc25yAGVycm9yWz9dIHZhcmlhYmxlcyB3aWxsIGJlIHNldCBkdXJpbmcgZW5jb2RpbmcAdHJ1bmNhdGVkAElucHV0IGJpdHN0cmVhbSBtaWdodCBiZSByYW5kb21seSB0cnVuY2F0ZWQAaWxkY3QAdXNlIGludGVybGFjZWQgRENUAGxvd19kZWxheQBmb3JjZSBsb3cgZGVsYXkAZ2xvYmFsX2hlYWRlcgBwbGFjZSBnbG9iYWwgaGVhZGVycyBpbiBleHRyYWRhdGEgaW5zdGVhZCBvZiBldmVyeSBrZXlmcmFtZQBiaXRleGFjdAB1c2Ugb25seSBiaXRleGFjdCBmdW5jdGlvbnMgKGV4Y2VwdCAoSSlEQ1QpAGFpYwBILjI2MyBhZHZhbmNlZCBpbnRyYSBjb2RpbmcgLyBNUEVHLTQgQUMgcHJlZGljdGlvbgBpbG1lAGludGVybGFjZWQgbW90aW9uIGVzdGltYXRpb24AY2dvcABjbG9zZWQgR09QAG91dHB1dF9jb3JydXB0AE91dHB1dCBldmVuIHBvdGVudGlhbGx5IGNvcnJ1cHRlZCBmcmFtZXMAZmFzdABhbGxvdyBub24tc3BlYy1jb21wbGlhbnQgc3BlZWR1cCB0cmlja3MAZmxhZ3MyAG5vb3V0AHNraXAgYml0c3RyZWFtIGVuY29kaW5nAGlnbm9yZWNyb3AAaWdub3JlIGNyb3BwaW5nIGluZm9ybWF0aW9uIGZyb20gc3BzAGxvY2FsX2hlYWRlcgBwbGFjZSBnbG9iYWwgaGVhZGVycyBhdCBldmVyeSBrZXlmcmFtZSBpbnN0ZWFkIG9mIGluIGV4dHJhZGF0YQBjaHVua3MARnJhbWUgZGF0YSBtaWdodCBiZSBzcGxpdCBpbnRvIG11bHRpcGxlIGNodW5rcwBzaG93YWxsAFNob3cgYWxsIGZyYW1lcyBiZWZvcmUgdGhlIGZpcnN0IGtleWZyYW1lAGV4cG9ydF9tdnMAZXhwb3J0IG1vdGlvbiB2ZWN0b3JzIHRocm91Z2ggZnJhbWUgc2lkZSBkYXRhAHNraXBfbWFudWFsAGRvIG5vdCBza2lwIHNhbXBsZXMgYW5kIGV4cG9ydCBza2lwIGluZm9ybWF0aW9uIGFzIGZyYW1lIHNpZGUgZGF0YQBhc3Nfcm9fZmx1c2hfbm9vcABkbyBub3QgcmVzZXQgQVNTIFJlYWRPcmRlciBmaWVsZCBvbiBmbHVzaAB0aW1lX2Jhc2UAZwBzZXQgdGhlIGdyb3VwIG9mIHBpY3R1cmUgKEdPUCkgc2l6ZQBhcgBzZXQgYXVkaW8gc2FtcGxpbmcgcmF0ZSAoaW4gSHopAGFjAHNldCBudW1iZXIgb2YgYXVkaW8gY2hhbm5lbHMAY3V0b2ZmAHNldCBjdXRvZmYgYmFuZHdpZHRoAGZyYW1lX3NpemUAZnJhbWVfbnVtYmVyAGRlbGF5AHFjb21wAHZpZGVvIHF1YW50aXplciBzY2FsZSBjb21wcmVzc2lvbiAoVkJSKS4gQ29uc3RhbnQgb2YgcmF0ZWNvbnRyb2wgZXF1YXRpb24uIFJlY29tbWVuZGVkIHJhbmdlIGZvciBkZWZhdWx0IHJjX2VxOiAwLjAtMS4wAHFibHVyAHZpZGVvIHF1YW50aXplciBzY2FsZSBibHVyIChWQlIpAHFtaW4AbWluaW11bSB2aWRlbyBxdWFudGl6ZXIgc2NhbGUgKFZCUikAcW1heABtYXhpbXVtIHZpZGVvIHF1YW50aXplciBzY2FsZSAoVkJSKQBxZGlmZgBtYXhpbXVtIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgcXVhbnRpemVyIHNjYWxlcyAoVkJSKQBiZgBzZXQgbWF4aW11bSBudW1iZXIgb2YgQi1mcmFtZXMgYmV0d2VlbiBub24tQi1mcmFtZXMAYl9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBCLWZyYW1lcwBiX3N0cmF0ZWd5AHN0cmF0ZWd5IHRvIGNob29zZSBiZXR3ZWVuIEkvUC9CLWZyYW1lcwBwcwBSVFAgcGF5bG9hZCBzaXplIGluIGJ5dGVzAG12X2JpdHMAaGVhZGVyX2JpdHMAaV90ZXhfYml0cwBwX3RleF9iaXRzAGlfY291bnQAcF9jb3VudABza2lwX2NvdW50AG1pc2NfYml0cwBmcmFtZV9iaXRzAGNvZGVjX3RhZwBidWcAd29yayBhcm91bmQgbm90IGF1dG9kZXRlY3RlZCBlbmNvZGVyIGJ1Z3MAYXV0b2RldGVjdAB4dmlkX2lsYWNlAFh2aWQgaW50ZXJsYWNpbmcgYnVnIChhdXRvZGV0ZWN0ZWQgaWYgRk9VUkNDID09IFhWSVgpAHVtcDQAKGF1dG9kZXRlY3RlZCBpZiBGT1VSQ0MgPT0gVU1QNCkAbm9fcGFkZGluZwBwYWRkaW5nIGJ1ZyAoYXV0b2RldGVjdGVkKQBhbXYAcXBlbF9jaHJvbWEAc3RkX3FwZWwAb2xkIHN0YW5kYXJkIHFwZWwgKGF1dG9kZXRlY3RlZCBwZXIgRk9VUkNDL3ZlcnNpb24pAHFwZWxfY2hyb21hMgBkaXJlY3RfYmxvY2tzaXplAGRpcmVjdC1xcGVsLWJsb2Nrc2l6ZSBidWcgKGF1dG9kZXRlY3RlZCBwZXIgRk9VUkNDL3ZlcnNpb24pAGVkZ2UAZWRnZSBwYWRkaW5nIGJ1ZyAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAaHBlbF9jaHJvbWEAZGNfY2xpcABtcwB3b3JrIGFyb3VuZCB2YXJpb3VzIGJ1Z3MgaW4gTWljcm9zb2Z0J3MgYnJva2VuIGRlY29kZXJzAHRydW5jAHRydW5jYXRlZCBmcmFtZXMAaWVkZ2UAc3RyaWN0AGhvdyBzdHJpY3RseSB0byBmb2xsb3cgdGhlIHN0YW5kYXJkcwB2ZXJ5AHN0cmljdGx5IGNvbmZvcm0gdG8gYSBvbGRlciBtb3JlIHN0cmljdCB2ZXJzaW9uIG9mIHRoZSBzcGVjIG9yIHJlZmVyZW5jZSBzb2Z0d2FyZQBzdHJpY3RseSBjb25mb3JtIHRvIGFsbCB0aGUgdGhpbmdzIGluIHRoZSBzcGVjIG5vIG1hdHRlciB3aGF0IHRoZSBjb25zZXF1ZW5jZXMAbm9ybWFsAHVub2ZmaWNpYWwAYWxsb3cgdW5vZmZpY2lhbCBleHRlbnNpb25zAGV4cGVyaW1lbnRhbABhbGxvdyBub24tc3RhbmRhcmRpemVkIGV4cGVyaW1lbnRhbCB0aGluZ3MAYl9xb2Zmc2V0AFFQIG9mZnNldCBiZXR3ZWVuIFAtIGFuZCBCLWZyYW1lcwBlcnJfZGV0ZWN0AHNldCBlcnJvciBkZXRlY3Rpb24gZmxhZ3MAY3JjY2hlY2sAdmVyaWZ5IGVtYmVkZGVkIENSQ3MAYml0c3RyZWFtAGRldGVjdCBiaXRzdHJlYW0gc3BlY2lmaWNhdGlvbiBkZXZpYXRpb25zAGJ1ZmZlcgBkZXRlY3QgaW1wcm9wZXIgYml0c3RyZWFtIGxlbmd0aABleHBsb2RlAGFib3J0IGRlY29kaW5nIG9uIG1pbm9yIGVycm9yIGRldGVjdGlvbgBpZ25vcmVfZXJyAGlnbm9yZSBlcnJvcnMAY2FyZWZ1bABjb25zaWRlciB0aGluZ3MgdGhhdCB2aW9sYXRlIHRoZSBzcGVjLCBhcmUgZmFzdCB0byBjaGVjayBhbmQgaGF2ZSBub3QgYmVlbiBzZWVuIGluIHRoZSB3aWxkIGFzIGVycm9ycwBjb21wbGlhbnQAY29uc2lkZXIgYWxsIHNwZWMgbm9uIGNvbXBsaWFuY2llcyBhcyBlcnJvcnMAYWdncmVzc2l2ZQBjb25zaWRlciB0aGluZ3MgdGhhdCBhIHNhbmUgZW5jb2RlciBzaG91bGQgbm90IGRvIGFzIGFuIGVycm9yAGhhc19iX2ZyYW1lcwBibG9ja19hbGlnbgBtcGVnX3F1YW50AHVzZSBNUEVHIHF1YW50aXplcnMgaW5zdGVhZCBvZiBILjI2MwByY19vdmVycmlkZV9jb3VudABtYXhyYXRlAG1heGltdW0gYml0cmF0ZSAoaW4gYml0cy9zKS4gVXNlZCBmb3IgVkJWIHRvZ2V0aGVyIHdpdGggYnVmc2l6ZS4AbWlucmF0ZQBtaW5pbXVtIGJpdHJhdGUgKGluIGJpdHMvcykuIE1vc3QgdXNlZnVsIGluIHNldHRpbmcgdXAgYSBDQlIgZW5jb2RlLiBJdCBpcyBvZiBsaXR0bGUgdXNlIG90aGVyd2lzZS4AYnVmc2l6ZQBzZXQgcmF0ZWNvbnRyb2wgYnVmZmVyIHNpemUgKGluIGJpdHMpAGlfcWZhY3RvcgBRUCBmYWN0b3IgYmV0d2VlbiBQLSBhbmQgSS1mcmFtZXMAaV9xb2Zmc2V0AFFQIG9mZnNldCBiZXR3ZWVuIFAtIGFuZCBJLWZyYW1lcwBkY3QARENUIGFsZ29yaXRobQBhdXRvAGF1dG9zZWxlY3QgYSBnb29kIG9uZQBmYXN0aW50AGZhc3QgaW50ZWdlcgBhY2N1cmF0ZSBpbnRlZ2VyAG1teABhbHRpdmVjAGZhYW4AZmxvYXRpbmcgcG9pbnQgQUFOIERDVABsdW1pX21hc2sAY29tcHJlc3NlcyBicmlnaHQgYXJlYXMgc3Ryb25nZXIgdGhhbiBtZWRpdW0gb25lcwB0Y3BseF9tYXNrAHRlbXBvcmFsIGNvbXBsZXhpdHkgbWFza2luZwBzY3BseF9tYXNrAHNwYXRpYWwgY29tcGxleGl0eSBtYXNraW5nAHBfbWFzawBpbnRlciBtYXNraW5nAGRhcmtfbWFzawBjb21wcmVzc2VzIGRhcmsgYXJlYXMgc3Ryb25nZXIgdGhhbiBtZWRpdW0gb25lcwBpZGN0AHNlbGVjdCBJRENUIGltcGxlbWVudGF0aW9uAHNpbXBsZQBzaW1wbGVtbXgAYXJtAHNpbXBsZWFybQBzaW1wbGVhcm12NXRlAHNpbXBsZWFybXY2AHNpbXBsZW5lb24AeHZpZAB4dmlkbW14AGRlcHJlY2F0ZWQsIGZvciBjb21wYXRpYmlsaXR5IG9ubHkAZmFhbmkAZmxvYXRpbmcgcG9pbnQgQUFOIElEQ1QAc2ltcGxlYXV0bwBzbGljZV9jb3VudABlYwBzZXQgZXJyb3IgY29uY2VhbG1lbnQgc3RyYXRlZ3kAZ3Vlc3NfbXZzAGl0ZXJhdGl2ZSBtb3Rpb24gdmVjdG9yIChNVikgc2VhcmNoIChzbG93KQBkZWJsb2NrAHVzZSBzdHJvbmcgZGVibG9jayBmaWx0ZXIgZm9yIGRhbWFnZWQgTUJzAGZhdm9yX2ludGVyAGZhdm9yIHByZWRpY3RpbmcgZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUAYml0c19wZXJfY29kZWRfc2FtcGxlAHByZWQAcHJlZGljdGlvbiBtZXRob2QAbGVmdABwbGFuZQBtZWRpYW4AYXNwZWN0AHNhbXBsZSBhc3BlY3QgcmF0aW8Ac2FyAGRlYnVnAHByaW50IHNwZWNpZmljIGRlYnVnIGluZm8AcGljdABwaWN0dXJlIGluZm8AcmMAcmF0ZSBjb250cm9sAG1iX3R5cGUAbWFjcm9ibG9jayAoTUIpIHR5cGUAcXAAcGVyLWJsb2NrIHF1YW50aXphdGlvbiBwYXJhbWV0ZXIgKFFQKQBkY3RfY29lZmYAZ3JlZW5fbWV0YWRhdGEAc2tpcABzdGFydGNvZGUAZXIAZXJyb3IgcmVjb2duaXRpb24AbW1jbwBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbnMgKEguMjY0KQBidWdzAGJ1ZmZlcnMAcGljdHVyZSBidWZmZXIgYWxsb2NhdGlvbnMAdGhyZWFkX29wcwB0aHJlYWRpbmcgb3BlcmF0aW9ucwBub21jAHNraXAgbW90aW9uIGNvbXBlbnNhdGlvbgBjbXAAZnVsbC1wZWwgTUUgY29tcGFyZSBmdW5jdGlvbgBjbXBfZnVuYwBzdWJjbXAAc3ViLXBlbCBNRSBjb21wYXJlIGZ1bmN0aW9uAG1iY21wAG1hY3JvYmxvY2sgY29tcGFyZSBmdW5jdGlvbgBpbGRjdGNtcABpbnRlcmxhY2VkIERDVCBjb21wYXJlIGZ1bmN0aW9uAGRpYV9zaXplAGRpYW1vbmQgdHlwZSAmIHNpemUgZm9yIG1vdGlvbiBlc3RpbWF0aW9uAGxhc3RfcHJlZABhbW91bnQgb2YgbW90aW9uIHByZWRpY3RvcnMgZnJvbSB0aGUgcHJldmlvdXMgZnJhbWUAcHJlbWUAcHJlIG1vdGlvbiBlc3RpbWF0aW9uAHByZWNtcABwcmUgbW90aW9uIGVzdGltYXRpb24gY29tcGFyZSBmdW5jdGlvbgBzYWQAc3VtIG9mIGFic29sdXRlIGRpZmZlcmVuY2VzLCBmYXN0AHNzZQBzdW0gb2Ygc3F1YXJlZCBlcnJvcnMAc2F0ZABzdW0gb2YgYWJzb2x1dGUgSGFkYW1hcmQgdHJhbnNmb3JtZWQgZGlmZmVyZW5jZXMAc3VtIG9mIGFic29sdXRlIERDVCB0cmFuc2Zvcm1lZCBkaWZmZXJlbmNlcwBzdW0gb2Ygc3F1YXJlZCBxdWFudGl6YXRpb24gZXJyb3JzIChhdm9pZCwgbG93IHF1YWxpdHkpAGJpdABudW1iZXIgb2YgYml0cyBuZWVkZWQgZm9yIHRoZSBibG9jawByZAByYXRlIGRpc3RvcnRpb24gb3B0aW1hbCwgc2xvdwB6ZXJvADAAdnNhZABzdW0gb2YgYWJzb2x1dGUgdmVydGljYWwgZGlmZmVyZW5jZXMAdnNzZQBzdW0gb2Ygc3F1YXJlZCB2ZXJ0aWNhbCBkaWZmZXJlbmNlcwBuc3NlAG5vaXNlIHByZXNlcnZpbmcgc3VtIG9mIHNxdWFyZWQgZGlmZmVyZW5jZXMAZGN0bWF4AGNocm9tYQBtc2FkAHN1bSBvZiBhYnNvbHV0ZSBkaWZmZXJlbmNlcywgbWVkaWFuIHByZWRpY3RlZABwcmVfZGlhX3NpemUAZGlhbW9uZCB0eXBlICYgc2l6ZSBmb3IgbW90aW9uIGVzdGltYXRpb24gcHJlLXBhc3MAc3VicQBzdWItcGVsIG1vdGlvbiBlc3RpbWF0aW9uIHF1YWxpdHkAbWVfcmFuZ2UAbGltaXQgbW90aW9uIHZlY3RvcnMgcmFuZ2UgKDEwMjMgZm9yIERpdlggcGxheWVyKQBnbG9iYWxfcXVhbGl0eQBjb2RlcgB2bGMAdmFyaWFibGUgbGVuZ3RoIGNvZGVyIC8gSHVmZm1hbiBjb2RlcgBhcml0aG1ldGljIGNvZGVyAHJhdwByYXcgKG5vIGVuY29kaW5nKQBybGUAcnVuLWxlbmd0aCBjb2RlcgBjb250ZXh0AGNvbnRleHQgbW9kZWwAc2xpY2VfZmxhZ3MAbWJkAG1hY3JvYmxvY2sgZGVjaXNpb24gYWxnb3JpdGhtIChoaWdoIHF1YWxpdHkgbW9kZSkAdXNlIG1iY21wAGJpdHMAdXNlIGZld2VzdCBiaXRzAHVzZSBiZXN0IHJhdGUgZGlzdG9ydGlvbgBzY190aHJlc2hvbGQAc2NlbmUgY2hhbmdlIHRocmVzaG9sZABucgBub2lzZSByZWR1Y3Rpb24AcmNfaW5pdF9vY2N1cGFuY3kAbnVtYmVyIG9mIGJpdHMgd2hpY2ggc2hvdWxkIGJlIGxvYWRlZCBpbnRvIHRoZSByYyBidWZmZXIgYmVmb3JlIGRlY29kaW5nIHN0YXJ0cwB0aHJlYWRzAHNldCB0aGUgbnVtYmVyIG9mIHRocmVhZHMAYXV0b2RldGVjdCBhIHN1aXRhYmxlIG51bWJlciBvZiB0aHJlYWRzIHRvIHVzZQBkYwBpbnRyYV9kY19wcmVjaXNpb24AbnNzZXcAbnNzZSB3ZWlnaHQAc2tpcF90b3AAbnVtYmVyIG9mIG1hY3JvYmxvY2sgcm93cyBhdCB0aGUgdG9wIHdoaWNoIGFyZSBza2lwcGVkAHNraXBfYm90dG9tAG51bWJlciBvZiBtYWNyb2Jsb2NrIHJvd3MgYXQgdGhlIGJvdHRvbSB3aGljaCBhcmUgc2tpcHBlZABwcm9maWxlAHVua25vd24AYWFjX21haW4AYWFjX2xvdwBhYWNfc3NyAGFhY19sdHAAYWFjX2hlAGFhY19oZV92MgBhYWNfbGQAYWFjX2VsZABtcGVnMl9hYWNfbG93AG1wZWcyX2FhY19oZQBkdHMAZHRzX2VzAGR0c185Nl8yNABkdHNfaGRfaHJhAGR0c19oZF9tYQBtcGVnNF9zcABtcGVnNF9jb3JlAG1wZWc0X21haW4AbXBlZzRfYXNwAG1haW4xMABtc2JjAGxldmVsAGxvd3JlcwBkZWNvZGUgYXQgMT0gMS8yLCAyPTEvNCwgMz0xLzggcmVzb2x1dGlvbnMAc2tpcF90aHJlc2hvbGQAZnJhbWUgc2tpcCB0aHJlc2hvbGQAc2tpcF9mYWN0b3IAZnJhbWUgc2tpcCBmYWN0b3IAc2tpcF9leHAAZnJhbWUgc2tpcCBleHBvbmVudABza2lwY21wAGZyYW1lIHNraXAgY29tcGFyZSBmdW5jdGlvbgBtYmxtaW4AbWluaW11bSBtYWNyb2Jsb2NrIExhZ3JhbmdlIGZhY3RvciAoVkJSKQBtYmxtYXgAbWF4aW11bSBtYWNyb2Jsb2NrIExhZ3JhbmdlIGZhY3RvciAoVkJSKQBtZXBjAG1vdGlvbiBlc3RpbWF0aW9uIGJpdHJhdGUgcGVuYWx0eSBjb21wZW5zYXRpb24gKDEuMCA9IDI1NikAc2tpcF9sb29wX2ZpbHRlcgBza2lwIGxvb3AgZmlsdGVyaW5nIHByb2Nlc3MgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAYXZkaXNjYXJkAHNraXBfaWRjdABza2lwIElEQ1QvZGVxdWFudGl6YXRpb24gZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAc2tpcF9mcmFtZQBza2lwIGRlY29kaW5nIGZvciB0aGUgc2VsZWN0ZWQgZnJhbWVzAG5vbmUAZGlzY2FyZCBubyBmcmFtZQBkZWZhdWx0AGRpc2NhcmQgdXNlbGVzcyBmcmFtZXMAbm9yZWYAZGlzY2FyZCBhbGwgbm9uLXJlZmVyZW5jZSBmcmFtZXMAYmlkaXIAZGlzY2FyZCBhbGwgYmlkaXJlY3Rpb25hbCBmcmFtZXMAbm9rZXkAZGlzY2FyZCBhbGwgZnJhbWVzIGV4Y2VwdCBrZXlmcmFtZXMAbm9pbnRyYQBkaXNjYXJkIGFsbCBmcmFtZXMgZXhjZXB0IEkgZnJhbWVzAGFsbABkaXNjYXJkIGFsbCBmcmFtZXMAYmlkaXJfcmVmaW5lAHJlZmluZSB0aGUgdHdvIG1vdGlvbiB2ZWN0b3JzIHVzZWQgaW4gYmlkaXJlY3Rpb25hbCBtYWNyb2Jsb2NrcwBicmRfc2NhbGUAZG93bnNjYWxlIGZyYW1lcyBmb3IgZHluYW1pYyBCLWZyYW1lIGRlY2lzaW9uAGtleWludF9taW4AbWluaW11bSBpbnRlcnZhbCBiZXR3ZWVuIElEUi1mcmFtZXMAcmVmcwByZWZlcmVuY2UgZnJhbWVzIHRvIGNvbnNpZGVyIGZvciBtb3Rpb24gY29tcGVuc2F0aW9uAGNocm9tYW9mZnNldABjaHJvbWEgUVAgb2Zmc2V0IGZyb20gbHVtYQB0cmVsbGlzAHJhdGUtZGlzdG9ydGlvbiBvcHRpbWFsIHF1YW50aXphdGlvbgBtdjBfdGhyZXNob2xkAGJfc2Vuc2l0aXZpdHkAYWRqdXN0IHNlbnNpdGl2aXR5IG9mIGJfZnJhbWVfc3RyYXRlZ3kgMQBjb21wcmVzc2lvbl9sZXZlbABtaW5fcHJlZGljdGlvbl9vcmRlcgBtYXhfcHJlZGljdGlvbl9vcmRlcgB0aW1lY29kZV9mcmFtZV9zdGFydABHT1AgdGltZWNvZGUgZnJhbWUgc3RhcnQgbnVtYmVyLCBpbiBub24tZHJvcC1mcmFtZSBmb3JtYXQAYml0c19wZXJfcmF3X3NhbXBsZQBjaGFubmVsX2xheW91dAByZXF1ZXN0X2NoYW5uZWxfbGF5b3V0AHJjX21heF92YnZfdXNlAHJjX21pbl92YnZfdXNlAHRpY2tzX3Blcl9mcmFtZQBjb2xvcl9wcmltYXJpZXMAY29sb3IgcHJpbWFyaWVzAGNvbG9yX3ByaW1hcmllc190eXBlAGJ0NzA5AEJULjcwOQBVbnNwZWNpZmllZABidDQ3MG0AQlQuNDcwIE0AYnQ0NzBiZwBCVC40NzAgQkcAc21wdGUxNzBtAFNNUFRFIDE3MCBNAHNtcHRlMjQwbQBTTVBURSAyNDAgTQBmaWxtAEZpbG0AYnQyMDIwAEJULjIwMjAAc21wdGU0MjgAU01QVEUgNDI4LTEAc21wdGU0MjhfMQBzbXB0ZTQzMQBTTVBURSA0MzEtMgBzbXB0ZTQzMgBTTVBURSA0MjItMQBqZWRlYy1wMjIASkVERUMgUDIyAHVuc3BlY2lmaWVkAGNvbG9yX3RyYwBjb2xvciB0cmFuc2ZlciBjaGFyYWN0ZXJpc3RpY3MAY29sb3JfdHJjX3R5cGUAZ2FtbWEyMgBnYW1tYTI4AGxpbmVhcgBMaW5lYXIAbG9nMTAwAExvZwBsb2czMTYATG9nIHNxdWFyZSByb290AGllYzYxOTY2LTItNABJRUMgNjE5NjYtMi00AGJ0MTM2MWUAQlQuMTM2MQBpZWM2MTk2Ni0yLTEASUVDIDYxOTY2LTItMQBidDIwMjAtMTAAQlQuMjAyMCAtIDEwIGJpdABidDIwMjAtMTIAQlQuMjAyMCAtIDEyIGJpdABzbXB0ZTIwODQAU01QVEUgMjA4NABhcmliLXN0ZC1iNjcAQVJJQiBTVEQtQjY3AGxvZwBsb2dfc3FydABpZWM2MTk2Nl8yXzQAYnQxMzYxAGllYzYxOTY2XzJfMQBidDIwMjBfMTBiaXQAYnQyMDIwXzEyYml0AGNvbG9yc3BhY2UAY29sb3Igc3BhY2UAY29sb3JzcGFjZV90eXBlAHJnYgBSR0IAZmNjAEZDQwB5Y2djbwBZQ0dDTwBidDIwMjBuYwBCVC4yMDIwIE5DTABidDIwMjBjAEJULjIwMjAgQ0wAc21wdGUyMDg1AFNNUFRFIDIwODUAeWNvY2cAYnQyMDIwX25jbABidDIwMjBfY2wAY29sb3JfcmFuZ2UAY29sb3IgcmFuZ2UAY29sb3JfcmFuZ2VfdHlwZQB0dgBNUEVHICgyMTkqMl4obi04KSkAcGMASlBFRyAoMl5uLTEpAG1wZWcAanBlZwBjaHJvbWFfc2FtcGxlX2xvY2F0aW9uAGNocm9tYSBzYW1wbGUgbG9jYXRpb24AY2hyb21hX3NhbXBsZV9sb2NhdGlvbl90eXBlAExlZnQAY2VudGVyAENlbnRlcgB0b3BsZWZ0AFRvcC1sZWZ0AHRvcABUb3AAYm90dG9tbGVmdABCb3R0b20tbGVmdABib3R0b20AQm90dG9tAGxvZ19sZXZlbF9vZmZzZXQAc2V0IHRoZSBsb2cgbGV2ZWwgb2Zmc2V0AHNsaWNlcwBzZXQgdGhlIG51bWJlciBvZiBzbGljZXMsIHVzZWQgaW4gcGFyYWxsZWxpemVkIGVuY29kaW5nAHRocmVhZF90eXBlAHNlbGVjdCBtdWx0aXRocmVhZGluZyB0eXBlAHNsaWNlAGZyYW1lAGF1ZGlvX3NlcnZpY2VfdHlwZQBhdWRpbyBzZXJ2aWNlIHR5cGUAbWEATWFpbiBBdWRpbyBTZXJ2aWNlAGVmAEVmZmVjdHMAdmkAVmlzdWFsbHkgSW1wYWlyZWQAaGkASGVhcmluZyBJbXBhaXJlZABkaQBEaWFsb2d1ZQBjbwBDb21tZW50YXJ5AGVtAEVtZXJnZW5jeQB2bwBWb2ljZSBPdmVyAGthAEthcmFva2UAcmVxdWVzdF9zYW1wbGVfZm10AHNhbXBsZSBmb3JtYXQgYXVkaW8gZGVjb2RlcnMgc2hvdWxkIHByZWZlcgBwa3RfdGltZWJhc2UAc3ViX2NoYXJlbmMAc2V0IGlucHV0IHRleHQgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZwBzdWJfY2hhcmVuY19tb2RlAHNldCBpbnB1dCB0ZXh0IHN1YnRpdGxlcyBjaGFyYWN0ZXIgZW5jb2RpbmcgbW9kZQBkb19ub3RoaW5nAHByZV9kZWNvZGVyAHN1Yl90ZXh0X2Zvcm1hdABzZXQgZGVjb2RlZCB0ZXh0IHN1YnRpdGxlIGZvcm1hdABhc3MAYXNzX3dpdGhfdGltaW5ncwByZWZjb3VudGVkX2ZyYW1lcwBzaWRlX2RhdGFfb25seV9wYWNrZXRzAGFwcGx5X2Nyb3BwaW5nAHNraXBfYWxwaGEAU2tpcCBwcm9jZXNzaW5nIGFscGhhAGZpZWxkX29yZGVyAEZpZWxkIG9yZGVyAHByb2dyZXNzaXZlAHR0AGJiAHRiAGR1bXBfc2VwYXJhdG9yAHNldCBpbmZvcm1hdGlvbiBkdW1wIGZpZWxkIHNlcGFyYXRvcgBjb2RlY193aGl0ZWxpc3QATGlzdCBvZiBkZWNvZGVycyB0aGF0IGFyZSBhbGxvd2VkIHRvIGJlIHVzZWQAcGl4ZWxfZm9ybWF0AHNldCBwaXhlbCBmb3JtYXQAdmlkZW9fc2l6ZQBzZXQgdmlkZW8gc2l6ZQBtYXhfcGl4ZWxzAE1heGltdW0gbnVtYmVyIG9mIHBpeGVscwBod2FjY2VsX2ZsYWdzAGlnbm9yZV9sZXZlbABpZ25vcmUgbGV2ZWwgZXZlbiBpZiB0aGUgY29kZWMgbGV2ZWwgdXNlZCBpcyB1bmtub3duIG9yIGhpZ2hlciB0aGFuIHRoZSBtYXhpbXVtIHN1cHBvcnRlZCBsZXZlbCByZXBvcnRlZCBieSB0aGUgaGFyZHdhcmUgZHJpdmVyAGFsbG93X2hpZ2hfZGVwdGgAYWxsb3cgdG8gb3V0cHV0IFlVViBwaXhlbCBmb3JtYXRzIHdpdGggYSBkaWZmZXJlbnQgY2hyb21hIHNhbXBsaW5nIHRoYW4gNDoyOjAgYW5kL29yIG90aGVyIHRoYW4gOCBiaXRzIHBlciBjb21wb25lbnQAYWxsb3dfcHJvZmlsZV9taXNtYXRjaABhdHRlbXB0IHRvIGRlY29kZSBhbnl3YXkgaWYgSFcgYWNjZWxlcmF0ZWQgZGVjb2RlcidzIHN1cHBvcnRlZCBwcm9maWxlcyBkbyBub3QgZXhhY3RseSBtYXRjaCB0aGUgc3RyZWFtAGV4dHJhX2h3X2ZyYW1lcwBOdW1iZXIgb2YgZXh0cmEgaGFyZHdhcmUgZnJhbWVzIHRvIGFsbG9jYXRlIGZvciB0aGUgdXNlcgBOVUxMAEFWQlNGQ29udGV4dABUaGlzIGRlY29kZXIgZG9lcyBub3Qgc3VwcG9ydCBwYXJhbWV0ZXIgY2hhbmdlcywgYnV0IFBBUkFNX0NIQU5HRSBzaWRlIGRhdGEgd2FzIHNlbnQgdG8gaXQuCgBJbnZhbGlkIGNoYW5uZWwgY291bnQASW52YWxpZCBzYW1wbGUgcmF0ZQBQQVJBTV9DSEFOR0Ugc2lkZSBkYXRhIHRvbyBzbWFsbC4KAEVycm9yIGFwcGx5aW5nIHBhcmFtZXRlciBjaGFuZ2VzLgoARXJyb3IgcHJlLXByb2Nlc3NpbmcgYSBwYWNrZXQgYmVmb3JlIGRlY29kaW5nCgAhZnJhbWUtPmJ1ZlswXQAoZnJhbWUtPnByaXZhdGVfcmVmICYmIGZyYW1lLT5wcml2YXRlX3JlZi0+c2l6ZSA9PSBzaXplb2YoRnJhbWVEZWNvZGVEYXRhKSkgfHwgIShhdmN0eC0+Y29kZWMtPmNhcGFiaWxpdGllcyAmICgxIDw8IDEpKQBza2lwICVkIC8gZGlzY2FyZCAlZCBzYW1wbGVzIGR1ZSB0byBzaWRlIGRhdGEKAHNraXAgd2hvbGUgZnJhbWUsIHNraXAgbGVmdDogJWQKAENvdWxkIG5vdCB1cGRhdGUgdGltZXN0YW1wcyBmb3Igc2tpcHBlZCBzYW1wbGVzLgoAc2tpcCAlZC8lZCBzYW1wbGVzCgBDb3VsZCBub3QgdXBkYXRlIHRpbWVzdGFtcHMgZm9yIGRpc2NhcmRlZCBzYW1wbGVzLgoAZGlzY2FyZCAlZC8lZCBzYW1wbGVzCgBNdWx0aXBsZSBmcmFtZXMgaW4gYSBwYWNrZXQuCgBUb28gbWFueSBlcnJvcnMgd2hlbiBkcmFpbmluZywgdGhpcyBpcyBhIGJ1Zy4gU3RvcCBkcmFpbmluZyBhbmQgZm9yY2UgRU9GLgoAZnJhbWUtPmJ1ZlswXQBhdl9wYWNrZXRfcmVmKCkgZmFpbGVkIGluIHN1Ym1pdF9wYWNrZXQoKQoAbnVsbAAsAEEgbm9uLWV4aXN0aW5nIGJpdHN0cmVhbSBmaWx0ZXIgJXMgcmVxdWVzdGVkIGJ5IGEgZGVjb2Rlci4gVGhpcyBpcyBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdC4KAEludmFsaWQgY3JvcHBpbmcgaW5mb3JtYXRpb24gc2V0IGJ5IGEgZGVjb2RlcjogJXp1LyV6dS8lenUvJXp1IChmcmFtZSBzaXplICVkeCVkKS4gVGhpcyBpcyBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdAoAaW5kZXggPiAtMHgyMDAwMDAwMAAhcC0+aHdhY2NlbF9zZXJpYWxpemluZwBBIGZyYW1lIHRocmVhZGVkIGRlY29kZXIgZGlkIG5vdCBmcmVlIHRoZSBmcmFtZSBvbiBmYWlsdXJlLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0LgoAQXBwbGljYXRpb24gaGFzIHJlcXVlc3RlZCAlZCB0aHJlYWRzLiBVc2luZyBhIHRocmVhZCBjb3VudCBncmVhdGVyIHRoYW4gJWQgaXMgbm90IHJlY29tbWVuZGVkLgoATm8gY29kZWMgcHJvdmlkZWQgdG8gYXZjb2RlY19vcGVuMigpCgBUaGlzIEFWQ29kZWNDb250ZXh0IHdhcyBhbGxvY2F0ZWQgZm9yICVzLCBidXQgJXMgcGFzc2VkIHRvIGF2Y29kZWNfb3BlbjIoKQoAQ29kZWMgKCVzKSBub3Qgb24gd2hpdGVsaXN0ICclcycKAElnbm9yaW5nIGludmFsaWQgd2lkdGgvaGVpZ2h0IHZhbHVlcwoAaWdub3JpbmcgaW52YWxpZCBTQVI6ICV1LyV1CgBDb2RlYyB0eXBlIG9yIGlkIG1pc21hdGNoZXMKAGVuY29kZXIAZGVjb2RlcgBUaGUgJXMgJyVzJyBpcyBleHBlcmltZW50YWwgYnV0IGV4cGVyaW1lbnRhbCBjb2RlY3MgYXJlIG5vdCBlbmFibGVkLCBhZGQgJy1zdHJpY3QgJWQnIGlmIHlvdSB3YW50IHRvIHVzZSBpdC4KAEFsdGVybmF0aXZlbHkgdXNlIHRoZSBub24gZXhwZXJpbWVudGFsICVzICclcycuCgBUaGUgbWF4aW11bSB2YWx1ZSBmb3IgbG93cmVzIHN1cHBvcnRlZCBieSB0aGUgZGVjb2RlciBpcyAlZAoAVGhlIGVuY29kZXIgdGltZWJhc2UgaXMgbm90IHNldC4KACVkAFNwZWNpZmllZCBzYW1wbGUgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHBpeGVsIGZvcm1hdCAlcyBpcyBpbnZhbGlkIG9yIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBzYW1wbGUgcmF0ZSAlZCBpcyBub3Qgc3VwcG9ydGVkCgBDaGFubmVsIGxheW91dCBub3Qgc3BlY2lmaWVkCgBTcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQgJyVzJyBpcyBub3Qgc3VwcG9ydGVkCgBDaGFubmVsIGxheW91dCAnJXMnIHdpdGggJWQgY2hhbm5lbHMgZG9lcyBub3QgbWF0Y2ggbnVtYmVyIG9mIHNwZWNpZmllZCBjaGFubmVscyAlZAoAU3BlY2lmaWVkIG51bWJlciBvZiBjaGFubmVscyAlZCBpcyBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgYml0IGRlcHRoICVkIG5vdCBwb3NzaWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgcGl4ZWwgZm9ybWF0cyBkZXB0aCAlZAoAZGltZW5zaW9ucyBub3Qgc2V0CgBCaXRyYXRlICVsbGQgaXMgZXh0cmVtZWx5IGxvdywgbWF5YmUgeW91IG1lYW4gJWxsZGsKAHRpY2tzX3Blcl9mcmFtZSAlZCB0b28gbGFyZ2UgZm9yIHRoZSB0aW1lYmFzZSAlZC8lZC4ATWlzbWF0Y2hpbmcgQVZDb2RlY0NvbnRleHQucGl4X2ZtdCBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuZm9ybWF0CgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5zd19waXhfZm10ICglcykgYW5kIEFWSFdGcmFtZXNDb250ZXh0LnN3X2Zvcm1hdCAoJXMpCgBncmF5IGRlY29kaW5nIHJlcXVlc3RlZCBidXQgbm90IGVuYWJsZWQgYXQgY29uZmlndXJhdGlvbiB0aW1lCgBDaGFubmVsIGxheW91dCAnJXMnIHdpdGggJWQgY2hhbm5lbHMgZG9lcyBub3QgbWF0Y2ggc3BlY2lmaWVkIG51bWJlciBvZiBjaGFubmVscyAlZDogaWdub3Jpbmcgc3BlY2lmaWVkIGNoYW5uZWwgbGF5b3V0CgBDaGFyYWN0ZXIgZW5jb2RpbmcgaXMgb25seSBzdXBwb3J0ZWQgd2l0aCBzdWJ0aXRsZXMgY29kZWNzCgBDb2RlYyAnJXMnIGlzIGJpdG1hcC1iYXNlZCwgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZyB3aWxsIGJlIGlnbm9yZWQKAFVURi04AFVuYWJsZSB0byBvcGVuIGljb252IGNvbnRleHQgd2l0aCBpbnB1dCBjaGFyYWN0ZXIgZW5jb2RpbmcgIiVzIgoAKihjb25zdCBBVkNsYXNzICoqKWF2Y3R4LT5wcml2X2RhdGEgPT0gY29kZWMtPnByaXZfY2xhc3MAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AdXRmOABjaGFyAADId2NoYXJ0AADGdWNzMgB1Y3MyYmUAAMR1Y3MybGUAAMV1dGYxNgB1dGYxNmJlAADCdXRmMTZsZQAAwXVjczQAdWNzNGJlAHV0ZjMyAHV0ZjMyYmUAAMB1Y3M0bGUAdXRmMzJsZQAAw2FzY2lpAHVzYXNjaWkAaXNvNjQ2AGlzbzY0NnVzAADHZXVjanAAANBzaGlmdGppcwBzamlzAADRZ2IxODAzMAAA2GdiawAA2WdiMjMxMgAA2mJpZzUAYmlnZml2ZQBjcDk1MABiaWc1aGtzY3MAAOBldWNrcgBrc2M1NjAxAGtzeDEwMDEAY3A5NDkAAOhpc284ODU5MQBsYXRpbjEAAIBpc284ODU5MgAAIADYEMsaAKQRCAAAHFLIIqAAQIooANwwCxsAqCEILAAgYggjodRSyih7AAAADQCUgQMAPgCABABKAAAAEEK0EQcAANwBAAB/VALAJQAAkAgAfAAAQA0AmJEDAD8AkAQASwAAQBBDuCEHAADgAQAAgFgCACYAAKCILGlzbzg4NTkzAAAgAFgRCwAABEAFAAB4UYgTYAAQgCgAXAEAAAAAUAUAAHxhyBNhABDAKAAAAEAAAPCgAwAAAAAAAAAAAAAAAQAAAAAAQAEAAEwAAAAAAEwyCAAAAABA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mGfy2WeccPrJppx43mnnmGSmiaaZYKqZp551vklooHuueaigg/4JKJ1ztummoYWWKaaiiS7KKKLlRIoMPdfcEyk+2jTTDTqR6pNOpJFG2iWXXn75wJYHZJmAlpEiAKkAY3A4NTAAAAAXwECCBx90AIIIJZgwQgoonEBBBRg4sMAKLKjwggsxZMABBBI0wIApkUYaaaSRRhpppJFGGmmkkUYaaaSNOvpomGdGGmmkBfjJppx4RjDBmGSmiaaZYKoZaaR1vklooHuueWikkUYaaaSRfhFppJGWKaaiiUYaKaKRRhpppJFGGmmkkUYaaaSRRmpApJFGSmSkkQ7wgAIHEJBApJEiAKkAAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAU3QxMWxvZ2ljX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;assert(tempDoublePtr%8==0);function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___gxx_personality_v0(){}function ___lock(){}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};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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else Module.printErr("failed to set errno from JS");return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!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 node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,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(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),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(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){return(function(){return Function})()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map((function(t){return t.name})).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function craftEmvalAllocator(argCount){var argsList="";for(var i=0;i> 2) + "+i+'], "parameter '+i+'");\n'+"var arg"+i+" = argType"+i+".readValueFromPointer(args);\n"+"args += argType"+i+"['argPackAdvance'];\n"}functionBody+="var obj = new constructor("+argsList+");\n"+"return __emval_register(obj);\n"+"}\n";return(new Function("requireRegisteredType","HEAP32","__emval_register",functionBody))(requireRegisteredType,HEAP32,__emval_register)}var emval_newers={};function __emval_new(handle,argCount,argTypes,args){handle=requireHandle(handle);var newer=emval_newers[argCount];if(!newer){newer=craftEmvalAllocator(argCount);emval_newers[argCount]=newer}return newer(handle,argTypes,args)}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){Module["abort"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break};case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg("i"+argSize*8);var origArg=currArg;var argText;if(argSize==8){currArg=makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],null);else argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],true);else argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(argSize==8&&typeof i64Math==="object"){if(origArg[1]){argText=(origArg[1]>>>0).toString(16);var lower=(origArg[0]>>>0).toString(16);while(lower.length<8)lower="0"+lower;argText+=lower}else{argText=(origArg[0]>>>0).toString(16)}}else if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.lengthexponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break};case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break};case"%":{ret.push(curr);break};default:{for(var i=startTextIndex;i>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(var i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}var lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=" at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?" = "+jsSymbolName:" at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){Module.printErr(str)}else{Module.print(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=4;var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _init(){var fc=window["FlvClient"]=Module["FlvClient"];window.AudioContext=window.AudioContext||window.webkitAudioContext;var context=new window.AudioContext;if(/(iPhone|iPad|iPod|iOS|Safari)/i.test(navigator.userAgent)){function _unlock(){context.resume();var source=context.createBufferSource();source.buffer=context.createBuffer(1,1,22050);source.connect(context.destination);if(source.noteOn)source.noteOn(0);else source.start(0)}document.addEventListener("mousedown",_unlock,true);document.addEventListener("touchend",_unlock,true)}fc.prototype.checkVideoBuffer=(function(t){var _this=this;return setTimeout((function(){_this.decodeVideoBuffer()}),t)});fc.prototype.onNetStatus=(function(info){});fc.prototype.initAudio=(function(frameCount,samplerate,channels){var isPlaying=false;var audioBuffers=[];var allFrameCount=frameCount*channels;if(!context)return false;var resampled=samplerate<22050;var audioBuffer=resampled?context.createBuffer(channels,frameCount<<1,samplerate<<1):context.createBuffer(channels,frameCount,samplerate);var outputPtr=this._initAudio(frameCount,channels);var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);var playNextBuffer=(function(){isPlaying=false;if(audioBuffers.length){playAudio(audioBuffers.shift())}if(audioBuffers.length>1)audioBuffers.shift()});var copyAudioOutputArray=resampled?(function(target){for(var i=0;i1?(function(fromBuffer){for(var channel=0;channel>2)),HEAPU8.subarray(v,v+(w*h>>2))];webGLCanvas.drawNextOutputPicture(w,h,croppingParams,outputArray)})}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));webGLCanvas.initRGB(w,h);this.draw=(function(){webGLCanvas.drawNextOutputPicture(w,h,croppingParams,outputArray)})}}).bind(this);this.getWebGL=(function(){return webGLCanvas});var _this=this;var ws=this.$getWebSocket(url);ws.onmessage=(function(data){_this.$onWsMessage(data)});ws.onopen=(function(){Module.print("websocket open")});ws.binaryType="arraybuffer";if(this.onWsError)ws.onerror=this.onWsError;ws.onclose=(function(){_this.$close(true);_this.ws=null;if(this.onWsClose)this.onWsClose()});this.ws=ws;this.close=(function(){this.$close(false);ws.onclose=null;ws.close();this.ws=null});this.$play(this,webGLCanvas.isWebGL())})}var _llvm_ceil_f64=Math_ceil;var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;function _llvm_trap(){abort("trap!")}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_create(){return 11}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function _pthread_join(){}var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_mutex_destroy(){}function _pthread_mutex_init(){}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _tan=Math_tan;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;assert(DYNAMIC_BASE0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){Module["printErr"]("node.js exiting due to unhandled promise rejection");process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};Module["setWindowTitle"]=(function(title){document.title=title})}else{throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)")}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;stackSave=stackRestore=stackAlloc=setTempRet0=getTempRet0=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){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(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function makeBigInt(low,high,unsigned){return unsigned?+(low>>>0)+ +(high>>>0)*4294967296:+(low>>>0)+ +(high|0)*4294967296}function dynCall(sig,ptr,args){if(args&&args.length){assert(args.length==sig.length-1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{assert(sig.length==1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}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 allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval((function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;Module.printErr("still waiting on run dependencies:")}Module.printErr("dependency: "+dep)}if(shown){Module.printErr("(end of list)")}}),1e4)}}else{Module.printErr("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{Module.printErr("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var ASM_CONSTS=[(function($0){return(new Date).getTime()}),(function($0){clearTimeout($0)})];function _emscripten_asm_const_ii(code,a0){return ASM_CONSTS[code](a0)}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+263584;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_FlvClient_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})},{func:(function(){___emscripten_environ_constructor()})});memoryInitializer="data:application/octet-stream;base64,zKgBAJm+AQB8qQEAWr4BAAAAAAABAAAACAAAAAAAAADMqAEA0L8BAMyoAQCPwAEA9KgBAIfAAQAwAAAAAAAAAMyoAQA4wQEAYKkBAIfBAQAAAAAASAAAAGCpAQCTwQEAAQAAAEgAAACP5wEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJfnAQADAQAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn+cBAAMAAAAgAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAMAAAABAAAAAAAAAAgAAAACAAAABwAAAAIAAAAAAAAAAwAAAAIAAAAAAAAACAAAAAIAAAAHAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACl5wEAAwAAACAAAAAAAAAAAAAAAAMAAAACAAAAAAAAAAgAAAACAAAABwAAAAMAAAAAAAAAAwAAAAEAAAAAAAAACAAAAAIAAAAHAAAAAgAAAAAAAAADAAAAAAAAAAAAAAAIAAAAAgAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKvnAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs+cBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC75wEAAwICABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPnAQADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAb3ICAAEAAABAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAy+cBAAAAAADU5wEAAQAAAAQAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANrnAQABAAAABAAAAAAAAAAAAAAAAQAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4OcBAAEAAAACAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADl5wEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO7nAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9+cBAAMAAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6AEAAwEAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjoAQADAgAAAAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAGAAAAAAAAAAAAAAAIAAAABQAAAAcAAAABAAAAAAAAAAYAAAADAAAAAAAAAAgAAAAFAAAABwAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEugBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX6AEAAwAAACQAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAEAAAADAAAAAAAAAAQAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABzoAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJugBAAMAAABgAAAAAAAAAAAAAAABAAAAAAAAAAYAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAr6AEAAwAAACQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAEAAAAAAAAABAAAAAEAAAAAAAAAAgAAAAMAAAABAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDoAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOugBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/6AEAAwEBABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEToAQAEAAAAoAAAAAAAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAASegBAAQAAACgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAABO6AEABAAAAKAAAAAAAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAAFPoAQAEAAAAoAAAAAAAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAWOgBAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYegBAAAAAABn6AEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABw6AEAAAAAAHboAQADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfugBAAMAAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH6AEABAEBAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAJDoAQADAAAAIQAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmOgBAAMAAAAgAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAQAAAAAAAAAEAAAAAUAAAAPAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACg6AEAAwAAACEAAAAAAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKnoAQADAAAAIAAAAAAAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsugBAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC76AEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMToAQADAAAAIQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAD/////AwAAAAUAAAABAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzegBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAEAAAADAAAABQAAAAEAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADW6AEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAA/////wIAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/oAQADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAABAAAAAgAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6OgBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADz6AEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7oAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACOkBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU6QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACDpAQADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALOkBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA46QEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAETpAQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUOkBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABa6QEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGPpAQADAAAAIQAAAAAAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbOkBAAMAAAAgAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAEAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB16QEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAA/////wAAAAAEAAAAAQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH7pAQACAAAAgAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAILpAQAAAAAAiekBAAMAAAAhAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACR6QEAAwAAACAAAAAAAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAAAAAAAAAAAAAQAAAABQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJnpAQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApOkBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACv6QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALvpAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx+kBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADT6QEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/pAQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6ukBAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD16QEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHqAQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADeoBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY6gEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACPqAQADAAAAMAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKOoBAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw6gEAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADjqAQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQeoBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABK6gEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFPqAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXOoBAAQBAACQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAABl6gEABAAAAJAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAG7qAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAeuoBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACG6gEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAJLqAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAnuoBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACq6gEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAALbqAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAw+oBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADQ6gEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAN3qAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAA6uoBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAD36gEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAATrAQAEAQEAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAEesBAAQBAQCQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAe6wEABAEAAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAACvrAQAEAQAAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAOOsBAAQAAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAABF6wEABAAAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAFLrAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWOsBAAMAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAQAAAAMAAAABQAAAAsAAAABAAAAAAAAAAYAAAACAAAABAAAAAwAAAAFAAAACwAAAAMAAAAAAAAABgAAAAQAAAAEAAAADAAAAAUAAAALAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg6wEAAwAAAAEAAAAAAAAAAAAAAAYAAAAAAAAABAAAAAwAAAAFAAAACwAAAAEAAAAAAAAABgAAAAIAAAAEAAAADAAAAAUAAAALAAAAAwAAAAAAAAAGAAAABAAAAAQAAAAMAAAABQAAAAsAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjrAQADAQAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbesBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAAAAAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAAAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB06wEAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAAAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHvrAQAEAAAAoQAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAhOsBAAQAAACgAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAACN6wEABAAAAKEAAAAAAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAJbrAQAEAAAAoAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAn+sBAAMBAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACn6wEAAgAAAIEAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK7rAQACAAAAgAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAAAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtesBAAQAAACwAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAC76wEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAMXrAQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAz+sBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADT6wEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANjrAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5OsBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp6wEAAwAAACAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO7rAQADAAAAIAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8+sBAAMAAAAgAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD46wEAAwAAACAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP3rAQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACewBAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV7AEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACHsAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALewBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA57AEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEXsAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUewBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABd7AEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGnsAQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdewBAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACB7AEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI3sAQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAluwBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACf7AEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKjsAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsewBAAMCAAAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC67AEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMbsAQADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0uwBAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADe7AEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOrsAQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+ewBAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI7QEAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABftAQADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJu0BAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA17QEAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAETtAQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU+0BAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABi7QEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGftAQADAAEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc+0BAAMAAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/7QEAAwABABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIvtAQADAAEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl+0BAAQAAACAAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAAAAACg7QEABAAAAIEAAAAAAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAcAAAAPAAAABQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAAAAAAAKntAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuu0BAAMBAQAQAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAABgAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAGAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADB7QEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAABgAAAAoAAAABAAAACQAAAAEAAAABAAAABAAAAAAAAAAGAAAACgAAAAMAAAAJAAAAAQAAAAEAAAAEAAAAAgAAAAYAAAAKAAAAAwAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjtAQAEAAAAsQAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAADAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAA0u0BAAQAAACwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAADc7QEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAObtAQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAA8O0BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD77QEAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE7gEAAAAAAAruAQABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPuAQAAAAAAGe4BAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIu4BAAAAAAAo7gEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx7gEAAAAAADfuAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAQAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPu4BAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAABAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABF7gEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEvuAQABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFPuAQAAAAAAWO4BAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYO4BAAAAAABl7gEAAwAAADECAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG/uAQADAAAAMAIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAQAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAee4BAAQAAACxAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAMAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAACE7gEABAAAALACAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAwAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAAAAAAAI/uAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAme4BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAOnECAPtyAgABcwIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30ERAAAAOnECABRzAgAecwIAAAAAAAoAAAAAAAgAAAAAAAAAAAAAAODBAADA////30ETAAAAOnECAC5zAgA8cwIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30EZAAAAOnECAHhzAgCBcwIAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30E7AAAAOnECAK1zAgCxcwIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30ERAAAAOnECAORzAgDpcwIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ERAAAAOnECAAZ0AgALdAIAAAAAAAoAAAAAAACAAAAAAAAAAAAAAODBAADA////30ERAAAAOnECABZ0AgAldAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAOnECAE50AgBTdAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAe3QCAIJ0AgCIdAIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAe3QCAKB0AgCrdAIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30ESAAAAe3QCANB0AgDddAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAe3QCABx1AgAjdQIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAe3QCAFJ1AgBadQIAAAAAAAoAAAAAAEAAAAAAAAAAAAAAAODBAADA////30ESAAAAe3QCAIR1AgCPdQIAAAAAAAoAAAAAAAAQAAAAAAAAAAAAAODBAADA////30ESAAAAe3QCAL11AgDJdQIAAAAAAAoAAAAAAAAgAAAAAAAAAAAAAODBAADA////30ESAAAAe3QCAAx2AgAedgIAAAAAAAoAAAAAAABAAAAAAAAAAAAAAODBAADA////30EiAAAAe3QCAEh2AgAAAAAATAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAFJ2AgBUdgIAbAAAAAEAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHh2AgB7dgIAWAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAAJt2AgCedgIAXAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ELAAAAAAAAALt2AgDCdgIAcAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAAAAAANd2AgAAAAAAZAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EJAAAAAAAAAOJ2AgAAAAAAaAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAO92AgAAAAAAWAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAPV2AgD7dgIAmAEAAAQAAAAAAAAAAADgPwAAAOD//+/HAAAA4P//70cRAAAAAAAAAHN3AgB5dwIAnAEAAAQAAAAAAAAAAADgPwAAAAAAAPC/AAAA4P//70cRAAAAAAAAAJp3AgCfdwIAoAEAAAEAAAACAAAAAAAAAAAAAAAAAPC/AAAAAABAUUARAAAAAAAAAMN3AgDIdwIApAEAAAEAAAAfAAAAAAAAAAAAAAAAAPC/AAAAAAAAkEARAAAAAAAAAOx3AgDydwIAqAEAAAEAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAACh4AgAreAIAfAAAAAEAAAAAAAAAAAAAAAAAAAAAAPC/AADA////30ERAAAAAAAAAF94AgBpeAIAgAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAAIt4AgCWeAIAhAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAL54AgDBeAIABAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANt4AgAAAAAACAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAON4AgAAAAAADAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAO94AgAAAAAAEAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAPp4AgAAAAAAFAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAAV5AgAAAAAAGAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAA15AgAAAAAAHAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAABV5AgAAAAAAIAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAACB5AgAAAAAAJAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAACp5AgAAAAAAKAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAADV5AgAAAAAAFAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAD95AgBDeQIANAIAAAAAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAG15AgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAHh5AgCDeQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCALl5AgC+eQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAN95AgDqeQIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAAV6AgAAAAAAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAAl6AgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCABV6AgAeegIAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAFJ6AgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAF96AgBwegIAAAAAAAoAAAAAAgAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAKx6AgCxegIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAOR6AgAAAAAAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAPB6AgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAPh6AgD7egIAAAAAAAoAAAAAIAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCADN7AgA5ewIAAAAAAAoAAAAAQAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAEp7AgAAAAAAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAP3kCAFB7AgBXewIAOAIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAUHsCAHx7AgCBewIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAUHsCAFB7AgDTewIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAUHsCACJ8AgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EbAAAAUHsCACl8AgA0fAIAAAAAAAoAAAD//////////wAAAAAAAODBAADA////30EbAAAAUHsCAFB8AgBdfAIAAAAAAAoAAAD+/////////wAAAAAAAODBAADA////30EbAAAAUHsCAIh8AgCSfAIAiAAAAAQAAAAAAAAAAAD0PwAAAOD//+/HAAAA4P//70cRAAAAAAAAALR8AgC/fAIARAIAAAAAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCANl8AgDifAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAPd8AgABfQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCACt9AgAyfQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAFN9AgBbfQIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAIN9AgCOfQIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAJx9AgCkfQIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAAp+AgAUfgIAAAAAAAoAAAAAAAIAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAEF+AgBMfgIAAAAAAAoAAAAAAAQAAAAAAAAAAAAAAODBAADA////30EaAAAAtHwCAIp+AgAAAAAAjAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAJd+AgAAAAAAbAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAAKN+AgCufgIAkAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANN+AgAAAAAAsAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAOV+AgDtfgIAuAEAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EZAAAAAAAAAC5/AgA2fwIAwAEAAAIAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAJp/AgCifwIArAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAMh/AgDSfwIAlAAAAAQAAACamZmZmZnpvwAAAOD//+/HAAAA4P//70cRAAAAAAAAAPR/AgD+fwIAmAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAACCAAgAkgAIAmAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAIIACADKAAgA3gAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAE2AAgBVgAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAPOmAgBigAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAHOAAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAHeAAgAAAAAAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAH+AAgCEgAIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAIIACAJuAAgClgAIAnAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAANeAAgDigAIAoAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAP6AAgAJgQIApAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAACSBAgArgQIAqAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAADmBAgBDgQIArAAAAAQAAAAAAAAAAAAAAAAAAOD//+/HAAAA4P//70cRAAAAAAAAAHOBAgB4gQIAnAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAc4ECADKAAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAPOmAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAJOBAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAJqBAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAKSBAgAAAAAAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAHeAAgAAAAAAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAKiBAgAAAAAAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECALKBAgAAAAAAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAMCBAgAAAAAAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAMyBAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECANeBAgAAAAAAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECANyBAgDkgQIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECAAeCAgANggIAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECACWCAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAc4ECADCCAgAAAAAAsAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAADyCAgA/ggIAPAIAAAAAAAADAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPIICAF6CAgBoggIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPIICAJOCAgCbggIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAPIICAMWCAgDRggIAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAPIICAPqCAgAAAAAAoAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAABCDAgAVgwIAtAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIMCACeDAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIMCACyDAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIMCADKDAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAEIMCADmDAgBAgwIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAFSDAgBAgwIAvAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAFiDAgBegwIAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30E7AAAAWIMCAHiDAgB9gwIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAIqDAgCNgwIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAWIMCAPd8AgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAJqDAgCigwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCALeDAgC6gwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAOCDAgAAAAAAAAAAAAoAAABAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAOqDAgAAAAAAAAAAAAoAAAAAAIAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAPmDAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAP6DAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAAiEAgALhAIAAAAAAAoAAAAABAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAB2EAgAihAIAAAAAAAoAAAAACAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAE+EAgAAAAAAAAAAAAoAAAAAEAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAFSEAgBchAIAAAAAAAoAAAAAgAAAAAAAAAAAAAAAAODBAADA////30ESAAAAWIMCAHeEAgCChAIAAAAAAAoAAAAAAAEAAAAAAAAAAAAAAODBAADA////30EaAAAAWIMCAJeEAgCchAIAAAAAAAoAAAAAAAABAAAAAAAAAAAAAODBAADA////30EaAAAAWIMCALWEAgC5hAIAxAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAN+EAgDmhAIAyAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAAKFAgAIhQIAzAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCACSFAgAthQIA0AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAE2FAgBWhQIA1AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAICFAgCKhQIA2AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAL6FAgDEhQIA3AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANqFAgDhhQIA4AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAAiGAgAMhgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAC6GAgAyhgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAEiGAgBNhgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCACCAAgB+hgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAJFyAgCqhgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAOKGAgDmhgIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAAqHAgANhwIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCACuHAgAwhwIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCADKHAgA3hwIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAFyHAgBhhwIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAIWHAgCKhwIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCALaHAgAAAAAAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAL2HAgAAAAAAAAAAAAoAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAMSHAgDJhwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAPeHAgAEiAIA5AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAADeIAgA8iAIA6AAAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAF6IAgBniAIA7AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJmIAgAAAAAANAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAKiIAgAAAAAA1AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAqIgCAK6IAgCyiAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAqIgCAJt2AgDYiAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAqIgCAOmIAgDtiAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAqIgCAP+IAgADiQIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAqIgCABSJAgAciQIA2AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAACqJAgAAAAAA8AAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAADaJAgA6iQIA9AAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEARAAAANokCAJOBAgBsiQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAANokCAHaJAgB7iQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAANokCAAqHAgCLiQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAANokCAKSJAgCxiQIAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAMiJAgDLiQIABAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAANuJAgDtiQIA0AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAHt0AgAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg////70EbAAAAe3QCAD2KAgBFigIAsAIAAAEAAAABAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAAPYoCADKAAgBfigIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAPYoCAI6KAgCRigIACAEAAAEAAAAAAAAAAAAAAAAAAAAAACDAAAAAAAAAMEARAAAAAAAAAKSKAgCqigIAyAIAAAEAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAALaKAgC/igIADAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAAPaKAgACiwIAEAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAAAAAADyLAgAAAAAAzAIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAPIsCAESLAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAAPIsCAEyLAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAFWLAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAF2LAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAGWLAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAG2LAgAAAAAAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAHSLAgAAAAAAAAAAAAoAAAAcAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAH6LAgAAAAAAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAIWLAgAAAAAAAAAAAAoAAAAmAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAI2LAgAAAAAAAAAAAAoAAACAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAJuLAgAAAAAAAAAAAAoAAACDAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAKiLAgAAAAAAAAAAAAoAAAAUAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAKyLAgAAAAAAAAAAAAoAAAAeAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCALOLAgAAAAAAAAAAAAoAAAAoAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAL2LAgAAAAAAAAAAAAoAAAAyAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAMiLAgAAAAAAAAAAAAoAAAA8AAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCANKLAgAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAPIsCANuLAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAPIsCAOaLAgAAAAAAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAPIsCAPGLAgAAAAAAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAPIsCAPuLAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAPIsCAAKMAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPIsCAAeMAgAAAAAA0AIAAAEAAACd/////////wAAAAAAAODBAADA////30EZAAAAB4wCAESLAgAAAAAAAAAAAAoAAACd/////////wAAAAAAAODBAADA////30EZAAAAB4wCAA2MAgAUjAIAqAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EaAAAAAAAAAD+MAgBOjAIA3AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAGOMAgBvjAIA4AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAIGMAgCKjAIA5AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAJ6MAgCmjAIA6AEAAAEAAAANAAAAAAAAAAAAAAAAAODBAADA////30ERAAAA1oQCAMKMAgDJjAIAFAEAAAEAAADsAAAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAAPKMAgD5jAIAGAEAAAEAAABKDgAAAAAAAAAAAAAAAPA/AAAAAMD/30ARAAAAAAAAACKNAgAnjQIAHAEAAAEAAAAAAQAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAGKNAgBzjQIA1AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CALGNAgC7jQIA2AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAOyNAgD3jQIA3AIAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAB2OAgAijgIAAAAAAAoAAADw/////////wAAAAAAAODBAADA////30ESAAAAp40CADOOAgA7jgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAFKOAgBYjgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAHmOAgB/jgIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAKCOAgCmjgIAAAAAAAoAAAAgAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAMqOAgDSjgIAAAAAAAoAAAAYAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAPWOAgD5jgIAAAAAAAoAAAAwAAAAAAAAAAAAAAAAAODBAADA////30ESAAAAp40CAAyPAgAZjwIAIAEAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEARAAAAAAAAAFmPAgBjjwIAJAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEARAAAAAAAAAJGPAgCcjwIAKAEAAAEAAAAZAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAMCPAgDFjwIALAEAAAEAAAABAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAAPqPAgAHkAIAMAEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ERAAAAAAAAACKQAgAqkAIA7AEAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EZAAAAAAAAAE+QAgAAAAAANAEAAAEAAAAAAQAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAF2QAgBrkAIAOAEAAAEAAAAoAAAAAAAAAAAAAAAAAPA/AADA////30ERAAAAAAAAAJSQAgAAAAAAOAAAAAEAAAD//////////wAAAAAAAODBAADA////30EZAAAAAAAAAKaQAgAAAAAA8AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAALuQAgAAAAAA9AEAAAEAAAD//////////wAAAAAAAODBAADA////30EJAAAAAAAAANCQAgDlkAIA+AEAAAIAAAD//////////wAAAAAAAPC/AAAAAAAA4EMRAAAAAAAAAB+RAgAAAAAApAIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30EAAAAAAAAAADORAgAAAAAAeAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMLAAAAM5ECAEKRAgAAAAAAgAEAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8EMKAAAAQpECAFmRAgAAAAAAyAEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAGiRAgAAAAAAzAEAAAQAAAAAAAAAAAAIQAAAAAAAAAAAAAAA4P//70cRAAAAAAAAAHeRAgAAAAAAVAAAAAEAAAABAAAAAAAAAAAAAAAAAPA/AADA////30EbAAAAAAAAAIeRAgCXkQIAPAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAp5ECALyRAgDCkQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAESLAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECANWRAgDckQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAOWRAgDtkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAPeRAgABkgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAA2SAgAXkgIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECACOSAgAokgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAC2SAgA0kgIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECADySAgBFkgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAFGSAgBFkgIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAFySAgBlkgIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAHGSAgB6kgIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAIaSAgCQkgIAAAAAAAoAAAAWAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAJqSAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAp5ECAKaSAgCwkgIAQAEAAAEAAAACAAAAAAAAAAAAAAAAAPA/AADA////30ETAAAAz5ICALyRAgDCkQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAESLAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAN6SAgDckQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAOaSAgDtkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAPeRAgABkgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAA2SAgAXkgIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAO6SAgD1kgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAPySAgADkwIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAAeTAgAOkwIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAB6TAgArkwIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICADmTAgBBkwIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAEmTAgBWkwIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAGSTAgBukwIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAH+TAgCJkwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAJqTAgCkkwIAAAAAAAoAAAAQAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICADySAgBFkgIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAK+TAgC8kwIAAAAAAAoAAAASAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAJqSAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAMmTAgADkwIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAM2TAgAOkwIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICANaTAgArkwIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAOOTAgBBkwIAAAAAAAoAAAAMAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAOqTAgBWkwIAAAAAAAoAAAANAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAPeTAgBukwIAAAAAAAoAAAAOAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAASUAgCJkwIAAAAAAAoAAAAPAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICAFGSAgBFkgIAAAAAAAoAAAARAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAz5ICABGUAgAclAIARAEAAAEAAAACAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAKJQCADiUAgA8lAIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCALyRAgDCkQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAESLAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAECUAgBElAIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAOWRAgDtkQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAPeRAgABkgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAA2SAgAXkgIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAEiUAgBOlAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAFSUAgBdlAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAGmUAgBxlAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAHyUAgCGlAIAAAAAAAoAAAALAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAJqSAgDJkQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAJGUAgBOlAIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAJeUAgBdlAIAAAAAAAoAAAAJAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAKKUAgBxlAIAAAAAAAoAAAAKAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAKJQCAKyUAgC4lAIASAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAxJQCAESLAgDJkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCANWUAgDYlAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCAOuUAgDulAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCAJqSAgDJkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCAPuUAgDYlAIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCAACVAgDulAIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAxJQCAAWVAgAclQIATAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ETAAAAM5UCAESLAgDJkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCACeDAgBPlQIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAFSVAgBblQIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAGKVAgBqlQIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAHOVAgB3lQIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAHuVAgCGlQIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAJKVAgCZlQIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAJqSAgDJkQIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30ETAAAAM5UCAKCVAgCxlQIABAAAAAEAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EAAAAAAAAAAMqVAgDRlQIAUAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADA////30ERAAAAAAAAAAmWAgAVlgIAtAIAAAAAAAADAAAAAAAAAAAAAAAAAAAAAADA////30EbAAAACZYCADCWAgAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30ETAAAACZYCADaWAgAAAAAAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30ETAAAACZYCADyWAgBPlgIAiAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAJAAAAPJYCAGKWAgBllgIAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAHiWAgB7lgIAAAAAAAoAAAABAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAIOWAgCGlgIAAAAAAAoAAAACAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAJiWAgCblgIAAAAAAAoAAAADAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAKyWAgCvlgIAAAAAAAoAAAAEAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCALiWAgC7lgIAAAAAAAoAAAAFAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAMaWAgDJlgIAAAAAAAoAAAAGAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCANOWAgDWlgIAAAAAAAoAAAAHAAAAAAAAAAAAAAAAAODBAADA////30EJAAAAPJYCAOGWAgDklgIAAAAAAAoAAAAIAAAAAAAAAAAAAAAAAODB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AAAEADKrAQAAAAQAtqsBAAAABAAirAEAAAAEAO6sAQAAAAQAvq0BAAAABAB+rgEAAAAEAAAAAAAAAAAAmrEBAAAABACStAEAAQAEAJK0AQACAAQAkrQBAAMABACStAEABAAEAJK0AQAGAAQAkrQBAAgABACStAEACgAEAJK0AQANAAQAtrcBAAQABAC2twEABQAEALa3AQAGAAQAtrcBAAcABAC2twEACAAEALa3AQAJAAQAtrcBAAsABAC2twEADQAEAAAAAAD5////NQAAAI3////9AQAA+Pr//2wGAABk2///SEkAAJwkAABsBgAACAUAAP0BAABzAAAANQAAAAcAAAAAAAAA+f///zUAAACN/////QEAAPj6//9sBgAAZNv//0hJAACcJAAAbAYAAAgFAAD9AQAAcwAAADUAAAAHAAAAAAAAAPj///83AAAAfv////QBAACd+v//0gUAAJbZ//88SQAAziIAAPgGAACtBAAABAIAAGQAAAA0AAAABwAAAAAAAAD4////NwAAAH7////0AQAAnfr//9IFAACW2f//PEkAAM4iAAD4BgAArQQAAAQCAABkAAAANAAAAAcAAAAAAAAA9////zgAAABv////6AEAAEL6//8qBQAAytf//xpJAAAAIQAAdgcAAFIEAAAIAgAAVwAAADMAAAAGAAAAAAAAAPf///84AAAAb////+gBAABC+v//KgUAAMrX//8aSQAAACEAAHYHAABSBAAACAIAAFcAAAAzAAAABgAAAAAAAAD2////OAAAAF/////ZAQAA6fn//3QEAAAA1v//4kgAADMfAADnBwAA+AMAAAoCAABKAAAAMQAAAAUAAAAAAAAA9v///zgAAABf////2QEAAOn5//90BAAAANb//+JIAAAzHwAA5wcAAPgDAAAKAgAASgAAADEAAAAFAAAAAAAAAPb///85AAAATv///8gBAACR+f//sAMAADvU//+SSAAAaB0AAEsIAACeAwAACQIAAD0AAAAwAAAABQAAAAAAAAD2////OQAAAE7////IAQAAkfn//7ADAAA71P//kkgAAGgdAABLCAAAngMAAAkCAAA9AAAAMAAAAAUAAAAAAAAA9f///zkAAAA9////swEAADr5///eAgAAetL//y1IAACgGwAAoggAAEYDAAAHAgAAMQAAAC4AAAAEAAAAAAAAAPX///85AAAAPf///7MBAAA6+f//3gIAAHrS//8tSAAAoBsAAKIIAABGAwAABwIAADEAAAAuAAAABAAAAAAAAAD0////OQAAACz///+bAQAA5vj///0BAAC+0P//skcAAN0ZAADtCAAA7wIAAAICAAAmAAAALAAAAAQAAAAAAAAA9P///zkAAAAs////mwEAAOb4///9AQAAvtD//7JHAADdGQAA7QgAAO8CAAACAgAAJgAAACwAAAAEAAAA//////P///85AAAAGv///4ABAACV+P//DwEAAArP//8hRwAAHhgAACsJAACaAgAA/AEAABwAAAAqAAAABAAAAP/////z////OQAAABr///+AAQAAlfj//w8BAAAKz///IUcAAB4YAAArCQAAmgIAAPwBAAAcAAAAKgAAAAQAAAD/////8f///zgAAAAI////YgEAAEb4//8SAAAAXc3//3pGAABkFgAAXgkAAEcCAAD0AQAAEgAAACgAAAADAAAA//////H///84AAAACP///2IBAABG+P//EgAAAF3N//96RgAAZBYAAF4JAABHAgAA9AEAABIAAAAoAAAAAwAAAP/////w////NwAAAPb+//9AAQAA/Pf//wb///+4y///v0UAALEUAACGCQAA9gEAAOsBAAAJAAAAJwAAAAMAAAD/////8P///zcAAAD2/v//QAEAAPz3//8G////uMv//79FAACxFAAAhgkAAPYBAADrAQAACQAAACcAAAADAAAA/////+////82AAAA5P7//xsBAAC19///7f3//x3K///wRAAABhMAAKIJAACnAQAA4AEAAAEAAAAlAAAAAwAAAP/////v////NgAAAOT+//8bAQAAtff//+39//8dyv//8EQAAAYTAACiCQAApwEAAOABAAABAAAAJQAAAAMAAAD/////7v///zQAAADR/v//8wAAAHP3///H/P//jcj//wxEAABiEQAAtAkAAFsBAADUAQAA+f///yMAAAACAAAA/////+7///80AAAA0f7///MAAABz9///x/z//43I//8MRAAAYhEAALQJAABbAQAA1AEAAPn///8jAAAAAgAAAP/////s////MgAAAL/+///HAAAANvf//5P7//8Jx///FUMAAMcPAAC8CQAAEgEAAMYBAADy////IQAAAAIAAAD/////7P///zIAAAC//v//xwAAADb3//+T+///Ccf//xVDAADHDwAAvAkAABIBAADGAQAA8v///yEAAAACAAAA/////+v///8vAAAArf7//5cAAAD/9v//Ufr//5DF//8LQgAANQ4AALoJAADMAAAAuAEAAOv///8fAAAAAgAAAP/////r////LwAAAK3+//+XAAAA//b//1H6//+Qxf//C0IAADUOAAC6CQAAzAAAALgBAADr////HwAAAAIAAAD/////6f///ywAAACb/v//ZQAAAM72//8D+f//JsT///BAAACtDAAArwkAAIgAAACpAQAA5f///x0AAAACAAAA/////+n///8sAAAAm/7//2UAAADO9v//A/n//ybE///wQAAArQwAAK8JAACIAAAAqQEAAOX///8dAAAAAgAAAP/////o////KQAAAIn+//8uAAAApPb//6n3///Jwv//wz8AADALAACcCQAASAAAAJkBAADg////HAAAAAIAAAD/////6P///ykAAACJ/v//LgAAAKT2//+p9///ycL//8M/AAAwCwAAnAkAAEgAAACZAQAA4P///xwAAAACAAAA/////+b///8lAAAAeP7///X///+A9v//Qvb//3vB//+FPgAAvgkAAIAJAAALAAAAiAEAANv///8aAAAAAQAAAP/////m////JQAAAHj+///1////gPb//0L2//97wf//hT4AAL4JAACACQAACwAAAIgBAADb////GgAAAAEAAACkwgEAusIBAOHCAQAHwwEAHcMBAETDAQBqwwEAgMMBAKfDAQDNwwEA48MBAArEAQAuxAEARMQBAGvEAQAuxAEAj8QBALbEAQAuxAEAj8QBALbEAQAuxAEAj8QBALbEAQDaxAEA8MQBABfFAQAAAAAAAAAAFL4oCh3NpVMkqX9ZJnViRixyjHMtgfyxLgAAADTXIK40lNZiNZauHTb0R942ek+kN2W+NzwkyJ88vigKPfXGdj0LjOU9YWNWPi46yT4+/z0/vKK0PwWLFkTNpVNEapuRRPtl0EQAABBFUWRQRRWOkUW7eNNF8x8WRql/WUYAlJ1GTFniRhHMJ0f86G1H46y0R78U/EfXDiJMdWJGTOcDa0zo8Y9MPyu1TMCu2kxJewBNxo8mTSrrTE1yjHNNpXKaTdOcwU0SCulNgrkQTkiqOE6R22BO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DgAAAAkAAAAAAAAASM4AAAsAAAAVAAAADQAAAA4AAAAHAAAAAwAAAAMAAAADAAAABAFEAYIBogFJAIkAKQAZAAMAAwADAAMAAwADAAMAAwDVAPUAtQB1AOUApQCTAJMAYwDDAFMAMwD5AHkAuQA5ANkAWQCZABkA6QBpAKkAKQDJAEkAiQAJAAEAFwEHARUAFQADAAMAAwADAIYAFwEHARcAAwADAAMAAwAnAgcCFQIVAiUBJQElACUAhgAXABUBFQEFAQUBBQAFACcCBwIVAhUCJQElASUAJQCIABcBBwEXAAMAAwADAAMAggE5AjcBNwEZAwkDOQApAhcCFwInAScBBwIHAicAJwAzAyMDBgGCAaIBGQIpASkABwEHARUBFQEVARUBFwAXAAcABwA3AwcDJQMlAzUCNQI1ADUAEwMzASMCAwIIAQgCBAMZAQcBBwEXABcAAwADAAMAAwADAAMAAwADAEQDggOiAxkFWQHCA1kA4gMpBEkCFwQXBEcBRwFHAEcACQQpAzkCCQMXAxcDNwE3ATcANwAnAicCFQIVAhUCFQIjASMBBQIlAFUFRQVVBFUDMwVDBCMFUwIDBTMEQwMzAwgBCAIZAikBFQEVARUBFQEHAQcBFwAXAAUABQAFAAUABgOEA8IDGQVZAeIDAgQpBEkCGQRHAUcBCQRJACkDOQIZAzkBCQM5ACUCJQIlAiUCBQIFAgUCBQIlACUAJQAlAFcFVwRFBUUFUwNTA1MDUwM1BUUEIwUjBVMCAwUzBEMDUwAzAwgBBgKEAsQCAgMZAikBKQAXARcBBwEHARcAFwAHAAcAIgM5BVkDQgNJBCkFWQIZBVcBVwE3BDcERwNHA1kACQQnBEcCNwNHABUEFQRFAUUBJQM1AhMDEwMzATMBBQM1ACMCAwJTBUMFUwQDBQgBCAIEAxkBBwEHARcAFwADAAMAAwADAAMAAwADAAMARgPEAwYEggSkBOQEJAUZB3kBYgWEBcQFGQZpAWkAAgYiBkIGGQRJAUkAKQM5AgkDFwMXAzcBNwE3ADcAJwInAhUCJQEFAiUAdwdnB3cGVwd3BWcGRQdFB3UEVQZlBTUHdQN1A0UGRQZXBVcEZQNlAyMHcwJlBAUHcwBzAGMCYwJFBTUFAwYDBlUDRQQzBiMGJQVVAhMFEwVTAVMBNQRFAwMFUwAjBEMCMwMDBAgBCAIIAwYEGQKCBBcBFwEHAQcBFwAXAAUABQAFAAUApATmBGQFogXEBSkHeQICBncBdwEZB3kAOQZpA2kAIgZCBhkFZwJnAikGCQYXBhcGZwFnAVkBOQRZAGIGKQRJAhkESQEJBEkAJwMnAzcCNwIVAxUDFQMVAzUBNQE1ATUBBwM3ACUCJQIjASMBIwEjAQMCIwB1B2UHdQZ1BWUGZQZFB0UHdQR1BFcHVwVVBmUFMwczB3MDQwZFBVUENQVVA2MEAwdDBCMFUwIDBUMDMwMIAQgCCAMEBEYEwgQZAikB4gQJABcBFwEHAQcBFwAXAAQFQgViBYIFWQY5B6IFKQd5AkkGaQQZB3kBwgU5BmkDSQVZBEkE4gUnBicGZwJnAmcBZwEZBmkAOQVZAykFWQIXBRcFVwFXATcENwRHA0cDWQAJBCcEJwRHAkcCFwQXBDUDRQElAzUCRwAHAzUANQATAxMDEwMTAzMBIwIDAiMAdQdlB3MGcwZTB3MFYwZDB3MEYwVzA1MFAwdzAAMGAwUIAQgCCAMEBBkBCQEXABcAAwADAAMAAwADAAMAAwADAEgESAVIBkgHSAhICUYKxgpGC8YLRgzGDEINZA2mDSIORA6EDsQOBA+JAUIPYg+CD6QP4g8ZBVkBAhAiEEIQGQRHAUcBCQRJACkDOQIXAxcDNwE3AQcDBwM3ADcAJwInAhUCJQEFAiUAaBBoEWgSZhPkEyQUZhTkFCIVRBWEFcQVBBZEFhkP+QH5AIIWohbCFukC4hYZDukBAhciF0IXYheCF6IXyQY5DcIXKQ3ZAhkNuQfiFwIYyQMiGEkL1wHXAQkN2QCJCqkISQzJBGkLuQY3DDcMJwwnDMcCxwJXC1cLuQWJCRcMFwzHAccBmQgJDMcAxwC5BGkKqQZ5CTcLNwu3A7cDiQhZCicLJwupBWkJpwSnBHkIiQeXBJcEeQd5BrUCtQK1ArUCFQsVC7UBtQEHC7cAlwZHCjcKpwNXCZcFJQolCqUCpQIVChUKpQGlAQcKZwilAKUAhwZHCZUDlQM3CVcIhwVnByUJJQmVApUCVwd3BTUINQiFA4UDZwZHB3cEVwZnBXcDEwmTAQUJlQBFCIUEdQJ1AkcGZwQjCCMIIwgjCIMCEwg1ByUHEwcTB3MBcwFVBQUHdQA1BmUDRQVVBCUGZQI1BQMIgwATBmMBAwZjAFUDRQQjBSMFUwIDBTMEQwNTACMEQwIzA0YY+Q/pD9kP6Q7JD9kOuQ/5C8kO2QzCGOcM5wzXDdcN+QrJDbcOtw7nC+cLlw+XD/cJ9wnnCucKtw23DdcL1wuHD4cP9wj3CMcMxwypDpkOhw6HDnkPeQ71B/UH9Qf1B9UK1QqnDbcMxwv3BmUPZQ/lCFUPlQ3VCfUF5QelDLULRQ9FD/UE9QTHCucG9QP1AzMPMw+FDdUIIw/zAmUOlQwDDwMPxQlVDqMLowt1DdUHQw5DDsUI1QYzDjMOswmzCZULpQqzCuMF4wSDDGMN4wMjDgMO4wBTDdMFcwzDB0MNgwuzCNMEkwqjCWMM0wNzC1MMwwWTCXMKoweTB/cO9wz1DfUN4w3jDeMN4w2jD+MJCAEIAggDCAQIBQYGhgYEB0IHYgcXARcBCQEZAAcABwCIB4gIiAmICogLhgwGDYgNhg4GD4YPBhCEEMYQRhHEEQQSRBKEEsQSBBNEE4QTxBMCFCIUQhRkFKIUwhTkFCIVQhViFZkBghWiFcIV4hUCFikIiQIZCIkBIhZCFmIWghYpB3kCaQQZB1kFeQGiFjkGaQNJBVkEKQZpAhkGwhY5BWcBZwFZA0kEJwUnBVcCVwIXBRcFVwFXAQkFWQA3BDcERwMnBEcCNwNFAUUBFwQHBCUDJQM1AjUCRwAHAxUDFQM1ATUAIwIjAhMCIwEDAiMA4hYCF+kOIhdCF2IX+QuCF9kNqQ/5CrkO6QvJDdkMmQ/5CekKuQ3ZC4kP+QjJDJkO6Ql5D/kHqQ3ZCrkMaQ+iF8cLxwv3BvcGiQ7pCFkPmQ33BfcFdw53DucH5wenDKcMxwrHCrcLtwvZCYkNRw9HD/cE9wQ3DzcP9wP3A9cI1wjnBucGJw8nD/cC9wJpDvkAFw8XD/cB9wGXDJcMxwnHCVcOpwu3CucFdw3XB0cO5wSHDMcINw5nDdcG5wOXC7cJJw4nDqcKpwrnAucCFw4XDucB5wEJDukAVw1XDdcF1wV3DMcHRw2HC9UE1QS3CJcKpwlnDMcGNw3VA9UD1QLVAicNBw0VDRUNdQt1C7UHtQfVAdUBVwzXAMUFxQWFCoUKpQhFDMUEZQu1BrUGlwkHDDUMNQzFA8UDdQp1CqUHpQelBqUGxwAHC8MCwwIlDFULtQUVDIUJlQjFAUULtQRlCjULdQmzA7MDlQeFCCULVQqzArMCpQUVC7MBswG1AGUJlQZFCqUEdQiFBzUKowOjA1MJkwUjCqMCEwqjAQUKpQBjCGMIgwZDCZMEMwmTA5MDdQcFCVMIgwUjCWMHcwaTAhMJkwBDCIMEUwdzBTMIgwNjBkMHcwQDCIMAUwZjBTMHcwNDBgMHcwADBmMA8w/jD/MO0w/zDcMP8wzTDuMNsw/DDuMMow4DDwgBCAIIAwQEGQEJARcAFwADAAMAAwADAAMAAwADAAMARgTGBEQF+Q+EBcIF6AX5AuIGGQ/5AQgHCAgICQgKCAsIDAYNhg0GDoYOBg+GDwYQhBDEEAIRJBFkEaIRWQHCEeIRAhIiEhkESQFCEikDOQIXAxcDNwE3AQkDOQAnAicCFQIlAQUCJQDnD/cO1w/3DccP9wy3D/cLpQ+lD/cKlw/3CfcIhQ+FD3UP9QdlD/UGVQ/1BUMPQw/zBPMD8wDzAPMA8wDzAPMA8wDzADUPNQ81DzUPaBJmE+YTZhQjDwMP5BQkFWQVohXEFQQWQhZkFqQW5BYkF+kDYheCF6IXwhfiFwIYIhgJDUIYYhiCGDkMohgZDMkAwhjnAucCKQ4ZDtkDKQ3ZAtkBOQviGBcNFw3JBGkLyQOpBycMJwzJArkFyQEJDEkLuQRpCqkGtwO3A1kKqQUnCycLtwK3AhcLFwu3AbcBCQu5AGkJmQZJCqkEeQiJB6cDpwM5ClkJJwonCpkFaQinAacBiQZ5B5cElwRJCVkHZwdnB6UCpQKlAqUCFQoVCgcKpwA3CZcDVwiHBSUJJQmVApUCdwYHCRUJFQmVAZUBlwBHCIcEdwU3CIcDZwYnCIUChQJHB3cEFQgVCIUBhQGFAIUABwhXBjUHNQd1A3UDZwVHBiUHJQd1AnUCZwRXBQUHBQcTBxMHEwcTB3MBcwF1ADUGZQNFBVUEJQZjAhMGYwFjAQUGZQBTA1MDNQVFBCMFUwITBQMFMwRDA1MAIwRDAjMDAwRDAMkOAhnXDtcO5wnnCekK2QnlDuUO5Q7lDucN5w3nC+cLtQ61DsUNxQ3XDNcLpQ6lDsUMxQynDdcKdw6nDMUKxQrHCXcNVQ5VDrMNsw2zDbMNkw6TDrUMxQuFDuUIlQ3lB7ULhQ3VCGUO4waTDKULtQrlBdUHQw5DDuUEhQzDCDMOYw1jDdUGlQu1CaUK4wHjAdME0wS1CKUJcwtzC7UH1QADDuMAUw3TBXMMwwdDDYMLkwpjDMMGMw1TDMMFgwqjCJMJQwyzBnMKUwuDCZMIcwmTB4MI4wzTDQgBCAIIA/kPCAQIBQgGCAcICAgJBgqEChkBCQEZAAkA6Q/5DtkP+Q3JD/kMuQ/5C/cK9wqpD5kP9wn3CfcI9wiJD3kP9wf3B2cPZw/3BvcGVw9XD/cF9wVHD0cP9wT3BDcPNw/3A/cDJw8nD/cC9wL3AfcBGQ/5AMYKRgvGC0YMyAzGDUYOxg5ED4QPxA8EEEQQhBDEEAQRRBGGEQQSRBKEEsYSRBOGEwIUJBRkFKIUxBQCFSIVQhViFYIVohXCFeIVAhYiFkIWYhaCFqIWwhbiFgIXJBdiF4QXeQPCF3kCSQZpBFkFeQE5BmkDSQVZBCkGaQIZBmkB4hc5BVkDSQQpBVkCGQUCGFcBVwE5BEkDJwQnBEcCRwI3AzcDFwQXBEcBRwEJBEkAJwMnAzcCNwIVAxUDFQMVAzUBNQE1ATUBBwM3ACUCJQITAhMCEwITAiMBIwEFAiUAAw8DDwMPAw/nDtcO5w3HDucM1w23DucLxw3XDKcO5wq3DdcLxwyXDucJpw3XCrcMxwuHDucIlw3XCXcO5wenDMcKxwq3C7cLhw2HDdcI1wgJDukABw0HDeUG5QblBuUGZw6XDMUJxQlVDlUOtQq1CuUF5QWnC3cN1QfVB+UE5QSFDIUMxQjFCEcOJw41DjUOZQ3VBuUDlQu1CaUK5QIVDuUBVQ3VBXUMxQdFDYULtQjVBJUKpQllDMUGNQ3VAyUN1QIVDXULtQfVAVUMxQWFCqUIlQlFDMUEZQtlC7UGtQbXAAcMNQw1DMUDdQqlByUMxQJVC7UFFQyFCZUIxQFFC8cABws1CzULtwAHChUKFQqzBLMEZQqlBnUJdQmVB5UHpwAHCZUAlQCzA4MIJQtVCrMCswKlBRULtQFlCZMGowRFCnUIgweDBzMKowNTCZMFIwqjAqMBYwiDBnMHQwmTBDMJkwNTCIMFIwljB3MGkwITCZMBQwiDBFMHcwUzCIMDYwYjCIMCEwhDB3MEgwGDAQUIhQBTBmMFEwcTBwUHdQAzByMHAwZjAAMFUwAAAAWAD4AKABuAHgAUABGAM4A2ADwAOYAoAC2AJ4AiAGOAZgBsAGmAeAB9gHeAcgBQAFWAX4BaAEuATgBEAEGAw4DGAMwAyYDYAN2A14DSAPAA9YD/gPoA64DuAOQA4YCgAKWAr4CqALuAvgC0ALGAk4CWAJwAmYCIAI2Ah4CCAIOBhgGMAYmBmAGdgZeBkgGwAbWBv4G6AauBrgGkAaGB4AHlge+B6gH7gf4B9AHxgdOB1gHcAdmByAHNgceBwgFAAUWBT4FKAVuBXgFUAVGBc4F2AXwBeYFoAW2BZ4FiASOBJgEsASmBOAE9gTeBMgEQARWBH4EaAQuBDgEEAQGBA4MGAwwDCYMYAx2DF4MSAzADNYM/gzoDK4MuAyQDIYNgA2WDb4NqA3uDfgN0A3GDU4NWA1wDWYNIA02DR4NCA8ADxYPPg8oD24PeA9QD0YPzg/YD/AP5g+gD7YPng+IDo4OmA6wDqYO4A72Dt4OyA5ADlYOfg5oDi4OOA4QDgYOAAoWCj4KKApuCngKUApGCs4K2ArwCuYKoAq2Cp4KiAuOC5gLsAumC+AL9gveC8gLQAtWC34LaAsuCzgLEAsGCQ4JGAkwCSYJYAl2CV4JSAnACdYJ/gnoCa4JuAmQCYYIgAiWCL4IqAjuCPgI0AjGCE4IWAhwCGYIIAg2CB4ICAgEA//8CAAIAAgABAAIAAAACAAMAAgACEAIAARACAAAQAgADEAIAAiACAAEgAgAAIAIAAyACAAIPAgABDwIAAA8CAAMPAgACHwIAAR8CAAAfAgADHwIAAi8CAAEvAgAALwIAAy8EAP//CBABABAwAgAgMAIAQDAEAEAyBAAIEAEAEBACACAQAgBAEAQAAPEBAAgQAQAIQAEACFABABAwAgAgMAIAEMACACDAAgAQkAIAIJACABBgAgAgYAIAELACACCwAgAQ4AIAIOACABBwAgAgcAIAENACACDQAgAQ8AIAIPACAEDwBAAAAQEACBABAAhAAQAIUAEAEDACACAwAgAQwAIAIMACABDwAgAg8AIAQDAEAEDABABA8AQAAAGAAQACAAMDAAMAAwADAAQABAAEAAQARmx2Q2xpZW50ACRvbldzTWVzc2FnZQAkY2xvc2UAX2luaXRBdWRpbwBkZWNvZGVWaWRlb0J1ZmZlcgB2aWRlb0J1ZmZlcgBhdWRpb0J1ZmZlcgAkcGxheQAkZ2V0V2ViU29ja2V0AGRhdGEATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAGluaXRBdWRpbwBwbGF5QXVkaW8AT25seSBzdXBwb3J0IHZpZGVvIGguMjY0L2F2YyBvciBoLjI2NS9oZXZjIGNvZGVjLiBhY3R1YWw9JWQAY29kZQBOZXRTdHJlYW0uUGxheS5TdGFydABvbk5ldFN0YXR1cwBzZXRUaW1lb3V0IHRvIHBsYXkgdmlkZW8gYnVmZmVyICVkAGNoZWNrVmlkZW9CdWZmZXIAeyByZXR1cm4gKG5ldyBEYXRlKCkpLmdldFRpbWUoKTsgfQBOMTBlbXNjcmlwdGVuM3ZhbEUAcmVjb25uZWN0AHtjbGVhclRpbWVvdXQoJDApfQBGbHZEZWNvZGVyIGNsZWFyIQoAaW5pdEF1ZGlvLGZyYW1lQ291bnQ6JWQsY2hhbm5lbHM6JWQAYXVkaW8gaW5pdCEgJWQAbXAzIGluaXQhAE5ldFN0cmVhbS5CdWZmZXIuRW1wdHkAd2ViZ2w6JXMAdHJ1ZQBmYWxzZQBGRk1wZWcgaW5pdAA2RkZtcGVnADEyVmlkZW9EZWNvZGVyAGNvZGVjID0gJWQAdmlkZW8gZGVjb2RlciByZWxlYXNlIQoARkZNcGVnIGRlc3RvcnkAY29kZWMgPSAlZCxwdHIgPSAlZABhdmNvZGVjX29wZW4yOiVkAGZmbXBlZyBkZWNvZGUgcmV0OiVkAGNhbnZhczolZCwlZABzZXRWaWRlb1NpemUAZHJhdwAuZmx2AFdlYlNvY2tldAA5Rmx2Q2xpZW50AEZsdkRlY29kZXIgcmVsZWFzZSEKAGF1ZGlvIGRlY29kZXIgcmVsZWFzZQoAYXVkaW8gZGVjb2RlciByZWxlYXNlIQoAUDlGbHZDbGllbnQAUEs5Rmx2Q2xpZW50AGlpAHYAdmlpaQBpaWlpaQB2aWkAaWlpAHZpaWlpAGlpaWkAbGF5ZXIzLmMABgUFBQkJCQkGCQkJBgUHAwkJDAYGCQwGCwoAABISAAAPEgAABwcHAAwMDAAGDwwABgYGAwwJCQYGDAkGCAgFAA8MCQAGEgkAAAAAAQACAAMDAAEBAQIBAwIBAgICAwMBAwIDAwQCBAMAAAAAAAAAAAAAAAEBAQECAgMDAwIAcmVxdWFudGl6ZSBvdmVyZmxvdyAoJWYgKiAyXiVkKQoALWJpdHNfbGVmdCA8PSBNQURfQlVGRkVSX0dVQVJEICogQ0hBUl9CSVQASUlJX2h1ZmZkZWNvZGUABAQEBAQEBgYGCAoMEBIWHCIoLjY2wAQEBAQEBAQEBAQEBAYGBgYGBgoKCgwMDA4ODhAQEBQUFBoaGkJCQgQEBAQEBAYGBAQEBgYGBgYGCgoKDAwMDg4OEBAQFBQUGhoaQkJCBAQEBAQEBgYICAoMEBQYHCIqMjZMngQEBAQEBAQEBAQEBAYGBggICAoKCgwMDA4ODhISEhYWFh4eHjg4OAQEBAQEBAYGBAQEBgYGCAgICgoKDAwMDg4OEhISFhYWHh4eODg4BAQEBAQEBgYICgwQFBgeJi44RFRmGgQEBAQEBAQEBAQEBAYGBggICAwMDBAQEBQUFBoaGiIiIioqKgwMDAQEBAQEBAYGBAQEBgYGCAgIDAwMEBAQFBQUGhoaIiIiKioqDAwMBgYGBgYGCAoMDhASFhogJi42PkZMJAQEBAQEBAQEBAYGBggICAoKCgwMDA4ODhISEhgYGCAgICwsLAwMDAYGBgYGBgYGBggICAoKCgwMDA4ODhISEhgYGCAgICwsLAwMDAYGBgYGBggKDA4QFBgcICYuNDxEOjYEBAQEBAQEBAQGBgYGBgYICAgKCgoODg4SEhIaGhogICAqKioSEhIGBgYGBgYGBgYGBgYICAgKCgoODg4SEhIaGhogICAqKioSEhIEBAQEBAQEBAQGBgYICAgKCgoMDAwODg4SEhIYGBgeHh4oKCgSEhIGBgYGBgYGBgYICAgKCgoMDAwODg4SEhIYGBgeHh4oKCgSEhIMDAwMDAwQFBgcICgwOEBMWgICAgICCAgICAgICAgIDAwMEBAQFBQUGBgYHBwcJCQkAgICAgICAgICGhoaDAwMBAQECAgIDAwMEBAQFBQUGBgYHBwcJCQkAgICAgICAgICGhoaZGVub20gIT0gMAB0aW1lci5jAHNjYWxlX3JhdGlvbmFsAAAAAQECAgICAwMDAwMDAwMEBAQEBAQEBAQEBAQEBAQEBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcAgEDAIKBg4BCQUNAwsHDwCIhIyCioaOgYmFjYOLh4+ASERMQkpGTkFJRU1DS0dPQMjEzMLKxs7BycXNw8vHz8AoJCwiKiYuISklLSMrJy8gqKSsoqqmrqGppa2jq6evoGhkbGJqZm5haWVtY2tnb2Do5Ozi6ubu4enl7ePr5+/gGBQcEhoWHhEZFR0TGxcfEJiUnJKalp6RmZWdk5uXn5BYVFxSWlZeUVlVXVNbV19Q2NTc0trW3tHZ1d3T29ff0Dg0PDI6Nj4xOTU9Mzs3PzC4tLyyura+sbm1vbO7t7+weHR8cnp2fnF5dX1ze3d/cPj0/PL69v7x+fX98/v3//RmFpbGVkIHRvIHJlYWxsb2NhdGUgcGFyc2VyIGJ1ZmZlciB0byAlZAoAbmV4dCA+PSAwIHx8IHBjLT5idWZmZXIAbGliYXZjb2RlYy9wYXJzZXIuYwAlcyVzJXMlcwAgICAgTGFzdCBtZXNzYWdlIHJlcGVhdGVkICVkIHRpbWVzDQAgICAgTGFzdCBtZXNzYWdlIHJlcGVhdGVkICVkIHRpbWVzCgAbWyV1OzMldW0lcxtbMG0AG1s0ODs1OyV1bRtbMzg7NTslZG0lcxtbMG0AG1s0ODs1OyV1bRtbMzg7NTsldW0lcxtbMG0AVEVSTQBOT19DT0xPUgBBVl9MT0dfRk9SQ0VfTk9DT0xPUgBBVl9MT0dfRk9SQ0VfQ09MT1IAQVZfTE9HX0ZPUkNFXzI1NkNPTE9SADI1NmNvbG9yAFslcyBAICVwXSAAWyVzXSAAcGFuaWMAZmF0YWwAZXJyb3IAd2FybmluZwBpbmZvAHZlcmJvc2UAcXVpZXQAAAECAwQFBghBIG5vbi1OVUxMIHBhY2tldCBzZW50IGFmdGVyIGFuIEVPRi4KAENvZGVjICclcycgKCVkKSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBiaXRzdHJlYW0gZmlsdGVyICclcycuIFN1cHBvcnRlZCBjb2RlY3MgYXJlOiAAJXMgKCVkKSAAbXBlZzF2aWRlbwBtcGVnMnZpZGVvAGgyNjEAaDI2MwBydjEwAHJ2MjAAbWpwZWcAbWpwZWdiAGxqcGVnAHNwNXgAanBlZ2xzAG1wZWc0AHJhd3ZpZGVvAG1zbXBlZzR2MQBtc21wZWc0djIAbXNtcGVnNHYzAHdtdjEAd212MgBoMjYzcABoMjYzaQBmbHYxAHN2cTEAc3ZxMwBkdnZpZGVvAGh1ZmZ5dXYAY3l1dgBpbmRlbzMAdnAzAHRoZW9yYQBhc3YxAGFzdjIAZmZ2MQA0eG0AdmNyMQBjbGpyAG1kZWMAcm9xAGludGVycGxheXZpZGVvAHhhbl93YzMAeGFuX3djNABycHphAGNpbmVwYWsAd3NfdnFhAG1zcmxlAG1zdmlkZW8xAGlkY2luADhicHMAc21jAGZsaWMAdHJ1ZW1vdGlvbjEAdm1kdmlkZW8AbXN6aAB6bGliAHF0cmxlAHRzY2MAdWx0aQBxZHJhdwB2aXhsAHFwZWcAcG5nAHBwbQBwYm0AcGdtAHBnbXl1dgBwYW0AZmZ2aHVmZgBydjMwAHJ2NDAAdmMxAHdtdjMAbG9jbwB3bnYxAGFhc2MAaW5kZW8yAGZyYXBzAHRydWVtb3Rpb24yAGJtcABjc2NkAG1tdmlkZW8Aem1idgBhdnMAc21hY2t2aWRlbwBudXYAa212YwBmbGFzaHN2AGNhdnMAanBlZzIwMDAAdm1uYwB2cDUAdnA2AHZwNmYAdGFyZ2EAZHNpY2ludmlkZW8AdGllcnRleHNlcXZpZGVvAHRpZmYAZ2lmAGR4YQBkbnhoZAB0aHAAc2dpAGM5MwBiZXRoc29mdHZpZABwdHgAdHhkAHZwNmEAdmIAcGN4AHN1bnJhc3QAaW5kZW80AGluZGVvNQBtaW1pYwBybDIAZXNjYXBlMTI0AGRpcmFjAGJmaQBjbXYAbW90aW9ucGl4ZWxzAHRndgB0Z3EAdHFpAGF1cmEAYXVyYTIAdjIxMHgAdG12AHYyMTAAZHB4AG1hZABmcnd1AGZsYXNoc3YyAGNkZ3JhcGhpY3MAcjIxMABhbm0AYmlua3ZpZGVvAGlmZl9pbGJtAGtndjEAeW9wAHZwOABwaWN0b3IAYW5zaQBhNjRfbXVsdGkAYTY0X211bHRpNQByMTBrAG14cGVnAGxhZ2FyaXRoAHByb3JlcwBqdgBkZmEAd212M2ltYWdlAHZjMWltYWdlAHV0dmlkZW8AYm12X3ZpZGVvAHZibGUAZHh0b3J5AHY0MTAAeHdkAGNkeGwAeGJtAHplcm9jb2RlYwBtc3MxAG1zYTEAdHNjYzIAbXRzMgBjbGxjAG1zczIAdnA5AGVzY2FwZTEzMABnMm0Ad2VicABobm00dmlkZW8AaGV2YwBmaWMAYWxpYXNfcGl4AGJyZW5kZXJfcGl4AHBhZl92aWRlbwBleHIAdnA3AHNhbm0Ac2dpcmxlAG12YzEAbXZjMgBocXgAdGRzYwBocV9ocWEAaGFwAGRkcwBkeHYAc2NyZWVucHJlc3NvAHJzY2MAeTQxcABhdnJwADAxMnYAYXZ1aQBheXV2AHRhcmdhX3kyMTYAdjMwOAB2NDA4AHl1djQAYXZybgBjcGlhAHhmYWNlAHNub3cAc212anBlZwBhcG5nAGRhYWxhAGNmaGQAdHJ1ZW1vdGlvbjJydABtMTAxAG1hZ2ljeXV2AHNoZWVydmlkZW8AeWxjAHBzZABwaXhsZXQAc3BlZWRocQBmbXZjAHNjcHIAY2xlYXJ2aWRlbwB4cG0AYXYxAGJpdHBhY2tlZABtc2NjAHNyZ2MAc3ZnAGdkdgBmaXRzAHBjbV9zMTZsZQBwY21fczE2YmUAcGNtX3UxNmxlAHBjbV91MTZiZQBwY21fczgAcGNtX3U4AHBjbV9tdWxhdwBwY21fYWxhdwBwY21fczMybGUAcGNtX3MzMmJlAHBjbV91MzJsZQBwY21fdTMyYmUAcGNtX3MyNGxlAHBjbV9zMjRiZQBwY21fdTI0bGUAcGNtX3UyNGJlAHBjbV9zMjRkYXVkAHBjbV96b3JrAHBjbV9zMTZsZV9wbGFuYXIAcGNtX2R2ZABwY21fZjMyYmUAcGNtX2YzMmxlAHBjbV9mNjRiZQBwY21fZjY0bGUAcGNtX2JsdXJheQBwY21fbHhmAHMzMDJtAHBjbV9zOF9wbGFuYXIAcGNtX3MyNGxlX3BsYW5hcgBwY21fczMybGVfcGxhbmFyAHBjbV9zMTZiZV9wbGFuYXIAcGNtX3M2NGxlAHBjbV9zNjRiZQBwY21fZjE2bGUAcGNtX2YyNGxlAGFkcGNtX2ltYV9xdABhZHBjbV9pbWFfd2F2AGFkcGNtX2ltYV9kazMAYWRwY21faW1hX2RrNABhZHBjbV9pbWFfd3MAYWRwY21faW1hX3NtanBlZwBhZHBjbV9tcwBhZHBjbV80eG0AYWRwY21feGEAYWRwY21fYWR4AGFkcGNtX2VhAGFkcGNtX2c3MjYAYWRwY21fY3QAYWRwY21fc3dmAGFkcGNtX3lhbWFoYQBhZHBjbV9zYnByb180AGFkcGNtX3NicHJvXzMAYWRwY21fc2Jwcm9fMgBhZHBjbV90aHAAYWRwY21faW1hX2FtdgBhZHBjbV9lYV9yMQBhZHBjbV9lYV9yMwBhZHBjbV9lYV9yMgBhZHBjbV9pbWFfZWFfc2VhZABhZHBjbV9pbWFfZWFfZWFjcwBhZHBjbV9lYV94YXMAYWRwY21fZWFfbWF4aXNfeGEAYWRwY21faW1hX2lzcwBhZHBjbV9nNzIyAGFkcGNtX2ltYV9hcGMAYWRwY21fdmltYQBhZHBjbV9hZmMAYWRwY21faW1hX29raQBhZHBjbV9kdGsAYWRwY21faW1hX3JhZABhZHBjbV9nNzI2bGUAYWRwY21fdGhwX2xlAGFkcGNtX3BzeABhZHBjbV9haWNhAGFkcGNtX2ltYV9kYXQ0AGFkcGNtX210YWYAYW1yX25iAGFtcl93YgByYV8xNDQAcmFfMjg4AHJvcV9kcGNtAGludGVycGxheV9kcGNtAHhhbl9kcGNtAHNvbF9kcGNtAHNkeDJfZHBjbQBncmVtbGluX2RwY20AbXAyAG1wMwBhYWMAYWMzAHZvcmJpcwBkdmF1ZGlvAHdtYXYxAHdtYXYyAG1hY2UzAG1hY2U2AHZtZGF1ZGlvAGZsYWMAbXAzYWR1AG1wM29uNABzaG9ydGVuAGFsYWMAd2VzdHdvb2Rfc25kMQBnc20AcWRtMgBjb29rAHRydWVzcGVlY2gAdHRhAHNtYWNrYXVkaW8AcWNlbHAAd2F2cGFjawBkc2ljaW5hdWRpbwBpbWMAbXVzZXBhY2s3AG1scABnc21fbXMAYXRyYWMzAGFwZQBuZWxseW1vc2VyAG11c2VwYWNrOABzcGVleAB3bWF2b2ljZQB3bWFwcm8Ad21hbG9zc2xlc3MAYXRyYWMzcABlYWMzAHNpcHIAbXAxAHR3aW52cQB0cnVlaGQAbXA0YWxzAGF0cmFjMQBiaW5rYXVkaW9fcmRmdABiaW5rYXVkaW9fZGN0AGFhY19sYXRtAHFkbWMAY2VsdABnNzIzXzEAZzcyOQA4c3Z4X2V4cAA4c3Z4X2ZpYgBibXZfYXVkaW8AcmFsZgBpYWMAaWxiYwBvcHVzAGNvbWZvcnRub2lzZQB0YWsAbWV0YXNvdW5kAHBhZl9hdWRpbwBhdmMAZHNzX3NwAGNvZGVjMgB3YXZlc3ludGgAc29uaWMAc29uaWNscwBldnJjAHNtdgBkc2RfbHNiZgBkc2RfbXNiZgBkc2RfbHNiZl9wbGFuYXIAZHNkX21zYmZfcGxhbmFyADRndgBpbnRlcnBsYXlhY20AeG1hMQB4bWEyAGRzdABhdHJhYzNhbABhdHJhYzNwYWwAZG9sYnlfZQBhcHR4AGFwdHhfaGQAc2JjAGR2ZF9zdWJ0aXRsZQBkdmJfc3VidGl0bGUAdGV4dAB4c3ViAHNzYQBtb3ZfdGV4dABoZG12X3Bnc19zdWJ0aXRsZQBkdmJfdGVsZXRleHQAc3J0AG1pY3JvZHZkAGVpYV82MDgAamFjb3N1YgBzYW1pAHJlYWx0ZXh0AHN0bABzdWJ2aWV3ZXIxAHN1YnZpZXdlcgBzdWJyaXAAd2VidnR0AG1wbDIAdnBsYXllcgBwanMAaGRtdl90ZXh0X3N1YnRpdGxlAHR0ZgBzY3RlXzM1AGJpbnRleHQAeGJpbgBpZGYAb3RmAGtsdgBkdmRfbmF2X3BhY2tldAB0aW1lZF9pZDMAYmluX2RhdGEAd3JhcHBlZF9hdmZyYW1lAGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQBhcHBsaWNhdGlvbi92bmQubXMtb3BlbnR5cGUAYXBwbGljYXRpb24veC10cnVldHlwZS1mb250AGFwcGxpY2F0aW9uL3gtZm9udABpbWFnZS9zdmcreG1sAGltYWdlL3gteHBpeG1hcABpbWFnZS9wbmcAaW1hZ2Uvd2VicABpbWFnZS94LXhiaXRtYXAAaW1hZ2UveC14d2luZG93ZHVtcABpbWFnZS94LXBjeABpbWFnZS9naWYAaW1hZ2UvdGlmZgBpbWFn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EBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8vMDEyMjM0NDU1NjY3Nzc4ODg5OTk5AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1NTY3ODg5Ojo7Ozw8PT09Pj4+Pz8/PwAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozs8PT4+P0BAQUFCQkNDQ0REREVFRUUAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFBQkNEREVGRkdHSEhJSUlKSkpLS0tLaDI2NAB0aHJlYWRfcmVsZWFzZV9idWZmZXIgY2FsbGVkIG9uIHBpYyAlcAoAZnJhbWUtPm5iX2V4dGVuZGVkX2J1ZiA9PSAwAGxpYmF2Y29kZWMvZGVjb2RlLmMAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBmcmFtZSAlcABwaWMtPmRhdGFbKl0hPU5VTEwgaW4gYXZjb2RlY19kZWZhdWx0X2dldF9idWZmZXIKAFVuYWJsZSB0byBnZXQgcGl4ZWwgZm9ybWF0IGRlc2NyaXB0b3IgZm9yIGZvcm1hdCAlcwoAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBwaWMgJXAKAHl1djQyMHAAeXV5djQyMgByZ2IyNABiZ3IyNAB5dXY0MjJwAHl1djQ0NHAAeXV2NDEwcAB5dXY0MTFwAGdyYXk4LHk4AG1vbm93AG1vbm9iAHBhbDgAeXV2ajQyMHAAeXV2ajQyMnAAeXV2ajQ0NHAAdXl2eTQyMgB1eXl2eXk0MTEAYmdyOABiZ3I0AGJncjRfYnl0ZQByZ2I4AHJnYjQAcmdiNF9ieXRlAG52MTIAbnYyMQBhcmdiAHJnYmEAYWJncgBiZ3JhAGdyYXkxNmJlAHkxNmJlAGdyYXkxNmxlAHkxNmxlAHl1djQ0MHAAeXV2ajQ0MHAAeXV2YTQyMHAAcmdiNDhiZQByZ2I0OGxlAHJnYjU2NWJlAHJnYjU2NWxlAHJnYjU1NWJlAHJnYjU1NWxlAGJncjU2NWJlAGJncjU2NWxlAGJncjU1NWJlAGJncjU1NWxlAHZhYXBpX21vY28AdmFhcGlfaWRjdAB2YWFwaV92bGQAeXV2NDIwcDE2bGUAeXV2NDIwcDE2YmUAeXV2NDIycDE2bGUAeXV2NDIycDE2YmUAeXV2NDQ0cDE2bGUAeXV2NDQ0cDE2YmUAZHh2YTJfdmxkAHJnYjQ0NGxlAHJnYjQ0NGJlAGJncjQ0NGxlAGJncjQ0NGJlAHlhOABncmF5OGEAYmdyNDhiZQBiZ3I0OGxlAHl1djQyMHA5YmUAeXV2NDIwcDlsZQB5dXY0MjBwMTBiZQB5dXY0MjBwMTBsZQB5dXY0MjJwMTBiZQB5dXY0MjJwMTBsZQB5dXY0NDRwOWJlAHl1djQ0NHA5bGUAeXV2NDQ0cDEwYmUAeXV2NDQ0cDEwbGUAeXV2NDIycDliZQB5dXY0MjJwOWxlAGdicnAAZ2JycDliZQBnYnJwOWxlAGdicnAxMGJlAGdicnAxMGxlAGdicnAxNmJlAGdicnAxNmxlAHl1dmE0MjJwAHl1dmE0NDRwAHl1dmE0MjBwOWJlAHl1dmE0MjBwOWxlAHl1dmE0MjJwOWJlAHl1dmE0MjJwOWxlAHl1dmE0NDRwOWJlAHl1dmE0NDRwOWxlAHl1dmE0MjBwMTBiZQB5dXZhNDIwcDEwbGUAeXV2YTQyMnAxMGJlAHl1dmE0MjJwMTBsZQB5dXZhNDQ0cDEwYmUAeXV2YTQ0NHAxMGxlAHl1dmE0MjBwMTZiZQB5dXZhNDIwcDE2bGUAeXV2YTQyMnAxNmJlAHl1dmE0MjJwMTZsZQB5dXZhNDQ0cDE2YmUAeXV2YTQ0NHAxNmxlAHZkcGF1AHh5ejEybGUAeHl6MTJiZQBudjE2AG52MjBsZQBudjIwYmUAcmdiYTY0YmUAcmdiYTY0bGUAYmdyYTY0YmUAYmdyYTY0bGUAeXZ5dTQyMgB5YTE2YmUAeWExNmxlAGdicmFwAGdicmFwMTZiZQBnYnJhcDE2bGUAcXN2AG1tYWwAZDNkMTF2YV92bGQAY3VkYQAwcmdiAHJnYjAAMGJncgBiZ3IwAHl1djQyMHAxMmJlAHl1djQyMHAxMmxlAHl1djQyMHAxNGJlAHl1djQyMHAxNGxlAHl1djQyMnAxMmJlAHl1djQyMnAxMmxlAHl1djQyMnAxNGJlAHl1djQyMnAxNGxlAHl1djQ0NHAxMmJlAHl1djQ0NHAxMmxlAHl1djQ0NHAxNGJlAHl1djQ0NHAxNGxlAGdicnAxMmJlAGdicnAxMmxlAGdicnAxNGJlAGdicnAxNGxlAHl1dmo0MTFwAGJheWVyX2JnZ3I4AGJheWVyX3JnZ2I4AGJheWVyX2dicmc4AGJheWVyX2dyYmc4AGJheWVyX2JnZ3IxNmxlAGJheWVyX2JnZ3IxNmJlAGJheWVyX3JnZ2IxNmxlAGJheWVyX3JnZ2IxNmJlAGJheWVyX2dicmcxNmxlAGJheWVyX2dicmcxNmJlAGJheWVyX2dyYmcxNmxlAGJheWVyX2dyYmcxNmJlAHh2bWMAeXV2NDQwcDEwbGUAeXV2NDQwcDEwYmUAeXV2NDQwcDEybGUAeXV2NDQwcDEyYmUAYXl1djY0bGUAYXl1djY0YmUAdmlkZW90b29sYm94X3ZsZABwMDEwbGUAcDAxMGJlAGdicmFwMTJiZQBnYnJhcDEybGUAZ2JyYXAxMGJlAGdicmFwMTBsZQBtZWRpYWNvZGVjAGdyYXkxMmJlAHkxMmJlAGdyYXkxMmxlAHkxMmxlAGdyYXkxMGJlAHkxMGJlAGdyYXkxMGxlAHkxMGxlAHAwMTZsZQBwMDE2YmUAZDNkMTEAZ3JheTliZQB5OWJlAGdyYXk5bGUAeTlsZQBnYnJwZjMyYmUAZ2JycGYzMmxlAGdicmFwZjMyYmUAZ2JyYXBmMzJsZQBkcm1fcHJpbWUAb3BlbmNsAEZhaWxlZCB0byBtYXAgZnJhbWUgaW50byBkZXJpdmVkIGZyYW1lIGNvbnRleHQ6ICVkLgoASW52YWxpZCBtYXBwaW5nIGZvdW5kIHdoZW4gYXR0ZW1wdGluZyB1bm1hcC4KAGF2X2ltYWdlX2dldF9saW5lc2l6ZSBmYWlsZWQKAGFicyhzcmNfbGluZXNpemUpID49IGJ5dGV3aWR0aABsaWJhdnV0aWwvaW1ndXRpbHMuYwBhYnMoZHN0X2xpbmVzaXplKSA+PSBieXRld2lkdGgAUGljdHVyZSBzaXplICV1eCV1IGlzIGludmFsaWQKAFBpY3R1cmUgc2l6ZSAldXgldSBleGNlZWRzIHNwZWNpZmllZCBtYXggcGl4ZWwgY291bnQgJWxsZCwgc2VlIHRoZSBkb2N1bWVudGF0aW9uIGlmIHlvdSB3aXNoIHRvIGluY3JlYXNlIGl0CgBJTUdVVElMUwAhZHN0LT5mLT5idWZbMF0AbGliYXZjb2RlYy9oMjY0X3BpY3R1cmUuYwBzcmMtPmYtPmJ1ZlswXQBzcmMtPnRmLmYgPT0gc3JjLT5mACFkc3QtPnByb2dyZXNzAGxpYmF2Y29kZWMvdXRpbHMuYwBidWZfaW5kZXggPD0gYnVmX3NpemUAbGliYXZjb2RlYy9oMjY0ZGVjLmMAbm8gZnJhbWUhCgBwaWN0LT5idWZbMF0gfHwgISpnb3RfZnJhbWUARHVwbGljYXRpbmcgZmllbGQgJWQgdG8gZmlsbCBtaXNzaW5nCgBzdGVyZW9fbW9kZQBjaGVja2VyYm9hcmRfcmwAY2hlY2tlcmJvYXJkX2xyAGNvbF9pbnRlcmxlYXZlZF9ybABjb2xfaW50ZXJsZWF2ZWRfbHIAcm93X2ludGVybGVhdmVkX3JsAHJvd19pbnRlcmxlYXZlZF9scgByaWdodF9sZWZ0AGxlZnRfcmlnaHQAYm90dG9tX3RvcAB0b3BfYm90dG9tAGJsb2NrX3JsAGJsb2NrX2xyAGhhcmR3YXJlIGFjY2VsZXJhdG9yIGZhaWxlZCB0byBkZWNvZGUgcGljdHVyZQoAJXAgZmluaXNoZWQgJWQgZmllbGQgJWQKAFNQUyBpcyB1bnNldAoAbm8gbW1jbyBoZXJlCgBtbWNvOiVkICVkICVkCgBtbWNvOiB1bnJlZiBzaG9ydCBmYWlsdXJlCgBtbWNvOiB1bnJlZiBzaG9ydCAlZCBjb3VudCAlZAoAbW1jbzogdW5yZWYgbG9uZyBmYWlsdXJlCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byBzaG9ydCBhbmQgbG9uZyBhdCB0aGUgc2FtZSB0aW1lCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byAyIGxvbmcgdGVybSByZWZlcmVuY2VzCgAhaC0+Y3VyX3BpY19wdHItPmxvbmdfcmVmAGxpYmF2Y29kZWMvaDI2NF9yZWZzLmMAaWxsZWdhbCBzaG9ydCB0ZXJtIHJlZmVyZW5jZSBhc3NpZ25tZW50IGZvciBzZWNvbmQgZmllbGQgaW4gY29tcGxlbWVudGFyeSBmaWVsZCBwYWlyIChmaXJzdCBmaWVsZCBpcyBsb25nIHRlcm0pCgBpbGxlZ2FsIHNob3J0IHRlcm0gYnVmZmVyIHN0YXRlIGRldGVjdGVkCgBudW1iZXIgb2YgcmVmZXJlbmNlIGZyYW1lcyAoJWQrJWQpIGV4Y2VlZHMgbWF4ICglZDsgcHJvYmFibHkgY29ycnVwdCBpbnB1dCksIGRpc2NhcmRpbmcgb25lCgBsb25nIHRlcm0gbGlzdDoKACV1IGZuOiVkIHBvYzolZCAlcAoAc2hvcnQgdGVybSBsaXN0OgoAcmVtb3ZlIHNob3J0ICVkIGNvdW50ICVkCgAlZCAlZCAlcAoARXJyb3Igc3BsaXR0aW5nIHRoZSBpbnB1dCBpbnRvIE5BTCB1bml0cy4KAEludmFsaWQgaW50ZXIgSURSIGZyYW1lCgBpbnZhbGlkIG1peGVkIElEUiAvIG5vbiBJRFIgZnJhbWVzIGNhbm5vdCBiZSBkZWNvZGVkIGluIHNsaWNlIG11bHRpdGhyZWFkaW5nIG1vZGUKAGRhdGEgcGFydGl0aW9uaW5nAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gd2l0aCB0aGUgY29tcGxldGUgTkFMCgBVbmtub3duIE5BTCBjb2RlOiAlZCAoJWQgYml0cykKAGRlY29kZV9zbGljZV9oZWFkZXIgZXJyb3IKAGlnbm9yaW5nIGxhc3QgbWlzc2luZyBzbGljZQoAQ2Fubm90IHVzZSBwcmV2aW91cyBwaWN0dXJlIGluIGVycm9yIGNvbmNlYWxtZW50CgBDYW5ub3QgdXNlIG5leHQgcGljdHVyZSBpbiBlcnJvciBjb25jZWFsbWVudAoAV2FybmluZyBNVnMgbm90IGF2YWlsYWJsZQoAJTJYIAAKAGNvbmNlYWxpbmcgJWQgREMsICVkIEFDLCAlZCBNViBlcnJvcnMgaW4gJWMgZnJhbWUKAHMtPmF2Y3R4LT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9IMjY0AGxpYmF2Y29kZWMvZXJyb3JfcmVzaWxpZW5jZS5jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3MtPnF1YXJ0ZXJfc2FtcGxlAGd1ZXNzX2RjKCkgaXMgb3V0IG9mIG1lbW9yeQoAbmV4dF9ibG9ja2xpc3RfbGVuZ3RoIDw9IG1iX2hlaWdodCAqIG1iX3dpZHRoAHRocmVhZCBhd2FpdGluZyAlZCBmaWVsZCAlZCBmcm9tICVwCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgUFBTICglenUgPiAlenUpCgBzcHNfaWQgJXUgb3V0IG9mIHJhbmdlCgBJbnZhbGlkIGx1bWEgYml0IGRlcHRoPSVkCgBVbmltcGxlbWVudGVkIGx1bWEgYml0IGRlcHRoPSVkAEZNTyBub3Qgc3VwcG9ydGVkCgByZWZlcmVuY2Ugb3ZlcmZsb3cgKHBwcykKAENBQkFDAENBVkxDAHdlaWdodGVkAExQQVIAQ09OU1RSAFJFRFUAOHg4RENUAHBwczoldSBzcHM6JXUgJXMgc2xpY2VfZ3JvdXBzOiVkIHJlZjoldS8ldSAlcyBxcDolZC8lZC8lZC8lZCAlcyAlcyAlcyAlcwoABgoNEBIXGRsKCxASFxkbHQ0QEhcZGx0fEBIXGRsdHyESFxkbHR8hJBcZGx0fISQmGRsdHyEkJigbHR8hJCYoKgkNDxETFRYYDQ0RExUWGBkPERMVFhgZGxETFRYYGRscExUWGBkbHB4VFhgZGxweIBYYGRscHiAhGBkbHB4gISMGDRQcDRQcIBQcICUcICUqCg4UGA4UGBsUGBseGBseIgABBAgFAgMGCQwNCgcLDg8AAAEIEAkCAwoRGCAZEgsEBQwTGiEoMCkiGxQNBgcOFRwjKjE4OTIrJB0WDxceJSwzOjs0LSYfJy41PD02Lzc+P2RlbHRhIHNjYWxlICVkIGlzIGludmFsaWQKAEN1cnJlbnQgcHJvZmlsZSBkb2Vzbid0IHByb3ZpZGUgbW9yZSBSQlNQIGRhdGEgaW4gUFBTLCBza2lwcGluZwoAIGlzIG5vdCBpbXBsZW1lbnRlZC4gVXBkYXRlIHlvdXIgRkZtcGVnIHZlcnNpb24gdG8gdGhlIG5ld2VzdCBvbmUgZnJvbSBHaXQuIElmIHRoZSBwcm9ibGVtIHN0aWxsIG9jY3VycywgaXQgbWVhbnMgdGhhdCB5b3VyIGZpbGUgaGFzIGEgZmVhdHVyZSB3aGljaCBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuCgBJZiB5b3Ugd2FudCB0byBoZWxwLCB1cGxvYWQgYSBzYW1wbGUgb2YgdGhpcyBmaWxlIHRvIGZ0cDovL3VwbG9hZC5mZm1wZWcub3JnL2luY29taW5nLyBhbmQgY29udGFjdCB0aGUgZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdC4gKGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnKQoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFNQUwoAY2hyb21hX2Zvcm1hdF9pZGMgJXUAc2VwYXJhdGUgY29sb3IgcGxhbmVzIGFyZSBub3Qgc3VwcG9ydGVkCgBEaWZmZXJlbnQgY2hyb21hIGFuZCBsdW1hIGJpdCBkZXB0aABpbGxlZ2FsIGJpdCBkZXB0aCB2YWx1ZSAoJWQsICVkKQoAbG9nMl9tYXhfZnJhbWVfbnVtX21pbnVzNCBvdXQgb2YgcmFuZ2UgKDAtMTIpOiAlZAoAbG9nMl9tYXhfcG9jX2xzYiAoJWQpIGlzIG91dCBvZiByYW5nZQoAcG9jX2N5Y2xlX2xlbmd0aCBvdmVyZmxvdyAlZAoAaWxsZWdhbCBQT0MgdHlwZSAlZAoAdG9vIG1hbnkgcmVmZXJlbmNlIGZyYW1lcyAlZAoAaGVpZ2h0IG92ZXJmbG93CgBtYl93aWR0aC9oZWlnaHQgb3ZlcmZsb3cKAGRpc2NhcmRpbmcgc3BzIGNyb3BwaW5nLCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JWQgcjolZCB0OiVkIGI6JWQKAGNyb3AgdmFsdWVzIGludmFsaWQgJWQgJWQgJWQgJWQgLyAlZCAlZAoAVlVJAE92ZXJyZWFkICVzIGJ5ICVkIGJpdHMKAE1CLUFGRgBQSUMtQUZGAEZSTQA4QjgAR3JheQA0MjAAADQyMgAANDQ0AABzcHM6JXUgcHJvZmlsZTolZC8lZCBwb2M6JWQgcmVmOiVkICVkeCVkICVzICVzIGNyb3A6JXUvJXUvJXUvJXUgJXMgJXMgJWQvJWQgYiVkIHJlbzolZAoAaWxsZWdhbCBhc3BlY3QgcmF0aW8KAFRydW5jYXRlZCBWVUkKAHRpbWVfc2NhbGUvbnVtX3VuaXRzX2luX3RpY2sgaW52YWxpZCBvciB1bnN1cHBvcnRlZCAoJXUvJXUpCgBDbGlwcGluZyBpbGxlZ2FsIG51bV9yZW9yZGVyX2ZyYW1lcyAlZAoAY3BiX2NvdW50ICVkIGludmFsaWQKAGdicgByZXNlcnZlZABjaHJvbWEtZGVyaXZlZC1uYwBjaHJvbWEtZGVyaXZlZC1jAGljdGNwAEdyZWVuIE1ldGFkYXRhIEluZm8gU0VJIG1lc3NhZ2UKACAgZ3JlZW5fbWV0YWRhdGFfdHlwZTogJWQKACAgZ3JlZW5fbWV0YWRhdGFfcGVyaW9kX3R5cGU6ICVkCgAgIGdyZWVuX21ldGFkYXRhX251bV9zZWNvbmRzOiAlZAoAICBncmVlbl9tZXRhZGF0YV9udW1fcGljdHVyZXM6ICVkCgAgIFNFSSBHUkVFTiBDb21wbGV4aXR5IE1ldHJpY3M6ICVmICVmICVmICVmCgAgIHhzZF9tZXRyaWNfdHlwZTogJWQKACAgeHNkX21ldHJpY192YWx1ZTogJWYKAFNFSSB0eXBlICVkIHNpemUg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X2RpZmZfcGljX251bSBvdmVyZmxvdwoAbG9uZ190ZXJtX3BpY19pZHggb3ZlcmZsb3cKAHJlZmVyZW5jZSBwaWN0dXJlIG1pc3NpbmcgZHVyaW5nIHJlb3JkZXIKAE1pc3NpbmcgcmVmZXJlbmNlIHBpY3R1cmUsIGRlZmF1bHQgaXMgJWQKAGF2X2J1ZmZlcl9nZXRfcmVmX2NvdW50KHNsLT5yZWZfbGlzdFtsaXN0XVtpbmRleF0ucGFyZW50LT5mLT5idWZbMF0pID4gMABsZW4gPD0gMzIARGlzY2FyZGluZyBtaXNtYXRjaGluZyByZWZlcmVuY2UKAGluZGV4IDwgZGVmX2xlbgBoLT5jdXJfcGljX3B0cgBoLT5jdXJfcGljX3B0ci0+Zi0+YnVmWzBdAEludmFsaWQgZmllbGQgbW9kZSBjb21iaW5hdGlvbiAlZC8lZAoARm91bmQgcmVmZXJlbmNlIGFuZCBub24tcmVmZXJlbmNlIGZpZWxkcyBpbiB0aGUgc2FtZSBmcmFtZSwgd2hpY2gARnJhbWUgbnVtIGdhcCAlZCAlZAoASW52YWxpZCBQT0MgJWQ8JWQKAEluY3JlYXNpbmcgcmVvcmRlciBidWZmZXIgdG8gJWQKAHBpY3MgPD0gMTYAb29vAG5vIHBpY3R1cmUgJXMKAEF0dGVtcHQgdG8gc3RhcnQgYSBmcmFtZSBvdXRzaWRlIFNFVFVQIHN0YXRlCgBubyBmcmFtZSBidWZmZXIgYXZhaWxhYmxlCgBkZXNjLT5mbGFncyAmICgxIDw8IDQpACFwaWMtPmYtPmRhdGFbMF0AIXBpYy0+aHdhY2NlbF9waWN0dXJlX3ByaXZhdGUAdGhyZWFkX2dldF9idWZmZXIoKSBmYWlsZWQKAGdldF9idWZmZXIoKSBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIGZmX3RocmVhZF9maW5pc2hfc2V0dXAoKQoAZ2V0X2J1ZmZlcigpIGZhaWxlZAoAdmlkZW9fZ2V0X2J1ZmZlcjogaW1hZ2UgcGFyYW1ldGVycyBpbnZhbGlkCgBwaWMtPmRhdGFbKl0hPU5VTEwgaW4gZ2V0X2J1ZmZlcl9pbnRlcm5hbAoAZnJhbWUtPmRhdGFbaV0AQnVmZmVyIHJldHVybmVkIGJ5IGdldF9idWZmZXIyKCkgZGlkIG5vdCB6ZXJvIHVudXNlZCBwbGFuZSBwb2ludGVycwoASW5jb25zaXN0ZW50IGNoYW5uZWwgY29uZmlndXJhdGlvbi4KAFRvbyBtYW55IGNoYW5uZWxzOiAlZC4KAGNoYW5naW5nIHdpZHRoICVkIC0+ICVkIC8gaGVpZ2h0ICVkIC0+ICVkIG9uIHNsaWNlICVkCgBSZWluaXQgY29udGV4dCB0byAlZHglZCwgcGl4X2ZtdDogJXMKAGgyNjRfc2xpY2VfaGVhZGVyX2luaXQoKSBmYWlsZWQKAENvdWxkIG5vdCBhbGxvY2F0ZSBtZW1vcnkKAFVuc3VwcG9ydGVkIGJpdCBkZXB0aCAlZAoAY29udGV4dF9pbml0KCkgZmFpbGVkLgoAQ2Fubm90IGFsbG9jYXRlIG1lbW9yeS4KAFJlZmVyZW5jZSBub3QgYXZhaWxhYmxlIGZvciBlcnJvciBjb25jZWFsaW5nCgBSZWZlcmVuY2UgaW52YWxpZAoAbGliYXZjb2RlYy9oMjY0cHJlZC5jAGJpdF9kZXB0aDw9OABsaWJhdmNvZGVjL2gyNjRkc3AuYwAAEAAggKAMDRQVDg8WFxwdJCUeHyYnNDU8PTY3Pj9ERUxNRkdOT1xdZGVeX2ZnbG10dW5vdncAKFAABAEIDAUJDQIGCg4DBwsPAAAJERIMKBsHIzkdHjomNS8BAhgLEzAUDioyFiU7Hzw3CAMgBBopDRUxKw8sNCc9PhAKGQUhIgYcOCQXMy0uNj8AAAgQAQkYIBECGSgwOCEKAxIpMTkaCwQTIioyOhsMBRQjKzM7HA0GFSQsNDwdDhYlLTU9HgcPJi42PhcfJy83PwAACQI4EhoiGyMcJB0tBzYnCBgZISkLKgwrDSwONQ8+LxAgKAoxBDIFMwY0Fj0mFzcBETADORM6FDsVPCUeLh8/AAABAjUDBzYbBCYpCCI3MBw+BScuLCoWCRgjOzgxEh0LPzQGGiUoIS89LSsVFzoRCjMZJCA8FDkQMh8TDx4ODQxpZ25vcmluZyBpbnZhbGlkIFNBUjogJWQvJWQKAHNwcy0+Y3JvcF9yaWdodCArIHNwcy0+Y3JvcF9sZWZ0IDwgKHVuc2lnbmVkKWgtPndpZHRoAHNwcy0+Y3JvcF90b3AgKyBzcHMtPmNyb3BfYm90dG9tIDwgKHVuc2lnbmVkKWgtPmhlaWdodABnZXRfZm9ybWF0KCkgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBmZl90aHJlYWRfZmluaXNoX3NldHVwKCkKAG4gPj0gMQBJbnZhbGlkIGZvcm1hdCByZXR1cm5lZCBieSBnZXRfZm9ybWF0KCkgY2FsbGJhY2suCgBGb3JtYXQgJXMgY2hvc2VuIGJ5IGdldF9mb3JtYXQoKS4KAEludmFsaWQgcmV0dXJuIGZyb20gZ2V0X2Zvcm1hdCgpOiAlcyBub3QgaW4gcG9zc2libGUgbGlzdC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogZG9lcyBub3QgbWF0Y2ggdGhlIGZvcm1hdCBvZiB0aGUgcHJvdmlkZWQgZnJhbWVzIGNvbnRleHQuCgBJbnZhbGlkIHNldHVwIGZvciBmb3JtYXQgJXM6IGRvZXMgbm90IG1hdGNoIHRoZSB0eXBlIG9mIHRoZSBwcm92aWRlZCBkZXZpY2UgY29udGV4dC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogbWlzc2luZyBjb25maWd1cmF0aW9uLgoARm9ybWF0ICVzIHJlcXVpcmVzIGh3YWNjZWwgaW5pdGlhbGlzYXRpb24uCgBGb3JtYXQgJXMgbm90IHVzYWJsZSwgcmV0cnlpbmcgZ2V0X2Zvcm1hdCgpIHdpdGhvdXQgaXQuCgBJZ25vcmluZyBleHBlcmltZW50YWwgaHdhY2NlbDogJXMKAEZhaWxlZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBod2FjY2VsIGluaXRpYWxpc2F0aW9uIHJldHVybmVkIGVycm9yLgoAIWgtPnNldHVwX2ZpbmlzaGVkAHNsaWNlIHR5cGUgJWQgdG9vIGxhcmdlIGF0ICVkCgBBIG5vbi1pbnRyYSBzbGljZSBpbiBhbiBJRFIgTkFMIHVuaXQuCgBGcmFtZSBudW0gY2hhbmdlIGZyb20gJWQgdG8gJWQKAFRoaXMgc3RyZWFtIHdhcyBnZW5lcmF0ZWQgYnkgYSBicm9rZW4gZW5jb2RlciwgaW52YWxpZCA4eDggaW5mZXJlbmNlCgBjYWJhY19pbml0X2lkYyAldSBvdmVyZmxvdwoAUVAgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nX2ZpbHRlcl9pZGMgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nIGZpbHRlciBwYXJhbWV0ZXJzICVkICVkIG91dCBvZiByYW5nZQoAaWxsZWdhbCBsb25nIHJlZiBpbiBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoAbHVtYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAGNocm9tYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAE91dCBvZiByYW5nZSB3ZWlnaHQKAHJlZmVyZW5jZSBjb3VudCBvdmVyZmxvdwoAaWxsZWdhbCBtb2RpZmljYXRpb25fb2ZfcGljX251bXNfaWRjICV1CgByZWZlcmVuY2Ugb3ZlcmZsb3cgJXUgPiAldSBvciAldSA+ICV1CgBJbnZhbGlkIHplcm8tc2l6ZWQgVkNMIE5BTCB1bml0CgBFeGNlZWRlZCBuZXh0IE5BTEZGIHBvc2l0aW9uLCByZS1zeW5jaW5nLgoATm8gc3RhcnQgY29kZSBpcyBmb3VuZC4KAE5BTEZGOiBDb25zdW1lZCBvbmx5ICVkIGJ5dGVzIGluc3RlYWQgb2YgJWQKAEludmFsaWQgTkFMIHVuaXQgJWQsIHNraXBwaW5nLgoAbmFsX3VuaXRfdHlwZTogJWQsIG5hbF9yZWZfaWRjOiAlZAoAbmFsX3VuaXRfdHlwZTogJWQoJXMpLCBudWhfbGF5ZXJfaWQ6ICVkLCB0ZW1wb3JhbF9pZDogJWQKAD8AU0VJX1NVRkZJWABTRUlfUFJFRklYAEZEX05VVABFT0JfTlVUAEVPU19OVVQAQVVEAFBQUwBTUFMAVlBTAENSQV9OVVQASURSX05fTFAASURSX1dfUkFETABCTEFfTl9MUABCTEFfV19SQURMAEJMQV9XX0xQAFJBU0xfUgBSQVNMX04AUkFETF9SAFJBRExfTgBTVFNBX1IAU1RTQV9OAFRTQV9SAFRTQV9OAFRSQUlMX1IAVFJBSUxfTgBuYWwtPnNraXBwZWRfYnl0ZXNfcG9zX3NpemUgPj0gbmFsLT5za2lwcGVkX2J5dGVzAGxpYmF2Y29kZWMvaDI2NDVfcGFyc2UuYwB2YWwgfHwgIW1pbl9zaXplAC4vbGliYXZ1dGlsL21lbV9pbnRlcm5hbC5oAGF2Y0MgJWQgdG9vIHNob3J0CgBEZWNvZGluZyBzcHMgJWQgZnJvbSBhdmNDIGZhaWxlZAoARGVjb2RpbmcgcHBzICVkIGZyb20gYXZjQyBmYWlsZWQKAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gYWZ0ZXIgZXNjYXBpbmcgdGhlIE5BTAoAcHRocmVhZF9vbmNlIGhhcyBmYWlsZWQuAEVycm9yIHJlc2lsaWVuY2Ugd2l0aCBzbGljZSB0aHJlYWRzIGlzIGVuYWJsZWQuIEl0IGlzIHVuc2FmZSBhbmQgdW5zdXBwb3J0ZWQgYW5kIG1heSBjcmFzaC4gVXNlIGl0IGF0IHlvdXIgb3duIHJpc2sKAAIAAAAGAQAABgYDAAYHBwYGCAgHAQAAAAcBAAAEBgEAAwMCBQIDAgABAAAABwIAAAcHAwAJBwcFCQkHBgoKCQcLCwoHDAwLCg0MDAsBAAAADwEAAA4NAQAHDAsBBgUKAQcGBAkHBgUIBwYFBAcFBAQBAAAABgIAAAgGAwAJCAcFCgkIBgsKCQcNCwoIDQ0LCQ0NDQoODg0LDg4ODQ8PDg4PDw8OEA8PDxAQEA8QEBAQEBAQEAIAAAAGAgAABgUDAAcGBgQIBgYECAcHBQkICAYLCQkGCwsLBwwLCwkMDAwLDAwMCw0NDQwNDQ0NDQ4NDQ4ODg0ODg4OBAAAAAYEAAAGBQQABgUFBAcFBQQHBQUEBwYGBAcGBgQIBwcFCAgHBgkICAcJCQgICQkJCAoJCQkKCgoKCgoKCgoKCgoGAAAABgYAAAYGBgAGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgEAAAAFAQAABwQBAAcGBQMHBgUDBwYFBA8GBQQLDgUECAoNBA8OCQQLCg0MDw4JDAsKDQgPAQkMCw4NCAcKCQwEBgUIAwAAAAsCAAAHBwMABwoJBQcGBQQEBgUGBwYFCA8GBQQLDg0EDwoJBAsODQwICgkIDw4NDAsKCQwHCwYICQgKAQcGBQQPAAAADw4AAAsPDQAIDA4MDwoLCwsICQoJDg0JCAoJCA8ODQ0LDgoMDwoNDAsOCQwICg0IDQcJDAkMCwoFCAcGAQQDAgMAAAAAAQAABAUGAAgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AQIDAwECAgABAQAAAQEBAAEBAAABAAAAAQMDBAQEBQUDAgMDAwMDAAMDAgIDAwAAAwICAgMAAAACAgICAAAAAAICAQAAAAAAAQEAAAAAAAABAgMCAwEBAAABAQQFBgcAAAEBAgYHAAAGAAECBwAAAAABAgMAAAAAAAEBAAAAAAAAAQAAAAAAAAEDAwQEBQUGBgcHCAgJCQkDAwMDAwQEBAQFBQYGBgYABAMDAwQEAwMEBQUGBQYAAAUDBAQDAwMEAwQFBQUAAAAEBAQDAwMDAwQFBAUAAAAABgUDAwMDAwMEAwYAAAAAAAYFAwMDAgMEAwYAAAAAAAAGBAUDAgIDAwYAAAAAAAAABgYEAgIDAgUAAAAAAAAAAAUFAwICAgQAAAAAAAAAAAAEBAMDAQMAAAAAAAAAAAAABAQCAQMAAAAAAAAAAAAAAAMDAQIAAAAAAAAAAAAAAAACAgEAAAAAAAAAAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAwIDAgMCAwIDAgMCAwIBBwYFBAMFBAMCAwIDAgEAAAUHBgUEAwQDAgMCAQEAAAADBwUEBgUEAwMCAgEAAAAABQQDBwYFBAMCAQEAAAAAAAEBBwYFBAMCAQEAAAAAAAABAQUEAwMCAQEAAAAAAAAAAQEBAwMCAgEAAAAAAAAAAAEAAQMCAQEBAAAAAAAAAAABAAEDAgEBAAAAAAAAAAAAAAEBAgEDAAAAAAAAAAAAAAABAQEBAAAAAAAAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAECAgAAAAAAAAAAAAAAAAACAgICAAAAAAAAAAAAAAAAAgICAwMAAAAAAAAAAAAAAAICAwMDAwAAAAAAAAAAAAACAwMDAwMDAAAAAAAAAAAAAwMDAwMDAwQFBgcICQoLAAEAAAAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAwIBAAAAAAAAAAAAAAAAAAMCAQEAAAAAAAAAAAAAAAADAgMCAQAAAAAAAAAAAAAAAwABAwIFBAAAAAAAAAAAAAcGBQQDAgEBAQEBAQEBAQBuYl9jb2RlcyArIDEgPD0gKHNpemVvZihsb2NhbGJ1ZikgLyBzaXplb2YoKGxvY2FsYnVmKVswXSkpAGxpYmF2Y29kZWMvYml0c3RyZWFtLmMAc3ltYm9sc19zaXplIDw9IDIgfHwgIXN5bWJvbHMAVG9vIGxvbmcgVkxDICglZCkgaW4gaW5pdF92bGMKAEludmFsaWQgY29kZSAleCBmb3IgJWQgaW4gaW5pdF92bGMKAG5lZWRlZCAlZCBoYWQgJWQKAGluY29ycmVjdCBjb2RlcwoAaDI2NF9zbGljZV9oZWFkZXJfaW5pdCgpIGZhaWxlZABIMjY0IERlY29kZXIAaXNfYXZjAGlzIGF2YwBuYWxfbGVuZ3RoX3NpemUAZW5hYmxlX2VyAEVuYWJsZSBlcnJvciByZXNpbGllbmNlIG9uIGRhbWFnZWQgZnJhbWVzICh1bnNhZmUpAHgyNjRfYnVpbGQAQXNzdW1lIHRoaXMgeDI2NCB2ZXJzaW9uIGlmIG5vIHgyNjQgdmVyc2lvbiBmb3VuZCBpbiBhbnkgU0VJAHAgPD0gZW5kAFEyNjQAcHBzX2lkICV1IG91dCBvZiByYW5nZQoAbm9uLWV4aXN0aW5nIFBQUyAldSByZWZlcmVuY2VkCgBub24tZXhpc3RpbmcgU1BTICV1IHJlZmVyZW5jZWQKAG1pc3NpbmcgcGljdHVyZSBpbiBhY2Nlc3MgdW5pdCB3aXRoIHNpemUgJWQKAGlsbGVnYWwgcmVvcmRlcmluZ19vZl9waWNfbnVtc19pZGMgJWQKAHJlZmVyZW5jZSBjb3VudCAlZCBvdmVyZmxvdwoAaWxsZWdhbCBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoASW52YWxpZCBOQUwgdW5pdCBzaXplICglZCA+ICVkKS4KAEFWQy1wYXJzZXI6IG5hbCBsZW5ndGggc2l6ZSBpbnZhbGlkCgBBVkMtcGFyc2VyOiBuYWwgc2l6ZSAlZCByZW1haW5pbmcgJWQKAAAAAQABAgABAgMBAgMCAwMAAQACAQADAgEAAwIBAwIDAAABAAECAAECAwABAgMEAAECAwQFAAECAwQFBgABAgMEBQYHAQIDBAUGBwIDBAUGBwMEBQYHBAUGBwUGBwYHBwABAAIBAAMCAQAEAwIBAAUEAwIBAAYFBAMCAQAHBgUEAwIBAAcGBQQDAgEHBgUEAwIHBgUEAwcGBQQHBgUHBgdtaXNzaW5nIHBpY3R1cmUgaW4gYWNjZXNzIHVuaXQKAEludmFsaWQgc2xpY2Ugc2VnbWVudCBhZGRyZXNzOiAldS4KAFVua25vd24gc2xpY2UgdHlwZTogJWQuCgBJbnZhbGlkIFVFIGdvbG9tYiBjb2RlCgBEZWNvZGluZyBTRUkKAFNraXBwZWQgU1VGRklYIFNFSSAlZAoAU2tpcHBlZCBQUkVGSVggU0VJICVkCgBudW1fc3BzX2lkc19taW51czEgJWQgaW52YWxpZAoAYWN0aXZlX3BhcmFtZXRlcl9zZXRfaWQgJWQgaW52YWxpZAoAQk9UVE9NIEZpZWxkCgBUT1AgRmllbGQKAERlY29kaW5nIFBQUwoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFBQUyAoJXRkID4gJXp1KQoAUFBTIGlkIG91dCBvZiByYW5nZTogJWQKAFNQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBTUFMgJXUgZG9lcyBub3QgZXhpc3QuCgBkaWZmX2N1X3FwX2RlbHRhX2RlcHRoICVkIGlzIGludmFsaWQKAHBwc19jYl9xcF9vZmZzZXQgb3V0IG9mIHJhbmdlOiAlZAoAcHBzX2NyX3FwX29mZnNldCBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9jb2x1bW5zX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9yb3dzX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBJbnZhbGlkIHRpbGUgd2lkdGhzLgoASW52YWxpZCB0aWxlIGhlaWdodHMuCgBwcHNfYmV0YV9vZmZzZXRfZGl2MiBvdXQgb2YgcmFuZ2U6ICVkCgBwcHNfdGNfb2Zmc2V0X2RpdjIgb3V0IG9mIHJhbmdlOiAlZAoAbG9nMl9wYXJhbGxlbF9tZXJnZV9sZXZlbF9taW51czIgb3V0IG9mIHJhbmdlOiAlZAoAT3ZlcnJlYWQgUFBTIGJ5ICVkIGJpdHMKAGNocm9tYV9xcF9vZmZzZXRfbGlzdF9sZW5fbWludXMxIHNoYWxsIGJlIGluIHRoZSByYW5nZSBbMCwgNV0uCgBjYl9xcF9vZmZzZXRfbGlzdCBub3QgdGVzdGVkIHlldC4KAEludmFsaWQgZGVsdGEgaW4gc2NhbGluZyBsaXN0IGRhdGE6ICVkLgoAEBAQEBESFRgQEBAQERMWGRAQERIUFhkdEBASFRgbHyQRERQYHiMpLxITFhsjLDZBFRYZHyk2RlgYGR0kL0FYcxAQEBAREhQYEBAQERIUGBkQEBESFBgZHBAREhQYGRwhERIUGBkcISkSFBgZHCEpNhQYGRwhKTZHGBkcISk2R1tEZWNvZGluZyBTUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBTUFMgKCV0ZCA+ICV6dSkKAFBhcnNlZCBTUFM6IGlkICVkOyBjb2RlZCB3eGg6ICVkeCVkOyBjcm9wcGVkIHd4aDogJWR4JWQ7IHBpeF9mbXQ6ICVzLgoAIShzLT5zcHNfbGlzdFtpZF0gJiYgcy0+c3BzID09IChIRVZDU1BTKilzLT5zcHNfbGlzdFtpZF0tPmRhdGEpAGxpYmF2Y29kZWMvaGV2Y19wcy5jAFZQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBWUFMgJWQgZG9lcyBub3QgZXhpc3QKAHNwc19tYXhfc3ViX2xheWVycyBvdXQgb2YgcmFuZ2U6ICVkCgBjaHJvbWFfZm9ybWF0X2lkYyAlZCBpcyBpbnZhbGlkCgBkaXNjYXJkaW5nIHNwcyBjb25mb3JtYW5jZSB3aW5kb3csIG9yaWdpbmFsIHZhbHVlcyBhcmUgbDoldSByOiV1IHQ6JXUgYjoldQoATHVtYSBiaXQgZGVwdGggKCVkKSBpcyBkaWZmZXJlbnQgZnJvbSBjaHJvbWEgYml0IGRlcHRoICglZCksIHRoaXMgaXMgdW5zdXBwb3J0ZWQuCgBsb2cyX21heF9waWNfb3JkZXJfY250X2xzYl9taW51czQgb3V0IHJhbmdlOiAlZAoAc3BzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAc3BzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAEludmFsaWQgdmFsdWUgJWQgZm9yIGxvZzJfbWluX2NiX3NpemUASW52YWxpZCB2YWx1ZSAlZCBmb3IgbG9nMl9kaWZmX21heF9taW5fY29kaW5nX2Jsb2NrX3NpemUASW52YWxpZCB2YWx1ZSBmb3IgbG9nMl9taW5fdGJfc2l6ZQBJbnZhbGlkIHZhbHVlICVkIGZvciBsb2cyX2RpZmZfbWF4X21pbl90cmFuc2Zvcm1fYmxvY2tfc2l6ZQBQQ00gYml0IGRlcHRoICglZCwgJWQpIGlzIGdyZWF0ZXIgdGhhbiBub3JtYWwgYml0IGRlcHRoICglZCkKAFRvbyBtYW55IHNob3J0IHRlcm0gUlBTOiAlZC4KAFRvbyBtYW55IGxvbmcgdGVybSByZWYgcGljczogJWQuCgBleHRlbmRlZF9wcmVjaXNpb25fcHJvY2Vzc2luZ19mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGhpZ2hfcHJlY2lzaW9uX29mZnNldHNfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGNhYmFjX2J5cGFzc19hbGlnbm1lbnRfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAEludmFsaWQgY3JvcHBpbmcgb2Zmc2V0czogJXUvJXUvJXUvJXUKAERpc3BsYXlpbmcgdGhlIHdob2xlIHZpZGVvIHN1cmZhY2UuCgBDVEIgc2l6ZSBvdXQgb2YgcmFuZ2U6IDJeJWQKAGxvZzJfY3RiX3NpemUgJWQgZGlmZmVycyBmcm9tIHRoZSBib3VuZHMgb2YgYW55IGtub3duIHByb2ZpbGUKAGxvZzJfY3RiX3NpemUgJWQASW52YWxpZCBjb2RlZCBmcmFtZSBkaW1lbnNpb25zLgoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50ZXIgb3V0IG9mIHJhbmdlOiAlZAoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50cmEgb3V0IG9mIHJhbmdlOiAlZAoAbWF4IHRyYW5zZm9ybSBibG9jayBzaXplIG91dCBvZiByYW5nZTogJWQKAE92ZXJyZWFkIFNQUyBieSAlZCBiaXRzCgBEZWNvZGluZyBWVUkKAFVua25vd24gU0FSIGluZGV4OiAldS4KAEludmFsaWQgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdwoAZGlzY2FyZGluZyB2dWkgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdywgb3JpZ2luYWwgdmFsdWVzIGFyZSBsOiV1IHI6JXUgdDoldSBiOiV1CgBTdHJhbmdlIFZVSSB0aW1pbmcgaW5mb3JtYXRpb24sIHJldHJ5aW5nLi4uCgBSZXRyeSBnb3QgJXUvJXUgZnBzCgBTdHJhbmdlIFZVSSBiaXRzdHJlYW0gcmVzdHJpY3Rpb24gaW5mb3JtYXRpb24sIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBPdmVycmVhZCBpbiBWVUksIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBuYl9jcGIgJWQgaW52YWxpZAoASW52YWxpZCB2YWx1ZSBvZiBkZWx0YV9pZHggaW4gc2xpY2UgaGVhZGVyIFJQUzogJWQgPiAlZC4KAEludmFsaWQgdmFsdWUgb2YgYWJzX2RlbHRhX3JwczogJWQKAEludmFsaWQgbnVtX2RlbHRhX3BvY3M6ICVkCgBUb28gbWFueSByZWZzIGluIGEgc2hvcnQgdGVybSBSUFMuCgBJbnZhbGlkIHZhbHVlIG9mIGRlbHRhX3BvYzogJWQKAFRoZSBmb2xsb3dpbmcgYml0LWRlcHRocyBhcmUgY3VycmVudGx5IHNwZWNpZmllZDogOCwgOSwgMTAgYW5kIDEyIGJpdHMsIGNocm9tYV9mb3JtYXRfaWRjIGlzICVkLCBkZXB0aCBpcyAlZAoAUFRMIGluZm9ybWF0aW9uIHRvbyBzaG9ydAoAUFRMIGluZm9ybWF0aW9uIGZvciBzdWJsYXllciAlaSB0b28gc2hvcnQKAE5vdCBlbm91Z2ggZGF0YSBmb3Igc3VibGF5ZXIgJWkgbGV2ZWxfaWRjCgBNYWluIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIDEwIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIFN0aWxsIFBpY3R1cmUgcHJvZmlsZSBiaXRzdHJlYW0KAFJhbmdlIEV4dGVuc2lvbiBwcm9maWxlIGJpdHN0cmVhbQoAVW5rbm93biBIRVZDIHByb2ZpbGU6ICVkCgBEZWNvZGluZyBWUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBWUFMgKCV0ZCA+ICV6dSkKAHZwc19yZXNlcnZlZF90aHJlZV8yYml0cyBpcyBub3QgdGhyZWUKAHZwc19yZXNlcnZlZF9mZmZmXzE2Yml0cyBpcyBub3QgMHhmZmZmCgB2cHNfbWF4X3N1Yl9sYXllcnMgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAHRvbyBtYW55IGxheWVyX2lkX2luY2x1ZGVkX2ZsYWdzCgB2cHNfbnVtX2hyZF9wYXJhbWV0ZXJzICVkIGlzIGludmFsaWQKAE92ZXJyZWFkIFZQUyBieSAlZCBiaXRzCgBidWZfc2l6ZSA+PSAwAGxpYmF2Y29kZWMvYnl0ZXN0cmVhbS5oAEludmFsaWQgTkFMIHVuaXQgc2l6ZSBpbiBleHRyYWRhdGEuCgBEZWNvZGluZyBuYWwgdW5pdCAlZCAlZCBmcm9tIGh2Y0MgZmFpbGVkCgBJZ25vcmluZyBOQUwgdHlwZSAlZCBpbiBleHRyYWRhdGEKAC9kZXYvdXJhbmRvbQAvZGV2L3JhbmRvbQBzaXplb2YodG1wKSA+PSBhdl9zaGFfc2l6ZQBsaWJhdnV0aWwvcmFuZG9tX3NlZWQuYwCAAEZhaWxlZCB0byBzZXQgY2xvc2Ugb24gZXhlYwoAIAoJDQBBTEwARkwAZnJvbnQgbGVmdABGUgBmcm9udCByaWdodABGQwBmcm9udCBjZW50ZXIATEZFAGxvdyBmcmVxdWVuY3kAQkwAYmFjayBsZWZ0AEJSAGJhY2sgcmlnaHQARkxDAGZyb250IGxlZnQtb2YtY2VudGVyAEZSQwBmcm9udCByaWdodC1vZi1jZW50ZXIAQkMAYmFjayBjZW50ZXIAU0wAc2lkZSBsZWZ0AFNSAHNpZGUgcmlnaHQAVEMAdG9wIGNlbnRlcgBURkwAdG9wIGZyb250IGxlZnQAVEZDAHRvcCBmcm9udCBjZW50ZXIAVEZSAHRvcCBmcm9udCByaWdodABUQkwAdG9wIGJhY2sgbGVmdABUQkMAdG9wIGJhY2sgY2VudGVyAFRCUgB0b3AgYmFjayByaWdodABETABkb3dubWl4IGxlZnQARFIAZG93bm1peCByaWdodABXTAB3aWRlIGxlZnQAV1IAd2lkZSByaWdodABTREwAc3Vycm91bmQgZGlyZWN0IGxlZnQAU0RSAHN1cnJvdW5kIGRpcmVjdCByaWdodABMRkUyAGxvdyBmcmVxdWVuY3kgMgBtb25vAHN0ZXJlbwAyLjEAMy4wADMuMChiYWNrKQA0LjAAcXVhZABxdWFkKHNpZGUpADMuMQA1LjAANS4wKHNpZGUpADQuMQA1LjEANS4xKHNpZGUpADYuMAA2LjAoZnJvbnQpAGhleGFnb25hbAA2LjEANi4xKGJhY2spADYuMShmcm9udCkANy4wADcuMChmcm9udCkANy4xADcuMSh3aWRlKQA3LjEod2lkZS1zaWRlKQBvY3RhZ29uYWwAaGV4YWRlY2Fnb25hbABkb3dubWl4ACVzACVkIGNoYW5uZWxzACAoACsAKQAlZCUqMVs6L10lZCVjAGNvbnN0X3ZhbHVlcyBhcnJheSB0b28gc21hbGwgZm9yICVzCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIKACVmCgBJbnZhbGlkIGNoYXJzICclcycgYXQgdGhlIGVuZCBvZiBleHByZXNzaW9uICclcycKAFVuZGVmaW5lZCBjb25zdGFudCBvciBtaXNzaW5nICcoJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBvciB0b28gbWFueSBhcmdzIGluICclcycKAHNpbmgAY29zaAB0YW5oAHNpbgBjb3MAdGFuAGF0YW4AYXNpbgBhY29zAGV4cABhYnMAdGltZQBzcXVpc2gAZ2F1c3MAbW9kAG1heABtaW4AZXEAZ3RlAGd0AGx0ZQBsdABsZABpc25hbgBpc2luZgBzdAB3aGlsZQB0YXlsb3IAcm9vdABmbG9vcgBjZWlsAHJvdW5kAHNxcnQAbm90AHBvdwBwcmludABoeXBvdABnY2QAaWYAaWZub3QAYml0YW5kAGJpdG9yAGJldHdlZW4AY2xpcABhdGFuMgBsZXJwAFVua25vd24gZnVuY3Rpb24gaW4gJyVzJwoARQBQSQBQSEkAUVAyTEFNQkRBAEV2YWwAVmFsdWUgJWYgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiByYW5nZSBbJWcgLSAlZ10KAFZhbHVlICVmIGZvciBwYXJhbWV0ZXIgJyVzJyBpcyBub3QgYSB2YWxpZCBzZXQgb2YgMzJiaXQgaW50ZWdlciBmbGFncwoAZGV0ZWN0ZWQgJWQgbG9naWNhbCBjb3JlcwoAAAEcAh0OGAMeFhQPGREECB8bDRcVExAHGgwSBgsFCglVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgZHVyYXRpb24KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjaGFubmVsIGxheW91dAoASW52YWxpZCBvcHRpb24gdHlwZS4KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjb2xvcgoAMHgAcmFuZG9tAGJpa2VzaGVkADAxMjM0NTY3ODlBQkNERUZhYmNkZWYASW52YWxpZCAweFJSR0dCQltBQV0gY29sb3Igc3RyaW5nOiAnJXMnCgBDYW5ub3QgZmluZCBjb2xvciAnJXMnCgBJbnZhbGlkIGFscGhhIHZhbHVlIHNwZWNpZmllciAnJXMnIGluICclcycKAEFsaWNlQmx1ZQBBbnRpcXVlV2hpdGUAQXF1YQBBcXVhbWFyaW5lAEF6dXJlAEJlaWdlAEJpc3F1ZQBCbGFjawBCbGFuY2hlZEFsbW9uZABCbHVlAEJsdWVWaW9sZXQAQnJvd24AQnVybHlXb29kAENhZGV0Qmx1ZQBDaGFydHJldXNlAENob2NvbGF0ZQBDb3JhbABDb3JuZmxvd2VyQmx1ZQBDb3Juc2lsawBDcmltc29uAEN5YW4ARGFya0JsdWUARGFya0N5YW4ARGFya0dvbGRlblJvZABEYXJrR3JheQBEYXJrR3JlZW4ARGFya0toYWtpAERhcmtNYWdlbnRhAERhcmtPbGl2ZUdyZWVuAERhcmtvcmFuZ2UARGFya09yY2hpZABEYXJrUmVkAERhcmtTYWxtb24ARGFya1NlYUdyZWVuAERhcmtTbGF0ZUJsdWUARGFya1NsYXRlR3JheQBEYXJrVHVycXVvaXNlAERhcmtWaW9sZXQARGVlcFBpbmsARGVlcFNreUJsdWUARGltR3JheQBEb2RnZXJCbHVlAEZpcmVCcmljawBGbG9yYWxXaGl0ZQBGb3Jlc3RHcmVlbgBGdWNoc2lhAEdhaW5zYm9ybwBHaG9zdFdoaXRlAEdvbGQAR29sZGVuUm9kAEdyYXkAR3JlZW4AR3JlZW5ZZWxsb3cASG9uZXlEZXcASG90UGluawBJbmRpYW5SZWQASW5kaWdvAEl2b3J5AEtoYWtpAExhdmVuZGVyAExhdmVuZGVyQmx1c2gATGF3bkdyZWVuAExlbW9uQ2hpZmZvbgBMaWdodEJsdWUATGlnaHRDb3JhbABMaWdodEN5YW4ATGlnaHRHb2xkZW5Sb2RZZWxsb3cATGlnaHRHcmVlbgBMaWdodEdyZXkATGlnaHRQaW5rAExpZ2h0U2FsbW9uAExpZ2h0U2VhR3JlZW4ATGlnaHRTa3lCbHVlAExpZ2h0U2xhdGVHcmF5AExpZ2h0U3RlZWxCbHVlAExpZ2h0WWVsbG93AExpbWUATGltZUdyZWVuAExpbmVuAE1hZ2VudGEATWFyb29uAE1lZGl1bUFxdWFNYXJpbmUATWVkaXVtQmx1ZQBNZWRpdW1PcmNoaWQATWVkaXVtUHVycGxlAE1lZGl1bVNlYUdyZWVuAE1lZGl1bVNsYXRlQmx1ZQBNZWRpdW1TcHJpbmdHcmVlbgBNZWRpdW1UdXJxdW9pc2UATWVkaXVtVmlvbGV0UmVkAE1pZG5pZ2h0Qmx1ZQBNaW50Q3JlYW0ATWlzdHlSb3NlAE1vY2Nhc2luAE5hdmFqb1doaXRlAE5hdnkAT2xkTGFjZQBPbGl2ZQBPbGl2ZURyYWIAT3JhbmdlAE9yYW5nZVJlZABPcmNoaWQAUGFsZUdvbGRlblJvZABQYWxlR3JlZW4AUGFsZVR1cnF1b2lzZQBQYWxlVmlvbGV0UmVkAFBhcGF5YVdoaXAAUGVhY2hQdWZmAFBlcnUAUGluawBQbHVtAFBvd2RlckJsdWUAUHVycGxlAFJlZABSb3N5QnJvd24AUm95YWxCbHVlAFNhZGRsZUJyb3duAFNhbG1vbgBTYW5keUJyb3duAFNlYUdyZWVuAFNlYVNoZWxsAFNpZW5uYQBTaWx2ZXIAU2t5Qmx1ZQBTbGF0ZUJsdWUAU2xhdGVHcmF5AFNub3cAU3ByaW5nR3JlZW4AU3RlZWxCbHVlAFRhbgBUZWFsAFRoaXN0bGUAVG9tYXRvAFR1cnF1b2lzZQBWaW9sZXQAV2hlYXQAV2hpdGUAV2hpdGVTbW9rZQBZZWxsb3cAWWVsbG93R3JlZW4Abm93ACVKOiVNOiVTACVNOiVTACVIOiVNACVIJU0AJUgAJUg6JU06JVMAJUglTSVTAGphbnVhcnkAZmVicnVhcnkAbWFyY2gAYXByaWwAbWF5AGp1bmUAanVseQBhdWd1c3QAc2VwdGVtYmVyAG9jdG9iZXIAbm92ZW1iZXIAZGVjZW1iZXIAJVkgLSAlbSAtICVkACVZJW0lZABzYW1wbGUgZm9ybWF0AFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyAlcwoAVmFsdWUgJWQgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiAlcyBmb3JtYXQgcmFuZ2UgWyVkIC0gJWRdCgBwaXhlbCBmb3JtYXQAcmdiMzIAYmdyMzIAJXMlcwBsZQB2YWFwaQBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgdmlkZW8gcmF0ZQoAJWQ6JWQlYwBudHNjAHBhbABxbnRzYwBxcGFsAHNudHNjAHNwYWwAbnRzYy1maWxtAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBpbWFnZSBzaXplCgBzcWNpZgBxY2lmAGNpZgA0Y2lmADE2Y2lmAHFxdmdhAHF2Z2EAdmdhAHN2Z2EAeGdhAHV4Z2EAcXhnYQBzeGdhAHFzeGdhAGhzeGdhAHd2Z2EAd3hnYQB3c3hnYQB3dXhnYQB3b3hnYQB3cXN4Z2EAd3F1eGdhAHdoc3hnYQB3aHV4Z2EAY2dhAGVnYQBoZDQ4MABoZDcyMABoZDEwODAAMmsAMmtkY2kAMmtmbGF0ADJrc2NvcGUANGsANGtkY2kANGtmbGF0ADRrc2NvcGUAbmhkAGhxdmdhAHdxdmdhAGZ3cXZnYQBodmdhAHFoZAB1aGQyMTYwAHVoZDQzMjAAdHJ1ZSx5LHllcyxlbmFibGUsZW5hYmxlZCxvbgBmYWxzZSxuLG5vLGRpc2FibGUsZGlzYWJsZWQsb2ZmAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBib29sZWFuCgBBVk9wdGlvbiB0eXBlICVkIG9mIG9wdGlvbiAlcyBub3QgaW1wbGVtZW50ZWQgeWV0CgBFcnJvciBzZXR0aW5nIG9wdGlvbiAlcyB0byB2YWx1ZSAlcy4KAG5iX3RocmVhZHMgPj0gMABsaWJhdnV0aWwvc2xpY2V0aHJlYWQuYwBuYl9qb2JzID4gMABGaW5hbCB0aHJlYWQgdXBkYXRlIGZhaWxlZAoAcC0+YXZjdHgtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPIHx8IHAtPmF2Y3R4LT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTwBsaWJhdmNvZGVjL3B0aHJlYWRfZnJhbWUuYwBmY3R4LT5hc3luY19sb2NrAEFzc2VydGlvbiAlcyBmYWlsZWQgYXQgJXM6JWQKAHJldCA+PSAwAGxpYmF2Y29kZWMvb3B0aW9ucy5jAEFWQ29kZWNDb250ZXh0AGIAc2V0IGJpdHJhdGUgKGluIGJpdHMvcykAYWIAYnQAU2V0IHZpZGVvIGJpdHJhdGUgdG9sZXJhbmNlIChpbiBiaXRzL3MpLiBJbiAxLXBhc3MgbW9kZSwgYml0cmF0ZSB0b2xlcmFuY2Ugc3BlY2lmaWVzIGhvdyBmYXIgcmF0ZWNvbnRyb2wgaXMgd2lsbGluZyB0byBkZXZpYXRlIGZyb20gdGhlIHRhcmdldCBhdmVyYWdlIGJpdHJhdGUgdmFsdWUuIFRoaXMgaXMgbm90IHJlbGF0ZWQgdG8gbWluaW11bS9tYXhpbXVtIGJpdHJhdGUuIExvd2VyaW5nIHRvbGVyYW5jZSB0b28gbXVjaCBoYXMgYW4gYWR2ZXJzZSBlZmZlY3Qgb24gcXVhbGl0eS4AZmxhZ3MAdW5hbGlnbmVkAGFsbG93IGRlY29kZXJzIHRvIHByb2R1Y2UgdW5hbGlnbmVkIG91dHB1dABtdjQAdXNlIGZvdXIgbW90aW9uIHZlY3RvcnMgcGVyIG1hY3JvYmxvY2sgKE1QRUctNCkAcXBlbAB1c2UgMS80LXBlbCBtb3Rpb24gY29tcGVuc2F0aW9uAGxvb3AAdXNlIGxvb3AgZmlsdGVyAHFzY2FsZQB1c2UgZml4ZWQgcXNjYWxlAHBhc3MxAHVzZSBpbnRlcm5hbCAyLXBhc3MgcmF0ZWNvbnRyb2wgaW4gZmlyc3QgIHBhc3MgbW9kZQBwYXNzMgB1c2UgaW50ZXJuYWwgMi1wYXNzIHJhdGVjb250cm9sIGluIHNlY29uZCBwYXNzIG1vZGUAZ3JheQBvbmx5IGRlY29kZS9lbmNvZGUgZ3JheXNjYWxlAHBzbnIAZXJyb3JbP10gdmFyaWFibGVzIHdpbGwgYmUgc2V0IGR1cmluZyBlbmNvZGluZwB0cnVuY2F0ZWQASW5wdXQgYml0c3RyZWFtIG1pZ2h0IGJlIHJhbmRvbWx5IHRydW5jYXRlZABpbGRjdAB1c2UgaW50ZXJsYWNlZCBEQ1QAbG93X2RlbGF5AGZvcmNlIGxvdyBkZWxheQBnbG9iYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGluIGV4dHJhZGF0YSBpbnN0ZWFkIG9mIGV2ZXJ5IGtleWZyYW1lAGJpdGV4YWN0AHVzZSBvbmx5IGJpdGV4YWN0IGZ1bmN0aW9ucyAoZXhjZXB0IChJKURDVCkAYWljAEguMjYzIGFkdmFuY2VkIGludHJhIGNvZGluZyAvIE1QRUctNCBBQyBwcmVkaWN0aW9uAGlsbWUAaW50ZXJsYWNlZCBtb3Rpb24gZXN0aW1hdGlvbgBjZ29wAGNsb3NlZCBHT1AAb3V0cHV0X2NvcnJ1cHQAT3V0cHV0IGV2ZW4gcG90ZW50aWFsbHkgY29ycnVwdGVkIGZyYW1lcwBmYXN0AGFsbG93IG5vbi1zcGVjLWNvbXBsaWFudCBzcGVlZHVwIHRyaWNrcwBmbGFnczIAbm9vdXQAc2tpcCBiaXRzdHJlYW0gZW5jb2RpbmcAaWdub3JlY3JvcABpZ25vcmUgY3JvcHBpbmcgaW5mb3JtYXRpb24gZnJvbSBzcHMAbG9jYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGF0IGV2ZXJ5IGtleWZyYW1lIGluc3RlYWQgb2YgaW4gZXh0cmFkYXRhAGNodW5rcwBGcmFtZSBkYXRhIG1pZ2h0IGJlIHNwbGl0IGludG8gbXVsdGlwbGUgY2h1bmtzAHNob3dhbGwAU2hvdyBhbGwgZnJhbWVzIGJlZm9yZSB0aGUgZmlyc3Qga2V5ZnJhbWUAZXhwb3J0X212cwBleHBvcnQgbW90aW9uIHZlY3RvcnMgdGhyb3VnaCBmcmFtZSBzaWRlIGRhdGEAc2tpcF9tYW51YWwAZG8gbm90IHNraXAgc2FtcGxlcyBhbmQgZXhwb3J0IHNraXAgaW5mb3JtYXRpb24gYXMgZnJhbWUgc2lkZSBkYXRhAGFzc19yb19mbHVzaF9ub29wAGRvIG5vdCByZXNldCBBU1MgUmVhZE9yZGVyIGZpZWxkIG9uIGZsdXNoAHRpbWVfYmFzZQBnAHNldCB0aGUgZ3JvdXAgb2YgcGljdHVyZSAoR09QKSBzaXplAGFyAHNldCBhdWRpbyBzYW1wbGluZyByYXRlIChpbiBIeikAYWMAc2V0IG51bWJlciBvZiBhdWRpbyBjaGFubmVscwBjdXRvZmYAc2V0IGN1dG9mZiBiYW5kd2lkdGgAZnJhbWVfc2l6ZQBmcmFtZV9udW1iZXIAZGVsYXkAcWNvbXAAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGNvbXByZXNzaW9uIChWQlIpLiBDb25zdGFudCBvZiByYXRlY29udHJvbCBlcXVhdGlvbi4gUmVjb21tZW5kZWQgcmFuZ2UgZm9yIGRlZmF1bHQgcmNfZXE6IDAuMC0xLjAAcWJsdXIAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGJsdXIgKFZCUikAcW1pbgBtaW5pbXVtIHZpZGVvIHF1YW50aXplciBzY2FsZSAoVkJSKQBxbWF4AG1heGltdW0gdmlkZW8gcXVhbnRpemVyIHNjYWxlIChWQlIpAHFkaWZmAG1heGltdW0gZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBxdWFudGl6ZXIgc2NhbGVzIChWQlIpAGJmAHNldCBtYXhpbXVtIG51bWJlciBvZiBCLWZyYW1lcyBiZXR3ZWVuIG5vbi1CLWZyYW1lcwBiX3FmYWN0b3IAUVAgZmFjdG9yIGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGJfc3RyYXRlZ3kAc3RyYXRlZ3kgdG8gY2hvb3NlIGJldHdlZW4gSS9QL0ItZnJhbWVzAHBzAFJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMAbXZfYml0cwBoZWFkZXJfYml0cwBpX3RleF9iaXRzAHBfdGV4X2JpdHMAaV9jb3VudABwX2NvdW50AHNraXBfY291bnQAbWlzY19iaXRzAGZyYW1lX2JpdHMAY29kZWNfdGFnAGJ1ZwB3b3JrIGFyb3VuZCBub3QgYXV0b2RldGVjdGVkIGVuY29kZXIgYnVncwBhdXRvZGV0ZWN0AHh2aWRfaWxhY2UAWHZpZCBpbnRlcmxhY2luZyBidWcgKGF1dG9kZXRlY3RlZCBpZiBGT1VSQ0MgPT0gWFZJWCkAdW1wNAAoYXV0b2RldGVjdGVkIGlmIEZPVVJDQyA9PSBVTVA0KQBub19wYWRkaW5nAHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQpAGFtdgBxcGVsX2Nocm9tYQBzdGRfcXBlbABvbGQgc3RhbmRhcmQgcXBlbCAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAcXBlbF9jaHJvbWEyAGRpcmVjdF9ibG9ja3NpemUAZGlyZWN0LXFwZWwtYmxvY2tzaXplIGJ1ZyAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAZWRnZQBlZGdlIHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQy92ZXJzaW9uKQBocGVsX2Nocm9tYQBkY19jbGlwAG1zAHdvcmsgYXJvdW5kIHZhcmlvdXMgYnVncyBpbiBNaWNyb3NvZnQncyBicm9rZW4gZGVjb2RlcnMAdHJ1bmMAdHJ1bmNhdGVkIGZyYW1lcwBpZWRnZQBzdHJpY3QAaG93IHN0cmljdGx5IHRvIGZvbGxvdyB0aGUgc3RhbmRhcmRzAHZlcnkAc3RyaWN0bHkgY29uZm9ybSB0byBhIG9sZGVyIG1vcmUgc3RyaWN0IHZlcnNpb24gb2YgdGhlIHNwZWMgb3IgcmVmZXJlbmNlIHNvZnR3YXJlAHN0cmljdGx5IGNvbmZvcm0gdG8gYWxsIHRoZSB0aGluZ3MgaW4gdGhlIHNwZWMgbm8gbWF0dGVyIHdoYXQgdGhlIGNvbnNlcXVlbmNlcwBub3JtYWwAdW5vZmZpY2lhbABhbGxvdyB1bm9mZmljaWFsIGV4dGVuc2lvbnMAZXhwZXJpbWVudGFsAGFsbG93IG5vbi1zdGFuZGFyZGl6ZWQgZXhwZXJpbWVudGFsIHRoaW5ncwBiX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGVycl9kZXRlY3QAc2V0IGVycm9yIGRldGVjdGlvbiBmbGFncwBjcmNjaGVjawB2ZXJpZnkgZW1iZWRkZWQgQ1JDcwBiaXRzdHJlYW0AZGV0ZWN0IGJpdHN0cmVhbSBzcGVjaWZpY2F0aW9uIGRldmlhdGlvbnMAYnVmZmVyAGRldGVjdCBpbXByb3BlciBiaXRzdHJlYW0gbGVuZ3RoAGV4cGxvZGUAYWJvcnQgZGVjb2Rpbmcgb24gbWlub3IgZXJyb3IgZGV0ZWN0aW9uAGlnbm9yZV9lcnIAaWdub3JlIGVycm9ycwBjYXJlZnVsAGNvbnNpZGVyIHRoaW5ncyB0aGF0IHZpb2xhdGUgdGhlIHNwZWMsIGFyZSBmYXN0IHRvIGNoZWNrIGFuZCBoYXZlIG5vdCBiZWVuIHNlZW4gaW4gdGhlIHdpbGQgYXMgZXJyb3JzAGNvbXBsaWFudABjb25zaWRlciBhbGwgc3BlYyBub24gY29tcGxpYW5jaWVzIGFzIGVycm9ycwBhZ2dyZXNzaXZlAGNvbnNpZGVyIHRoaW5ncyB0aGF0IGEgc2FuZSBlbmNvZGVyIHNob3VsZCBub3QgZG8gYXMgYW4gZXJyb3IAaGFzX2JfZnJhbWVzAGJsb2NrX2FsaWduAG1wZWdfcXVhbnQAdXNlIE1QRUcgcXVhbnRpemVycyBpbnN0ZWFkIG9mIEguMjYzAHJjX292ZXJyaWRlX2NvdW50AG1heHJhdGUAbWF4aW11bSBiaXRyYXRlIChpbiBiaXRzL3MpLiBVc2VkIGZvciBWQlYgdG9nZXRoZXIgd2l0aCBidWZzaXplLgBtaW5yYXRlAG1pbmltdW0gYml0cmF0ZSAoaW4gYml0cy9zKS4gTW9zdCB1c2VmdWwgaW4gc2V0dGluZyB1cCBhIENCUiBlbmNvZGUuIEl0IGlzIG9mIGxpdHRsZSB1c2Ugb3RoZXJ3aXNlLgBidWZzaXplAHNldCByYXRlY29udHJvbCBidWZmZXIgc2l6ZSAoaW4gYml0cykAaV9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBJLWZyYW1lcwBpX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEktZnJhbWVzAGRjdABEQ1QgYWxnb3JpdGhtAGF1dG8AYXV0b3NlbGVjdCBhIGdvb2Qgb25lAGZhc3RpbnQAZmFzdCBpbnRlZ2VyAGFjY3VyYXRlIGludGVnZXIAbW14AGFsdGl2ZWMAZmFhbgBmbG9hdGluZyBwb2ludCBBQU4gRENUAGx1bWlfbWFzawBjb21wcmVzc2VzIGJyaWdodCBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAHRjcGx4X21hc2sAdGVtcG9yYWwgY29tcGxleGl0eSBtYXNraW5nAHNjcGx4X21hc2sAc3BhdGlhbCBjb21wbGV4aXR5IG1hc2tpbmcAcF9tYXNrAGludGVyIG1hc2tpbmcAZGFya19tYXNrAGNvbXByZXNzZXMgZGFyayBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAGlkY3QAc2VsZWN0IElEQ1QgaW1wbGVtZW50YXRpb24Ac2ltcGxlAHNpbXBsZW1teABhcm0Ac2ltcGxlYXJtAHNpbXBsZWFybXY1dGUAc2ltcGxlYXJtdjYAc2ltcGxlbmVvbgB4dmlkAHh2aWRtbXgAZGVwcmVjYXRlZCwgZm9yIGNvbXBhdGliaWxpdHkgb25seQBmYWFuaQBmbG9hdGluZyBwb2ludCBBQU4gSURDVABzaW1wbGVhdXRvAHNsaWNlX2NvdW50AGVjAHNldCBlcnJvciBjb25jZWFsbWVudCBzdHJhdGVneQBndWVzc19tdnMAaXRlcmF0aXZlIG1vdGlvbiB2ZWN0b3IgKE1WKSBzZWFyY2ggKHNsb3cpAGRlYmxvY2sAdXNlIHN0cm9uZyBkZWJsb2NrIGZpbHRlciBmb3IgZGFtYWdlZCBNQnMAZmF2b3JfaW50ZXIAZmF2b3IgcHJlZGljdGluZyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBiaXRzX3Blcl9jb2RlZF9zYW1wbGUAcHJlZABwcmVkaWN0aW9uIG1ldGhvZABsZWZ0AHBsYW5lAG1lZGlhbgBhc3BlY3QAc2FtcGxlIGFzcGVjdCByYXRpbwBzYXIAZGVidWcAcHJpbnQgc3BlY2lmaWMgZGVidWcgaW5mbwBwaWN0AHBpY3R1cmUgaW5mbwByYwByYXRlIGNvbnRyb2wAbWJfdHlwZQBtYWNyb2Jsb2NrIChNQikgdHlwZQBxcABwZXItYmxvY2sgcXVhbnRpemF0aW9uIHBhcmFtZXRlciAoUVApAGRjdF9jb2VmZgBncmVlbl9tZXRhZGF0YQBza2lwAHN0YXJ0Y29kZQBlcgBlcnJvciByZWNvZ25pdGlvbgBtbWNvAG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9ucyAoSC4yNjQpAGJ1Z3MAYnVmZmVycwBwaWN0dXJlIGJ1ZmZlciBhbGxvY2F0aW9ucwB0aHJlYWRfb3BzAHRocmVhZGluZyBvcGVyYXRpb25zAG5vbWMAc2tpcCBtb3Rpb24gY29tcGVuc2F0aW9uAGNtcABmdWxsLXBlbCBNRSBjb21wYXJlIGZ1bmN0aW9uAGNtcF9mdW5jAHN1YmNtcABzdWItcGVsIE1FIGNvbXBhcmUgZnVuY3Rpb24AbWJjbXAAbWFjcm9ibG9jayBjb21wYXJlIGZ1bmN0aW9uAGlsZGN0Y21wAGludGVybGFjZWQgRENUIGNvbXBhcmUgZnVuY3Rpb24AZGlhX3NpemUAZGlhbW9uZCB0eXBlICYgc2l6ZSBmb3IgbW90aW9uIGVzdGltYXRpb24AbGFzdF9wcmVkAGFtb3VudCBvZiBtb3Rpb24gcHJlZGljdG9ycyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBwcmVtZQBwcmUgbW90aW9uIGVzdGltYXRpb24AcHJlY21wAHByZSBtb3Rpb24gZXN0aW1hdGlvbiBjb21wYXJlIGZ1bmN0aW9uAHNhZABzdW0gb2YgYWJzb2x1dGUgZGlmZmVyZW5jZXMsIGZhc3QAc3NlAHN1bSBvZiBzcXVhcmVkIGVycm9ycwBzYXRkAHN1bSBvZiBhYnNvbHV0ZSBIYWRhbWFyZCB0cmFuc2Zvcm1lZCBkaWZmZXJlbmNlcwBzdW0gb2YgYWJzb2x1dGUgRENUIHRyYW5zZm9ybWVkIGRpZmZlcmVuY2VzAHN1bSBvZiBzcXVhcmVkIHF1YW50aXphdGlvbiBlcnJvcnMgKGF2b2lkLCBsb3cgcXVhbGl0eSkAYml0AG51bWJlciBvZiBiaXRzIG5lZWRlZCBmb3IgdGhlIGJsb2NrAHJkAHJhdGUgZGlzdG9ydGlvbiBvcHRpbWFsLCBzbG93AHplcm8AMAB2c2FkAHN1bSBvZiBhYnNvbHV0ZSB2ZXJ0aWNhbCBkaWZmZXJlbmNlcwB2c3NlAHN1bSBvZiBzcXVhcmVkIHZlcnRpY2FsIGRpZmZlcmVuY2VzAG5zc2UAbm9pc2UgcHJlc2VydmluZyBzdW0gb2Ygc3F1YXJlZCBkaWZmZXJlbmNlcwBkY3RtYXgAY2hyb21hAG1zYWQAc3VtIG9mIGFic29sdXRlIGRpZmZlcmVuY2VzLCBtZWRpYW4gcHJlZGljdGVkAHByZV9kaWFfc2l6ZQBkaWFtb25kIHR5cGUgJiBzaXplIGZvciBtb3Rpb24gZXN0aW1hdGlvbiBwcmUtcGFzcwBzdWJxAHN1Yi1wZWwgbW90aW9uIGVzdGltYXRpb24gcXVhbGl0eQBtZV9yYW5nZQBsaW1pdCBtb3Rpb24gdmVjdG9ycyByYW5nZSAoMTAyMyBmb3IgRGl2WCBwbGF5ZXIpAGdsb2JhbF9xdWFsaXR5AGNvZGVyAHZsYwB2YXJpYWJsZSBsZW5ndGggY29kZXIgLyBIdWZmbWFuIGNvZGVyAGFyaXRobWV0aWMgY29kZXIAcmF3AHJhdyAobm8gZW5jb2RpbmcpAHJsZQBydW4tbGVuZ3RoIGNvZGVyAGNvbnRleHQAY29udGV4dCBtb2RlbABzbGljZV9mbGFncwBtYmQAbWFjcm9ibG9jayBkZWNpc2lvbiBhbGdvcml0aG0gKGhpZ2ggcXVhbGl0eSBtb2RlKQB1c2UgbWJjbXAAYml0cwB1c2UgZmV3ZXN0IGJpdHMAdXNlIGJlc3QgcmF0ZSBkaXN0b3J0aW9uAHNjX3RocmVzaG9sZABzY2VuZSBjaGFuZ2UgdGhyZXNob2xkAG5yAG5vaXNlIHJlZHVjdGlvbgByY19pbml0X29jY3VwYW5jeQBudW1iZXIgb2YgYml0cyB3aGljaCBzaG91bGQgYmUgbG9hZGVkIGludG8gdGhlIHJjIGJ1ZmZlciBiZWZvcmUgZGVjb2Rpbmcgc3RhcnRzAHRocmVhZHMAc2V0IHRoZSBudW1iZXIgb2YgdGhyZWFkcwBhdXRvZGV0ZWN0IGEgc3VpdGFibGUgbnVtYmVyIG9mIHRocmVhZHMgdG8gdXNlAGRjAGludHJhX2RjX3ByZWNpc2lvbgBuc3NldwBuc3NlIHdlaWdodABza2lwX3RvcABudW1iZXIgb2YgbWFjcm9ibG9jayByb3dzIGF0IHRoZSB0b3Agd2hpY2ggYXJlIHNraXBwZWQAc2tpcF9ib3R0b20AbnVtYmVyIG9mIG1hY3JvYmxvY2sgcm93cyBhdCB0aGUgYm90dG9tIHdoaWNoIGFyZSBza2lwcGVkAHByb2ZpbGUAdW5rbm93bgBhYWNfbWFpbgBhYWNfbG93AGFhY19zc3IAYWFjX2x0cABhYWNfaGUAYWFjX2hlX3YyAGFhY19sZABhYWNfZWxkAG1wZWcyX2FhY19sb3cAbXBlZzJfYWFjX2hlAGR0cwBkdHNfZXMAZHRzXzk2XzI0AGR0c19oZF9ocmEAZHRzX2hkX21hAG1wZWc0X3NwAG1wZWc0X2NvcmUAbXBlZzRfbWFpbgBtcGVnNF9hc3AAbWFpbjEwAG1zYmMAbGV2ZWwAbG93cmVzAGRlY29kZSBhdCAxPSAxLzIsIDI9MS80LCAzPTEvOCByZXNvbHV0aW9ucwBza2lwX3RocmVzaG9sZABmcmFtZSBza2lwIHRocmVzaG9sZABza2lwX2ZhY3RvcgBmcmFtZSBza2lwIGZhY3RvcgBza2lwX2V4cABmcmFtZSBza2lwIGV4cG9uZW50AHNraXBjbXAAZnJhbWUgc2tpcCBjb21wYXJlIGZ1bmN0aW9uAG1ibG1pbgBtaW5pbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1ibG1heABtYXhpbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1lcGMAbW90aW9uIGVzdGltYXRpb24gYml0cmF0ZSBwZW5hbHR5IGNvbXBlbnNhdGlvbiAoMS4wID0gMjU2KQBza2lwX2xvb3BfZmlsdGVyAHNraXAgbG9vcCBmaWx0ZXJpbmcgcHJvY2VzcyBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBhdmRpc2NhcmQAc2tpcF9pZGN0AHNraXAgSURDVC9kZXF1YW50aXphdGlvbiBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBza2lwX2ZyYW1lAHNraXAgZGVjb2RpbmcgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAbm9uZQBkaXNjYXJkIG5vIGZyYW1lAGRlZmF1bHQAZGlzY2FyZCB1c2VsZXNzIGZyYW1lcwBub3JlZgBkaXNjYXJkIGFsbCBub24tcmVmZXJlbmNlIGZyYW1lcwBiaWRpcgBkaXNjYXJkIGFsbCBiaWRpcmVjdGlvbmFsIGZyYW1lcwBub2tleQBkaXNjYXJkIGFsbCBmcmFtZXMgZXhjZXB0IGtleWZyYW1lcwBub2ludHJhAGRpc2NhcmQgYWxsIGZyYW1lcyBleGNlcHQgSSBmcmFtZXMAYWxsAGRpc2NhcmQgYWxsIGZyYW1lcwBiaWRpcl9yZWZpbmUAcmVmaW5lIHRoZSB0d28gbW90aW9uIHZlY3RvcnMgdXNlZCBpbiBiaWRpcmVjdGlvbmFsIG1hY3JvYmxvY2tzAGJyZF9zY2FsZQBkb3duc2NhbGUgZnJhbWVzIGZvciBkeW5hbWljIEItZnJhbWUgZGVjaXNpb24Aa2V5aW50X21pbgBtaW5pbXVtIGludGVydmFsIGJldHdlZW4gSURSLWZyYW1lcwByZWZzAHJlZmVyZW5jZSBmcmFtZXMgdG8gY29uc2lkZXIgZm9yIG1vdGlvbiBjb21wZW5zYXRpb24AY2hyb21hb2Zmc2V0AGNocm9tYSBRUCBvZmZzZXQgZnJvbSBsdW1hAHRyZWxsaXMAcmF0ZS1kaXN0b3J0aW9uIG9wdGltYWwgcXVhbnRpemF0aW9uAG12MF90aHJlc2hvbGQAYl9zZW5zaXRpdml0eQBhZGp1c3Qgc2Vuc2l0aXZpdHkgb2YgYl9mcmFtZV9zdHJhdGVneSAxAGNvbXByZXNzaW9uX2xldmVsAG1pbl9wcmVkaWN0aW9uX29yZGVyAG1heF9wcmVkaWN0aW9uX29yZGVyAHRpbWVjb2RlX2ZyYW1lX3N0YXJ0AEdPUCB0aW1lY29kZSBmcmFtZSBzdGFydCBudW1iZXIsIGluIG5vbi1kcm9wLWZyYW1lIGZvcm1hdABiaXRzX3Blcl9yYXdfc2FtcGxlAGNoYW5uZWxfbGF5b3V0AHJlcXVlc3RfY2hhbm5lbF9sYXlvdXQAcmNfbWF4X3Zidl91c2UAcmNfbWluX3Zidl91c2UAdGlja3NfcGVyX2ZyYW1lAGNvbG9yX3ByaW1hcmllcwBjb2xvciBwcmltYXJpZXMAY29sb3JfcHJpbWFyaWVzX3R5cGUAYnQ3MDkAQlQuNzA5AFVuc3BlY2lmaWVkAGJ0NDcwbQBCVC40NzAgTQBidDQ3MGJnAEJULjQ3MCBCRwBzbXB0ZTE3MG0AU01QVEUgMTcwIE0Ac21wdGUyNDBtAFNNUFRFIDI0MCBNAGZpbG0ARmlsbQBidDIwMjAAQlQuMjAyMABzbXB0ZTQyOABTTVBURSA0MjgtMQBzbXB0ZTQyOF8xAHNtcHRlNDMxAFNNUFRFIDQzMS0yAHNtcHRlNDMyAFNNUFRFIDQyMi0xAGplZGVjLXAyMgBKRURFQyBQMjIAdW5zcGVjaWZpZWQAY29sb3JfdHJjAGNvbG9yIHRyYW5zZmVyIGNoYXJhY3RlcmlzdGljcwBjb2xvcl90cmNfdHlwZQBnYW1tYTIyAGdhbW1hMjgAbGluZWFyAExpbmVhcgBsb2cxMDAATG9nAGxvZzMxNgBMb2cgc3F1YXJlIHJvb3QAaWVjNjE5NjYtMi00AElFQyA2MTk2Ni0yLTQAYnQxMzYxZQBCVC4xMzYxAGllYzYxOTY2LTItMQBJRUMgNjE5NjYtMi0xAGJ0MjAyMC0xMABCVC4yMDIwIC0gMTAgYml0AGJ0MjAyMC0xMgBCVC4yMDIwIC0gMTIgYml0AHNtcHRlMjA4NABTTVBURSAyMDg0AGFyaWItc3RkLWI2NwBBUklCIFNURC1CNjcAbG9nAGxvZ19zcXJ0AGllYzYxOTY2XzJfNABidDEzNjEAaWVjNjE5NjZfMl8xAGJ0MjAyMF8xMGJpdABidDIwMjBfMTJiaXQAY29sb3JzcGFjZQBjb2xvciBzcGFjZQBjb2xvcnNwYWNlX3R5cGUAcmdiAFJHQgBmY2MARkNDAHljZ2NvAFlDR0NPAGJ0MjAyMG5jAEJULjIwMjAgTkNMAGJ0MjAyMGMAQlQuMjAyMCBDTABzbXB0ZTIwODUAU01QVEUgMjA4NQB5Y29jZwBidDIwMjBfbmNsAGJ0MjAyMF9jbABjb2xvcl9yYW5nZQBjb2xvciByYW5nZQBjb2xvcl9yYW5nZV90eXBlAHR2AE1QRUcgKDIxOSoyXihuLTgpKQBwYwBKUEVHICgyXm4tMSkAbXBlZwBqcGVnAGNocm9tYV9zYW1wbGVfbG9jYXRpb24AY2hyb21hIHNhbXBsZSBsb2NhdGlvbgBjaHJvbWFfc2FtcGxlX2xvY2F0aW9uX3R5cGUATGVmdABjZW50ZXIAQ2VudGVyAHRvcGxlZnQAVG9wLWxlZnQAdG9wAFRvcABib3R0b21sZWZ0AEJvdHRvbS1sZWZ0AGJvdHRvbQBCb3R0b20AbG9nX2xldmVsX29mZnNldABzZXQgdGhlIGxvZyBsZXZlbCBvZmZzZXQAc2xpY2VzAHNldCB0aGUgbnVtYmVyIG9mIHNsaWNlcywgdXNlZCBpbiBwYXJhbGxlbGl6ZWQgZW5jb2RpbmcAdGhyZWFkX3R5cGUAc2VsZWN0IG11bHRpdGhyZWFkaW5nIHR5cGUAc2xpY2UAZnJhbWUAYXVkaW9fc2VydmljZV90eXBlAGF1ZGlvIHNlcnZpY2UgdHlwZQBtYQBNYWluIEF1ZGlvIFNlcnZpY2UAZWYARWZmZWN0cwB2aQBWaXN1YWxseSBJbXBhaXJlZABoaQBIZWFyaW5nIEltcGFpcmVkAGRpAERpYWxvZ3VlAGNvAENvbW1lbnRhcnkAZW0ARW1lcmdlbmN5AHZvAFZvaWNlIE92ZXIAa2EAS2FyYW9rZQByZXF1ZXN0X3NhbXBsZV9mbXQAc2FtcGxlIGZvcm1hdCBhdWRpbyBkZWNvZGVycyBzaG91bGQgcHJlZmVyAHBrdF90aW1lYmFzZQBzdWJfY2hhcmVuYwBzZXQgaW5wdXQgdGV4dCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nAHN1Yl9jaGFyZW5jX21vZGUAc2V0IGlucHV0IHRleHQgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZyBtb2RlAGRvX25vdGhpbmcAcHJlX2RlY29kZXIAc3ViX3RleHRfZm9ybWF0AHNldCBkZWNvZGVkIHRleHQgc3VidGl0bGUgZm9ybWF0AGFzcwBhc3Nfd2l0aF90aW1pbmdzAHJlZmNvdW50ZWRfZnJhbWVzAHNpZGVfZGF0YV9vbmx5X3BhY2tldHMAYXBwbHlfY3JvcHBpbmcAc2tpcF9hbHBoYQBTa2lwIHByb2Nlc3NpbmcgYWxwaGEAZmllbGRfb3JkZXIARmllbGQgb3JkZXIAcHJvZ3Jlc3NpdmUAdHQAYmIAdGIAZHVtcF9zZXBhcmF0b3IAc2V0IGluZm9ybWF0aW9uIGR1bXAgZmllbGQgc2VwYXJhdG9yAGNvZGVjX3doaXRlbGlzdABMaXN0IG9mIGRlY29kZXJzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgdXNlZABwaXhlbF9mb3JtYXQAc2V0IHBpeGVsIGZvcm1hdAB2aWRlb19zaXplAHNldCB2aWRlbyBzaXplAG1heF9waXhlbHMATWF4aW11bSBudW1iZXIgb2YgcGl4ZWxzAGh3YWNjZWxfZmxhZ3MAaWdub3JlX2xldmVsAGlnbm9yZSBsZXZlbCBldmVuIGlmIHRoZSBjb2RlYyBsZXZlbCB1c2VkIGlzIHVua25vd24gb3IgaGlnaGVyIHRoYW4gdGhlIG1heGltdW0gc3VwcG9ydGVkIGxldmVsIHJlcG9ydGVkIGJ5IHRoZSBoYXJkd2FyZSBkcml2ZXIAYWxsb3dfaGlnaF9kZXB0aABhbGxvdyB0byBvdXRwdXQgWVVWIHBpeGVsIGZvcm1hdHMgd2l0aCBhIGRpZmZlcmVudCBjaHJvbWEgc2FtcGxpbmcgdGhhbiA0OjI6MCBhbmQvb3Igb3RoZXIgdGhhbiA4IGJpdHMgcGVyIGNvbXBvbmVudABhbGxvd19wcm9maWxlX21pc21hdGNoAGF0dGVtcHQgdG8gZGVjb2RlIGFueXdheSBpZiBIVyBhY2NlbGVyYXRlZCBkZWNvZGVyJ3Mgc3VwcG9ydGVkIHByb2ZpbGVzIGRvIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBzdHJlYW0AZXh0cmFfaHdfZnJhbWVzAE51bWJlciBvZiBleHRyYSBoYXJkd2FyZSBmcmFtZXMgdG8gYWxsb2NhdGUgZm9yIHRoZSB1c2VyAE5VTEwAQVZCU0ZDb250ZXh0AFRoaXMgZGVjb2RlciBkb2VzIG5vdCBzdXBwb3J0IHBhcmFtZXRlciBjaGFuZ2VzLCBidXQgUEFSQU1fQ0hBTkdFIHNpZGUgZGF0YSB3YXMgc2VudCB0byBpdC4KAEludmFsaWQgY2hhbm5lbCBjb3VudABJbnZhbGlkIHNhbXBsZSByYXRlAFBBUkFNX0NIQU5HRSBzaWRlIGRhdGEgdG9vIHNtYWxsLgoARXJyb3IgYXBwbHlpbmcgcGFyYW1ldGVyIGNoYW5nZXMuCgBFcnJvciBwcmUtcHJvY2Vzc2luZyBhIHBhY2tldCBiZWZvcmUgZGVjb2RpbmcKACFmcmFtZS0+YnVmWzBdAChmcmFtZS0+cHJpdmF0ZV9yZWYgJiYgZnJhbWUtPnByaXZhdGVfcmVmLT5zaXplID09IHNpemVvZihGcmFtZURlY29kZURhdGEpKSB8fCAhKGF2Y3R4LT5jb2RlYy0+Y2FwYWJpbGl0aWVzICYgKDEgPDwgMSkpAHNraXAgJWQgLyBkaXNjYXJkICVkIHNhbXBsZXMgZHVlIHRvIHNpZGUgZGF0YQoAc2tpcCB3aG9sZSBmcmFtZSwgc2tpcCBsZWZ0OiAlZAoAQ291bGQgbm90IHVwZGF0ZSB0aW1lc3RhbXBzIGZvciBza2lwcGVkIHNhbXBsZXMuCgBza2lwICVkLyVkIHNhbXBsZXMKAENvdWxkIG5vdCB1cGRhdGUgdGltZXN0YW1wcyBmb3IgZGlzY2FyZGVkIHNhbXBsZXMuCgBkaXNjYXJkICVkLyVkIHNhbXBsZXMKAE11bHRpcGxlIGZyYW1lcyBpbiBhIHBhY2tldC4KAFRvbyBtYW55IGVycm9ycyB3aGVuIGRyYWluaW5nLCB0aGlzIGlzIGEgYnVnLiBTdG9wIGRyYWluaW5nIGFuZCBmb3JjZSBFT0YuCgBmcmFtZS0+YnVmWzBdAGF2X3BhY2tldF9yZWYoKSBmYWlsZWQgaW4gc3VibWl0X3BhY2tldCgpCgBudWxsACwAQSBub24tZXhpc3RpbmcgYml0c3RyZWFtIGZpbHRlciAlcyByZXF1ZXN0ZWQgYnkgYSBkZWNvZGVyLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0LgoASW52YWxpZCBjcm9wcGluZyBpbmZvcm1hdGlvbiBzZXQgYnkgYSBkZWNvZGVyOiAlenUvJXp1LyV6dS8lenUgKGZyYW1lIHNpemUgJWR4JWQpLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0CgBpbmRleCA+IC0weDIwMDAwMDAwACFwLT5od2FjY2VsX3NlcmlhbGl6aW5nAEEgZnJhbWUgdGhyZWFkZWQgZGVjb2RlciBkaWQgbm90IGZyZWUgdGhlIGZyYW1lIG9uIGZhaWx1cmUuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQuCgBBcHBsaWNhdGlvbiBoYXMgcmVxdWVzdGVkICVkIHRocmVhZHMuIFVzaW5nIGEgdGhyZWFkIGNvdW50IGdyZWF0ZXIgdGhhbiAlZCBpcyBub3QgcmVjb21tZW5kZWQuCgBObyBjb2RlYyBwcm92aWRlZCB0byBhdmNvZGVjX29wZW4yKCkKAFRoaXMgQVZDb2RlY0NvbnRleHQgd2FzIGFsbG9jYXRlZCBmb3IgJXMsIGJ1dCAlcyBwYXNzZWQgdG8gYXZjb2RlY19vcGVuMigpCgBDb2RlYyAoJXMpIG5vdCBvbiB3aGl0ZWxpc3QgJyVzJwoASWdub3JpbmcgaW52YWxpZCB3aWR0aC9oZWlnaHQgdmFsdWVzCgBpZ25vcmluZyBpbnZhbGlkIFNBUjogJXUvJXUKAENvZGVjIHR5cGUgb3IgaWQgbWlzbWF0Y2hlcwoAZW5jb2RlcgBkZWNvZGVyAFRoZSAlcyAnJXMnIGlzIGV4cGVyaW1lbnRhbCBidXQgZXhwZXJpbWVudGFsIGNvZGVjcyBhcmUgbm90IGVuYWJsZWQsIGFkZCAnLXN0cmljdCAlZCcgaWYgeW91IHdhbnQgdG8gdXNlIGl0LgoAQWx0ZXJuYXRpdmVseSB1c2UgdGhlIG5vbiBleHBlcmltZW50YWwgJXMgJyVzJy4KAFRoZSBtYXhpbXVtIHZhbHVlIGZvciBsb3dyZXMgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvZGVyIGlzICVkCgBUaGUgZW5jb2RlciB0aW1lYmFzZSBpcyBub3Qgc2V0LgoAJWQAU3BlY2lmaWVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgaW52YWxpZCBvciBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgcGl4ZWwgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHNhbXBsZSByYXRlICVkIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0IG5vdCBzcGVjaWZpZWQKAFNwZWNpZmllZCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBudW1iZXIgb2Ygc3BlY2lmaWVkIGNoYW5uZWxzICVkCgBTcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkIGlzIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBiaXQgZGVwdGggJWQgbm90IHBvc3NpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBwaXhlbCBmb3JtYXRzIGRlcHRoICVkCgBkaW1lbnNpb25zIG5vdCBzZXQKAEJpdHJhdGUgJWxsZCBpcyBleHRyZW1lbHkgbG93LCBtYXliZSB5b3UgbWVhbiAlbGxkawoAdGlja3NfcGVyX2ZyYW1lICVkIHRvbyBsYXJnZSBmb3IgdGhlIHRpbWViYXNlICVkLyVkLgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5waXhfZm10IGFuZCBBVkhXRnJhbWVzQ29udGV4dC5mb3JtYXQKAE1pc21hdGNoaW5nIEFWQ29kZWNDb250ZXh0LnN3X3BpeF9mbXQgKCVzKSBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuc3dfZm9ybWF0ICglcykKAGdyYXkgZGVjb2RpbmcgcmVxdWVzdGVkIGJ1dCBub3QgZW5hYmxlZCBhdCBjb25maWd1cmF0aW9uIHRpbWUKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkOiBpZ25vcmluZyBzcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQKAENoYXJhY3RlciBlbmNvZGluZyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIHN1YnRpdGxlcyBjb2RlY3MKAENvZGVjICclcycgaXMgYml0bWFwLWJhc2VkLCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIHdpbGwgYmUgaWdub3JlZAoAVVRGLTgAVW5hYmxlIHRvIG9wZW4gaWNvbnYgY29udGV4dCB3aXRoIGlucHV0IGNoYXJhY3RlciBlbmNvZGluZyAiJXMiCgAqKGNvbnN0IEFWQ2xhc3MgKiopYXZjdHgtPnByaXZfZGF0YSA9PSBjb2RlYy0+cHJpdl9jbGFzcwB2b2lkAGJvb2wAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AGludAB1bnNpZ25lZCBpbnQAbG9uZwB1bnNpZ25lZCBsb25nAGZsb2F0AGRvdWJsZQBzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgB1dGY4AGNoYXIAAMh3Y2hhcnQAAMZ1Y3MyAHVjczJiZQAAxHVjczJsZQAAxXV0ZjE2AHV0ZjE2YmUAAMJ1dGYxNmxlAADBdWNzNAB1Y3M0YmUAdXRmMzIAdXRmMzJiZQAAwHVjczRsZQB1dGYzMmxlAADDYXNjaWkAdXNhc2NpaQBpc282NDYAaXNvNjQ2dXMAAMdldWNqcAAA0HNoaWZ0amlzAHNqaXMAANFnYjE4MDMwAADYZ2JrAADZZ2IyMzEyAADaYmlnNQBiaWdmaXZlAGNwOTUwAGJpZzVoa3NjcwAA4GV1Y2tyAGtzYzU2MDEAa3N4MTAwMQBjcDk0OQAA6Glzbzg4NTkxAGxhdGluMQAAgGlzbzg4NTkyAAAgANgQyxoApBEIAAAcUsgioABAiigA3DALGwCoIQgsACBiCCOh1FLKKHsAAAANAJSBAwA+AIAEAEoAAAAQQrQRBwAA3AEAAH9UAsAlAACQCAB8AABADQCYkQMAPwCQBABLAABAEEO4IQcAAOABAACAWAIAJgAAoIgsaXNvODg1OTMAACAAWBELAAAEQAUAAHhRiBNgABCAKABcAQAAAABQBQAAfGHIE2EAEMAoAAAAQAAA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qPCCCzFkwEEEEkxgpSmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ/LZZ5xw+smmnHjeaeeYZKaJpplgqpmnnnW+SWige655qKCD/gkonXO26aahhZYppqKJLsooouVEigw919wTKT7aNNMNOpHqk06kkUbaJZdefvnAlgdkmYCWkSIAqQBjcDg1MAAAABfAQIIHH3QAggglmDBCCiicQEEFGDiwwAosqPCCCzFkwAEEEjTAgCmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ0YaaaQF+MmmnHhGMMGYZKaJpplgqhlppHW+SWige655aKSRRhpppJF+EWmkkZYppqKJRhopopFGGmmkkUYaaaSRRhpppJFGakCkkUZKZKSRDvCAAgcQkECkkSIAqQAAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";var tempDoublePtr=STATICTOP;STATICTOP+=16;assert(tempDoublePtr%8==0);function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___gxx_personality_v0(){}function ___lock(){}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};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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else Module.printErr("failed to set errno from JS");return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!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 node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,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(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),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(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){return(function(){return Function})()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map((function(t){return t.name})).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function craftEmvalAllocator(argCount){var argsList="";for(var i=0;i> 2) + "+i+'], "parameter '+i+'");\n'+"var arg"+i+" = argType"+i+".readValueFromPointer(args);\n"+"args += argType"+i+"['argPackAdvance'];\n"}functionBody+="var obj = new constructor("+argsList+");\n"+"return __emval_register(obj);\n"+"}\n";return(new Function("requireRegisteredType","HEAP32","__emval_register",functionBody))(requireRegisteredType,HEAP32,__emval_register)}var emval_newers={};function __emval_new(handle,argCount,argTypes,args){handle=requireHandle(handle);var newer=emval_newers[argCount];if(!newer){newer=craftEmvalAllocator(argCount);emval_newers[argCount]=newer}return newer(handle,argTypes,args)}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){Module["abort"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break};case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg("i"+argSize*8);var origArg=currArg;var argText;if(argSize==8){currArg=makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],null);else argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],true);else argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(argSize==8&&typeof i64Math==="object"){if(origArg[1]){argText=(origArg[1]>>>0).toString(16);var lower=(origArg[0]>>>0).toString(16);while(lower.length<8)lower="0"+lower;argText+=lower}else{argText=(origArg[0]>>>0).toString(16)}}else if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.lengthexponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break};case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break};case"%":{ret.push(curr);break};default:{for(var i=startTextIndex;i>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(var i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}var lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=" at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?" = "+jsSymbolName:" at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){Module.printErr(str)}else{Module.print(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=4;var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _init(){var fc=window["FlvClient"]=Module["FlvClient"];window.AudioContext=window.AudioContext||window.webkitAudioContext;var context=new window.AudioContext;if(/(iPhone|iPad|iPod|iOS|Safari)/i.test(navigator.userAgent)){function _unlock(){context.resume();var source=context.createBufferSource();source.buffer=context.createBuffer(1,1,22050);source.connect(context.destination);if(source.noteOn)source.noteOn(0);else source.start(0)}document.addEventListener("mousedown",_unlock,true);document.addEventListener("touchend",_unlock,true)}fc.prototype.checkVideoBuffer=(function(t){var _this=this;return setTimeout((function(){_this.decodeVideoBuffer()}),t)});fc.prototype.onNetStatus=(function(info){});fc.prototype.initAudio=(function(frameCount,samplerate,channels){var isPlaying=false;var audioBuffers=[];var allFrameCount=frameCount*channels;if(!context)return false;var resampled=samplerate<22050;var audioBuffer=resampled?context.createBuffer(channels,frameCount<<1,samplerate<<1):context.createBuffer(channels,frameCount,samplerate);var outputPtr=this._initAudio(frameCount,channels);var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);var playNextBuffer=(function(){isPlaying=false;if(audioBuffers.length){playAudio(audioBuffers.shift())}if(audioBuffers.length>1)audioBuffers.shift()});var copyAudioOutputArray=resampled?(function(target){for(var i=0;i1?(function(fromBuffer){for(var channel=0;channel>2)),HEAPU8.subarray(v,v+(w*h>>2))];webGLCanvas.drawNextOutputPicture(w,h,croppingParams,outputArray)})}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));webGLCanvas.initRGB(w,h);this.draw=(function(){webGLCanvas.drawNextOutputPicture(w,h,croppingParams,outputArray)})}}).bind(this);this.getWebGL=(function(){return webGLCanvas});var _this=this;var ws=this.$getWebSocket(url);ws.onmessage=(function(data){_this.$onWsMessage(data)});ws.onopen=(function(){Module.print("websocket open")});ws.binaryType="arraybuffer";if(this.onWsError)ws.onerror=this.onWsError;ws.onclose=(function(){_this.$close(true);_this.ws=null;if(this.onWsClose)this.onWsClose()});this.ws=ws;this.close=(function(){this.$close(false);ws.onclose=null;ws.close();this.ws=null});this.$play(this,webGLCanvas.isWebGL())})}var _llvm_ceil_f64=Math_ceil;var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;function _llvm_trap(){abort("trap!")}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_create(){return 11}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function _pthread_join(){}var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_mutex_destroy(){}function _pthread_mutex_init(){}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _tan=Math_tan;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;assert(DYNAMIC_BASE0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i>31,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;p=d[b+(f+-1)>>0]|0;r=(r+2+(q<<1)+p|0)>>>2;l=f<<1;o=d[b+(l+-1)>>0]|0;q=(q+2+(p<<1)+o|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;p=(p+2+(o<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;o=(o+2+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;s=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+s|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(s<<1)+i|0)>>>2;i=(s+2+(i*3|0)|0)>>>2;a[b>>0]=(r+1+q|0)>>>1;a[b+1>>0]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&255;a[b+2>>0]=r;a[b+f>>0]=r;q=(q+2+(p<<1)+o|0)>>>2&255;a[b+3>>0]=q;a[b+(f+1)>>0]=q;q=(p+1+o|0)>>>1&255;a[b+4>>0]=q;a[b+(f+2)>>0]=q;a[b+l>>0]=q;p=(p+2+(o<<1)+n|0)>>>2&255;a[b+5>>0]=p;a[b+(f+3)>>0]=p;a[b+(l|1)>>0]=p;p=(o+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+2+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(i+1+k|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function Tt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;l=d[a+-1>>0]|0;k=d[a+(f+-1)>>0]|0;j=d[a+((f<<1)+-1)>>0]|0;i=d[a+((f*3|0)+-1)>>0]|0;h=d[a+((f<<2)+-1)>>0]|0;g=d[a+((f*5|0)+-1)>>0]|0;b=d[a+((f*6|0)+-1)>>0]|0;e=d[a+((f*7|0)+-1)>>0]|0;e=N(((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(b<<1)+e|0)>>>2)+((b+2+(e*3|0)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Ut(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[a+(0-f)>>0]|0;m=d[a+(1-f)>>0]|0;l=d[a+(2-f)>>0]|0;k=d[a+(3-f)>>0]|0;j=d[a+(4-f)>>0]|0;i=d[a+(5-f)>>0]|0;h=d[a+(6-f)>>0]|0;g=d[a+(7-f)>>0]|0;e=N((((d[a+((((b|0)!=0)<<31>>31)-f)>>0]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(d[a+((e|0?8:7)-f)>>0]|0)+(g<<1)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Vt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function Wt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Yt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function Zt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function _t(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(N((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(N((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(N(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function $t(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(N((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(N((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if((e|0)>=9)break;o=p+c|0;n=q+m|0;f=(N((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(N(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function au(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;j=d[a+((N(e,b)|0)+-1)>>0]|0;j=f+j+(d[a+(e-b)>>0]|0)|0;k=e+4|0;e=e+1|0;f=j;g=g+(d[a+(k-b)>>0]|0)|0;h=h+(d[a+((N(k,b)|0)+-1)>>0]|0)|0}i=N(f+4>>3,16843009)|0;j=N(g+2>>2,16843009)|0;k=h+2>>2;f=h+4+g>>3;e=0;while(1){if((e|0)==4)break;h=a+(N(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=N(k,16843009)|0;f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(N(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function bu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=f+(d[a+((N(e,b)|0)+-1)>>0]|0)|0;h=g+(d[a+((N(e+4|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=i;g=h}h=N(f+2>>2,16843009)|0;f=g+2>>2;e=0;while(1){if((e|0)==4)break;i=a+(N(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(N(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function cu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function du(a,b){a=a|0;b=b|0;cu(a,b);yt(a,0,b);return}function eu(a,b){a=a|0;b=b|0;au(a,b);It(a,0,b);return}function fu(a,b){a=a|0;b=b|0;bu(a,b);a=a+(b<<2)|0;Jt(a,0,b);Jt(a+4|0,0,b);return}function gu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;f=0;i=0;g=0;h=0;j=0;while(1){if((e|0)==4)break;k=d[a+((N(e,b)|0)+-1)>>0]|0;k=f+k+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=g+(d[a+((N(l,b)|0)+-1)>>0]|0)|0;n=h+(d[a+((N(e+8|0,b)|0)+-1)>>0]|0)|0;o=j+(d[a+((N(e+12|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=k;i=i+(d[a+(l-b)>>0]|0)|0;g=m;h=n;j=o}f=N(f+4>>3,16843009)|0;k=N(i+2>>2,16843009)|0;l=g+2>>2;g=g+4+i>>3;m=h+2>>2;h=h+4+i>>3;o=j+2>>2;n=j+4+i>>3;e=0;while(1){if((e|0)==4)break;j=a+(N(e,b)|0)|0;c[j>>2]=f;c[j+4>>2]=k;e=e+1|0}k=N(l,16843009)|0;i=N(g,16843009)|0;j=N(m,16843009)|0;g=N(h,16843009)|0;h=N(o,16843009)|0;f=N(n,16843009)|0;e=4;while(1){if((e|0)==8){e=8;break}o=a+(N(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}while(1){if((e|0)==12){e=12;break}o=a+(N(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}while(1){if((e|0)==16)break;o=a+(N(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function hu(a,b){a=a|0;b=b|0;bu(a,b);bu(a+(b<<3)|0,b);return}function iu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function ju(a,b){a=a|0;b=b|0;iu(a,b);yt(a,0,b);return}function ku(a,b){a=a|0;b=b|0;gu(a,b);It(a,0,b);return}function lu(a,b){a=a|0;b=b|0;hu(a,b);a=a+(b<<2)|0;Jt(a,0,b);Jt(a+4|0,0,b);return}function mu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function nu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function ou(a,b){a=a|0;b=b|0;hu(a,b);Jt(a,0,b);Jt(a+4|0,0,b);return}function pu(a,b){a=a|0;b=b|0;bu(a,b);Jt(a,0,b);Jt(a+4|0,0,b);return}function qu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function ru(a,b){a=a|0;b=b|0;qu(a,b);qu(a+(b<<3)|0,b);return}function su(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16){f=0;break}e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+16>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(N(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function uu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function vu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function wu(a,b){a=a|0;b=b|0;Vu(a,b,0,0);return}function xu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function yu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function zu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Au(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function Bu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Cu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Du(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Eu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Fu(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;v=d[c+(0-i)>>0]|0;u=d[c+(1-i)>>0]|0;j=d[c+(2-i)>>0]|0;r=d[c+(3-i)>>0]|0;q=d[c+(4-i)>>0]|0;p=d[c+(5-i)>>0]|0;o=d[c+(6-i)>>0]|0;n=d[c+(7-i)>>0]|0;k=(o+2+(d[c+((h|0?8:7)-i)>>0]|0)+(n<<1)|0)>>>2;a[s>>0]=((d[c+((((g|0)!=0)<<31>>31)-i)>>0]|0)+2+(v<<1)+u|0)>>>2;a[s+1>>0]=(v+2+(u<<1)+j|0)>>>2;a[s+2>>0]=(u+2+(j<<1)+r|0)>>>2;a[s+3>>0]=(j+2+(r<<1)+q|0)>>>2;a[s+4>>0]=(r+2+(q<<1)+p|0)>>>2;a[s+5>>0]=(q+2+(p<<1)+o|0)>>>2;a[s+6>>0]=(p+2+(o<<1)+n|0)>>>2;a[s+7>>0]=k;k=i<<1;n=i*3|0;o=i<<2;p=i*5|0;q=i*6|0;r=i*7|0;j=0;g=c;h=f;while(1){if((j|0)==8)break;v=(e[h>>1]|0)+(d[s+j>>0]|0)|0;a[g>>0]=v;v=v+(e[h+16>>1]|0)|0;a[g+i>>0]=v;v=v+(e[h+32>>1]|0)|0;a[g+k>>0]=v;v=v+(e[h+48>>1]|0)|0;a[g+n>>0]=v;v=v+(e[h+64>>1]|0)|0;a[g+o>>0]=v;v=v+(e[h+80>>1]|0)|0;a[g+p>>0]=v;v=v+(e[h+96>>1]|0)|0;a[g+q>>0]=v;a[g+r>>0]=v+(e[h+112>>1]|0);j=j+1|0;g=g+1|0;h=h+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));l=t;return}function Gu(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;t=d[c+((N(((g|0)!=0)<<31>>31,i)|0)+-1)>>0]|0;s=d[c+-1>>0]|0;r=d[c+(i+-1)>>0]|0;q=d[c+((i<<1)+-1)>>0]|0;p=d[c+((i*3|0)+-1)>>0]|0;o=d[c+((i<<2)+-1)>>0]|0;g=d[c+((i*5|0)+-1)>>0]|0;h=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(t+2+(s<<1)+r|0)>>>2;a[k+1>>0]=(s+2+(r<<1)+q|0)>>>2;a[k+2>>0]=(r+2+(q<<1)+p|0)>>>2;a[k+3>>0]=(q+2+(p<<1)+o|0)>>>2;a[k+4>>0]=(p+2+(o<<1)+g|0)>>>2;a[k+5>>0]=(o+2+(g<<1)+h|0)>>>2;a[k+6>>0]=(g+2+(h<<1)+j|0)>>>2;a[k+7>>0]=(h+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;t=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=t;t=t+(e[g+2>>1]|0)|0;a[h+1>>0]=t;t=t+(e[g+4>>1]|0)|0;a[h+2>>0]=t;t=t+(e[g+6>>1]|0)|0;a[h+3>>0]=t;t=t+(e[g+8>>1]|0)|0;a[h+4>>0]=t;t=t+(e[g+10>>1]|0)|0;a[h+5>>0]=t;t=t+(e[g+12>>1]|0)|0;a[h+6>>0]=t;a[h+7>>0]=t+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));l=n;return}function Hu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Bu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Iu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Bu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Bu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ju(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Cu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ku(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Cu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Cu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Lu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Bu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Mu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;mt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Nu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Zr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ou(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Kq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Pu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;vp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Cu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ru(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;nt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Su(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;_r(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Lq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Uu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;wp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Vu(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(N((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(N((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(N(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if((j|0)>0){g=i;h=-16}else break;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function Wu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Xu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Yu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Zu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:0-q>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function _u(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;o=n<<1;a[b>>0]=(f+4+h+o+(p+g<<1)|0)>>>3;q=(n+1+m|0)>>>1&255;f=e<<1;a[b+f>>0]=q;a[b+1>>0]=q;q=(m+1+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(g+4+(h<<1)+i+p+o+m|0)>>>3;h=(n+2+(m<<1)+l|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=(m+2+(l<<1)+k|0)>>>2&255;a[b+(i+1)>>0]=h;a[b+(e+2)>>0]=h;h=(l+2+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=h;a[b+(e+3)>>0]=h;a[b+(i+3)>>0]=(k+2+(j<<1)+c|0)>>>2;return}function $u(a,b,c){a=a|0;b=b|0;c=c|0;$I(a,b,c);return}function av(a,b,c){a=a|0;b=b|0;c=c|0;_I(a,b,c);return}function bv(a,b,c){a=a|0;b=b|0;c=c|0;ZI(a,b,c);return}function cv(a,b,c){a=a|0;b=b|0;c=c|0;YI(a,b,c);return}function dv(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;tH(e,b,32,c);WI(a,b,e,c,c);l=d;return}function fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pH(e,b,32,c);VI(a,b,e,c,c);l=d;return}function gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;lH(e,b,32,c);UI(a,b,e,c,c);l=d;return}function hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;hH(e,b,16,c);TI(a,b,e,c,c);l=d;return}function iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;dH(e,b,32,c);SI(a,b,e,c,c);l=d;return}function jv(a,b,c){a=a|0;b=b|0;c=c|0;tH(a,b,c,c);return}function kv(a,b,c){a=a|0;b=b|0;c=c|0;pH(a,b,c,c);return}function lv(a,b,c){a=a|0;b=b|0;c=c|0;lH(a,b,c,c);return}function mv(a,b,c){a=a|0;b=b|0;c=c|0;hH(a,b,c,c);return}function nv(a,b,c){a=a|0;b=b|0;c=c|0;dH(a,b,c,c);return}function ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;tH(e,b,32,c);WI(a,b+2|0,e,c,c);l=d;return}function pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pH(e,b,32,c);VI(a,b+2|0,e,c,c);l=d;return}function qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;lH(e,b,32,c);UI(a,b+2|0,e,c,c);l=d;return}function rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;hH(e,b,16,c);TI(a,b+1|0,e,c,c);l=d;return}function sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;dH(e,b,32,c);SI(a,b+2|0,e,c,c);l=d;return}function tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;uH(g,b+(0-(c<<1))|0,c);vH(e,f,32);WI(a,f,e,c,32);l=d;return}function uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;qH(g,b+(0-(c<<1))|0,c);rH(e,f,32);VI(a,f,e,c,32);l=d;return}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;mH(g,b+(0-(c<<1))|0,c);nH(e,f,32);UI(a,f,e,c,32);l=d;return}function wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;iH(g,b+(0-(c<<1))|0,c);jH(e,f,16);TI(a,f,e,c,16);l=d;return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;eH(g,b+(0-(c<<1))|0,c);fH(e,f,32);SI(a,f,e,c,32);l=d;return}function yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b,32,c);uH(g,b+(0-(c<<1))|0,c);vH(e,g+64|0,32);WI(a,f,e,c,32);l=d;return}function zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b,32,c);qH(g,b+(0-(c<<1))|0,c);rH(e,g+64|0,32);VI(a,f,e,c,32);l=d;return}function Av(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b,32,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b,16,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+32|0,16);TI(a,f,e,c,16);l=d;return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b,32,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;tH(f,b,32,c);BH(e,d,b,32,c);WI(a,f,e,c,32);l=d;return}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;pH(f,b,32,c);AH(e,d,b,32,c);VI(a,f,e,c,32);l=d;return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;lH(f,b,32,c);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;hH(f,b,16,c);yH(e,d,b,16,c);TI(a,f,e,c,16);l=d;return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;dH(f,b,32,c);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function Iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b,32,c);uH(g,b+(0-(c<<1))+2|0,c);vH(e,g+64|0,32);WI(a,f,e,c,32);l=d;return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b,32,c);qH(g,b+(0-(c<<1))+2|0,c);rH(e,g+64|0,32);VI(a,f,e,c,32);l=d;return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b,32,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b,16,c);iH(g,b+(0-(c<<1))+1|0,c);jH(e,g+32|0,16);TI(a,f,e,c,16);l=d;return}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b,32,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;uH(e,b+(0-(c<<1))|0,c);vH(a,e+64|0,c);l=d;return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;qH(e,b+(0-(c<<1))|0,c);rH(a,e+64|0,c);l=d;return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;mH(e,b+(0-(c<<1))|0,c);nH(a,e+64|0,c);l=d;return}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;iH(e,b+(0-(c<<1))|0,c);jH(a,e+32|0,c);l=d;return}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;eH(e,b+(0-(c<<1))|0,c);fH(a,e+64|0,c);l=d;return}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;uH(g,b+(0-(c<<1))|0,c);vH(f,g+64|0,32);BH(e,d,b,32,c);WI(a,f,e,c,32);l=d;return}function Tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;qH(g,b+(0-(c<<1))|0,c);rH(f,g+64|0,32);AH(e,d,b,32,c);VI(a,f,e,c,32);l=d;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;mH(g,b+(0-(c<<1))|0,c);nH(f,g+64|0,32);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;iH(g,b+(0-(c<<1))|0,c);jH(f,g+32|0,16);yH(e,d,b,16,c);TI(a,f,e,c,16);l=d;return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;eH(g,b+(0-(c<<1))|0,c);fH(f,g+64|0,32);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);BH(a,d,b,c,c);l=d;return}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);AH(a,d,b,c,c);l=d;return}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);zH(a,d,b,c,c);l=d;return}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);yH(a,d,b,c,c);l=d;return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);xH(a,d,b,c,c);l=d;return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;uH(g,b+(0-(c<<1))+2|0,c);vH(f,g+64|0,32);BH(e,d,b,32,c);WI(a,f,e,c,32);l=d;return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;qH(g,b+(0-(c<<1))+2|0,c);rH(f,g+64|0,32);AH(e,d,b,32,c);VI(a,f,e,c,32);l=d;return}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;mH(g,b+(0-(c<<1))+2|0,c);nH(f,g+64|0,32);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;iH(g,b+(0-(c<<1))+1|0,c);jH(f,g+32|0,16);yH(e,d,b,16,c);TI(a,f,e,c,16);l=d;return}function ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;eH(g,b+(0-(c<<1))+2|0,c);fH(f,g+64|0,32);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;uH(f,b+(0-(c<<1))|0,c);vH(e,f+64|0,32);WI(a,f+96|0,e,c,32);l=d;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;qH(f,b+(0-(c<<1))|0,c);rH(e,f+64|0,32);VI(a,f+96|0,e,c,32);l=d;return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;mH(f,b+(0-(c<<1))|0,c);nH(e,f+64|0,32);UI(a,f+96|0,e,c,32);l=d;return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;iH(f,b+(0-(c<<1))|0,c);jH(e,f+32|0,16);TI(a,f+48|0,e,c,16);l=d;return}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;eH(f,b+(0-(c<<1))|0,c);fH(e,f+64|0,32);SI(a,f+96|0,e,c,32);l=d;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b+c|0,32,c);uH(g,b+(0-(c<<1))|0,c);vH(e,g+64|0,32);WI(a,f,e,c,32);l=d;return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b+c|0,32,c);qH(g,b+(0-(c<<1))|0,c);rH(e,g+64|0,32);VI(a,f,e,c,32);l=d;return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b+c|0,32,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b+c|0,16,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+32|0,16);TI(a,f,e,c,16);l=d;return}function ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b+c|0,32,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;tH(f,b+c|0,32,c);BH(e,d,b,32,c);WI(a,f,e,c,32);l=d;return}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;pH(f,b+c|0,32,c);AH(e,d,b,32,c);VI(a,f,e,c,32);l=d;return}function rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;lH(f,b+c|0,32,c);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;hH(f,b+c|0,16,c);yH(e,d,b,16,c);TI(a,f,e,c,16);l=d;return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;dH(f,b+c|0,32,c);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b+c|0,32,c);uH(g,b+(0-(c<<1))+2|0,c);vH(e,g+64|0,32);WI(a,f,e,c,32);l=d;return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b+c|0,32,c);qH(g,b+(0-(c<<1))+2|0,c);rH(e,g+64|0,32);VI(a,f,e,c,32);l=d;return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b+c|0,32,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b+c|0,16,c);iH(g,b+(0-(c<<1))+1|0,c);jH(e,g+32|0,16);TI(a,f,e,c,16);l=d;return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b+c|0,32,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function zw(a,b,c){a=a|0;b=b|0;c=c|0;RI(a,b,c,8);return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;QI(a,b,c,8);return}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;PI(a,b,c,8);return}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;OI(a,b,c,8);return}function Dw(a,b,c){a=a|0;b=b|0;c=c|0;NI(a,b,c,8);return}function Ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;CG(e,b,16,c);MI(a,b,e,c,c,16,8);l=d;return}function Fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yG(e,b,16,c);LI(a,b,e,c,c,16,8);l=d;return}function Gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;uG(e,b,16,c);KI(a,b,e,c,c,16,8);l=d;return}function Hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;qG(e,b,8,c);JI(a,b,e,c,c,8,8);l=d;return}function Iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;mG(e,b,16,c);II(a,b,e,c,c,16,8);l=d;return}function Jw(a,b,c){a=a|0;b=b|0;c=c|0;CG(a,b,c,c);return}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;yG(a,b,c,c);return}function Lw(a,b,c){a=a|0;b=b|0;c=c|0;uG(a,b,c,c);return}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;qG(a,b,c,c);return}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;mG(a,b,c,c);return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;CG(e,b,16,c);MI(a,b+2|0,e,c,c,16,8);l=d;return}function Pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yG(e,b,16,c);LI(a,b+2|0,e,c,c,16,8);l=d;return}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;uG(e,b,16,c);KI(a,b+2|0,e,c,c,16,8);l=d;return}function Rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;qG(e,b,8,c);JI(a,b+1|0,e,c,c,8,8);l=d;return}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;mG(e,b,16,c);II(a,b+2|0,e,c,c,16,8);l=d;return}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;DG(g,b+(0-(c<<1))|0,c);EG(e,f,16,16);MI(a,f,e,c,16,16,8);l=d;return}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;zG(g,b+(0-(c<<1))|0,c);AG(e,f,16,16);LI(a,f,e,c,16,16,8);l=d;return}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;vG(g,b+(0-(c<<1))|0,c);wG(e,f,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;rG(g,b+(0-(c<<1))|0,c);sG(e,f,8,8);JI(a,f,e,c,8,8,8);l=d;return}function Xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;nG(g,b+(0-(c<<1))|0,c);oG(e,f,16,16);II(a,f,e,c,16,16,8);l=d;return}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b,16,c);DG(g,b+(0-(c<<1))|0,c);EG(e,g+32|0,16,16);MI(a,f,e,c,16,16,8);l=d;return}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b,16,c);zG(g,b+(0-(c<<1))|0,c);AG(e,g+32|0,16,16);LI(a,f,e,c,16,16,8);l=d;return}function _w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b,16,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function $w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b,8,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+16|0,8,8);JI(a,f,e,c,8,8,8);l=d;return}function ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b,16,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;CG(f,b,16,c);KG(e,d,b,16,16,c);MI(a,f,e,c,16,16,8);l=d;return}function cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;yG(f,b,16,c);JG(e,d,b,16,16,c);LI(a,f,e,c,16,16,8);l=d;return}function dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;uG(f,b,16,c);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;qG(f,b,8,c);HG(e,d,b,8,8,c);JI(a,f,e,c,8,8,8);l=d;return}function fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;mG(f,b,16,c);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b,16,c);DG(g,b+(0-(c<<1))+2|0,c);EG(e,g+32|0,16,16);MI(a,f,e,c,16,16,8);l=d;return}function hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b,16,c);zG(g,b+(0-(c<<1))+2|0,c);AG(e,g+32|0,16,16);LI(a,f,e,c,16,16,8);l=d;return}function ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b,16,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b,8,c);rG(g,b+(0-(c<<1))+1|0,c);sG(e,g+16|0,8,8);JI(a,f,e,c,8,8,8);l=d;return}function kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b,16,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;DG(e,b+(0-(c<<1))|0,c);EG(a,e+32|0,c,16);l=d;return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;zG(e,b+(0-(c<<1))|0,c);AG(a,e+32|0,c,16);l=d;return}function nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;vG(e,b+(0-(c<<1))|0,c);wG(a,e+32|0,c,16);l=d;return}function ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;rG(e,b+(0-(c<<1))|0,c);sG(a,e+16|0,c,8);l=d;return}function px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;nG(e,b+(0-(c<<1))|0,c);oG(a,e+32|0,c,16);l=d;return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;DG(g,b+(0-(c<<1))|0,c);EG(f,g+32|0,16,16);KG(e,d,b,16,16,c);MI(a,f,e,c,16,16,8);l=d;return}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;zG(g,b+(0-(c<<1))|0,c);AG(f,g+32|0,16,16);JG(e,d,b,16,16,c);LI(a,f,e,c,16,16,8);l=d;return}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;vG(g,b+(0-(c<<1))|0,c);wG(f,g+32|0,16,16);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;rG(g,b+(0-(c<<1))|0,c);sG(f,g+16|0,8,8);HG(e,d,b,8,8,c);JI(a,f,e,c,8,8,8);l=d;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;nG(g,b+(0-(c<<1))|0,c);oG(f,g+32|0,16,16);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);KG(a,d,b,c,16,c);l=d;return}function wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);JG(a,d,b,c,16,c);l=d;return}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);IG(a,d,b,c,16,c);l=d;return}function yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);HG(a,d,b,c,8,c);l=d;return}function zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);GG(a,d,b,c,16,c);l=d;return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;DG(g,b+(0-(c<<1))+2|0,c);EG(f,g+32|0,16,16);KG(e,d,b,16,16,c);MI(a,f,e,c,16,16,8);l=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;zG(g,b+(0-(c<<1))+2|0,c);AG(f,g+32|0,16,16);JG(e,d,b,16,16,c);LI(a,f,e,c,16,16,8);l=d;return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;vG(g,b+(0-(c<<1))+2|0,c);wG(f,g+32|0,16,16);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;rG(g,b+(0-(c<<1))+1|0,c);sG(f,g+16|0,8,8);HG(e,d,b,8,8,c);JI(a,f,e,c,8,8,8);l=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;nG(g,b+(0-(c<<1))+2|0,c);oG(f,g+32|0,16,16);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;DG(f,b+(0-(c<<1))|0,c);EG(e,f+32|0,16,16);MI(a,f+48|0,e,c,16,16,8);l=d;return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;zG(f,b+(0-(c<<1))|0,c);AG(e,f+32|0,16,16);LI(a,f+48|0,e,c,16,16,8);l=d;return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;vG(f,b+(0-(c<<1))|0,c);wG(e,f+32|0,16,16);KI(a,f+48|0,e,c,16,16,8);l=d;return}function Ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;rG(f,b+(0-(c<<1))|0,c);sG(e,f+16|0,8,8);JI(a,f+24|0,e,c,8,8,8);l=d;return}function Jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;nG(f,b+(0-(c<<1))|0,c);oG(e,f+32|0,16,16);II(a,f+48|0,e,c,16,16,8);l=d;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b+c|0,16,c);DG(g,b+(0-(c<<1))|0,c);EG(e,g+32|0,16,16);MI(a,f,e,c,16,16,8);l=d;return}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b+c|0,16,c);zG(g,b+(0-(c<<1))|0,c);AG(e,g+32|0,16,16);LI(a,f,e,c,16,16,8);l=d;return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b+c|0,16,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b+c|0,8,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+16|0,8,8);JI(a,f,e,c,8,8,8);l=d;return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b+c|0,16,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;CG(f,b+c|0,16,c);KG(e,d,b,16,16,c);MI(a,f,e,c,16,16,8);l=d;return}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;yG(f,b+c|0,16,c);JG(e,d,b,16,16,c);LI(a,f,e,c,16,16,8);l=d;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;uG(f,b+c|0,16,c);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;qG(f,b+c|0,8,c);HG(e,d,b,8,8,c);JI(a,f,e,c,8,8,8);l=d;return}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;mG(f,b+c|0,16,c);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function Ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b+c|0,16,c);DG(g,b+(0-(c<<1))+2|0,c);EG(e,g+32|0,16,16);MI(a,f,e,c,16,16,8);l=d;return}function Vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b+c|0,16,c);zG(g,b+(0-(c<<1))+2|0,c);AG(e,g+32|0,16,16);LI(a,f,e,c,16,16,8);l=d;return}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b+c|0,16,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b+c|0,8,c);rG(g,b+(0-(c<<1))+1|0,c);sG(e,g+16|0,8,8);JI(a,f,e,c,8,8,8);l=d;return}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b+c|0,16,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;HI(a,b,c);return}function _x(a,b,c){a=a|0;b=b|0;c=c|0;GI(a,b,c);return}function $x(a,b,c){a=a|0;b=b|0;c=c|0;FI(a,b,c);return}function ay(a,b,c){a=a|0;b=b|0;c=c|0;EI(a,b,c);return}function by(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;LF(e,b,8,c);CI(a,b,e,c,c);l=d;return}function dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);BI(a,b,e,c,c);l=d;return}function ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;DF(e,b,8,c);AI(a,b,e,c,c);l=d;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yF(e,b,4,c);zI(a,b,e,c,c);l=d;return}function gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;tF(e,b,8,c);yI(a,b,e,c,c);l=d;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;LF(a,b,c,c);return}function iy(a,b,c){a=a|0;b=b|0;c=c|0;HF(a,b,c,c);return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;DF(a,b,c,c);return}function ky(a,b,c){a=a|0;b=b|0;c=c|0;yF(a,b,c,c);return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;tF(a,b,c,c);return}function my(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;LF(e,b,8,c);CI(a,b+2|0,e,c,c);l=d;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);BI(a,b+2|0,e,c,c);l=d;return}function oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;DF(e,b,8,c);AI(a,b+2|0,e,c,c);l=d;return}function py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yF(e,b,4,c);zI(a,b+1|0,e,c,c);l=d;return}function qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;tF(e,b,8,c);yI(a,b+2|0,e,c,c);l=d;return}function ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;MF(g,b+(0-(c<<1))|0,c);NF(e,f,8);CI(a,f,e,c,8);l=d;return}function sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;IF(g,b+(0-(c<<1))|0,c);JF(e,f,8);BI(a,f,e,c,8);l=d;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;EF(g,b+(0-(c<<1))|0,c);FF(e,f,8);AI(a,f,e,c,8);l=d;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;zF(g,b+(0-(c<<1))|0,c);AF(e,f,4);zI(a,f,e,c,4);l=d;return}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;uF(g,b+(0-(c<<1))|0,c);vF(e,f,8);yI(a,f,e,c,8);l=d;return}function wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b,8,c);MF(g,b+(0-(c<<1))|0,c);NF(e,g+16|0,8);CI(a,f,e,c,8);l=d;return}function xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);BI(a,f,e,c,8);l=d;return}function yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b,8,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b,4,c);zF(g,b+(0-(c<<1))|0,c);AF(e,g+8|0,4);zI(a,f,e,c,4);l=d;return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b,8,c);uF(g,b+(0-(c<<1))|0,c);vF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function By(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;LF(f,b,8,c);TF(e,d,b,8,c);CI(a,f,e,c,8);l=d;return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;HF(f,b,8,c);SF(e,d,b,8,c);BI(a,f,e,c,8);l=d;return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;DF(f,b,8,c);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function Ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;yF(f,b,4,c);QF(e,d,b,4,c);zI(a,f,e,c,4);l=d;return}function Fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;tF(f,b,8,c);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function Gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b,8,c);MF(g,b+(0-(c<<1))+2|0,c);NF(e,g+16|0,8);CI(a,f,e,c,8);l=d;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);BI(a,f,e,c,8);l=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b,8,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function Jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b,4,c);zF(g,b+(0-(c<<1))+1|0,c);AF(e,g+8|0,4);zI(a,f,e,c,4);l=d;return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b,8,c);uF(g,b+(0-(c<<1))+2|0,c);vF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;MF(e,b+(0-(c<<1))|0,c);NF(a,e+16|0,c);l=d;return}function My(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;IF(e,b+(0-(c<<1))|0,c);JF(a,e+16|0,c);l=d;return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;EF(e,b+(0-(c<<1))|0,c);FF(a,e+16|0,c);l=d;return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;zF(e,b+(0-(c<<1))|0,c);AF(a,e+8|0,c);l=d;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;uF(e,b+(0-(c<<1))|0,c);vF(a,e+16|0,c);l=d;return}function Qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;MF(g,b+(0-(c<<1))|0,c);NF(f,g+16|0,8);TF(e,d,b,8,c);CI(a,f,e,c,8);l=d;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;IF(g,b+(0-(c<<1))|0,c);JF(f,g+16|0,8);SF(e,d,b,8,c);BI(a,f,e,c,8);l=d;return}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;EF(g,b+(0-(c<<1))|0,c);FF(f,g+16|0,8);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;zF(g,b+(0-(c<<1))|0,c);AF(f,g+8|0,4);QF(e,d,b,4,c);zI(a,f,e,c,4);l=d;return}function Uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;uF(g,b+(0-(c<<1))|0,c);vF(f,g+16|0,8);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);TF(a,d,b,c,c);l=d;return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);SF(a,d,b,c,c);l=d;return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);RF(a,d,b,c,c);l=d;return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);QF(a,d,b,c,c);l=d;return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);PF(a,d,b,c,c);l=d;return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;MF(g,b+(0-(c<<1))+2|0,c);NF(f,g+16|0,8);TF(e,d,b,8,c);CI(a,f,e,c,8);l=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;IF(g,b+(0-(c<<1))+2|0,c);JF(f,g+16|0,8);SF(e,d,b,8,c);BI(a,f,e,c,8);l=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;EF(g,b+(0-(c<<1))+2|0,c);FF(f,g+16|0,8);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;zF(g,b+(0-(c<<1))+1|0,c);AF(f,g+8|0,4);QF(e,d,b,4,c);zI(a,f,e,c,4);l=d;return}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;uF(g,b+(0-(c<<1))+2|0,c);vF(f,g+16|0,8);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;MF(f,b+(0-(c<<1))|0,c);NF(e,f+16|0,8);CI(a,f+24|0,e,c,8);l=d;return}function ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;IF(f,b+(0-(c<<1))|0,c);JF(e,f+16|0,8);BI(a,f+24|0,e,c,8);l=d;return}function fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;EF(f,b+(0-(c<<1))|0,c);FF(e,f+16|0,8);AI(a,f+24|0,e,c,8);l=d;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;zF(f,b+(0-(c<<1))|0,c);AF(e,f+8|0,4);zI(a,f+12|0,e,c,4);l=d;return}function hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;uF(f,b+(0-(c<<1))|0,c);vF(e,f+16|0,8);yI(a,f+24|0,e,c,8);l=d;return}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b+c|0,8,c);MF(g,b+(0-(c<<1))|0,c);NF(e,g+16|0,8);CI(a,f,e,c,8);l=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);BI(a,f,e,c,8);l=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b+c|0,8,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b+c|0,4,c);zF(g,b+(0-(c<<1))|0,c);AF(e,g+8|0,4);zI(a,f,e,c,4);l=d;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b+c|0,8,c);uF(g,b+(0-(c<<1))|0,c);vF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;LF(f,b+c|0,8,c);TF(e,d,b,8,c);CI(a,f,e,c,8);l=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;HF(f,b+c|0,8,c);SF(e,d,b,8,c);BI(a,f,e,c,8);l=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;DF(f,b+c|0,8,c);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;yF(f,b+c|0,4,c);QF(e,d,b,4,c);zI(a,f,e,c,4);l=d;return}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;tF(f,b+c|0,8,c);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b+c|0,8,c);MF(g,b+(0-(c<<1))+2|0,c);NF(e,g+16|0,8);CI(a,f,e,c,8);l=d;return}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);BI(a,f,e,c,8);l=d;return}function uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b+c|0,8,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b+c|0,4,c);zF(g,b+(0-(c<<1))+1|0,c);AF(e,g+8|0,4);zI(a,f,e,c,4);l=d;return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b+c|0,8,c);uF(g,b+(0-(c<<1))+2|0,c);vF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;xI(a,b,c);return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;wI(a,b,c);return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;vI(a,b,c);return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;uI(a,b,c);return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;tI(a,b,c);return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;kI(e,b,4,c);nI(a,b,e,c,c);l=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;gI(e,b,4,c);jI(a,b,e,c,c);l=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;cI(e,b,4,c);fI(a,b,e,c,c);l=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;_H(e,b,2,c);bI(a,b,e,c,c);l=d;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;WH(e,b,4,c);ZH(a,b,e,c,c);l=d;return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;kI(a,b,c,c);return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;gI(a,b,c,c);return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;cI(a,b,c,c);return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;_H(a,b,c,c);return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;WH(a,b,c,c);return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;kI(e,b,4,c);nI(a,b+2|0,e,c,c);l=d;return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;gI(e,b,4,c);jI(a,b+2|0,e,c,c);l=d;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;cI(e,b,4,c);fI(a,b+2|0,e,c,c);l=d;return}function Pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;_H(e,b,2,c);bI(a,b+1|0,e,c,c);l=d;return}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;WH(e,b,4,c);ZH(a,b+2|0,e,c,c);l=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;lI(g,b+(0-(c<<1))|0,c);mI(e,f,4);nI(a,f,e,c,4);l=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;hI(g,b+(0-(c<<1))|0,c);iI(e,f,4);jI(a,f,e,c,4);l=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;dI(g,b+(0-(c<<1))|0,c);eI(e,f,4);fI(a,f,e,c,4);l=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+4|0;e=d;f=g+4|0;$H(g,b+(0-(c<<1))|0,c);aI(e,f,2);bI(a,f,e,c,2);l=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;XH(g,b+(0-(c<<1))|0,c);YH(e,f,4);ZH(a,f,e,c,4);l=d;return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;kI(f,b,4,c);lI(g,b+(0-(c<<1))|0,c);mI(e,g+8|0,4);nI(a,f,e,c,4);l=d;return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gI(f,b,4,c);hI(g,b+(0-(c<<1))|0,c);iI(e,g+8|0,4);jI(a,f,e,c,4);l=d;return}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;cI(f,b,4,c);dI(g,b+(0-(c<<1))|0,c);eI(e,g+8|0,4);fI(a,f,e,c,4);l=d;return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;_H(f,b,2,c);$H(g,b+(0-(c<<1))|0,c);aI(e,g+4|0,2);bI(a,f,e,c,2);l=d;return}function _z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;WH(f,b,4,c);XH(g,b+(0-(c<<1))|0,c);YH(e,g+8|0,4);ZH(a,f,e,c,4);l=d;return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;kI(f,b,4,c);sI(e,d,b,4,c);nI(a,f,e,c,4);l=d;return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;gI(f,b,4,c);rI(e,d,b,4,c);jI(a,f,e,c,4);l=d;return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;cI(f,b,4,c);qI(e,d,b,4,c);fI(a,f,e,c,4);l=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;_H(f,b,2,c);pI(e,d,b,2,c);bI(a,f,e,c,2);l=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;WH(f,b,4,c);oI(e,d,b,4,c);ZH(a,f,e,c,4);l=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;kI(f,b,4,c);lI(g,b+(0-(c<<1))+2|0,c);mI(e,g+8|0,4);nI(a,f,e,c,4);l=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gI(f,b,4,c);hI(g,b+(0-(c<<1))+2|0,c);iI(e,g+8|0,4);jI(a,f,e,c,4);l=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;cI(f,b,4,c);dI(g,b+(0-(c<<1))+2|0,c);eI(e,g+8|0,4);fI(a,f,e,c,4);l=d;return}function hA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;_H(f,b,2,c);$H(g,b+(0-(c<<1))+1|0,c);aI(e,g+4|0,2);bI(a,f,e,c,2);l=d;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;WH(f,b,4,c);XH(g,b+(0-(c<<1))+2|0,c);YH(e,g+8|0,4);ZH(a,f,e,c,4);l=d;return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;lI(e,b+(0-(c<<1))|0,c);mI(a,e+8|0,c);l=d;return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;hI(e,b+(0-(c<<1))|0,c);iI(a,e+8|0,c);l=d;return}function lA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;dI(e,b+(0-(c<<1))|0,c);eI(a,e+8|0,c);l=d;return}function mA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;$H(e,b+(0-(c<<1))|0,c);aI(a,e+4|0,c);l=d;return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;XH(e,b+(0-(c<<1))|0,c);YH(a,e+8|0,c);l=d;return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;lI(g,b+(0-(c<<1))|0,c);mI(f,g+8|0,4);sI(e,d,b,4,c);nI(a,f,e,c,4);l=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;hI(g,b+(0-(c<<1))|0,c);iI(f,g+8|0,4);rI(e,d,b,4,c);jI(a,f,e,c,4);l=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;dI(g,b+(0-(c<<1))|0,c);eI(f,g+8|0,4);qI(e,d,b,4,c);fI(a,f,e,c,4);l=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;$H(g,b+(0-(c<<1))|0,c);aI(f,g+4|0,2);pI(e,d,b,2,c);bI(a,f,e,c,2);l=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;XH(g,b+(0-(c<<1))|0,c);YH(f,g+8|0,4);oI(e,d,b,4,c);ZH(a,f,e,c,4);l=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);sI(a,d,b,c,c);l=d;return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);rI(a,d,b,c,c);l=d;return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);qI(a,d,b,c,c);l=d;return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);pI(a,d,b,c,c);l=d;return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);oI(a,d,b,c,c);l=d;return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;lI(g,b+(0-(c<<1))+2|0,c);mI(f,g+8|0,4);sI(e,d,b,4,c);nI(a,f,e,c,4);l=d;return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;hI(g,b+(0-(c<<1))+2|0,c);iI(f,g+8|0,4);rI(e,d,b,4,c);jI(a,f,e,c,4);l=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;dI(g,b+(0-(c<<1))+2|0,c);eI(f,g+8|0,4);qI(e,d,b,4,c);fI(a,f,e,c,4);l=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;$H(g,b+(0-(c<<1))+1|0,c);aI(f,g+4|0,2);pI(e,d,b,2,c);bI(a,f,e,c,2);l=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;XH(g,b+(0-(c<<1))+2|0,c);YH(f,g+8|0,4);oI(e,d,b,4,c);ZH(a,f,e,c,4);l=d;return}function DA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;lI(f,b+(0-(c<<1))|0,c);mI(e,f+8|0,4);nI(a,f+12|0,e,c,4);l=d;return}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;hI(f,b+(0-(c<<1))|0,c);iI(e,f+8|0,4);jI(a,f+12|0,e,c,4);l=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;dI(f,b+(0-(c<<1))|0,c);eI(e,f+8|0,4);fI(a,f+12|0,e,c,4);l=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=d+4|0;e=d;$H(f,b+(0-(c<<1))|0,c);aI(e,f+4|0,2);bI(a,f+6|0,e,c,2);l=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;XH(f,b+(0-(c<<1))|0,c);YH(e,f+8|0,4);ZH(a,f+12|0,e,c,4);l=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;kI(f,b+c|0,4,c);lI(g,b+(0-(c<<1))|0,c);mI(e,g+8|0,4);nI(a,f,e,c,4);l=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gI(f,b+c|0,4,c);hI(g,b+(0-(c<<1))|0,c);iI(e,g+8|0,4);jI(a,f,e,c,4);l=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;cI(f,b+c|0,4,c);dI(g,b+(0-(c<<1))|0,c);eI(e,g+8|0,4);fI(a,f,e,c,4);l=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;_H(f,b+c|0,2,c);$H(g,b+(0-(c<<1))|0,c);aI(e,g+4|0,2);bI(a,f,e,c,2);l=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;WH(f,b+c|0,4,c);XH(g,b+(0-(c<<1))|0,c);YH(e,g+8|0,4);ZH(a,f,e,c,4);l=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;kI(f,b+c|0,4,c);sI(e,d,b,4,c);nI(a,f,e,c,4);l=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;gI(f,b+c|0,4,c);rI(e,d,b,4,c);jI(a,f,e,c,4);l=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;cI(f,b+c|0,4,c);qI(e,d,b,4,c);fI(a,f,e,c,4);l=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;_H(f,b+c|0,2,c);pI(e,d,b,2,c);bI(a,f,e,c,2);l=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;WH(f,b+c|0,4,c);oI(e,d,b,4,c);ZH(a,f,e,c,4);l=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;kI(f,b+c|0,4,c);lI(g,b+(0-(c<<1))+2|0,c);mI(e,g+8|0,4);nI(a,f,e,c,4);l=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gI(f,b+c|0,4,c);hI(g,b+(0-(c<<1))+2|0,c);iI(e,g+8|0,4);jI(a,f,e,c,4);l=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;cI(f,b+c|0,4,c);dI(g,b+(0-(c<<1))+2|0,c);eI(e,g+8|0,4);fI(a,f,e,c,4);l=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;_H(f,b+c|0,2,c);$H(g,b+(0-(c<<1))+1|0,c);aI(e,g+4|0,2);bI(a,f,e,c,2);l=d;return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;WH(f,b+c|0,4,c);XH(g,b+(0-(c<<1))+2|0,c);YH(e,g+8|0,4);ZH(a,f,e,c,4);l=d;return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;VH(a,b,c);return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;UH(a,b,c);return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;TH(a,b,c);return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;SH(a,b,c);return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;RH(a,b,c);return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;tH(e,b,32,c);wH(a,b,e,c,c);l=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pH(e,b,32,c);sH(a,b,e,c,c);l=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;lH(e,b,32,c);oH(a,b,e,c,c);l=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;hH(e,b,16,c);kH(a,b,e,c,c);l=d;return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;dH(e,b,32,c);gH(a,b,e,c,c);l=d;return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;QH(a,b,c,c);return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;PH(a,b,c,c);return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;OH(a,b,c,c);return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;NH(a,b,c,c);return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;MH(a,b,c,c);return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;tH(e,b,32,c);wH(a,b+2|0,e,c,c);l=d;return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pH(e,b,32,c);sH(a,b+2|0,e,c,c);l=d;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;lH(e,b,32,c);oH(a,b+2|0,e,c,c);l=d;return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;hH(e,b,16,c);kH(a,b+1|0,e,c,c);l=d;return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;dH(e,b,32,c);gH(a,b+2|0,e,c,c);l=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;uH(g,b+(0-(c<<1))|0,c);vH(e,f,32);wH(a,f,e,c,32);l=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;qH(g,b+(0-(c<<1))|0,c);rH(e,f,32);sH(a,f,e,c,32);l=d;return}function rB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;mH(g,b+(0-(c<<1))|0,c);nH(e,f,32);oH(a,f,e,c,32);l=d;return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;iH(g,b+(0-(c<<1))|0,c);jH(e,f,16);kH(a,f,e,c,16);l=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;eH(g,b+(0-(c<<1))|0,c);fH(e,f,32);gH(a,f,e,c,32);l=d;return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b,32,c);uH(g,b+(0-(c<<1))|0,c);vH(e,g+64|0,32);wH(a,f,e,c,32);l=d;return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b,32,c);qH(g,b+(0-(c<<1))|0,c);rH(e,g+64|0,32);sH(a,f,e,c,32);l=d;return}function wB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b,32,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+64|0,32);oH(a,f,e,c,32);l=d;return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b,16,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+32|0,16);kH(a,f,e,c,16);l=d;return}function yB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b,32,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+64|0,32);gH(a,f,e,c,32);l=d;return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;tH(f,b,32,c);BH(e,d,b,32,c);wH(a,f,e,c,32);l=d;return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;pH(f,b,32,c);AH(e,d,b,32,c);sH(a,f,e,c,32);l=d;return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;lH(f,b,32,c);zH(e,d,b,32,c);oH(a,f,e,c,32);l=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;hH(f,b,16,c);yH(e,d,b,16,c);kH(a,f,e,c,16);l=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;dH(f,b,32,c);xH(e,d,b,32,c);gH(a,f,e,c,32);l=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b,32,c);uH(g,b+(0-(c<<1))+2|0,c);vH(e,g+64|0,32);wH(a,f,e,c,32);l=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b,32,c);qH(g,b+(0-(c<<1))+2|0,c);rH(e,g+64|0,32);sH(a,f,e,c,32);l=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b,32,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+64|0,32);oH(a,f,e,c,32);l=d;return}function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b,16,c);iH(g,b+(0-(c<<1))+1|0,c);jH(e,g+32|0,16);kH(a,f,e,c,16);l=d;return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b,32,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+64|0,32);gH(a,f,e,c,32);l=d;return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;uH(e,b+(0-(c<<1))|0,c);LH(a,e+64|0,c);l=d;return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;qH(e,b+(0-(c<<1))|0,c);KH(a,e+64|0,c);l=d;return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;mH(e,b+(0-(c<<1))|0,c);JH(a,e+64|0,c);l=d;return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;iH(e,b+(0-(c<<1))|0,c);IH(a,e+32|0,c);l=d;return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;eH(e,b+(0-(c<<1))|0,c);HH(a,e+64|0,c);l=d;return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;uH(g,b+(0-(c<<1))|0,c);vH(f,g+64|0,32);BH(e,d,b,32,c);wH(a,f,e,c,32);l=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;qH(g,b+(0-(c<<1))|0,c);rH(f,g+64|0,32);AH(e,d,b,32,c);sH(a,f,e,c,32);l=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;mH(g,b+(0-(c<<1))|0,c);nH(f,g+64|0,32);zH(e,d,b,32,c);oH(a,f,e,c,32);l=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;iH(g,b+(0-(c<<1))|0,c);jH(f,g+32|0,16);yH(e,d,b,16,c);kH(a,f,e,c,16);l=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;eH(g,b+(0-(c<<1))|0,c);fH(f,g+64|0,32);xH(e,d,b,32,c);gH(a,f,e,c,32);l=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);GH(a,d,b,c,c);l=d;return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);FH(a,d,b,c,c);l=d;return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);EH(a,d,b,c,c);l=d;return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);DH(a,d,b,c,c);l=d;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);CH(a,d,b,c,c);l=d;return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;uH(g,b+(0-(c<<1))+2|0,c);vH(f,g+64|0,32);BH(e,d,b,32,c);wH(a,f,e,c,32);l=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;qH(g,b+(0-(c<<1))+2|0,c);rH(f,g+64|0,32);AH(e,d,b,32,c);sH(a,f,e,c,32);l=d;return}function _B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;mH(g,b+(0-(c<<1))+2|0,c);nH(f,g+64|0,32);zH(e,d,b,32,c);oH(a,f,e,c,32);l=d;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;iH(g,b+(0-(c<<1))+1|0,c);jH(f,g+32|0,16);yH(e,d,b,16,c);kH(a,f,e,c,16);l=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;eH(g,b+(0-(c<<1))+2|0,c);fH(f,g+64|0,32);xH(e,d,b,32,c);gH(a,f,e,c,32);l=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;uH(f,b+(0-(c<<1))|0,c);vH(e,f+64|0,32);wH(a,f+96|0,e,c,32);l=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;qH(f,b+(0-(c<<1))|0,c);rH(e,f+64|0,32);sH(a,f+96|0,e,c,32);l=d;return}function dC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;mH(f,b+(0-(c<<1))|0,c);nH(e,f+64|0,32);oH(a,f+96|0,e,c,32);l=d;return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;iH(f,b+(0-(c<<1))|0,c);jH(e,f+32|0,16);kH(a,f+48|0,e,c,16);l=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;eH(f,b+(0-(c<<1))|0,c);fH(e,f+64|0,32);gH(a,f+96|0,e,c,32);l=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b+c|0,32,c);uH(g,b+(0-(c<<1))|0,c);vH(e,g+64|0,32);wH(a,f,e,c,32);l=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b+c|0,32,c);qH(g,b+(0-(c<<1))|0,c);rH(e,g+64|0,32);sH(a,f,e,c,32);l=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b+c|0,32,c);mH(g,b+(0-(c<<1))|0,c);nH(e,g+64|0,32);oH(a,f,e,c,32);l=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b+c|0,16,c);iH(g,b+(0-(c<<1))|0,c);jH(e,g+32|0,16);kH(a,f,e,c,16);l=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b+c|0,32,c);eH(g,b+(0-(c<<1))|0,c);fH(e,g+64|0,32);gH(a,f,e,c,32);l=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;tH(f,b+c|0,32,c);BH(e,d,b,32,c);wH(a,f,e,c,32);l=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;pH(f,b+c|0,32,c);AH(e,d,b,32,c);sH(a,f,e,c,32);l=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;lH(f,b+c|0,32,c);zH(e,d,b,32,c);oH(a,f,e,c,32);l=d;return}function oC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;hH(f,b+c|0,16,c);yH(e,d,b,16,c);kH(a,f,e,c,16);l=d;return}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;dH(f,b+c|0,32,c);xH(e,d,b,32,c);gH(a,f,e,c,32);l=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;tH(f,b+c|0,32,c);uH(g,b+(0-(c<<1))+2|0,c);vH(e,g+64|0,32);wH(a,f,e,c,32);l=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pH(f,b+c|0,32,c);qH(g,b+(0-(c<<1))+2|0,c);rH(e,g+64|0,32);sH(a,f,e,c,32);l=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;lH(f,b+c|0,32,c);mH(g,b+(0-(c<<1))+2|0,c);nH(e,g+64|0,32);oH(a,f,e,c,32);l=d;return}function tC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;hH(f,b+c|0,16,c);iH(g,b+(0-(c<<1))+1|0,c);jH(e,g+32|0,16);kH(a,f,e,c,16);l=d;return}function uC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;dH(f,b+c|0,32,c);eH(g,b+(0-(c<<1))+2|0,c);fH(e,g+64|0,32);gH(a,f,e,c,32);l=d;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;cH(a,b,c,8);return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;bH(a,b,c,8);return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;aH(a,b,c,8);return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;$G(a,b,c,8);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;_G(a,b,c,8);return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;CG(e,b,16,c);FG(a,b,e,c,c,16,8);l=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yG(e,b,16,c);BG(a,b,e,c,c,16,8);l=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;uG(e,b,16,c);xG(a,b,e,c,c,16,8);l=d;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;qG(e,b,8,c);tG(a,b,e,c,c,8,8);l=d;return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;mG(e,b,16,c);pG(a,b,e,c,c,16,8);l=d;return}function FC(a,b,c){a=a|0;b=b|0;c=c|0;ZG(a,b,c,c);return}function GC(a,b,c){a=a|0;b=b|0;c=c|0;YG(a,b,c,c);return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;XG(a,b,c,c);return}function IC(a,b,c){a=a|0;b=b|0;c=c|0;WG(a,b,c,c);return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;VG(a,b,c,c);return}function KC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;CG(e,b,16,c);FG(a,b+2|0,e,c,c,16,8);l=d;return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yG(e,b,16,c);BG(a,b+2|0,e,c,c,16,8);l=d;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;uG(e,b,16,c);xG(a,b+2|0,e,c,c,16,8);l=d;return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;qG(e,b,8,c);tG(a,b+1|0,e,c,c,8,8);l=d;return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;mG(e,b,16,c);pG(a,b+2|0,e,c,c,16,8);l=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;DG(g,b+(0-(c<<1))|0,c);EG(e,f,16,16);FG(a,f,e,c,16,16,8);l=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;zG(g,b+(0-(c<<1))|0,c);AG(e,f,16,16);BG(a,f,e,c,16,16,8);l=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;vG(g,b+(0-(c<<1))|0,c);wG(e,f,16,16);xG(a,f,e,c,16,16,8);l=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;rG(g,b+(0-(c<<1))|0,c);sG(e,f,8,8);tG(a,f,e,c,8,8,8);l=d;return}function TC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;nG(g,b+(0-(c<<1))|0,c);oG(e,f,16,16);pG(a,f,e,c,16,16,8);l=d;return}function UC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b,16,c);DG(g,b+(0-(c<<1))|0,c);EG(e,g+32|0,16,16);FG(a,f,e,c,16,16,8);l=d;return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b,16,c);zG(g,b+(0-(c<<1))|0,c);AG(e,g+32|0,16,16);BG(a,f,e,c,16,16,8);l=d;return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b,16,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+32|0,16,16);xG(a,f,e,c,16,16,8);l=d;return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b,8,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+16|0,8,8);tG(a,f,e,c,8,8,8);l=d;return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b,16,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+32|0,16,16);pG(a,f,e,c,16,16,8);l=d;return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;CG(f,b,16,c);KG(e,d,b,16,16,c);FG(a,f,e,c,16,16,8);l=d;return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;yG(f,b,16,c);JG(e,d,b,16,16,c);BG(a,f,e,c,16,16,8);l=d;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;uG(f,b,16,c);IG(e,d,b,16,16,c);xG(a,f,e,c,16,16,8);l=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;qG(f,b,8,c);HG(e,d,b,8,8,c);tG(a,f,e,c,8,8,8);l=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;mG(f,b,16,c);GG(e,d,b,16,16,c);pG(a,f,e,c,16,16,8);l=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b,16,c);DG(g,b+(0-(c<<1))+2|0,c);EG(e,g+32|0,16,16);FG(a,f,e,c,16,16,8);l=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b,16,c);zG(g,b+(0-(c<<1))+2|0,c);AG(e,g+32|0,16,16);BG(a,f,e,c,16,16,8);l=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b,16,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+32|0,16,16);xG(a,f,e,c,16,16,8);l=d;return}function fD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b,8,c);rG(g,b+(0-(c<<1))+1|0,c);sG(e,g+16|0,8,8);tG(a,f,e,c,8,8,8);l=d;return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b,16,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+32|0,16,16);pG(a,f,e,c,16,16,8);l=d;return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;DG(e,b+(0-(c<<1))|0,c);UG(a,e+32|0,c,16);l=d;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;zG(e,b+(0-(c<<1))|0,c);TG(a,e+32|0,c,16);l=d;return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;vG(e,b+(0-(c<<1))|0,c);SG(a,e+32|0,c,16);l=d;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;rG(e,b+(0-(c<<1))|0,c);RG(a,e+16|0,c,8);l=d;return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;nG(e,b+(0-(c<<1))|0,c);QG(a,e+32|0,c,16);l=d;return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;DG(g,b+(0-(c<<1))|0,c);EG(f,g+32|0,16,16);KG(e,d,b,16,16,c);FG(a,f,e,c,16,16,8);l=d;return}function nD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;zG(g,b+(0-(c<<1))|0,c);AG(f,g+32|0,16,16);JG(e,d,b,16,16,c);BG(a,f,e,c,16,16,8);l=d;return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;vG(g,b+(0-(c<<1))|0,c);wG(f,g+32|0,16,16);IG(e,d,b,16,16,c);xG(a,f,e,c,16,16,8);l=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;rG(g,b+(0-(c<<1))|0,c);sG(f,g+16|0,8,8);HG(e,d,b,8,8,c);tG(a,f,e,c,8,8,8);l=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;nG(g,b+(0-(c<<1))|0,c);oG(f,g+32|0,16,16);GG(e,d,b,16,16,c);pG(a,f,e,c,16,16,8);l=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);PG(a,d,b,c,16,c);l=d;return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);OG(a,d,b,c,16,c);l=d;return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);NG(a,d,b,c,16,c);l=d;return}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);MG(a,d,b,c,8,c);l=d;return}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);LG(a,d,b,c,16,c);l=d;return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;DG(g,b+(0-(c<<1))+2|0,c);EG(f,g+32|0,16,16);KG(e,d,b,16,16,c);FG(a,f,e,c,16,16,8);l=d;return}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;zG(g,b+(0-(c<<1))+2|0,c);AG(f,g+32|0,16,16);JG(e,d,b,16,16,c);BG(a,f,e,c,16,16,8);l=d;return}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;vG(g,b+(0-(c<<1))+2|0,c);wG(f,g+32|0,16,16);IG(e,d,b,16,16,c);xG(a,f,e,c,16,16,8);l=d;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;rG(g,b+(0-(c<<1))+1|0,c);sG(f,g+16|0,8,8);HG(e,d,b,8,8,c);tG(a,f,e,c,8,8,8);l=d;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;nG(g,b+(0-(c<<1))+2|0,c);oG(f,g+32|0,16,16);GG(e,d,b,16,16,c);pG(a,f,e,c,16,16,8);l=d;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;DG(f,b+(0-(c<<1))|0,c);EG(e,f+32|0,16,16);FG(a,f+48|0,e,c,16,16,8);l=d;return}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;zG(f,b+(0-(c<<1))|0,c);AG(e,f+32|0,16,16);BG(a,f+48|0,e,c,16,16,8);l=d;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;vG(f,b+(0-(c<<1))|0,c);wG(e,f+32|0,16,16);xG(a,f+48|0,e,c,16,16,8);l=d;return}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;rG(f,b+(0-(c<<1))|0,c);sG(e,f+16|0,8,8);tG(a,f+24|0,e,c,8,8,8);l=d;return}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;nG(f,b+(0-(c<<1))|0,c);oG(e,f+32|0,16,16);pG(a,f+48|0,e,c,16,16,8);l=d;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b+c|0,16,c);DG(g,b+(0-(c<<1))|0,c);EG(e,g+32|0,16,16);FG(a,f,e,c,16,16,8);l=d;return}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b+c|0,16,c);zG(g,b+(0-(c<<1))|0,c);AG(e,g+32|0,16,16);BG(a,f,e,c,16,16,8);l=d;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b+c|0,16,c);vG(g,b+(0-(c<<1))|0,c);wG(e,g+32|0,16,16);xG(a,f,e,c,16,16,8);l=d;return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b+c|0,8,c);rG(g,b+(0-(c<<1))|0,c);sG(e,g+16|0,8,8);tG(a,f,e,c,8,8,8);l=d;return}function KD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b+c|0,16,c);nG(g,b+(0-(c<<1))|0,c);oG(e,g+32|0,16,16);pG(a,f,e,c,16,16,8);l=d;return}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;CG(f,b+c|0,16,c);KG(e,d,b,16,16,c);FG(a,f,e,c,16,16,8);l=d;return}function MD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;yG(f,b+c|0,16,c);JG(e,d,b,16,16,c);BG(a,f,e,c,16,16,8);l=d;return}function ND(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;uG(f,b+c|0,16,c);IG(e,d,b,16,16,c);xG(a,f,e,c,16,16,8);l=d;return}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;qG(f,b+c|0,8,c);HG(e,d,b,8,8,c);tG(a,f,e,c,8,8,8);l=d;return}function PD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;mG(f,b+c|0,16,c);GG(e,d,b,16,16,c);pG(a,f,e,c,16,16,8);l=d;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;CG(f,b+c|0,16,c);DG(g,b+(0-(c<<1))+2|0,c);EG(e,g+32|0,16,16);FG(a,f,e,c,16,16,8);l=d;return}function RD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yG(f,b+c|0,16,c);zG(g,b+(0-(c<<1))+2|0,c);AG(e,g+32|0,16,16);BG(a,f,e,c,16,16,8);l=d;return}function SD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;uG(f,b+c|0,16,c);vG(g,b+(0-(c<<1))+2|0,c);wG(e,g+32|0,16,16);xG(a,f,e,c,16,16,8);l=d;return}function TD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;qG(f,b+c|0,8,c);rG(g,b+(0-(c<<1))+1|0,c);sG(e,g+16|0,8,8);tG(a,f,e,c,8,8,8);l=d;return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;mG(f,b+c|0,16,c);nG(g,b+(0-(c<<1))+2|0,c);oG(e,g+32|0,16,16);pG(a,f,e,c,16,16,8);l=d;return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;lG(a,b,c);return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;kG(a,b,c);return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;jG(a,b,c);return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;iG(a,b,c);return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;hG(a,b,c);return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;LF(e,b,8,c);OF(a,b,e,c,c);l=d;return}function $D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);KF(a,b,e,c,c);l=d;return}function aE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;DF(e,b,8,c);GF(a,b,e,c,c);l=d;return}function bE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yF(e,b,4,c);BF(a,b,e,c,c);l=d;return}function cE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;tF(e,b,8,c);wF(a,b,e,c,c);l=d;return}function dE(a,b,c){a=a|0;b=b|0;c=c|0;gG(a,b,c,c);return}function eE(a,b,c){a=a|0;b=b|0;c=c|0;fG(a,b,c,c);return}function fE(a,b,c){a=a|0;b=b|0;c=c|0;eG(a,b,c,c);return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;dG(a,b,c,c);return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;cG(a,b,c,c);return}function iE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;LF(e,b,8,c);OF(a,b+2|0,e,c,c);l=d;return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);KF(a,b+2|0,e,c,c);l=d;return}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;DF(e,b,8,c);GF(a,b+2|0,e,c,c);l=d;return}function lE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yF(e,b,4,c);BF(a,b+1|0,e,c,c);l=d;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;tF(e,b,8,c);wF(a,b+2|0,e,c,c);l=d;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;MF(g,b+(0-(c<<1))|0,c);NF(e,f,8);OF(a,f,e,c,8);l=d;return}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;IF(g,b+(0-(c<<1))|0,c);JF(e,f,8);KF(a,f,e,c,8);l=d;return}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;EF(g,b+(0-(c<<1))|0,c);FF(e,f,8);GF(a,f,e,c,8);l=d;return}function qE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;zF(g,b+(0-(c<<1))|0,c);AF(e,f,4);BF(a,f,e,c,4);l=d;return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;uF(g,b+(0-(c<<1))|0,c);vF(e,f,8);wF(a,f,e,c,8);l=d;return}function sE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b,8,c);MF(g,b+(0-(c<<1))|0,c);NF(e,g+16|0,8);OF(a,f,e,c,8);l=d;return}function tE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function uE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b,8,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+16|0,8);GF(a,f,e,c,8);l=d;return}function vE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b,4,c);zF(g,b+(0-(c<<1))|0,c);AF(e,g+8|0,4);BF(a,f,e,c,4);l=d;return}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b,8,c);uF(g,b+(0-(c<<1))|0,c);vF(e,g+16|0,8);wF(a,f,e,c,8);l=d;return}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;LF(f,b,8,c);TF(e,d,b,8,c);OF(a,f,e,c,8);l=d;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;HF(f,b,8,c);SF(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function zE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;DF(f,b,8,c);RF(e,d,b,8,c);GF(a,f,e,c,8);l=d;return}function AE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;yF(f,b,4,c);QF(e,d,b,4,c);BF(a,f,e,c,4);l=d;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;tF(f,b,8,c);PF(e,d,b,8,c);wF(a,f,e,c,8);l=d;return}function CE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b,8,c);MF(g,b+(0-(c<<1))+2|0,c);NF(e,g+16|0,8);OF(a,f,e,c,8);l=d;return}function DE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b,8,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+16|0,8);GF(a,f,e,c,8);l=d;return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b,4,c);zF(g,b+(0-(c<<1))+1|0,c);AF(e,g+8|0,4);BF(a,f,e,c,4);l=d;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b,8,c);uF(g,b+(0-(c<<1))+2|0,c);vF(e,g+16|0,8);wF(a,f,e,c,8);l=d;return}function HE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;MF(e,b+(0-(c<<1))|0,c);bG(a,e+16|0,c);l=d;return}function IE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;IF(e,b+(0-(c<<1))|0,c);aG(a,e+16|0,c);l=d;return}function JE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;EF(e,b+(0-(c<<1))|0,c);$F(a,e+16|0,c);l=d;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;zF(e,b+(0-(c<<1))|0,c);_F(a,e+8|0,c);l=d;return}function LE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;uF(e,b+(0-(c<<1))|0,c);ZF(a,e+16|0,c);l=d;return}function ME(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;MF(g,b+(0-(c<<1))|0,c);NF(f,g+16|0,8);TF(e,d,b,8,c);OF(a,f,e,c,8);l=d;return}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;IF(g,b+(0-(c<<1))|0,c);JF(f,g+16|0,8);SF(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function OE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;EF(g,b+(0-(c<<1))|0,c);FF(f,g+16|0,8);RF(e,d,b,8,c);GF(a,f,e,c,8);l=d;return}function PE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;zF(g,b+(0-(c<<1))|0,c);AF(f,g+8|0,4);QF(e,d,b,4,c);BF(a,f,e,c,4);l=d;return}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;uF(g,b+(0-(c<<1))|0,c);vF(f,g+16|0,8);PF(e,d,b,8,c);wF(a,f,e,c,8);l=d;return}function RE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);YF(a,d,b,c,c);l=d;return}function SE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);XF(a,d,b,c,c);l=d;return}function TE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);WF(a,d,b,c,c);l=d;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);VF(a,d,b,c,c);l=d;return}function VE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);UF(a,d,b,c,c);l=d;return}function WE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;MF(g,b+(0-(c<<1))+2|0,c);NF(f,g+16|0,8);TF(e,d,b,8,c);OF(a,f,e,c,8);l=d;return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;IF(g,b+(0-(c<<1))+2|0,c);JF(f,g+16|0,8);SF(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;EF(g,b+(0-(c<<1))+2|0,c);FF(f,g+16|0,8);RF(e,d,b,8,c);GF(a,f,e,c,8);l=d;return}function ZE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;zF(g,b+(0-(c<<1))+1|0,c);AF(f,g+8|0,4);QF(e,d,b,4,c);BF(a,f,e,c,4);l=d;return}function _E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;uF(g,b+(0-(c<<1))+2|0,c);vF(f,g+16|0,8);PF(e,d,b,8,c);wF(a,f,e,c,8);l=d;return}function $E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;MF(f,b+(0-(c<<1))|0,c);NF(e,f+16|0,8);OF(a,f+24|0,e,c,8);l=d;return}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;IF(f,b+(0-(c<<1))|0,c);JF(e,f+16|0,8);KF(a,f+24|0,e,c,8);l=d;return}function bF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;EF(f,b+(0-(c<<1))|0,c);FF(e,f+16|0,8);GF(a,f+24|0,e,c,8);l=d;return}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;zF(f,b+(0-(c<<1))|0,c);AF(e,f+8|0,4);BF(a,f+12|0,e,c,4);l=d;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;uF(f,b+(0-(c<<1))|0,c);vF(e,f+16|0,8);wF(a,f+24|0,e,c,8);l=d;return}function eF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b+c|0,8,c);MF(g,b+(0-(c<<1))|0,c);NF(e,g+16|0,8);OF(a,f,e,c,8);l=d;return}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b+c|0,8,c);EF(g,b+(0-(c<<1))|0,c);FF(e,g+16|0,8);GF(a,f,e,c,8);l=d;return}function hF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b+c|0,4,c);zF(g,b+(0-(c<<1))|0,c);AF(e,g+8|0,4);BF(a,f,e,c,4);l=d;return}function iF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b+c|0,8,c);uF(g,b+(0-(c<<1))|0,c);vF(e,g+16|0,8);wF(a,f,e,c,8);l=d;return}function jF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;LF(f,b+c|0,8,c);TF(e,d,b,8,c);OF(a,f,e,c,8);l=d;return}function kF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;HF(f,b+c|0,8,c);SF(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function lF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;DF(f,b+c|0,8,c);RF(e,d,b,8,c);GF(a,f,e,c,8);l=d;return}function mF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;yF(f,b+c|0,4,c);QF(e,d,b,4,c);BF(a,f,e,c,4);l=d;return}function nF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;tF(f,b+c|0,8,c);PF(e,d,b,8,c);wF(a,f,e,c,8);l=d;return}function oF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;LF(f,b+c|0,8,c);MF(g,b+(0-(c<<1))+2|0,c);NF(e,g+16|0,8);OF(a,f,e,c,8);l=d;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function qF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;DF(f,b+c|0,8,c);EF(g,b+(0-(c<<1))+2|0,c);FF(e,g+16|0,8);GF(a,f,e,c,8);l=d;return}function rF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;yF(f,b+c|0,4,c);zF(g,b+(0-(c<<1))+1|0,c);AF(e,g+8|0,4);BF(a,f,e,c,4);l=d;return}function sF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;tF(f,b+c|0,8,c);uF(g,b+(0-(c<<1))+2|0,c);vF(e,g+16|0,8);wF(a,f,e,c,8);l=d;return}function tF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function uF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function vF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<512?p:0-p>>31&511;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<512?o:0-o>>31&511;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function wF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=xF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function xF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=dX(c^a|0,d^b|0,1)|0;d=WW(c|a|0,d|b|0,e&2147450879|0,y&2147450879|0)|0;return d|0}function yF(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function zF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function AF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(N(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(N(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(N(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function BF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;j=e+(h<<2)|0;i=a+(N(h,f)|0)|0;l=c[i>>2]|0;c[i>>2]=CF(l,CF(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;h=h+1|0}return}function CF(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function DF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function EF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function FF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:0-q>>31&1023;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<1024?p:0-p>>31&1023;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function GF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=xF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function HF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function IF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function JF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:0-q>>31&4095;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<4096?o:0-o>>31&4095;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function KF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=xF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function LF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function MF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function NF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:0-q>>31&16383;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<16384?o:0-o>>31&16383;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function OF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=xF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function PF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;p=b[g+-16>>1]|0;f=b[g>>1]|0;c=b[g+16>>1]|0;o=b[g+32>>1]|0;m=b[g+48>>1]|0;l=b[g+64>>1]|0;n=b[g+80>>1]|0;k=b[g+96>>1]|0;q=(b[g+-32>>1]|0)+512+m+((c+f|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+512+l+((o+c|0)*20|0)+(N(m+f|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<512?p:0-p>>31&511;f=f+512+n+((m+o|0)*20|0)+(N(l+c|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<512?f:0-f>>31&511;o=c+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<512?o:0-o>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function QF(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(N(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(N(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(N(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function RF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;r=b[g+-16>>1]|0;p=b[g>>1]|0;q=p+10230|0;c=b[g+16>>1]|0;f=c+10230|0;o=(b[g+32>>1]|0)+10230|0;m=(b[g+48>>1]|0)+10230|0;l=(b[g+64>>1]|0)+10230|0;n=(b[g+80>>1]|0)+10230|0;k=b[g+96>>1]|0;s=(b[g+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(N(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:0-s>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(N(m+q|0,-5)|0)>>10;b[a+(i<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(N(l+f|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<1024?f:0-f>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function SF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:0-r>>31&4095;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<4096?g:0-g>>31&4095;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function TF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:0-r>>31&16383;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<16384?g:0-g>>31&16383;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function UF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;q=b[g+-16>>1]|0;p=b[g>>1]|0;f=b[g+16>>1]|0;n=b[g+32>>1]|0;l=b[g+48>>1]|0;k=b[g+64>>1]|0;m=b[g+80>>1]|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+512+l+((f+p|0)*20|0)+(N(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:0-o>>31&511)|0)>>>1;o=a+(i<<1)|0;q=q+512+k+((n+f|0)*20|0)+(N(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;o=a+(d<<1)|0;p=p+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;o=a+(j<<1)|0;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function VF(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(N(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(N(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}function WF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;s=b[g+-16>>1]|0;q=b[g>>1]|0;r=q+10230|0;f=b[g+16>>1]|0;p=f+10230|0;n=(b[g+32>>1]|0)+10230|0;l=(b[g+48>>1]|0)+10230|0;k=(b[g+64>>1]|0)+10230|0;m=(b[g+80>>1]|0)+10230|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(N(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:0-o>>31&1023)|0)>>>1;o=a+(i<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(N(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:0-r>>31&1023)|0)>>>1;o=a+(d<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(N(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;o=a+(j<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function XF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:0-r>>31&4095)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:0-g>>31&4095)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function YF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:0-r>>31&16383)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:0-g>>31&16383)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function ZF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:0-j>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function _F(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function $F(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:0-q>>31&1023)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:0-j>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function aG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:0-j>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function bG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:0-j>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function cG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function dG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function eG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function fG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function gG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function hG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=xF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function iG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=CF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;f=f+1|0;a=a+e|0;b=b+e|0}return}function jG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=xF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function kG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=xF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function lG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=xF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function mG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function nG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function oG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<512?K:0-K>>31&511;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<512?c:0-c>>31&511;g=g+1|0;f=f+2|0;d=d+2|0}return}function pG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=xF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=xF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=xF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=xF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function qG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function rG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function sG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;J=d[c+t>>0]|0;I=d[c>>0]|0;H=d[c+f>>0]|0;G=d[c+u>>0]|0;F=d[c+v>>0]|0;E=d[c+w>>0]|0;D=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;K=(d[c+s>>0]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[b>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[b+e>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[b+m>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+16+y+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;a[b+n>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+16+A+((D+E|0)*20|0)+(N(y+F|0,-5)|0)>>5;a[b+o>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+16+B+((y+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;a[b+p>>0]=F>>>0>255?(F^-2147483648)>>31:F;E=E+16+z+((A+y|0)*20|0)+(N(B+D|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+16+C+((B+A|0)*20|0)+(N(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function tG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;p=b+m|0;l=N(j,h)|0;o=e+l|0;k=N(j,f)|0;n=a+k|0;q=c[n>>2]|0;c[n>>2]=CF(q,CF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;c[k>>2]=CF(n,CF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;j=j+1|0}return} -function DM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function EM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function FM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=0;while(1){if((h|0)==4)break;q=a[g+h>>0]|0;p=q<<24>>24;a:do if(q<<24>>24>=1){q=0-p|0;i=0;j=b;while(1){if((i|0)==1)break a;k=j+-1|0;l=d[k>>0]|0;m=d[j+-2>>0]|0;n=d[j>>0]|0;o=d[j+1>>0]|0;r=l-n|0;if(((((r|0)>-1?r:0-r|0)|0)<(e|0)?(r=m-l|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0)?(r=o-n|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0){r=m+4-o+(n-l<<2)>>3;r=(r|0)<(q|0)?q:(r|0)>(p|0)?p:r;o=r+l|0;a[k>>0]=o>>>0>255?(o^-2147483648)>>31:o;r=n-r|0;a[j>>0]=r>>>0>255?(r^-2147483648)>>31:r}i=i+1|0;j=j+c|0}}while(0);b=b+c|0;h=h+1|0}return}function GM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function HM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=0-c|0;n=N(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function IM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function JM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function KM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function LM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function MM(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function NM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){l=WW(0,0,b|0,c|0)|0;l=$W(l&b|0,y&c|0,-862635923,36691299)|0;l=dX(l|0,y|0,58)|0;l=a[146491+l>>0]|0;g=l&255;j=WW(0,0,e|0,f|0)|0;j=$W(j&e|0,y&f|0,-862635923,36691299)|0;j=dX(j|0,y|0,58)|0;j=a[146491+j>>0]|0;h=j&255;i=g>>>0>h>>>0;l=cX(b|0,c|0,l&255|0)|0;k=y;m=(k|0)>-1|(k|0)==-1&l>>>0>4294967295;b=WW(0,0,l|0,k|0)|0;k=m?k:y;f=cX(e|0,f|0,j&255|0)|0;e=y;j=(e|0)>-1|(e|0)==-1&f>>>0>4294967295;c=WW(0,0,f|0,e|0)|0;b=m?l:b;c=j?f:c;f=k;e=j?e:y;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;n=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;k=n?c:b;m=n?e:f;n=WW((n?b:c)|0,(n?f:e)|0,k|0,m|0)|0;j=y;l=WW(0,0,n|0,j|0)|0;l=$W(n&l|0,j&y|0,-862635923,36691299)|0;l=dX(l|0,y|0,58)|0;l=cX(n|0,j|0,d[146491+l>>0]|0|0)|0;b=k;c=l;f=m;e=y}b=eX(b|0,f|0,(i?h:g)|0)|0;c=y}}else{c=f;b=e}y=c;return b|0}function OM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=h;f=c[(c[a+28>>2]|0)+20>>2]|0;do if(((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)?(c[a+120>>2]|0)!=9:0){e=f+300|0;if((c[e>>2]|0)!=1){Wf(a,16,146693,d);a=-1;break}d=f+184|0;mX(d|0)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;lX(a|0)|0;while(1){if((c[e>>2]|0)==1)break;wc(a|0,d|0)|0}a=c[f+328>>2]|0;nX(d|0)|0}else g=4;while(0);if((g|0)==4)a=QM(a,b)|0;l=h;return a|0}function PM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+880>>2]|0;a:do if((d|0)!=0?(i=c[(c[a+12>>2]|0)+124>>2]|0,(i|0)!=0):0){g=(c[d+4>>2]|0)+8|0;f=0;while(1){h=c[i+(f<<2)>>2]|0;if(!h){d=0;j=11;break a}b:do if(c[h+4>>2]&1|0?(c[g>>2]|0)==(c[h+8>>2]|0):0){e=0;while(1){d=c[b+(e<<2)>>2]|0;if((d|0)==-1)break b;if((c[h>>2]|0)==(d|0))break a;else e=e+1|0}}while(0);f=f+1|0}}else{d=0;j=11}while(0);c:do if((j|0)==11){while(1)if((c[b+(d<<2)>>2]|0)==-1)break;else{d=d+1|0;j=11}d=b+(d+-1<<2)|0;j=c[(ph(c[d>>2]|0)|0)+8>>2]|0;if((j&8|0)==0&0==0){d=c[d>>2]|0;break}g=a+12|0;f=0;d:while(1){h=b+(f<<2)|0;if((c[h>>2]|0)==-1){d=-1;break c}else e=0;while(1){i=TM(c[g>>2]|0,e)|0;if(!i)break d;d=c[i>>2]|0;if((d|0)==(c[h>>2]|0))break;else e=e+1|0}if(!(c[i+4>>2]&4))f=f+1|0;else break c}d=c[h>>2]|0}while(0);return d|0}function QM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+80|0;if((l|0)>=(m|0))W(80);v=B+72|0;u=B+64|0;t=B+56|0;s=B+48|0;r=B+40|0;y=B+32|0;x=B+24|0;w=B+16|0;d=B;z=B+76|0;f=0;while(1){e=f+1|0;if((c[b+(f<<2)>>2]|0)==-1)break;else f=e}if((f|0)<=0){c[d>>2]=146755;c[d+4>>2]=124579;c[d+8>>2]=1310;Wf(0,0,159637,d);Ub()}d=b+(f+-1<<2)|0;o=c[(ph(c[d>>2]|0)|0)+8>>2]|0;if((o&8|0)==0&0==0)c[a+768>>2]=c[d>>2];d=Lh(e,4)|0;c[z>>2]=d;if(!d)d=-1;else{iX(d|0,b|0,e<<2|0)|0;j=a+120|0;k=a+12|0;n=a+880|0;o=a+860|0;i=d;a:while(1){RM(a);d=Ld[c[j>>2]&15](a,i)|0;if((d|0)==-1){d=-1;break}h=ph(d)|0;if(!h){A=11;break}c[x>>2]=c[h>>2];Wf(a,48,146813,x);b=0;while(1){if((b|0)>=(f|0))break;if((c[i+(b<<2)>>2]|0)==(d|0))break;b=b+1|0}if((b|0)==(f|0)){A=17;break}e=c[(c[k>>2]|0)+124>>2]|0;if(!e)break;else b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break a;if((c[g>>2]|0)==(d|0))break;else b=b+1|0}b=c[g+4>>2]|0;if((b&2|0)!=0?(p=c[o>>2]|0,(p|0)!=0):0)if((c[(c[p+4>>2]|0)+36>>2]|0)==(d|0))A=31;else{c[r>>2]=c[h>>2];Wf(a,16,146908,r)}else A=25;do if((A|0)==25){A=0;if(b&1|0?(q=c[n>>2]|0,q|0):0){if((c[(c[q+4>>2]|0)+8>>2]|0)==(c[g+8>>2]|0)){A=31;break}c[s>>2]=c[h>>2];Wf(a,16,146996,s);break}if(!(b&12)){c[t>>2]=c[h>>2];Wf(a,16,147082,t)}else A=31}while(0);if((A|0)==31){A=0;if(!(c[g+12>>2]|0))break;c[u>>2]=c[h>>2];Wf(a,48,147135,u);if((SM(a,g)|0)>=0)break}c[v>>2]=c[h>>2];Wf(a,48,147179,v);b=0;while(1){if((b|0)>=(f|0)){d=b;break}if((c[i+(b<<2)>>2]|0)==(d|0)){d=b;break}b=b+1|0}while(1){b=d+1|0;if((b|0)>=(f|0))break;i=c[z>>2]|0;c[i+(d<<2)>>2]=c[i+(b<<2)>>2];d=b}f=f+-1|0;i=c[z>>2]|0}if((A|0)==11){Wf(a,16,146762,w);d=-1}else if((A|0)==17){c[y>>2]=c[h>>2];Wf(a,16,146848,y);d=0}Sf(z)}l=B;return d|0}function RM(a){a=a|0;var b=0,d=0,e=0;b=a+592|0;d=c[b>>2]|0;if(d|0?(e=c[d+52>>2]|0,e|0):0)Kd[e&31](a)|0;Sf((c[a+28>>2]|0)+60|0);c[b>>2]=0;Bg(a+860|0);return}function SM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i+8|0;e=i;g=c[b+12>>2]|0;if((c[g+16>>2]&512|0)!=0?(c[a+568>>2]|0)>-2:0){c[e>>2]=c[g>>2];Wf(a,24,147236,e);d=-1163346256}else f=4;do if((f|0)==4){e=c[g+56>>2]|0;if(e|0?(f=Ng(e)|0,c[(c[a+28>>2]|0)+60>>2]=f,(f|0)==0):0){d=-12;break}f=a+592|0;c[f>>2]=g;e=c[g+48>>2]|0;if((e|0)!=0?(d=Kd[e&31](a)|0,(d|0)<0):0){c[h>>2]=qh(c[b>>2]|0)|0;Wf(a,16,147271,h);Sf((c[a+28>>2]|0)+60|0);c[f>>2]=0}else d=0}while(0);l=i;return d|0}function TM(a,b){a=a|0;b=b|0;var d=0;d=c[a+124>>2]|0;a:do if((b|0)<0|(d|0)==0)a=0;else{a=0;while(1){if((a|0)>(b|0))break;if(!(c[d+(a<<2)>>2]|0)){a=0;break a}else a=a+1|0}a=c[d+(b<<2)>>2]|0}while(0);return a|0}function UM(a){a=a|0;var b=0,c=0,e=0;e=oN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;pN(a,b);return (qN(a,b+1|0)|0)+-1|0}function VM(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[121995+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122507+a>>0]|0|0}function WM(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116026+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Wf(0,16,151385,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[121995+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122507+a>>0]|0}while(0);l=i;return a|0}function XM(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function YM(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function ZM(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[121995+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123019+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116026+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function _M(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(mN(d)|0){c[b>>2]=(lN(d)|0)+1;if((f|0)==3)e=(lN(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=c[j>>2]|0;if(g>>>0>i>>>0|(e+-1|0)>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e+-1;c[k+12>>2]=i;Wf(h,16,147902,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;n=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;n=9}while(0);if((n|0)==9){c[a>>2]=e;e=0}l=o;return e|0}function $M(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q+8|0;n=q;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(dN(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=eN(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){p=7;break a}if(i>>>0>2){p=9;break a}c[b+27256+(f<<8)+(e<<3)+4>>2]=fN(k)|0;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((p|0)==7){Wf(d,16,147835,n);e=-1094995529}else if((p|0)==9){c[o>>2]=i;Wf(d,16,147861,o);e=-1094995529}l=q;return e|0}function aN(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;if((l|0)>=(m|0))W(32);z=B+16|0;n=B+8|0;k=B;c[f>>2]=0;y=f+4|0;c[y>>2]=0;i=lN(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;Wf(h,16,147726,k);c[j>>2]=0;i=0}v=1<>2]|0))t=0;else{i=lN(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[n>>2]=i;Wf(h,16,147769,n);c[j>>2]=0;i=0}t=1<=2){A=35;break}p=f+16+(g<<2)|0;c[p>>2]=0;q=f+24+(g<<2)|0;c[q>>2]=0;r=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[r>>2]|0))break;if(mN(a)|0){j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=nN(a)|0;i=nN(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){A=38;break a}if((i<<24>>24|0)!=(i|0)){A=38;break a}if(!((i|0)==0&(j|0)==(v|0))){c[f>>2]=1;i=1;j=p;A=17}}else{c[f+32+(e<<4)+(g<<3)>>2]=v;i=0;j=f+32+(e<<4)+(g<<3)+4|0;A=17}if((A|0)==17){A=0;c[j>>2]=i}b:do if(c[u>>2]|0){if(!(mN(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=t;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}else i=0;while(1){if((i|0)>=2)break b;j=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[j>>2]=nN(a)|0;k=nN(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[b>>2]=k;n=c[j>>2]|0;if((n<<24>>24|0)!=(n|0)){A=26;break a}if((k<<24>>24|0)!=(k|0)){A=26;break a}if(!((k|0)==0&(n|0)==(t|0))){c[y>>2]=1;c[q>>2]=1}i=i+1|0}}while(0);c:do if(s?(n=c[f+32+(e<<4)+(g<<3)>>2]|0,x=e<<1,w=x+16|0,x=x+17|0,c[f+32+(x<<4)+(g<<3)>>2]=n,c[f+32+(w<<4)+(g<<3)>>2]=n,n=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(x<<4)+(g<<3)+4>>2]=n,c[f+32+(w<<4)+(g<<3)+4>>2]=n,c[u>>2]|0):0){i=0;while(1){if((i|0)==2)break c;n=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)>>2]=n;n=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)+4>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)+4>>2]=n;i=i+1|0}}while(0);e=e+1|0}if(o)g=g+1|0;else{A=35;break}}if((A|0)==26){c[j>>2]=t;c[b>>2]=0;A=38}else if((A|0)==35){if(!(c[f>>2]|0))i=(c[y>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((A|0)==38){Ni(h,147814,z);i=-1094995529}l=B;return i|0}function bN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+8|0;o=p;a:do if((c[d+44>>2]|0)!=5){k=dN(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if((d|0)>=66){f=21;break a}k=eN(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(fN(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=j&(c[g>>2]|0)+-1}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=eN(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[o>>2]=d;Wf(e,16,147666,o);d=-1;break}else if((f|0)==18){c[n>>2]=k;Wf(e,16,150975,n);d=-1;break}}else{d=0;f=21}}else{cN(b);if(!(dN(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}l=p;return d|0}function cN(a){a=a|0;kN(a);return}function dN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function eN(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[121995+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122507+a>>0]|0|0}function fN(a){a=a|0;var b=0,c=0,e=0;e=gN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;hN(a,b);return (iN(a,b+1|0)|0)+-1|0}function gN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=iN(d,32)|0;l=b;return a|0}function hN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function iN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=jN(a,b)|0;break}else{b=b+-16|0;c=(jN(a,16)|0)<>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function kN(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function lN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116026+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Wf(0,16,151385,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[121995+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122507+a>>0]|0}while(0);l=i;return a|0}function mN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function nN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[121995+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123019+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116026+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function oN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=qN(d,32)|0;l=b;return a|0}function pN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function qN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=XM(a,b)|0;break}else{b=b+-16|0;c=(XM(a,16)|0)<>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;tN(a,b);return (uN(a,b+1|0)|0)+-1|0}function sN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=uN(d,32)|0;l=b;return a|0}function tN(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function uN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=vN(a,b)|0;break}else{b=b+-16|0;c=(vN(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function wN(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967231){if(!(LN(b,d,e+64|0)|0)){b=(c[b>>2]|0)+e|0;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{Sf(b);c[d>>2]=0}return}function xN(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;Wf(g,16,151023,k);h=-1094995529}}else h=-11;l=n;return h|0}function yN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((b+3|0)>>>0>>0){d=0;while(1){f=b+d|0;if((f+3|0)>>>0>=c>>>0)break;e=d+1|0;if(a[f>>0]|0){d=e;continue}if(a[b+e>>0]|0){d=e;continue}if((a[b+(d+2)>>0]|0)==1)break;else d=e}d=d+3|0}else d=c-b|0;return d|0}function zN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=bg(a,N(c,b)|0)|0;else a=0;return a|0}function AN(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=x;s=f+52|0;c[s>>2]=0;h=0;while(1){if((h+1|0)>=(d|0))break;if(!(a[b+h>>0]|0)){i=h+-1|0;if((h|0)>0)h=(a[b+i>>0]|0)==0?i:h;i=h+2|0;if(((i|0)<(d|0)?(a[b+(h+1)>>0]|0)==0:0)?(j=a[b+i>>0]|0,(j&255)<4):0){v=9;break}}h=h+2|0}a:do if((v|0)==9){switch(j<<24>>24){case 0:case 3:break a;default:{}}d=h}while(0);b:do if((g|0)!=0&(h|0)>=(d+-1|0)){c[f+20>>2]=b;c[f+8>>2]=b;c[f+16>>2]=d;c[f+4>>2]=d}else{i=(h|0)>(d|0)?d:h;r=e+8|0;q=(c[e>>2]|0)+(c[r>>2]|0)|0;c[f>>2]=q;iX(q|0,b|0,i|0)|0;o=f+60|0;p=f+56|0;h=i;while(1){j=i+2|0;if((j|0)>=(d|0)){v=30;break}e=b+j|0;g=a[e>>0]|0;if((g&255)<=3){j=a[b+i>>0]|0;if(!(j<<24>>24))if(g<<24>>24==0?1:(a[b+(i+1)>>0]|0)!=0)j=0;else{if(g<<24>>24!=3){w=h;u=i;break}n=h+1|0;a[q+h>>0]=0;h=h+2|0;a[q+n>>0]=0;i=i+3|0;j=c[o>>2]|0;if(!j)continue;k=c[s>>2]|0;g=k+1|0;c[s>>2]=g;e=c[p>>2]|0;if((e|0)<=(k|0)){j=e<<1;c[p>>2]=j;if((j|0)<=(k|0)){v=24;break}IN(o,j,4)|0;j=c[o>>2]|0;if(!j){v=27;break}g=c[s>>2]|0}c[j+(g+-1<<2)>>2]=n;continue}}else{a[q+h>>0]=a[b+i>>0]|0;a[q+(h+1)>>0]=a[b+(i+1)>>0]|0;h=h+2|0;i=j;j=a[e>>0]|0}a[q+h>>0]=j;h=h+1|0;i=i+1|0}c:do if((v|0)==24){c[t>>2]=148403;c[t+4>>2]=148453;c[t+8>>2]=114;Wf(0,0,159637,t);Ub()}else if((v|0)==27){c[p>>2]=0;d=-12;break b}else if((v|0)==30)while(1){if((i|0)>=(d|0)){w=h;u=i;break c}a[q+h>>0]=a[b+i>>0]|0;h=h+1|0;i=i+1|0;v=30}while(0);d=q+w|0;h=d+64|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));c[f+8>>2]=q;c[f+4>>2]=w;c[f+20>>2]=b;c[f+16>>2]=u;c[r>>2]=(c[r>>2]|0)+u;d=u}while(0);l=x;return d|0}function BN(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+8|0;h=c[b+4>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24)e=e+-1-(d[156780+((N(0-b&b,125613361)|0)>>>27)>>0]|0)|0}else e=-34}return e|0}function CN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function DN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;d=a+24|0;if((FN(d)|0)==0?(e=a+44|0,c[e>>2]=GN(d,6)|0,f=GN(d,6)|0,g=(GN(d,3)|0)+-1|0,c[a+48>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=HN(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;Wf(b,48,148155,h);a=(f|0)==0&1}else a=-1094995529;l=i;return a|0}function EN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=a+24|0;if(!(FN(d)|0)){g=a+64|0;c[g>>2]=GN(d,2)|0;d=GN(d,5)|0;c[a+44>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;Wf(b,48,148119,e);a=1}else a=-1094995529;l=f;return a|0}function FN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function GN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function HN(a){a=a|0;do switch(a|0){case 0:{a=148395;break}case 1:{a=148387;break}case 2:{a=148381;break}case 3:{a=148375;break}case 4:{a=148368;break}case 5:{a=148361;break}case 6:{a=148354;break}case 7:{a=148347;break}case 8:{a=148340;break}case 9:{a=148333;break}case 16:{a=148324;break}case 17:{a=148313;break}case 18:{a=148304;break}case 19:{a=148293;break}case 20:{a=148284;break}case 21:{a=148276;break}case 32:{a=148272;break}case 33:{a=148268;break}case 34:{a=148264;break}case 35:{a=148260;break}case 36:{a=148252;break}case 37:{a=148244;break}case 38:{a=148237;break}case 39:{a=148226;break}case 40:{a=148215;break}default:a=148213}while(0);return a|0}function IN(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=JN(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function JN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(!((KN(d,b,f)|0)==0?(e=bg(a,c[f>>2]|0)|0,(e|0)!=0):0)){Tf(a);e=0}l=g;return e|0}function KN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=N(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function LN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148478;c[h+4>>2]=148495;c[h+8>>2]=33;Wf(0,0,159637,h);Ub()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;Sf(b);h=Ng(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}l=i;return g|0}function MN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;if((l|0)>=(m|0))W(48);n=u+24|0;j=u+8|0;s=u+36|0;do if((g&8|0)==0&(NN(b,e,f,1,h)|0)<0){Wf(h,24,148609,u);if((e|0)<=21801){i=e*3|0;k=((i|0)/2|0)+64|0;g=Ng(k)|0;c[s>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=155165;c[j+4>>2]=155179;c[j+8>>2]=137;Wf(0,0,159637,j);Ub()}q=b+e|0;if((i|0)<=-130){c[n>>2]=155165;c[n+4>>2]=155179;c[n+8>>2]=147;Wf(0,0,159637,n);Ub()}p=g;o=g+k|0;g=p;i=b;e=0;a:while(1){k=o-g|0;n=(k|0)<1;while(1){j=q-i|0;if(!j)break a;b=i;if(j>>>0>2){if((j|0)<3)break;i=b+1|0;if(((d[i>>0]|0)<<8|(d[b>>0]|0)<<16|(d[b+2>>0]|0))>>>0<4)break}else i=b+1|0;if(!((e|0)!=0|n)){t=20;break}else e=1}if((t|0)==20){t=0;e=g;a[e>>0]=a[b>>0]|0;g=e+1|0;e=0;continue}if((e|0)==0?(r=g,(k|0)>2):0){a[r+2>>0]=3;a[r+1>>0]=0;a[r>>0]=0;g=r+3|0;e=0}else e=1;i=b+2|0}g=g-p|0;r=fX(g+65534&65535|0)|0;t=c[s>>2]|0;a[t>>0]=r;a[t+1>>0]=r>>8;NN(c[s>>2]|0,g,f,1,h)|0;Sf(s);g=0;break}}else g=-34}else g=0;while(0);l=u;return g|0}function NN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=k;j=k+8|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;a=Ii(j,a,b,f,e,2,27,1)|0;a:do if((a|0)<0)a=0;else{h=j+16|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*68|0)+44>>2]|0;switch(e|0){case 7:{a=Qi(b+(g*68|0)+24|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=Si(b+(g*68|0)+24|0,f,d,c[b+(g*68|0)+12>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;Wf(f,40,155282,i)}}g=g+1|0}}while(0);oi(j);l=k;return a|0}function ON(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29592>>2]=-1;c[b+29664>>2]=c[a+92>>2];c[b+29668>>2]=c[a+96>>2];c[b+26380>>2]=3;c[b+25700>>2]=c[a+564>>2];c[b+25696>>2]=c[a+60>>2];c[b+28248>>2]=65536;c[b+29572>>2]=-1;c[b+29576>>2]=0;c[b+28264>>2]=-1;c[b+29860>>2]=-1;c[b+29712>>2]=-1;c[b+28744>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28676+(d<<2)>>2]=-2147483648;d=d+1|0}Vg(b+29676|0);c[a+332>>2]=1;if(!(c[a+696>>2]&2))d=1;else d=c[a+688>>2]|0;e=b+25632|0;c[e>>2]=d;a=jh(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=Eh()|0;if((d|0)>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=Eh()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function PN(){var a=0,b=0,d=0;if(!(c[45890]|0)){c[45890]=1;c[45721]=186268;c[45723]=256;QN(182880,8,20,148810,1,1,148830,1,1,0,0,0,4)|0;c[45725]=187292;c[45727]=8192;QN(182896,13,36,148850,1,1,148886,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4){a=0;break}c[182912+(b<<4)+4>>2]=220060+(a<<2);d=c[104964+(b<<2)>>2]|0;c[182912+(b<<4)+12>>2]=d;QN(182912+(b<<4)|0,8,68,148922+(b*68|0)|0,1,1,149194+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}while(1){if((a|0)==3){a=0;break}d=a+1|0;c[182976+(d<<4)+4>>2]=225612+(a<<5);c[182976+(d<<4)+12>>2]=8;QN(182976+(d<<4)|0,3,4,149466+(a<<2)|0,1,1,149478+(a<<2)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==7){a=0;break}d=a+1|0;c[183040+(d<<4)+4>>2]=225708+(a<<7);c[183040+(d<<4)+12>>2]=32;QN(183040+(d<<4)|0,5,8,149490+(a<<3)|0,1,1,149546+(a<<3)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==15){a=0;break}d=a+1|0;c[183168+(d<<4)+4>>2]=226604+(a<<11);c[183168+(d<<4)+12>>2]=512;QN(183168+(d<<4)|0,9,16,149602+(a<<4)|0,1,1,149858+(a<<4)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==6)break;d=a+1|0;c[183424+(d<<4)+4>>2]=257324+(a<<5);c[183424+(d<<4)+12>>2]=8;QN(183424+(d<<4)|0,3,7,150114+(a<<4)|0,1,1,150226+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[45885]=257516;c[45887]=96;QN(183536,6,16,150210,1,1,150322,1,1,0,0,0,4)|0;RN()}return}function QN(f,g,h,i,j,k,n,o,p,q,r,s,t){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;V=l;l=l+12624|0;if((l|0)>=(m|0))W(12624);U=V+72|0;T=V+64|0;P=V+56|0;O=V+48|0;C=V+40|0;D=V+32|0;x=V+16|0;v=V;u=V+616|0;w=V+600|0;I=V+88|0;c[f>>2]=g;R=(t&4|0)!=0;do if(R)if((h+1|0)>>>0<1501){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+8>>2]=0;M=w;Q=6;break}else{c[v>>2]=150338;c[v+4>>2]=150397;c[v+8>>2]=282;Wf(0,0,159637,v);Ub()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;u=Lh(h+1|0,8)|0;if(!u)S=-12;else{M=f;Q=6}}while(0);do if((Q|0)==6){L=(q|0)!=0;if(L&(s|0)>2){c[x>>2]=150420;c[x+4>>2]=150397;c[x+8>>2]=298;Wf(0,0,159637,x);Ub()}J=g*3|0;K=(t&2|0)==0;B=0;v=0;while(1){if((B|0)>=(h|0)){Q=41;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=15;break}case 2:{w=b[w>>1]&255;Q=15;break}case 4:{w=c[w>>2]&255;Q=15;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==15){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if((A|0)>(g|0)){if((w&255)>32|(J|0)<(A|0)){Q=18;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=25;break}case 2:{x=e[x>>1]|0;Q=25;break}case 4:{x=c[x>>2]|0;Q=25;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==25){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}H=eX(1,0,w&255|0)|0;G=y;if(!((G|0)>0|(G|0)==0&H>>>0>x>>>0)){Q=27;break}if(K)w=x<<32-A;else w=(d[116282+(x>>>8&255)>>0]|0)<<16|(d[116282+(x&255)>>0]|0)<<24|(d[116282+(x>>>16&255)>>0]|0)<<8|(d[116282+(x>>>24)>>0]|0);c[z>>2]=w;a:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=38;break a}case 2:{w=b[w>>1]|0;Q=38;break a}case 4:{w=c[w>>2]&65535;Q=38;break a}default:break a}}else{w=B&65535;Q=38}while(0);if((Q|0)==38){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==18){c[D>>2]=A;Wf(0,16,150450,D);if(R){S=-1;break}Tf(u);S=-1;break}else if((Q|0)==27){c[C>>2]=x;c[C+4>>2]=B;Wf(0,16,150481,C);if(R){S=-1;break}Tf(u);S=-1;break}else if((Q|0)==41){c[I>>2]=u;c[I+4>>2]=u+(v<<3)+-8;w=1;b:while(1){if(!w)break;w=w+-1|0;H=c[I+(w<<3)+4>>2]|0;x=c[I+(w<<3)>>2]|0;while(1){if(x>>>0>=H>>>0)continue b;C=H+-8|0;if(x>>>0>=C>>>0)break;z=H+-16|0;B=x+8|0;F=H;G=x;D=x+(F-G>>4<<3)|0;do if((SN(x,H)|0)>0)if((SN(H,D)|0)>0){E=D;X=c[E>>2]|0;E=c[E+4>>2]|0;Z=x;Y=c[Z+4>>2]|0;A=D;c[A>>2]=c[Z>>2];c[A+4>>2]=Y;A=x;c[A>>2]=X;c[A+4>>2]=E;A=0;break}else{Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0;break}else if((SN(x,D)|0)>0){Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=D;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0}else A=1;while(0);if((SN(D,H)|0)>0){Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=D;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=D;c[A>>2]=Y;c[A+4>>2]=Z;A=0}if((x|0)==(z|0))continue b;Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=C;X=c[_+4>>2]|0;E=D;c[E>>2]=c[_>>2];c[E+4>>2]=X;E=C;c[E>>2]=Y;c[E+4>>2]=Z;E=B;c:while(1){if(E>>>0>z>>>0)break;else B=E;while(1){if(B>>>0>z>>>0)break;if((SN(B,C)|0)>=0)break;B=B+8|0}while(1){if(B>>>0>z>>>0){E=B;continue c}if((SN(z,C)|0)<=0)break;z=z+-8|0}_=z;Z=c[_>>2]|0;_=c[_+4>>2]|0;X=B;Y=c[X+4>>2]|0;E=z;c[E>>2]=c[X>>2];c[E+4>>2]=Y;E=B;c[E>>2]=Z;c[E+4>>2]=_;E=B+8|0;z=z+-8|0}Z=E;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;B=C;X=c[B+4>>2]|0;_=E;c[_>>2]=c[B>>2];c[_+4>>2]=X;_=C;c[_>>2]=Y;c[_+4>>2]=Z;if(A|0?(D|0)==(E|0)|(D|0)==(E+-8|0):0){A=x;while(1){if(A>>>0>=H>>>0)break;if((SN(A,A+8|0)|0)>=1)break;A=A+8|0}if((A|0)==(H|0))continue b}_=E;if((F-_|0)<(_-G|0)){A=H;B=E+8|0}else{A=z;B=x;z=H;x=E+8|0}c[I+(w<<3)>>2]=x;c[I+(w<<3)+4>>2]=z;H=A;x=B;w=w+1|0}if((SN(x,H)|0)<=0)continue;Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;G=x;X=c[G+4>>2]|0;_=H;c[_>>2]=c[G>>2];c[_+4>>2]=X;_=x;c[_>>2]=Y;c[_+4>>2]=Z}B=0;while(1){if((B|0)>=(h|0)){Q=109;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=83;break}case 2:{w=b[w>>1]&255;Q=83;break}case 4:{w=c[w>>2]&255;Q=83;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==83){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if(!(w<<24>>24==0|(A|0)>(g|0))){if((w&255)>32|(J|0)<(A|0)){Q=86;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=93;break}case 2:{x=e[x>>1]|0;Q=93;break}case 4:{x=c[x>>2]|0;Q=93;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==93){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}_=eX(1,0,w&255|0)|0;Z=y;if(!((Z|0)>0|(Z|0)==0&_>>>0>x>>>0)){Q=95;break}if(K)w=x<<32-A;else w=(d[116282+(x>>>8&255)>>0]|0)<<16|(d[116282+(x&255)>>0]|0)<<24|(d[116282+(x>>>16&255)>>0]|0)<<8|(d[116282+(x>>>24)>>0]|0);c[z>>2]=w;d:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=106;break d}case 2:{w=b[w>>1]|0;Q=106;break d}case 4:{w=c[w>>2]&65535;Q=106;break d}default:break d}}else{w=B&65535;Q=106}while(0);if((Q|0)==106){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==86){c[O>>2]=A;Wf(0,16,150450,O);if(R){S=-1;break}Tf(u);S=-1;break}else if((Q|0)==95){c[P>>2]=x;c[P+4>>2]=B;Wf(0,16,150481,P);if(R){S=-1;break}Tf(u);S=-1;break}else if((Q|0)==109){w=TN(M,g,v,u,t)|0;if(!R){Tf(u);if((w|0)>=0){S=0;break}Sf(M+4|0);S=w;break}u=c[M+8>>2]|0;v=c[M+12>>2]|0;if((u|0)!=(v|0)){c[T>>2]=u;c[T+4>>2]=v;Wf(0,16,150517,T)}if((w|0)>-1){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];S=0;break}else{c[U>>2]=159667;c[U+4>>2]=150397;c[U+8>>2]=341;Wf(0,0,159637,U);Ub()}}}}while(0);l=V;return S|0}function RN(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<>>7&16777215)>>0]|0)|0;f=8-e|0;b=f+1|0;c=b+g|0;do if((c|0)>=9)if(!e){a[258924+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[258924+(g<<9)+(h<<1)>>0]=f+100;b=b&255;break}else{b=(h&65280|0)==0;f=(f<>>((b?0:8)-g+(d[116026+(b?h:h>>>8)>>0]|0)|0))|0;b=f&1;a[258924+(g<<9)+(h<<1)>>0]=((f+2|0)>>>1^0-b)+b;b=c&255}while(0);a[258924+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function SN(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function TN(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D;z=D+4|0;A=1<>2]=(c[v>>2]|0)+(B<<2);w=32-f|0;x=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0)){j=0;break}u=h+(j<<3)|0;o=a[u>>0]|0;s=o&255;n=h+(j<<3)+4|0;p=c[n>>2]|0;t=b[h+(j<<3)+2>>1]|0;c:do if((s|0)>(f|0)){t=s-f|0;k=p>>>w;a[u>>0]=t;c[n>>2]=p<=(g|0))break;o=h+(s<<3)|0;p=(d[o>>0]|0)-f|0;if((p|0)<1)break;q=h+(s<<3)+4|0;r=c[q>>2]|0;if((r>>>w|0)!=(k|0))break;a[o>>0]=p;c[q>>2]=r<(p|0)?n:p;t=s}n=(n|0)>(f|0)?f:n;if(!x)k=(d[116282+(k>>>8&255)>>0]<<16|d[116282+(k&255)>>0]<<24|d[116282+(k>>>16&255)>>0]<<8|d[116282+(k>>>24)>>0])>>>w;b[(c[z>>2]|0)+(k<<2)+2>>1]=0-n;j=TN(e,n,s-j|0,u,i)|0;if((j|0)<0)break a;c[z>>2]=(c[v>>2]|0)+(B<<2);b[(c[z>>2]|0)+(k<<2)>>1]=j;j=t}else{r=1<>>w}else{q=1<>>8&255)>>0]<<16|d[116282+(p&255)>>0]<<24|d[116282+(p>>>16&255)>>0]<<8|d[116282+(p>>>24)>>0]}o=o&255;n=0;while(1){if((n|0)>=(r|0))break c;u=b[(c[z>>2]|0)+(k<<2)+2>>1]|0;if(!(u<<16>>16==0|(u<<16>>16|0)==(s|0))){C=11;break b}b[(c[z>>2]|0)+(k<<2)+2>>1]=o;b[(c[z>>2]|0)+(k<<2)>>1]=t;n=n+1|0;k=k+q|0}}while(0);j=j+1|0}if((C|0)==11){Wf(0,16,150535,y);j=-1094995529;break}while(1){if((j|0)>=(A|0)){j=B;break a}if(!(b[(c[z>>2]|0)+(j<<2)+2>>1]|0))b[(c[z>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);l=D;return j|0}function UN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)Ub();b=(1<>2])+b|0;c[f>>2]=b;h=a+4|0;b=JN(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;kX(b+(c[f>>2]<<2)+(-1<=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function WN(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1672|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1680>>2]=2147483647;Pn(a+1208|0,8,1);return 0}function XN(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=x+32|0;j=x+24|0;u=x+20|0;v=x+16|0;n=x+8|0;o=x;c[u>>2]=f;c[v>>2]=g;q=c[a>>2]|0;h=q+1644|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+72>>2]|0,i|0):0)si(c[b+68>>2]|0,i,q+40|0,q+1636|0,q+1640|0,c[b+580>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=$N(q,f,g,b)|0;if((Uf(q,g,u,v)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[v>>2]|0;break}if((g|0)<0&(g|0)!=-100){$N(q,(c[q>>2]|0)+((c[q+8>>2]|0)+g)|0,0-g|0,b)|0;w=9}else w=9}else w=9;while(0);if((w|0)==9){aO(a,b,c[u>>2]|0,c[v>>2]|0);h=b+760|0;if(c[h>>2]|0){c[o>>2]=c[b+84>>2];c[o+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];bO(n,j,k);p=c[n>>2]|0;r=b+76|0;c[r>>2]=c[n+4>>2];c[r+4>>2]=p}h=c[q+1404>>2]|0;if((h|0)>-1){r=c[q+1432>>2]|0;k=h;p=c[q+1400>>2]|0}else{r=-2147483648;k=-2147483648;p=-2147483648}c[a+240>>2]=r;c[a+244>>2]=k;c[a+248>>2]=p;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((r|0)>-1?(s=c[b+80>>2]|0,t=c[b+772>>2]|0,s=$W(t|0,((t|0)<0)<<31>>31|0,s|0,((s|0)<0)<<31>>31|0)|0,t=y,(t|0)>0|(t|0)==0&s>>>0>0):0){n=c[b+76>>2]|0;o=c[b+776>>2]|0;n=$W(o|0,((o|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=q+1672|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{w=cO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;i=VW(w|0,y|0,h|0,i|0)|0;h=y;w=j;c[w>>2]=i;c[w+4>>2]=h;w=21}}else{k=cO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;k=WW(i|0,h|0,k|0,y|0)|0;b=y;f=q+1672|0;q=f;c[q>>2]=k;c[q+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))w=21}if((w|0)==21){j=a+40|0;w=j;if((c[w>>2]|0)==0?(c[w+4>>2]|0)==-2147483648:0){t=cO(p,((p|0)<0)<<31>>31,n,o,s,t)|0;t=VW(t|0,y|0,i|0,h|0)|0;w=j;c[w>>2]=t;c[w+4>>2]=y}}if((r|0)>0){w=f;c[w>>2]=i;c[w+4>>2]=h}}c[d>>2]=c[u>>2];c[e>>2]=c[v>>2]}l=x;return g|0}function YN(a){a=a|0;a=c[a>>2]|0;Sf(a);Vg(a+1388|0);ni(a+40|0);return}function ZN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[k>>2]=-1;j=d+e|0;b=0;e=d;i=0;a:while(1)b:while(1){h=(b|0)!=0;while(1){if(e>>>0>=j>>>0){b=0;break a}e=_N(e,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}f=g&31;switch(g&31){case 8:{i=1;continue a}case 7:{b=1;continue b}default:{}}if(h&((f|0)!=15&((f|4|0)!=13&(i|(f|0)!=6)))){n=8;break a}}}if((n|0)==8){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;n=8}else break}b=b-d|0}l=o;return b|0}function _N(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;if(b>>>0>e>>>0){c[g>>2]=150760;c[g+4>>2]=127039;c[g+8>>2]=1892;Wf(0,0,159637,g);Ub()}a:do if(b>>>0>>0){h=0;while(1){if((h|0)>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}while(1){if(b>>>0>=e>>>0)break;g=a[b+-1>>0]|0;if((g&255)>1){b=b+3|0;continue}if(!(a[b+-2>>0]|0)){h=b+1|0;if(!((g&255)+-1|d[b+-3>>0])){b=h;break}else{b=h;continue}}else{b=b+2|0;continue}}e=b>>>0>e>>>0?e:b;j=e+-4|0;c[f>>2]=gX(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0}while(0);l=i;return e|0}function $N(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=z+8|0;h=z;t=z+16|0;x=b+1636|0;y=b+16|0;j=c[y>>2]|0;j=j>>>0>13?7:j;s=b+1640|0;if(c[x>>2]|0)if(!(c[s>>2]|0)){Wf(g,16,151057,h);i=0}else i=0;else i=f;o=b+1340|0;p=b+1660|0;q=b+1664|0;r=b+1652|0;w=b+20|0;h=0;a:while(1){if((h|0)>=(f|0)){v=31;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Ld[c[o>>2]&15](e+h|0,i-h|0)|0)+h|0;n=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{n=i;j=j^5;break b}case 0:{n=i;j=j>>>1;break b}default:{n=i;j=7;break b}}k=a[e+h>>0]|0;if(j>>>0>=6){n=c[p>>2]|0;c[p>>2]=n+1;a[b+1652+n>>0]=k;k=c[p>>2]|0;if((k|0)>5){n=c[q>>2]|0;qO(t,r,k<<3)|0;c[p>>2]=0;k=iO(t)|0;c[q>>2]=k;if(c[w>>2]|0){if(k>>>0<=n>>>0){v=29;break a}}else c[w>>2]=1;n=i;j=7}else n=i}else{n=i;i=k;v=20}}else{j=c[s>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){v=12;break a}h=i;n=i+k|0;j=5;i=a[e+i>>0]|0;v=20}while(0);c:do if((v|0)==20){v=0;if(((i&31)+-6&255)<4){k=(c[w>>2]|0)==0;h=h+((k^1)&1)|0;if(k){j=7;break}else{i=n;f=j;v=32;break a}}switch(i&31){case 1:case 2:case 5:break;default:{j=7;break c}}j=j+8|0}while(0);h=h+1|0;i=n}if((v|0)==12){c[u>>2]=k;c[u+4>>2]=h;Wf(g,16,151094,u);v=33}else if((v|0)==29){f=j;v=32}else if((v|0)==31){c[y>>2]=j;f=(c[x>>2]|0)==0?-100:i;v=33}if((v|0)==32){c[y>>2]=7;c[w>>2]=0;l=z;return ((c[x>>2]|0)==0?h-(f&5)+(f>>>0>7?-5:0)|0:i)|0}else if((v|0)==33){l=z;return f|0}return 0}function aO(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+128|0;if((l|0)>=(m|0))W(128);w=L+24|0;B=L+16|0;y=L+8|0;x=L;K=L+112|0;u=L+44|0;v=L+40|0;H=L+32|0;J=c[b>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;h=u;i=h+68|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)p=(KT(150769,f,4)|0)==0;else p=0;z=b+32|0;c[z>>2]=1;A=b+224|0;c[A>>2]=0;G=b+312|0;c[G>>2]=0;F=J+1388|0;Vg(F);c[J+1572>>2]=-1;a:do if(g|0?(wN(K,K+4|0,g),c[K>>2]|0):0){c[v>>2]=0;C=u+24|0;o=u+8|0;q=u+4|0;E=u+64|0;D=u+44|0;r=J+40|0;s=u+12|0;t=J+1640|0;i=c[J+1636>>2]|0?0:g;h=0;b:while(1){while(1){if((h|0)>=(i|0)){I=8;break}h=eO(f,g,h,i)|0;if((h|0)>=(g|0)){I=103;break b}if((h|0)<(i|0)){I=12;break}}if((I|0)==8){I=0;c[v>>2]=h;h=dO(c[t>>2]|0,f,g,v,e)|0;if((h|0)<0){I=104;break}k=c[v>>2]|0;n=k+h|0;h=k}else if((I|0)==12){I=0;c[v>>2]=h;n=i}i=n-h|0;k=f+h|0;M=a[k>>0]|0;j=M&255;c:do switch(M&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=AN(k,i,K,u,1)|0;if((i|0)<0){I=104;break}h=h+i|0;c[v>>2]=h;if((fO(C,c[o>>2]|0,c[q>>2]|0)|0)<0)break;gO(C)|0;c[E>>2]=hO(C,2)|0;M=hO(C,5)|0;c[D>>2]=M;switch(M|0){case 5:{I=23;break b}case 1:{I=24;break b}case 7:{Qi(C,e,r,0)|0;i=n;continue b}case 8:{Si(C,e,r,c[s>>2]|0)|0;i=n;continue b}case 6:{Oi(F,C,r,e)|0;i=n;continue b}default:{i=n;continue b}}}if((I|0)==23){c[A>>2]=1;c[J+1384>>2]=0;c[J+1380>>2]=0;c[J+1372>>2]=0;c[J+1368>>2]=0;I=24}else if((I|0)==103){c[v>>2]=h;I=104}d:do if((I|0)==24){iO(C)|0;c[z>>2]=d[123531+(((jO(C)|0)>>>0)%5|0)>>0];if((c[J+1428>>2]|0)>-1)c[A>>2]=1;h=kO(C)|0;if(h>>>0>255){c[x>>2]=h;Wf(e,16,150774,x);break}i=J+168+(h<<2)|0;if(!(c[i>>2]|0)){c[y>>2]=h;Wf(e,16,150798,y);break}M=J+1192|0;Bg(M);j=J+1196|0;Bg(j);q=J+1200|0;c[q>>2]=0;k=J+1204|0;c[k>>2]=0;h=Dh(c[i>>2]|0)|0;c[M>>2]=h;if(h|0){h=c[h+4>>2]|0;c[q>>2]=h;h=c[h>>2]|0;i=c[J+40+(h<<2)>>2]|0;if(!i){c[B>>2]=h;Wf(e,16,150830,B);break}h=Dh(i)|0;c[j>>2]=h;if(h|0){o=c[h+4>>2]|0;c[k>>2]=o;if(((c[o+48>>2]|0)<2?(c[(c[q>>2]|0)+20>>2]|0)>>>0<2:0)?(c[z>>2]|0)==1:0)c[A>>2]=1;n=J+1344|0;p=J+1364|0;c[p>>2]=hO(C,c[o+20>>2]|0)|0;h=c[o+56>>2]<<4;c[b+328>>2]=h;i=c[o+60>>2]<<4;c[b+332>>2]=i;M=h-(c[o+84>>2]|0)-(c[o+80>>2]|0)|0;j=b+320|0;c[j>>2]=M;B=i-(c[o+88>>2]|0)-(c[o+92>>2]|0)|0;k=b+324|0;c[k>>2]=B;if((B|0)<1|(M|0)<1){c[j>>2]=h;c[k>>2]=i}e:do switch(c[o+1184>>2]|0){case 9:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=68;break e}else{c[b+336>>2]=(h|0)==2?72:62;break e}}case 10:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=70;break e}else{c[b+336>>2]=(h|0)==2?66:64;break e}}case 8:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break e}else{c[b+336>>2]=(h|0)==2?4:0;break e}}default:c[b+336>>2]=-1}while(0);c[e+716>>2]=Hn(o)|0;c[e+720>>2]=c[o+8>>2];if((c[o+64>>2]|0)==0?(gO(C)|0)!=0:0)h=(gO(C)|0)+1|0;else h=3;k=J+1648|0;c[k>>2]=h;if((c[D>>2]|0)==5)iO(C)|0;i=o+24|0;h=c[i>>2]|0;if(!h){c[n>>2]=hO(C,c[o+28>>2]|0)|0;if((c[(c[q>>2]|0)+8>>2]|0)==1?(c[k>>2]|0)==3:0)c[J+1352>>2]=lO(C)|0;h=c[i>>2]|0}do if(((h|0)==1?(c[o+32>>2]|0)==0:0)?(c[J+1356>>2]=lO(C)|0,(c[(c[q>>2]|0)+8>>2]|0)==1):0){if((c[k>>2]|0)!=3)break;c[J+1360>>2]=lO(C)|0}while(0);j=H+4|0;c[j>>2]=2147483647;c[H>>2]=2147483647;if((nm(H,b+316|0,o,n,c[k>>2]|0,c[E>>2]|0)|0)>=0){do if((c[E>>2]|0)==0|(c[D>>2]|0)==5)I=70;else{h=mO(b,C,e)|0;if((h|0)<0)break d;if(!h){I=70;break}c[J+1384>>2]=0;h=0;i=1}while(0);if((I|0)==70){c[J+1384>>2]=c[p>>2];h=c[J+1376>>2]|0;i=0}c[J+1380>>2]=h;if(c[E>>2]|0){if(i){i=0;h=(c[k>>2]|0)==2?0:c[H>>2]|0}else{i=c[J+1348>>2]|0;h=c[n>>2]|0}c[J+1368>>2]=i;c[J+1372>>2]=h}i=(c[o+1160>>2]|0)==0;f:do if(i)I=85;else{if(!(c[F>>2]|0)){I=85;break}switch(c[J+1392>>2]|0){case 2:case 1:{h=0;break f}case 4:case 3:case 0:{h=1;break f}case 6:case 5:{h=2;break f}case 7:{h=3;break f}case 8:{h=5;break f}default:{h=(c[k>>2]|0)==3&1;break f}}}while(0);if((I|0)==85)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;g:do if((h|0)==3){c[G>>2]=3;do if(!i){if(!(c[F>>2]|0))break;switch(c[J+1392>>2]|0){case 5:case 3:{h=2;break}case 6:case 4:{h=3;break}default:h=1}c[b+308>>2]=h;break g}while(0);i=c[H>>2]|0;h=c[j>>2]|0;if((i|0)<(h|0)){c[b+308>>2]=2;break}else{c[b+308>>2]=(i|0)>(h|0)?3:1;break}}else{n=(h|0)==1?1:2;c[G>>2]=n;j=c[p>>2]|0;k=J+1680|0;h=J+1684|0;h:do if((j|0)==(c[k>>2]|0)){i=c[h>>2]|0;switch(i|0){case 3:case 0:{I=100;break h}default:{}}if((i|0)==(n|0)){I=100;break}c[b+308>>2]=(i|0)==1?2:3}else I=100;while(0);if((I|0)==100)c[b+308>>2]=0;c[h>>2]=n;c[k>>2]=j}while(0);Sf(K);break a}}}}else if((I|0)==104)if(p){Sf(K);break a}else{c[w>>2]=g;Wf(e,16,150862,w);break}while(0);Sf(K)}while(0);l=L;return}function bO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=$W(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=y;e=c[h>>2]|0;d=c[d+4>>2]|0;e=$W(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;Mn(b,h,g,f,e,y,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function cO(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=Cn(a,b,c,d,e,f,5)|0;return f|0}function dO(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;Wf(g,16,151023,k);h=-1094995529}}else h=-11;l=n;return h|0}function eO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=-1;e=(_N(a+d|0,a+e+1|0,g)|0)-a+-1|0;l=f;return ((e|0)>(b|0)?b:e)|0}function fO(a,b,c){a=a|0;b=b|0;c=c|0;return qO(a,b,c>>>0>268435455?-8:c<<3)|0}function gO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function hO(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function iO(a){a=a|0;var b=0,c=0,e=0;e=nO(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;oO(a,b);return (pO(a,b+1|0)|0)+-1|0}function jO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[121995+a>>0]|0);return d[122507+a>>0]|0|0}function kO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116026+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){Wf(0,16,151385,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[121995+a>>0]|0);a=d[122507+a>>0]|0}while(0);l=h;return a|0}function lO(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(gX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[121995+b>>0]|0);b=a[123019+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116026+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function mO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+20816|0;if((l|0)>=(m|0))W(20816);t=u+16|0;k=u+8|0;j=u;q=u+40|0;i=u+32|0;r=u+24|0;s=c[a+32>>2]&3;p=c[a>>2]|0;g=p+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)kO(b)|0;n=(s|0)==3;if(n)gO(b)|0;o=p+1648|0;a:do if((_M(i,r,b,c[g>>2]|0,s,c[o>>2]|0,d)|0)>=0){if((s|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(gO(b)|0){h=r+(f<<2)|0;e=0;c:while(1){a=jO(b)|0;if(a>>>0<3){iO(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;Wf(d,16,150946,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;Wf(d,16,150907,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((s|0)==2&(c[a+28>>2]|0)!=0)f=22;else f=21}else{a=c[g>>2]|0;f=21}if((f|0)==21?n&(c[a+32>>2]|0)==1:0)f=22;if((f|0)==22)aN(b,c[p+1204>>2]|0,r,s,q,c[o>>2]|0,d)|0;if(gO(b)|0){a=0;d:while(1){if((a|0)>=66){f=33;break}e=jO(b)|0;if(e>>>0>6){f=26;break}switch(e|0){case 5:{a=1;break a}case 0:{f=33;break d}default:{}}if((e|2|0)==3)iO(b)|0;switch(e|0){case 2:case 3:case 4:case 6:{jO(b)|0;break}default:{}}a=a+1|0}if((f|0)==26){c[t>>2]=e;Wf(d,16,150975,t);a=-1094995529;break}else if((f|0)==33){a=0;break}}else a=0}else a=-1094995529;while(0);l=u;return a|0}function nO(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=pO(d,32)|0;l=b;return a|0}function oO(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function pO(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=hO(a,b)|0;break}else{b=b+-16|0;c=(hO(a,16)|0)<>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function rO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=p+4|0;n=p;c[k>>2]=f;c[n>>2]=g;j=c[a>>2]|0;h=c[b+68>>2]|0;if(h|0?(i=j+1708|0,(c[i>>2]|0)==0):0){wO(h,c[b+72>>2]|0,j+64|0,j+460|0,j+1700|0,j+1704|0,c[b+580>>2]|0,1,b)|0;c[i>>2]=1}do if(!(c[a+176>>2]&1)){h=xO(a,f,g)|0;if((Uf(j,h,k,n)|0)<0){c[d>>2]=0;c[e>>2]=0;h=c[n>>2]|0;break}else{f=c[k>>2]|0;i=c[n>>2]|0;o=8;break}}else{h=g;i=g;o=8}while(0);if((o|0)==8){yO(a,f,i,b);c[d>>2]=c[k>>2];c[e>>2]=c[n>>2]}l=p;return h|0}function sO(a){a=a|0;a=c[a>>2]|0;uO(a+64|0);oi(a+40|0);vO(a+460|0);Sf(a);return}function tO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p;k=d+e|0;c[n>>2]=-1;b=0;f=0;j=0;e=d;a:while(1)b:while(1){i=j&(f|0)!=0;c:while(1){h=(b|0)!=0;while(1){if(e>>>0>=k>>>0){b=0;break a}e=_N(e,k,n)|0;g=c[n>>2]|0;if((g&-256|0)!=256){b=0;break a}q=g>>>1;g=q&63;switch(q&63){case 32:{j=1;continue a}case 33:{f=1;continue b}case 34:{b=1;continue c}default:{}}if((g|0)!=35&(h|(g|0)!=39)&i){o=9;break a}}}}if((o|0)==9){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;o=9}else break}b=b-d|0}l=p;return b|0}function uO(a){a=a|0;var b=0;b=0;while(1){if((b|0)==16){b=0;break}Bg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==16){b=0;break}Bg(a+64+(b<<2)|0);b=b+1|0}while(1){if((b|0)==64)break;Bg(a+128+(b<<2)|0);b=b+1|0}c[a+388>>2]=0;c[a+392>>2]=0;c[a+384>>2]=0;return}function vO(a){a=a|0;c[a+92>>2]=0;Sf(a+96|0);return}function wO(b,e,f,g,h,i,j,k,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+32|0;if((l|0)>=(m|0))W(32);y=z+24|0;x=z+16|0;o=z;if((e|0)<=-1){c[o>>2]=155165;c[o+4>>2]=155179;c[o+8>>2]=137;Wf(0,0,159637,o);Ub()}w=b+e|0;do if((e|0)>3){if(((a[b>>0]|0)==0?(a[b+1>>0]|0)==0:0)?(d[b+2>>0]|0)<=1:0){p=28;break}c[h>>2]=1;v=e>>>0<21?e:21;o=b+v|0;if((e-v|0)<1){v=1;o=w}else{v=(a[o>>0]&3)+1&255;o=o+1|0}b=o;if((w-o|0)<1){t=0;b=w}else{t=d[b>>0]|0;b=b+1|0}c[i>>2]=2;o=0;u=0;a:while(1){if((u|0)>=(t|0)){p=27;break}e=b;if((w-b|0)<1){s=0;b=w}else{s=a[e>>0]&63;b=e+1|0}if((w-b|0)<2){r=0;b=w}else{r=b;r=(fX(d[r>>0]|d[r+1>>0]<<8|0)|0)&65535;b=b+2|0}q=0;while(1){if((q|0)>=(r|0))break;e=b;p=w-b|0;if((p|0)<2)o=0;else{o=b;o=(fX(d[o>>0]|d[o+1>>0]<<8|0)|0)&65535}b=o+2|0;if(p>>>0>>0){p=22;break a}o=JP(e,b,f,g,c[h>>2]|0,c[i>>2]|0,j,k,n)|0;if((o|0)<0){p=24;break a}q=q+1|0;b=e+(p>>>0>b>>>0?b:p)|0}u=u+1|0}if((p|0)==22){Wf(n,16,155203,x);o=-1094995529;break}else if((p|0)==24){c[y>>2]=s;c[y+4>>2]=u;Wf(n,16,155240,y);break}else if((p|0)==27){c[i>>2]=v;break}}else p=28;while(0);if((p|0)==28){c[h>>2]=0;o=JP(b,e,f,g,0,c[i>>2]|0,j,k,n)|0}l=z;return o|0}function xO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=c[b>>2]|0;j=k+32|0;k=k+20|0;h=0;a:while(1){if((h|0)>=(f|0)){b=-100;break}b=j;g=c[b>>2]|0;b=c[b+4>>2]|0;n=eX(g|0,b|0,8)|0;i=e+h|0;m=j;c[m>>2]=n|d[i>>0];c[m+4>>2]=y;b:do if((g&-65536|0)==65536&(b&255|0)==0){b=dX(g|0,b|0,9)|0;g=b&63;switch(b&63){case 32:case 33:case 34:case 35:case 36:case 37:case 39:break;default:if(!((b&56|0)==48|(g+-41|0)>>>0<4)){if(!(g>>>0<10|(g+-16|0)>>>0<6))break b;if((a[i>>0]|0)>=0)break b;if(c[k>>2]|0){l=12;break a}c[k>>2]=1;break b}}if(c[k>>2]|0){l=12;break a}}while(0);h=h+1|0}if((l|0)==12){c[k>>2]=0;b=h+-5|0}return b|0}function yO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o;f=c[a>>2]|0;j=f+64|0;k=f+460|0;c[a+32>>2]=1;c[a+224>>2]=0;c[a+312>>2]=0;vO(k);i=f+40|0;a:do if((Ii(i,b,d,e,c[f+1700>>2]|0,c[f+1704>>2]|0,173,1)|0)>=0){d=f+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;f=c[i>>2]|0;g=f+(b*68|0)+24|0;h=c[f+(b*68|0)+44>>2]|0;switch(h|0){case 32:{zO(g,e,j)|0;break}case 33:{AO(g,e,j,1)|0;break}case 34:{BO(g,e,j)|0;break}case 40:case 39:{CO(g,e,k,j,h)|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 1:case 0:{if(DO(a,f+(b*68|0)|0,e)|0)break a;break}default:{}}b=b+1|0}Wf(e,16,151292,n)}while(0);l=o;return}function zO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+96|0;if((l|0)>=(m|0))W(96);x=D+80|0;v=D+72|0;s=D+64|0;q=D+56|0;p=D+48|0;o=D+40|0;n=D+32|0;k=D+24|0;j=D+16|0;i=D+8|0;B=D+84|0;z=vh(4568)|0;c[B>>2]=z;C=z;a:do if(!z)f=-12;else{A=z+4|0;u=c[A>>2]|0;Wf(d,48,154799,D);f=c[b>>2]|0;g=(c[b+4>>2]|0)-f|0;if(g>>>0>4096){c[i>>2]=g;c[i+4>>2]=4096;Wf(d,24,154813,i);g=4096;f=c[b>>2]|0}c[u+4564>>2]=g;iX(u+468|0,f|0,g|0)|0;w=jP(b,4)|0;b:do if((w|0)<=15){if((jP(b,2)|0)!=3){Wf(d,16,154858,k);break}c[u+4>>2]=(jP(b,6)|0)+1;t=u+8|0;c[t>>2]=(jP(b,3)|0)+1;a[u>>0]=iP(b)|0;if((jP(b,16)|0)!=65535){Wf(d,16,154897,n);break}f=c[t>>2]|0;if((f|0)>7){c[o>>2]=f;Wf(d,16,154937,o);break}if((zP(b,d,u+12|0,f)|0)>=0){o=iP(b)|0;c[u+348>>2]=o;if(!o)f=(c[t>>2]|0)+-1|0;else f=0;j=d+580|0;while(1){if((f|0)>=(c[t>>2]|0))break;i=u+352+(f<<2)|0;c[i>>2]=(hP(b)|0)+1;g=u+380+(f<<2)|0;c[g>>2]=hP(b)|0;c[u+408+(f<<2)>>2]=(hP(b)|0)+-1;i=(c[i>>2]|0)+-1|0;if(i>>>0>15){r=18;break}g=c[g>>2]|0;if(g>>>0>i>>>0?(c[q>>2]=g,Wf(d,24,155025,q),c[j>>2]&8|0):0)break b;f=f+1|0}if((r|0)==18){c[p>>2]=i;Wf(d,16,154974,p);break}j=u+436|0;c[j>>2]=jP(b,6)|0;r=hP(b)|0;f=r+1|0;k=u+440|0;c[k>>2]=f;if(r>>>0<=1023?(o=VW(f|0,((f|0)<0)<<31>>31|0,-1,-1)|0,q=y,h=c[j>>2]|0,r=VW(h|0,((h|0)<0)<<31>>31|0,1,0)|0,q=$W(r|0,y|0,o|0,q|0)|0,o=y,r=pP(b)|0,p=((r|0)<0)<<31>>31,!((o|0)>(p|0)|(o|0)==(p|0)&q>>>0>r>>>0)):0){i=1;while(1){if((i|0)<(f|0)){g=0;f=h}else break;while(1){if((g|0)>(f|0))break;DP(b,1);g=g+1|0;f=c[j>>2]|0}i=i+1|0;h=f;f=c[k>>2]|0}s=(iP(b)|0)&255;a[u+444>>0]=s;c:do if(s<<24>>24){c[u+448>>2]=vP(b,32)|0;c[u+452>>2]=vP(b,32)|0;s=(iP(b)|0)&255;a[u+456>>0]=s;if(s<<24>>24)c[u+460>>2]=(hP(b)|0)+1;f=hP(b)|0;h=u+464|0;c[h>>2]=f;if(f>>>0>(c[k>>2]|0)>>>0){c[v>>2]=f;Wf(d,16,155102,v);break b}else g=0;while(1){if((g|0)>=(f|0))break c;hP(b)|0;if(!g)f=1;else f=iP(b)|0;EP(b,f,c[t>>2]|0);g=g+1|0;f=c[h>>2]|0}}while(0);iP(b)|0;f=pP(b)|0;if((f|0)<0){c[x>>2]=0-f;Wf(d,16,155140,x);f=e+(w<<2)|0;if(c[f>>2]|0)break}else{f=e+(w<<2)|0;g=c[f>>2]|0;if((g|0)!=0?(KT(c[g+4>>2]|0,c[A>>2]|0,c[z+8>>2]|0)|0)==0:0){Bg(B);f=0;break a}}IP(e,w);c[f>>2]=C;f=0;break a}Wf(d,16,155068,s)}}else{c[j>>2]=w;Wf(d,16,152563,j)}while(0);Bg(B);f=-1094995529}while(0);l=D;return f|0}function AO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=r+16|0;h=r+8|0;n=r+44|0;i=r+40|0;o=vh(17552)|0;c[n>>2]=o;p=o;do if(!o)f=-12;else{q=o+4|0;j=c[q>>2]|0;Wf(b,48,152348,r);f=c[a>>2]|0;g=(c[a+4>>2]|0)-f|0;if(g>>>0>4096){c[h>>2]=g;c[h+4>>2]=4096;Wf(b,24,152362,h);g=4096;f=c[a>>2]|0}c[j+17548>>2]=g;iX(j+13452|0,f|0,g|0)|0;f=xP(j,a,i,e,d,b)|0;if((f|0)<0){Bg(n);break}h=c[i>>2]|0;if(c[b+576>>2]&4|0){g=c[j+13376>>2]|0;a=c[j+13380>>2]|0;e=g-(c[j+12>>2]|0)-(c[j+16>>2]|0)|0;i=a-(c[j+20>>2]|0)-(c[j+24>>2]|0)|0;j=qh(c[j+56>>2]|0)|0;c[k>>2]=h;c[k+4>>2]=g;c[k+8>>2]=a;c[k+12>>2]=e;c[k+16>>2]=i;c[k+20>>2]=j;Wf(b,48,152407,k)}f=d+64+(h<<2)|0;g=c[f>>2]|0;if(g|0?(KT(c[g+4>>2]|0,c[q>>2]|0,c[o+8>>2]|0)|0)==0:0){Bg(n);f=0;break}yP(d,h);c[f>>2]=p;f=0}while(0);l=r;return f|0}function BO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+144|0;if((l|0)>=(m|0))W(144);I=K+120|0;G=K+112|0;E=K+104|0;D=K+96|0;B=K+88|0;z=K+80|0;w=K+72|0;v=K+64|0;t=K+56|0;s=K+48|0;r=K+40|0;o=K+32|0;n=K+24|0;k=K+16|0;j=K+8|0;h=K;J=K+128|0;x=K+124|0;g=Ng(5792)|0;c[x>>2]=g;a:do if(!g)f=-12;else{C=mh(g,5792,195,0,0)|0;c[J>>2]=C;H=C;if(!C){Sf(x);f=-12;break}Wf(d,48,151561,h);h=c[b>>2]|0;i=(c[b+4>>2]|0)-h|0;if(i>>>0>4096){c[j>>2]=i;c[j+4>>2]=4096;Wf(d,24,151575,j);i=4096;h=c[b>>2]|0}c[g+5788>>2]=i;iX(g+1692|0,h|0,i|0)|0;a[g+53>>0]=1;u=g+44|0;c[u>>2]=1;p=g+48|0;c[p>>2]=1;q=g+52|0;a[q>>0]=1;a[g+57>>0]=0;c[g+60>>2]=0;c[g+64>>2]=0;a[g+1629>>0]=2;C=hP(b)|0;b:do if(C>>>0<=63){i=hP(b)|0;c[g>>2]=i;if(i>>>0>15){c[n>>2]=i;Wf(d,16,151645,n);f=-1094995529;break}h=c[e+64+(i<<2)>>2]|0;if(!h){c[o>>2]=i;Wf(d,16,151670,o);f=-1094995529;break}A=c[h+4>>2]|0;a[g+41>>0]=iP(b)|0;a[g+39>>0]=iP(b)|0;c[g+1624>>2]=jP(b,3)|0;a[g+4>>0]=iP(b)|0;a[g+5>>0]=iP(b)|0;c[g+8>>2]=(hP(b)|0)+1;c[g+12>>2]=(hP(b)|0)+1;c[g+16>>2]=kP(b)|0;a[g+20>>0]=iP(b)|0;a[g+21>>0]=iP(b)|0;o=(iP(b)|0)&255;a[g+22>>0]=o;h=g+24|0;c[h>>2]=0;do if(o<<24>>24){i=hP(b)|0;c[h>>2]=i;if((i|0)>=0?i>>>0<=(c[A+13324>>2]|0)>>>0:0)break;c[r>>2]=i;Wf(d,16,151694,r);f=-1094995529;break b}while(0);h=kP(b)|0;c[g+28>>2]=h;if((h+12|0)>>>0>24){c[s>>2]=h;Wf(d,16,151732,s);f=-1094995529;break}h=kP(b)|0;c[g+32>>2]=h;if((h+12|0)>>>0>24){c[t>>2]=h;Wf(d,16,151767,t);f=-1094995529;break}a[g+36>>0]=iP(b)|0;a[g+37>>0]=iP(b)|0;a[g+38>>0]=iP(b)|0;a[g+40>>0]=iP(b)|0;t=g+42|0;a[t>>0]=iP(b)|0;a[g+43>>0]=iP(b)|0;do if(a[t>>0]|0){c[u>>2]=(hP(b)|0)+1;h=hP(b)|0;i=h+1|0;c[p>>2]=i;j=c[u>>2]|0;if((j|0)>=1?(j|0)<(c[A+13376>>2]|0):0){if((i|0)>=1?(i|0)<(c[A+13380>>2]|0):0){n=g+1648|0;c[n>>2]=Lh(j,4)|0;w=Lh(c[p>>2]|0,4)|0;c[g+1652>>2]=w;if((c[n>>2]|0)==0|(w|0)==0){f=-12;break b}w=(iP(b)|0)&255;a[q>>0]=w;do if(!(w<<24>>24)){g=0;j=0;k=0;while(1){i=(c[u>>2]|0)+-1|0;if((g|0)>=(i|0))break;w=(hP(b)|0)+1|0;c[(c[n>>2]|0)+(g<<2)>>2]=w;w=VW(j|0,k|0,w|0,0)|0;g=g+1|0;j=w;k=y}g=c[A+13384>>2]|0;h=((g|0)<0)<<31>>31;if(!(k>>>0>>0|(k|0)==(h|0)&j>>>0>>0)){Wf(d,16,151883,z);f=-1094995529;break b}g=WW(g|0,h|0,j|0,k|0)|0;c[(c[n>>2]|0)+(i<<2)>>2]=g;g=c[x>>2]|0;i=g+48|0;j=g+1652|0;h=0;n=0;o=0;while(1){k=(c[i>>2]|0)+-1|0;if((h|0)>=(k|0))break;z=(hP(b)|0)+1|0;c[(c[j>>2]|0)+(h<<2)>>2]=z;z=VW(n|0,o|0,z|0,0)|0;h=h+1|0;n=z;o=y}h=c[A+13388>>2]|0;i=((h|0)<0)<<31>>31;if(o>>>0>>0|(o|0)==(i|0)&n>>>0>>0){B=WW(h|0,i|0,n|0,o|0)|0;c[(c[j>>2]|0)+(k<<2)>>2]=B;break}else{Wf(d,16,151905,B);f=-1094995529;break b}}while(0);a[g+53>>0]=iP(b)|0;break}c[w>>2]=h;Wf(d,16,151844,w);f=-1094995529;break b}c[v>>2]=j+-1;Wf(d,16,151802,v);f=-1094995529;break b}while(0);a[g+54>>0]=iP(b)|0;B=(iP(b)|0)&255;a[g+55>>0]=B;do if(B<<24>>24?(a[g+56>>0]=iP(b)|0,B=(iP(b)|0)&255,a[g+57>>0]=B,B<<24>>24==0):0){h=kP(b)|0;i=kP(b)|0;if((h+6|0)>>>0>12){c[D>>2]=h;Wf(d,16,151928,D);f=-1094995529;break b}if((i+6|0)>>>0>12){c[E>>2]=i;Wf(d,16,151967,E);f=-1094995529;break b}else{c[g+60>>2]=h<<1;c[g+64>>2]=i<<1;break}}while(0);E=(iP(b)|0)&255;a[g+68>>0]=E;if(E<<24>>24?(lP(g+69|0),f=mP(b,d,g+69|0,A)|0,(f|0)<0):0)break;a[g+1617>>0]=iP(b)|0;f=hP(b)|0;if(f>>>0>(c[A+13336>>2]|0)>>>0){c[G>>2]=f;Wf(d,16,152004,G);f=-1094995529;break}c[g+1620>>2]=f+2;a[g+1628>>0]=iP(b)|0;if((iP(b)|0?(G=iP(b)|0,jP(b,7)|0,(G|0)!=0&(a[A+302>>0]|0)==4):0)?(F=nP(b,d,g,A)|0,(F|0)<0):0){f=F;break}f=oP(g,A)|0;if((f|0)>=0){g=pP(b)|0;if((g|0)<0){c[I>>2]=0-g;Wf(d,16,152055,I);break}else{qP(e,C);c[e+128+(C<<2)>>2]=H;f=0;break a}}}else{c[k>>2]=C;Wf(d,16,151620,k);f=-1094995529}while(0);Bg(J)}while(0);l=K;return f|0}function CO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;while(1){f=JO(a,b,c,d,e)|0;if((f|0)<0)break;if(!(KO(a)|0)){f=1;break}}return f|0}function DO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;if((l|0)>=(m|0))W(32);w=A+24|0;u=A+16|0;j=A+8|0;i=A;y=c[b>>2]|0;v=e+24|0;q=y+628|0;a[q>>0]=EO(v)|0;x=c[y+548>>2]|0;c[b+312>>2]=x;c[b+308>>2]=x;x=e+44|0;if((c[x>>2]&-8|0)==16){c[b+224>>2]=1;a[y+1242>>0]=EO(v)|0}g=FO(v)|0;c[y+608>>2]=g;a:do if(g>>>0<=63?(h=c[y+192+(g<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;t=y+456|0;c[t>>2]=g;g=c[g>>2]|0;if(g>>>0<=15?(k=c[y+128+(g<<2)>>2]|0,k|0):0){s=y+452|0;h=c[s>>2]|0;g=c[k+4>>2]|0;if((h|0)==(g|0)){g=h;h=c[y+448>>2]|0}else{c[s>>2]=g;h=c[(c[y+64+(c[g>>2]<<2)>>2]|0)+4>>2]|0;c[y+448>>2]=h}j=c[g+13376>>2]|0;c[b+328>>2]=j;k=c[g+13380>>2]|0;c[b+332>>2]=k;c[b+320>>2]=j-(c[g+12>>2]|0)-(c[g+16>>2]|0);c[b+324>>2]=k-(c[g+20>>2]|0)-(c[g+24>>2]|0);c[b+336>>2]=c[g+56>>2];c[f+716>>2]=d[g+302>>0];c[f+720>>2]=d[g+335>>0];if(!(a[h+444>>0]|0)){if(c[g+240>>2]|0){o=g+244|0;p=g+248|0;z=16}}else{o=h+448|0;p=h+452|0;z=16}if((z|0)==16?(n=c[o>>2]|0,r=c[p>>2]|0,(n|0)!=0&(r|0)!=0):0)Mn(f+764|0,f+760|0,n,((n|0)<0)<<31>>31,r,((r|0)<0)<<31>>31,1073741824,0)|0;do if(!(a[q>>0]|0)){if(!(a[(c[t>>2]|0)+41>>0]|0))g=0;else g=(EO(v)|0)&255;k=y+629|0;a[k>>0]=g;h=c[s>>2]|0;i=c[h+13384>>2]|0;h=c[h+13388>>2]|0;g=(N(i<<1,h)|0)+-2|0;q=g>>>0>65535;g=q?g>>>16:g;q=q?16:0;r=(g&65280|0)==0;g=(r?q:q|8)+(d[116026+(r?g:g>>>8)>>0]|0)|0;if(!g){j=0;g=i}else{j=GO(v,g)|0;g=c[s>>2]|0;h=c[g+13388>>2]|0;g=c[g+13384>>2]|0}c[y+612>>2]=j;if(j>>>0<(N(h,g)|0)>>>0)if(!(a[k>>0]|0)){g=0;break}else{g=0;break a}else{c[u>>2]=j;Wf(f,16,151324,u);g=-1094995529;break a}}else{a[y+629>>0]=0;g=0}while(0);while(1){if((g|0)>=(c[(c[t>>2]|0)+1624>>2]|0))break;HO(v);g=g+1|0}g=FO(v)|0;c[y+620>>2]=g;if(g>>>0>=3){c[w>>2]=g;Wf(f,16,151360,w);g=-1094995529;break}c[b+32>>2]=(g|0)==0?3:(g|0)==1?2:1;if(a[(c[t>>2]|0)+39>>0]|0)a[y+630>>0]=EO(v)|0;if(a[(c[s>>2]|0)+8>>0]|0)a[y+631>>0]=GO(v,2)|0;if(((c[x>>2]|0)+-19|0)>>>0<2)g=0;else{g=GO(v,c[(c[s>>2]|0)+60>>2]|0)|0;c[y+624>>2]=g;g=IO(c[s>>2]|0,c[y+1716>>2]|0,g,c[x>>2]|0)|0}c[y+1712>>2]=g;c[b+316>>2]=g;if(c[e+48>>2]|0){g=1;break}switch(c[x>>2]|0){case 9:case 7:case 8:case 6:case 4:case 2:case 0:{g=1;break a}default:{}}c[y+1716>>2]=g;g=1;break}c[j>>2]=g;Wf(f,16,151645,j);g=-1094995529}else z=5;while(0);if((z|0)==5){c[i>>2]=g;Wf(f,16,151620,i);g=-1094995529}l=A;return g|0}function EO(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function FO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116026+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Wf(0,16,151385,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[121995+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122507+a>>0]|0}while(0);l=i;return a|0}function GO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function HO(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function IO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=1<>2];g=(b|0)%(f|0)|0;a=b-g|0;if((g|0)>(d|0)?(g-d|0)>=((f|0)/2|0|0):0)a=a+f|0;else if((g|0)<(d|0))a=a-((d-g|0)>((f|0)/2|0|0)?f:0)|0;return ((e+-16|0)>>>0<3?0:a)+d|0}function JO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);Wf(b,48,151409,j);f=255;h=0;while(1){if((f|0)!=255){f=0;g=255;i=5;break}if((h|0)>2147483392|(LO(a)|0)<16){f=-1094995529;break}g=OO(a,8)|0;f=g;h=g+h|0}a:do if((i|0)==5){while(1){if((g|0)!=255)break;i=LO(a)|0;k=((i|0)<0)<<31>>31;g=eX(f|0,((f|0)<0)<<31>>31|0,3)|0;g=VW(g|0,y|0,8,0)|0;n=y;if((n|0)>(k|0)|(n|0)==(k|0)&g>>>0>i>>>0){f=-1094995529;break a}g=OO(a,8)|0;f=g+f|0;i=5}if((e|0)==39){f=PO(a,b,c,d,h,f)|0;break}else{QO(a,b,c,h,f);f=0;break}}while(0);l=j;return f|0}function KO(a){a=a|0;if((LO(a)|0)>0)a=(MO(a)|0)!=128&1;else a=0;return a|0}function LO(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(NO(a)|0)|0}function MO(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>24|0}function NO(a){a=a|0;return c[a+8>>2]|0}function OO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function PO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;do switch(f|0){case 256:{RO(d,a);a=0;break}case 45:{UO(d+52|0,a);a=0;break}case 47:{VO(d+72|0,a);a=0;break}case 1:{a=WO(d,a,e,b,g)|0;break}case 137:{XO(d+100|0,a);a=0;break}case 144:{YO(d+128|0,a);a=0;break}case 129:{a=ZO(d,a,b)|0;break}case 4:{a=_O(d,a,g)|0;break}case 147:{$O(d+140|0,a);a=0;break}default:{c[h>>2]=f;Wf(b,48,151446,h);SO(a,g<<3);a=0}}while(0);l=i;return a|0}function QO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if((e|0)==132)RO(d,a);else{c[g>>2]=e;Wf(b,48,151423,g);SO(a,f<<3)}l=h;return}function RO(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=(OO(c,8)|0)&255;f=b+48|0;d=0;while(1){if((d|0)==3)break;a:do switch(g<<24>>24){case 0:{a[f>>0]=1;e=0;while(1){if((e|0)==16)break a;a[b+(d<<4)+e>>0]=OO(c,8)|0;e=e+1|0}}case 1:{TO(c,16);break}case 2:{TO(c,32);break}default:{}}while(0);d=d+1|0}return}function SO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function TO(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function UO(a,b){a=a|0;b=b|0;var d=0,e=0;cP(b)|0;d=(fP(b)|0)==0;c[a>>2]=d&1;if(d){d=a+4|0;c[d>>2]=OO(b,7)|0;e=a+12|0;c[e>>2]=fP(b)|0;c[a+8>>2]=OO(b,6)|0;TO(b,3);c[a+16>>2]=fP(b)|0;TO(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)TO(b,16);TO(b,8);eP(b)}eP(b);return}function VO(a,b){a=a|0;b=b|0;var d=0;d=(fP(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=fP(b)|0;c[a+12>>2]=fP(b)|0;c[a+4>>2]=OO(b,16)|0;eP(b)}return}function WO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j+8|0;g=j;d=c[d+64+(c[a+136>>2]<<2)>>2]|0;if(!d)f=-12;else{if(c[(c[d+4>>2]|0)+216>>2]|0){d=OO(b,4)|0;a=a+88|0;c[a>>2]=0;switch(d|0){case 2:case 10:case 12:{Wf(e,48,151536,g);d=2;i=6;break}case 1:case 9:case 11:{Wf(e,48,151550,h);d=1;i=6;break}default:{}}if((i|0)==6)c[a>>2]=d;OO(b,2)|0;OO(b,1)|0;eP(b);f=f+-1|0}SO(b,f<<3);f=0}l=j;return f|0}function XO(a,d){a=a|0;d=d|0;var e=0,f=0;e=0;while(1){f=(OO(d,16)|0)&65535;if((e|0)==3)break;b[a+4+(e<<2)>>1]=f;b[a+4+(e<<2)+2>>1]=OO(d,16)|0;e=e+1|0}b[a+16>>1]=f;b[a+18>>1]=OO(d,16)|0;c[a+20>>2]=aP(d,32)|0;c[a+24>>2]=aP(d,32)|0;c[a>>2]=2;return}function YO(a,d){a=a|0;d=d|0;b[a+4>>1]=aP(d,16)|0;b[a+6>>1]=aP(d,16)|0;c[a>>2]=2;return}function ZO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h+8|0;e=h;OO(b,4)|0;OO(b,1)|0;OO(b,1)|0;g=cP(b)|0;a:do if(g>>>0>15){c[e>>2]=g;Wf(d,16,151469,e);e=-1094995529}else{e=cP(b)|0;if(e>>>0>15){c[f>>2]=e;Wf(d,16,151500,f);e=-1094995529;break}c[a+136>>2]=e;e=1;while(1){if((e|0)>(g|0)){e=0;break a}cP(b)|0;e=e+1|0}}while(0);l=h;return e|0}function _O(a,b,c){a=a|0;b=b|0;c=c|0;do if((c|0)>=7){if((OO(b,8)|0)==255){TO(b,8);c=c+-8|0}else c=c+-7|0;TO(b,8);TO(b,8);if((aP(b,32)|0)==1195456820){c=bP(a+92|0,b,c)|0;break}else{SO(b,c<<3);c=0;break}}else c=-22;while(0);return c|0}function $O(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=OO(b,8)|0;return}function aP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=OO(a,b)|0;break}else{b=b+-16|0;c=(OO(a,16)|0)<=3){if((OO(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}TO(d,8);e=e+1|0}}TO(d,1);if(((OO(d,1)|0)!=0?(TO(d,1),g=OO(d,5)|0,TO(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=$W(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=VW(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=fk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(OO(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(OO(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(OO(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}TO(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function cP(a){a=a|0;var b=0,c=0,e=0;e=dP(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;SO(a,b);return (aP(a,b+1|0)|0)+-1|0}function dP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=aP(d,32)|0;l=b;return a|0}function eP(a){a=a|0;TO(a,1);return}function fP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function gP(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=a;c[d>>2]=b;Sf(b+1648|0);Sf(b+1652|0);Sf(b+1656|0);Sf(b+1660|0);Sf(b+1664|0);Sf(b+1668|0);Sf(b+1672|0);Sf(b+1680|0);Sf(b+1676|0);Sf(b+1688|0);Sf(d);l=a;return}function hP(a){a=a|0;var b=0,c=0,e=0;e=tP(a,32)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;uP(a,b);return (vP(a,b+1|0)|0)+-1|0}function iP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function jP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function kP(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[121995+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123019+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116026+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function lP(b){b=b|0;var c=0,d=0,e=0;c=0;while(1){if((c|0)==6)break;d=b+(c<<6)|0;e=d+16|0;do{a[d>>0]=16;d=d+1|0}while((d|0)<(e|0));a[b+1536+c>>0]=16;a[b+1542+c>>0]=16;c=c+1|0}d=b+384|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+448|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+512|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+576|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+640|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+704|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+768|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+832|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+896|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+960|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1024|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1088|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1152|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1216|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1280|0;c=152220;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1344|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1408|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1472|0;c=152284;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));return}function mP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);v=w;o=0;a:while(1){if((o|0)>=4){i=20;break}s=(o|0)==3?3:1;t=(o|0)>0?64:16;u=(o|0)>1;q=o+-2|0;n=1<<(o<<1)+4;n=(n|0)<64?n:64;r=(o|0)==0;p=0;while(1){if((p|0)>=6)break;b:do if(!(((iP(b)|0)&255)<<24>>24)){h=hP(b)|0;if(h|0){h=N(h,s)|0;if(p>>>0>>0){i=8;break a}h=p-h|0;iX(f+(o*384|0)+(p<<6)|0,f+(o*384|0)+(h<<6)|0,t|0)|0;if(u)a[f+1536+(q*6|0)+p>>0]=a[f+1536+(q*6|0)+h>>0]|0}}else{if(u){i=(kP(b)|0)+8|0;a[f+1536+(q*6|0)+p>>0]=i;h=0}else{h=0;i=8}while(1){if((h|0)>=(n|0))break b;if(r){j=(d[151148+h>>0]|0)<<2;k=151132+h|0}else{j=(d[151228+h>>0]|0)<<3;k=151164+h|0}j=j+(d[k>>0]|0)|0;k=(kP(b)|0)+i|0;a[f+(o*384|0)+(p<<6)+j>>0]=k;h=h+1|0;i=k&255}}while(0);p=p+s|0}o=o+1|0}if((i|0)==8){c[v>>2]=h;Wf(e,16,152179,v);h=-1094995529}else if((i|0)==20)if((c[g+4>>2]|0)==3){h=0;while(1){if((h|0)==64)break;a[f+1216+h>>0]=a[f+832+h>>0]|0;a[f+1280+h>>0]=a[f+896+h>>0]|0;a[f+1408+h>>0]=a[f+1024+h>>0]|0;a[f+1472+h>>0]=a[f+1088+h>>0]|0;h=h+1|0}a[f+1543>>0]=a[f+1537>>0]|0;a[f+1544>>0]=a[f+1538>>0]|0;a[f+1546>>0]=a[f+1540>>0]|0;a[f+1547>>0]=a[f+1541>>0]|0;h=0}else h=0;l=w;return h|0}function nP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);p=q+16|0;o=q+8|0;i=q;if(a[f+21>>0]|0)a[f+1629>>0]=(hP(b)|0)+2;a[f+1630>>0]=iP(b)|0;k=(iP(b)|0)&255;a[f+1631>>0]=k;a:do if(!(k<<24>>24))j=12;else{a[f+1632>>0]=hP(b)|0;r=hP(b)|0;h=r&255;k=f+1633|0;a[k>>0]=h;if((r&254)>>>0>5){Wf(e,16,152080,i);break}else i=0;while(1){if((i|0)>(h&255|0)){j=12;break a}r=(sP(b)|0)&255;a[f+1634+i>>0]=r;if(r<<24>>24)Wf(e,24,152144,o);r=(sP(b)|0)&255;a[f+1640+i>>0]=r;if(r<<24>>24)Wf(e,24,152144,p);i=i+1|0;h=a[k>>0]|0}}while(0);if((j|0)==12?(r=f+1646|0,a[r>>0]=hP(b)|0,n=hP(b)|0,a[f+1647>>0]=n,p=c[g+44>>2]|0,(((p|0)>10?p+-10|0:0)|0)>=(d[r>>0]|0)):0){r=c[g+48>>2]|0;l=q;return ((((r|0)>10?r+-10|0:0)|0)<(n&255|0)?-1094995529:0)|0}l=q;return -1094995529}function oP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=b+44|0;x=b+1656|0;c[x>>2]=Lh((c[w>>2]|0)+1|0,4)|0;y=b+48|0;v=b+1660|0;c[v>>2]=Lh((c[y>>2]|0)+1|0,4)|0;z=d+13384|0;t=Lh(c[z>>2]|0,4)|0;i=b+1664|0;c[i>>2]=t;e=c[x>>2]|0;a:do if((e|0)!=0?!((t|0)==0|(c[v>>2]|0)==0):0){q=b+1648|0;if(a[b+52>>0]|0){e=c[q>>2]|0;if(!e){c[q>>2]=Lh(c[w>>2]|0,4)|0;f=Lh(c[y>>2]|0,4)|0;c[b+1652>>2]=f;e=c[q>>2]|0;if(!e){e=-12;break}}else f=c[b+1652>>2]|0;if(!f){e=-12;break}else g=0;while(1){h=c[w>>2]|0;if((g|0)>=(h|0))break;t=g+1|0;s=c[z>>2]|0;c[e+(g<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,g)|0)/(h|0)|0);g=t}g=d+13388|0;e=0;while(1){h=c[y>>2]|0;if((e|0)>=(h|0))break;t=e+1|0;s=c[g>>2]|0;c[f+(e<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,e)|0)/(h|0)|0);e=t}e=c[x>>2]|0}c[e>>2]=0;f=0;g=0;while(1){if((f|0)>=(c[w>>2]|0))break;t=(c[(c[q>>2]|0)+(f<<2)>>2]|0)+g|0;s=f+1|0;c[e+(s<<2)>>2]=t;f=s;g=t}g=c[v>>2]|0;c[g>>2]=0;n=b+1652|0;f=0;h=0;while(1){if((f|0)>=(c[y>>2]|0)){f=0;g=0;break}t=(c[(c[n>>2]|0)+(f<<2)>>2]|0)+h|0;s=f+1|0;c[g+(s<<2)>>2]=t;f=s;h=t}while(1){h=c[z>>2]|0;if((g|0)>=(h|0))break;t=f+(g>>>0>(c[e+(f<<2)>>2]|0)>>>0&1)|0;c[(c[i>>2]|0)+(g<<2)>>2]=t;f=t;g=g+1|0}m=N(c[d+13388>>2]|0,h)|0;s=b+1668|0;c[s>>2]=Lh(m,4)|0;e=b+1672|0;c[e>>2]=Lh(m,4)|0;f=b+1676|0;c[f>>2]=Lh(m,4)|0;t=d+13420|0;g=(c[t>>2]|0)+2|0;g=Lh(N(g,g)|0,4)|0;p=b+1688|0;c[p>>2]=g;o=c[s>>2]|0;if(((o|0)!=0?(r=c[e>>2]|0,(r|0)!=0):0)?(u=c[f>>2]|0,!((g|0)==0|(u|0)==0)):0){i=0;while(1){if((i|0)>=(m|0)){e=0;l=0;break}j=c[z>>2]|0;k=(i|0)%(j|0)|0;l=(i|0)/(j|0)|0;f=c[w>>2]|0;e=0;while(1){if((e|0)>=(f|0)){e=0;break}g=e+1|0;if(k>>>0<(c[(c[x>>2]|0)+(g<<2)>>2]|0)>>>0)break;else e=g}g=c[y>>2]|0;f=0;while(1){if((f|0)>=(g|0)){h=0;break}h=f+1|0;if(l>>>0<(c[(c[v>>2]|0)+(h<<2)>>2]|0)>>>0){h=f;break}else f=h}f=0;g=0;while(1){if((g|0)>=(e|0)){g=0;break}f=(N(c[(c[q>>2]|0)+(g<<2)>>2]|0,c[(c[n>>2]|0)+(h<<2)>>2]|0)|0)+f|0;g=g+1|0}while(1){if((g|0)>=(h|0))break;f=(N(c[(c[n>>2]|0)+(g<<2)>>2]|0,j)|0)+f|0;g=g+1|0}l=N(c[(c[q>>2]|0)+(e<<2)>>2]|0,l-(c[(c[v>>2]|0)+(h<<2)>>2]|0)|0)|0;l=f+k+l-(c[(c[x>>2]|0)+(e<<2)>>2]|0)|0;c[o+(i<<2)>>2]=l;c[r+(l<<2)>>2]=i;i=i+1|0}b:while(1){if((l|0)>=(c[y>>2]|0))break;m=l+1|0;h=0;while(1){if((h|0)>=(c[w>>2]|0)){l=m;continue b}g=c[v>>2]|0;i=g+(m<<2)|0;j=h+1|0;g=c[g+(l<<2)>>2]|0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;f=c[x>>2]|0;k=f+(j<<2)|0;f=c[f+(h<<2)>>2]|0;while(1){if(f>>>0>=(c[k>>2]|0)>>>0)break;c[u+(c[o+((N(c[z>>2]|0,g)|0)+f<<2)>>2]<<2)>>2]=e;f=f+1|0}g=g+1|0}e=e+1|0;h=j}}g=Lh(e,4)|0;c[b+1680>>2]=g;if(g){f=0;while(1){if((f|0)<(c[y>>2]|0))e=0;else break;while(1){h=c[w>>2]|0;if((e|0)>=(h|0))break;u=N(c[z>>2]|0,c[(c[v>>2]|0)+(f<<2)>>2]|0)|0;c[g+((N(h,f)|0)+e<<2)>>2]=(c[(c[x>>2]|0)+(e<<2)>>2]|0)+u;e=e+1|0}f=f+1|0}i=c[d+13336>>2]|0;h=c[d+13328>>2]|0;g=c[p>>2]|0;j=c[t>>2]|0;n=g+(j+3<<2)|0;c[b+1684>>2]=n;e=0;while(1){f=j+2|0;if((e|0)>=(f|0))break;c[g+((N(f,e)|0)<<2)>>2]=-1;c[g+(e<<2)>>2]=-1;e=e+1|0;j=c[t>>2]|0}l=i-h|0;m=l<<1;k=0;e=j;while(1){if((k|0)>(e|0)){e=0;break a}i=k>>l;h=0;while(1){if((h|0)>(e|0))break;f=(N(c[z>>2]|0,i)|0)+(h>>l)|0;f=c[(c[s>>2]|0)+(f<<2)>>2]<=(l|0))break;b=1<>2]=f;h=h+1|0;e=c[t>>2]|0}k=k+1|0}}else e=-12}else e=-12}else e=-12;while(0);return e|0}function pP(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(rP(a)|0)|0}function qP(a,b){a=a|0;b=b|0;var d=0,e=0;b=a+128+(b<<2)|0;d=c[b>>2]|0;if(d|0?(e=a+392|0,(c[e>>2]|0)==(c[d+4>>2]|0)):0)c[e>>2]=0;Bg(b);return}function rP(a){a=a|0;return c[a+8>>2]|0}function sP(a){a=a|0;a=hP(a)|0;return ((a&1)+-1^a>>>1)+1|0}function tP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=e;if((b|0)<26)a=wP(a,b)|0;else{c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=vP(d,b)|0}l=e;return a|0}function uP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function vP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=jP(a,b)|0;break}else{b=b+-16|0;c=(jP(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function xP(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;_=l;l=l+272|0;if((l|0)>=(m|0))W(272);Z=_+256|0;Y=_+248|0;X=_+240|0;V=_+232|0;U=_+224|0;T=_+216|0;S=_+208|0;R=_+200|0;P=_+192|0;O=_+176|0;M=_+168|0;L=_+160|0;K=_+152|0;H=_+144|0;F=_+136|0;E=_+120|0;D=_+112|0;C=_+104|0;B=_+96|0;A=_+88|0;x=_+80|0;w=_+72|0;u=_+64|0;t=_+56|0;r=_+40|0;q=_+32|0;p=_+24|0;o=_+16|0;n=_+8|0;k=_;j=jP(e,4)|0;c[d>>2]=j;a:do if(j>>>0<=15){if(h|0?(c[h+(j<<2)>>2]|0)==0:0){c[n>>2]=j;Wf(i,16,152588,n);h=-1094995529;break}h=(jP(e,3)|0)+1|0;v=d+68|0;c[v>>2]=h;if((h|0)>7){c[o>>2]=h;Wf(i,16,152611,o);h=-1094995529;break}a[d+156>>0]=jP(e,1)|0;h=zP(e,i,d+300|0,c[v>>2]|0)|0;if((h|0)>=0){h=hP(e)|0;c[f>>2]=h;if(h>>>0>15){c[p>>2]=h;Wf(i,16,151645,p);h=-1094995529;break}h=hP(e)|0;o=d+4|0;c[o>>2]=h;if(h>>>0>3){c[q>>2]=h;Wf(i,16,152648,q);h=-1094995529;break}if((h|0)==3){h=(iP(e)|0)&255;a[d+8>>0]=h}else h=a[d+8>>0]|0;if(h<<24>>24)c[o>>2]=0;I=d+13376|0;c[I>>2]=hP(e)|0;h=hP(e)|0;J=d+13380|0;c[J>>2]=h;h=Xh(c[I>>2]|0,h,0,i)|0;if((h|0)>=0){if(iP(e)|0){k=c[o>>2]|0;n=(k|0)<2?2:1;k=(k|0)<3?2:1;h=d+28|0;c[h>>2]=N(k,hP(e)|0)|0;j=d+32|0;c[j>>2]=N(hP(e)|0,k)|0;k=d+36|0;c[k>>2]=N(hP(e)|0,n)|0;n=N(hP(e)|0,n)|0;c[d+40>>2]=n;if(c[i+64>>2]&65536|0){z=c[j>>2]|0;G=c[k>>2]|0;c[r>>2]=c[h>>2];c[r+4>>2]=z;c[r+8>>2]=G;c[r+12>>2]=n;Wf(i,48,152681,r);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}G=d+12|0;c[G>>2]=c[h>>2];c[G+4>>2]=c[h+4>>2];c[G+8>>2]=c[h+8>>2];c[G+12>>2]=c[h+12>>2]}G=d+44|0;c[G>>2]=(hP(e)|0)+8;h=(hP(e)|0)+8|0;if(c[o>>2]|0?(s=c[G>>2]|0,(h|0)!=(s|0)):0){c[t>>2]=s;c[t+4>>2]=h;Wf(i,16,152757,t);h=-1094995529;break}c[d+48>>2]=h;h=AP(i,d)|0;if((h|0)>=0){h=hP(e)|0;z=h+4|0;y=d+60|0;c[y>>2]=z;if(z>>>0>16){c[u>>2]=h;Wf(i,16,152840,u);h=-1094995529;break}o=(iP(e)|0)!=0;if(o)p=0;else p=(c[v>>2]|0)+-1|0;z=i+580|0;n=p;while(1){if((n|0)>=(c[v>>2]|0))break;f=d+72+(n*12|0)|0;c[f>>2]=(hP(e)|0)+1;j=d+72+(n*12|0)+4|0;c[j>>2]=hP(e)|0;c[d+72+(n*12|0)+8>>2]=(hP(e)|0)+-1;k=c[f>>2]|0;if(k>>>0>16){Q=34;break}h=c[j>>2]|0;if((h|0)>=(k|0)){c[x>>2]=h;Wf(i,24,152940,x);if(c[z>>2]&8|0){h=-1094995529;break a}h=c[j>>2]|0;if((h|0)>15){h=-1094995529;break a}c[f>>2]=h+1}n=n+1|0}if((Q|0)==34){c[w>>2]=k+-1;Wf(i,16,152889,w);h=-1094995529;break}b:do if(!o){j=d+72+(p*12|0)|0;k=d+72+(p*12|0)+4|0;n=d+72+(p*12|0)+8|0;h=0;while(1){if((h|0)>=(p|0))break b;c[d+72+(h*12|0)>>2]=c[j>>2];c[d+72+(h*12|0)+4>>2]=c[k>>2];c[d+72+(h*12|0)+8>>2]=c[n>>2];h=h+1|0}}while(0);r=d+13320|0;c[r>>2]=(hP(e)|0)+3;s=d+13324|0;c[s>>2]=hP(e)|0;t=d+13328|0;c[t>>2]=(hP(e)|0)+2;j=hP(e)|0;k=c[t>>2]|0;u=d+13332|0;c[u>>2]=k+j;n=c[r>>2]|0;if((n+-3|0)>>>0>27){c[A>>2]=n;Wf(i,16,152983,A);h=-1094995529;break}h=c[s>>2]|0;if(h>>>0>30){c[B>>2]=h;Wf(i,16,153021,B);h=-1094995529;break}if(k>>>0>=n>>>0|k>>>0<2){Wf(i,16,153078,C);h=-1094995529;break}if(j>>>0>30){c[D>>2]=j;Wf(i,16,153113,D);h=-1094995529;break}p=d+13344|0;c[p>>2]=hP(e)|0;q=d+13348|0;c[q>>2]=hP(e)|0;D=(iP(e)|0)&255;a[d+634>>0]=D;do if(D<<24>>24){h=d+635|0;lP(h);if(!(iP(e)|0))break;h=mP(e,i,h,d)|0;if((h|0)<0)break a}while(0);a[d+13196>>0]=iP(e)|0;a[d+13197>>0]=iP(e)|0;D=iP(e)|0;c[d+64>>2]=D;do if(D|0){h=d+13300|0;a[h>>0]=(jP(e,4)|0)+1;j=d+13301|0;a[j>>0]=(jP(e,4)|0)+1;k=(hP(e)|0)+3|0;c[d+13304>>2]=k;c[d+13308>>2]=(hP(e)|0)+k;h=a[h>>0]|0;j=a[j>>0]|0;k=c[G>>2]|0;if((k|0)<(((h&255)>(j&255)?h:j)&255|0)){c[E>>2]=h&255;c[E+4>>2]=j&255;c[E+8>>2]=k;Wf(i,16,153173,E);h=-1094995529;break a}else{a[d+13312>>0]=iP(e)|0;break}}while(0);h=hP(e)|0;k=d+2184|0;c[k>>2]=h;if(h>>>0>64){c[F>>2]=h;Wf(i,16,153235,F);h=-1094995529;break}else j=0;while(1){if(j>>>0>=h>>>0)break;h=BP(e,i,d+2188+(j*172|0)|0,d,0)|0;if((h|0)<0)break a;j=j+1|0;h=c[k>>2]|0}F=(iP(e)|0)&255;a[d+13198>>0]=F;c:do if(F<<24>>24){j=hP(e)|0;h=j&255;k=d+13296|0;a[k>>0]=h;j=j&255;if(j>>>0>32){c[H>>2]=j;Wf(i,16,153265,H);h=-1094995529;break a}else j=0;while(1){if((j|0)>=(h&255|0))break c;b[d+13200+(j<<1)>>1]=jP(e,c[y>>2]|0)|0;a[d+13264+j>>0]=iP(e)|0;j=j+1|0;h=a[k>>0]|0}}while(0);a[d+13316>>0]=iP(e)|0;a[d+13317>>0]=iP(e)|0;c[d+160>>2]=0;c[d+164>>2]=1;if(iP(e)|0)CP(e,i,g,d);do if(iP(e)|0){h=0;j=0;while(1){if((h|0)==1)break;h=h+1|0;j=iP(e)|0}DP(e,7);if(!j)break;c[d+13352>>2]=iP(e)|0;c[d+13356>>2]=iP(e)|0;c[d+13360>>2]=iP(e)|0;c[d+13364>>2]=iP(e)|0;if(iP(e)|0)Wf(i,24,153299,K);c[d+13368>>2]=iP(e)|0;if(iP(e)|0)Wf(i,24,153355,L);c[d+13372>>2]=iP(e)|0;if(!(iP(e)|0))break;Wf(i,24,153412,M)}while(0);if(!g){n=d+12|0;k=d+16|0;h=n;j=k;k=c[k>>2]|0;n=c[n>>2]|0}else{j=d+12|0;n=(c[j>>2]|0)+(c[d+224>>2]|0)|0;c[j>>2]=n;j=d+16|0;k=(c[j>>2]|0)+(c[d+228>>2]|0)|0;c[j>>2]=k;h=d+20|0;c[h>>2]=(c[h>>2]|0)+(c[d+232>>2]|0);h=d+24|0;c[h>>2]=(c[h>>2]|0)+(c[d+236>>2]|0);h=d+12|0}o=c[d+20>>2]|0;f=c[d+24>>2]|0;do if(n>>>0<(2147483647-k|0)>>>0&o>>>0<(2147483647-f|0)>>>0){if((k+n|0)>>>0>=(c[I>>2]|0)>>>0){Q=87;break}if((f+o|0)>>>0>=(c[J>>2]|0)>>>0)Q=87}else Q=87;while(0);if((Q|0)==87){Q=c[j>>2]|0;c[O>>2]=n;c[O+4>>2]=Q;c[O+8>>2]=o;c[O+12>>2]=f;Wf(i,24,153469,O);if(c[z>>2]&8|0){h=-1094995529;break}Wf(i,24,153508,P);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Q=d+28|0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0}k=c[r>>2]|0;n=(c[s>>2]|0)+k|0;h=d+13336|0;c[h>>2]=n;j=k+-1|0;c[d+13340>>2]=j;if(n>>>0>6){c[R>>2]=n;Wf(i,16,153545,R);h=-1094995529;break}if(n>>>0<4){c[S>>2]=n;Wf(i,16,153574,S);c[T>>2]=c[h>>2];Ni(i,153637,T);h=-1094995529;break}S=c[I>>2]|0;Q=1<>n;c[d+13384>>2]=R;T=c[J>>2]|0;Q=T+-1+Q>>n;c[d+13388>>2]=Q;c[d+13392>>2]=N(Q,R)|0;c[d+13396>>2]=S>>k;c[d+13400>>2]=T>>k;R=c[t>>2]|0;c[d+13404>>2]=S>>R;c[d+13408>>2]=T>>R;c[d+13412>>2]=S>>j;c[d+13416>>2]=T>>j;j=n-R|0;c[d+13420>>2]=(1<>2]=((c[G>>2]|0)*6|0)+-48;if((1<>2]|0;if(h>>>0>j>>>0){c[V>>2]=h;Wf(i,16,153687,V);h=-1094995529;break}h=c[q>>2]|0;if(h>>>0>j>>>0){c[X>>2]=h;Wf(i,16,153741,X);h=-1094995529;break}h=c[u>>2]|0;if(h>>>0>(n>>>0<5?n:5)>>>0){c[Y>>2]=h;Wf(i,16,153795,Y);h=-1094995529;break}h=pP(e)|0;if((h|0)>=0){h=0;break}c[Z>>2]=0-h;Wf(i,16,153838,Z);h=-1094995529}}}}else{c[k>>2]=j;Wf(i,16,152563,k);h=-1094995529}while(0);l=_;return h|0}function yP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+64+(b<<2)|0;d=c[e>>2]|0;if(d|0){f=a+388|0;if((c[f>>2]|0)==(c[d+4>>2]|0)){c[f>>2]=0;d=0}else d=0;while(1){if((d|0)==64)break;i=c[a+128+(d<<2)>>2]|0;if(i|0?(c[c[i+4>>2]>>2]|0)==(b|0):0)qP(a,d);d=d+1|0}i=c[e>>2]|0;if(i|0?(c[f>>2]|0)==(c[i+4>>2]|0):0){c[g>>2]=152478;c[g+4>>2]=152542;c[g+8>>2]=92;Wf(0,0,159637,g);Ub()}}Bg(e);l=h;return}function zP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o+16|0;j=o+8|0;g=o;a:do if((HP(b,d,e)|0)>=0?(i=f+-1|0,h=(f|0)>1,(pP(b)|0)>=((h&1)<<4|8|0)):0){a[e+35>>0]=jP(b,8)|0;f=0;while(1){if((f|0)>=(i|0))break;a[e+320+f>>0]=iP(b)|0;a[e+327+f>>0]=iP(b)|0;f=f+1|0}b:do if(h){f=i;while(1){if((f|0)>=8){f=0;break b}DP(b,2);f=f+1|0}}else f=0;while(0);while(1){if((f|0)>=(i|0)){f=0;break a}if(a[e+320+f>>0]|0?(HP(b,d,e+40+(f*40|0)|0)|0)<0:0){n=13;break}if(a[e+327+f>>0]|0){if((pP(b)|0)<8){n=16;break}a[e+40+(f*40|0)+35>>0]=jP(b,8)|0}f=f+1|0}if((n|0)==13){c[j>>2]=f;Wf(d,16,154563,j);f=-1;break}else if((n|0)==16){c[k>>2]=f;Wf(d,16,154606,k);f=-1;break}}else n=3;while(0);if((n|0)==3){Wf(d,16,154536,g);f=-1}l=o;return f|0}function AP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;h=b+44|0;e=c[h>>2]|0;a:do switch(e|0){case 8:{switch(c[b+4>>2]|0){case 0:{a=8;break}case 1:{a=0;break}case 2:{c[b+56>>2]=4;g=23;break a}case 3:{c[b+56>>2]=5;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 9:{switch(c[b+4>>2]|0){case 0:{a=30;break}case 1:{a=62;break}case 2:{c[b+56>>2]=72;g=23;break a}case 3:{c[b+56>>2]=68;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 10:{switch(c[b+4>>2]|0){case 0:{a=171;break}case 1:{a=64;break}case 2:{c[b+56>>2]=66;g=23;break a}case 3:{c[b+56>>2]=70;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 12:{switch(c[b+4>>2]|0){case 0:{a=169;break}case 1:{a=125;break}case 2:{c[b+56>>2]=129;g=23;break a}case 3:{c[b+56>>2]=133;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}default:{c[f>>2]=c[b+4>>2];c[f+4>>2]=e;Wf(a,16,154426,f);a=-1094995529}}while(0);if((g|0)==23){a=ph(c[b+56>>2]|0)|0;if(!a)a=-22;else{c[b+13436>>2]=0;c[b+13424>>2]=0;g=d[a+5>>0]|0;c[b+13428>>2]=g;c[b+13432>>2]=g;a=d[a+6>>0]|0;c[b+13440>>2]=a;c[b+13444>>2]=a;c[b+52>>2]=(c[h>>2]|0)>8&1;a=0}}l=i;return a|0}function BP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);p=s+40|0;o=s+32|0;k=s+24|0;q=s+16|0;n=s+8|0;j=s;h=f+2188|0;a:do if(((h|0)!=(e|0)?(i=f+2184|0,(c[i>>2]|0)!=0):0)?((iP(b)|0)&255)<<24>>24!=0:0){do if(g){h=(hP(b)|0)+1|0;g=c[i>>2]|0;if(g>>>0>>0){c[j>>2]=h;c[j+4>>2]=g;Wf(d,16,154236,j);g=-1094995529;break a}else{o=g-h|0;c[e+8>>2]=c[f+2188+(o*172|0)+4>>2];break}}else o=((e-h|0)/172|0)+-1|0;while(0);g=iP(b)|0;p=hP(b)|0;h=p+1|0;if(p>>>0>32767){c[n>>2]=h;Wf(d,16,154294,n);g=-1094995529;break}k=N(1-(g<<1&510)|0,h)|0;n=f+2188+(o*172|0)+4|0;h=0;g=0;j=0;while(1){if((j|0)>(c[n>>2]|0))break;p=iP(b)|0;a[e+140+g>>0]=p;if(!((p&255|0)==0?((iP(b)|0)&255)<<24>>24==0:0)){if((j|0)<(c[n>>2]|0))i=(c[f+2188+(o*172|0)+12+(j<<2)>>2]|0)+k|0;else i=k;c[e+12+(g<<2)>>2]=i;g=g+1|0;h=(i>>>31)+h|0}j=j+1|0}if(g>>>0>31){c[q>>2]=g;Wf(d,16,154330,q);g=-1094995529;break}p=e+4|0;c[p>>2]=g;c[e>>2]=h;if(g){o=1;while(1){if((o|0)>=(g|0))break;i=c[e+12+(o<<2)>>2]|0;j=a[e+140+o>>0]|0;h=o;while(1){g=h+-1|0;if((h|0)<=0)break;k=e+12+(g<<2)|0;n=c[k>>2]|0;if((i|0)>=(n|0)){h=g;continue}c[e+12+(h<<2)>>2]=n;d=e+140+g|0;a[e+140+h>>0]=a[d>>0]|0;c[k>>2]=i;a[d>>0]=j;h=g}o=o+1|0;g=c[p>>2]|0}h=c[e>>2]|0}if(h>>>0>1){i=0;g=h;while(1){g=g+-1|0;if(i>>>0>=h>>>1>>>0){g=0;break a}h=e+12+(i<<2)|0;q=c[h>>2]|0;f=e+140+i|0;d=a[f>>0]|0;b=e+12+(g<<2)|0;c[h>>2]=c[b>>2];h=e+140+g|0;a[f>>0]=a[h>>0]|0;c[b>>2]=q;a[h>>0]=d;i=i+1|0;h=c[e>>2]|0}}else g=0}else r=32;while(0);b:do if((r|0)==32){c[e>>2]=hP(b)|0;j=hP(b)|0;g=c[e>>2]|0;if((g|j)>>>0>15){Wf(d,16,154358,k);g=-1094995529;break}q=g+j|0;c[e+4>>2]=q;if(!q)g=0;else{h=0;i=0;while(1){if(i>>>0>=g>>>0){h=0;i=0;break}q=hP(b)|0;g=q+1|0;if(q>>>0>32767){r=37;break}g=h-g|0;c[e+12+(i<<2)>>2]=g;a[e+140+i>>0]=iP(b)|0;h=g;i=i+1|0;g=c[e>>2]|0}if((r|0)==37){c[o>>2]=g;Wf(d,16,154394,o);g=-1094995529;break}while(1){if(i>>>0>=j>>>0){g=0;break b}r=hP(b)|0;g=r+1|0;if(r>>>0>32767)break;r=g+h|0;c[e+12+((c[e>>2]|0)+i<<2)>>2]=r;q=(iP(b)|0)&255;a[(c[e>>2]|0)+i+(e+140)>>0]=q;h=r;i=i+1|0}c[p>>2]=g;Wf(d,16,154394,p);g=-1094995529}}while(0);l=s;return g|0}function CP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+240|0;if((l|0)>=(m|0))W(240);H=I+64|0;G=I+56|0;F=I+48|0;E=I+40|0;r=I+24|0;k=I+16|0;i=I+8|0;B=I+88|0;C=I+68|0;D=g+160|0;Wf(e,48,153863,I);do if(iP(b)|0){h=(jP(b,8)|0)&255;if(h>>>0<17){y=105068+(h<<3)|0;z=c[y+4>>2]|0;A=D;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}if((h|0)==255){c[D>>2]=jP(b,16)|0;c[g+164>>2]=jP(b,16)|0;break}else{c[i>>2]=h;Wf(e,24,153877,i);break}}while(0);A=iP(b)|0;c[g+168>>2]=A;if(A|0)c[g+172>>2]=iP(b)|0;A=iP(b)|0;c[g+176>>2]=A;a:do if(A|0){c[g+180>>2]=jP(b,3)|0;A=g+184|0;c[A>>2]=iP(b)|0;h=iP(b)|0;c[g+188>>2]=h;if(c[A>>2]|0?(j=g+56|0,(c[j>>2]|0)==0):0)c[j>>2]=12;if(h|0){h=g+192|0;a[h>>0]=jP(b,8)|0;i=g+193|0;a[i>>0]=jP(b,8)|0;j=g+194|0;a[j>>0]=jP(b,8)|0;if(!(zj(d[h>>0]|0)|0))a[h>>0]=2;if(!(Aj(d[i>>0]|0)|0))a[i>>0]=2;if(!(Bj(d[j>>0]|0)|0)){a[j>>0]=2;break}if(!(a[j>>0]|0)){i=g+56|0;switch(c[i>>2]|0){case 5:{h=73;break}case 70:{h=77;break}case 133:{h=137;break}default:break a}c[i>>2]=h}}}while(0);A=iP(b)|0;c[g+196>>2]=A;if(A|0){c[g+200>>2]=hP(b)|0;c[g+204>>2]=hP(b)|0}c[g+208>>2]=iP(b)|0;c[g+212>>2]=iP(b)|0;c[g+216>>2]=iP(b)|0;c[C>>2]=c[b>>2];c[C+4>>2]=c[b+4>>2];c[C+8>>2]=c[b+8>>2];c[C+12>>2]=c[b+12>>2];c[C+16>>2]=c[b+16>>2];iX(B|0,D|0,140)|0;if((pP(b)|0)>67?(tP(b,21)|0)==1048576:0){h=g+220|0;c[h>>2]=0;Wf(e,24,153901,k);h=c[h>>2]|0}else{h=iP(b)|0;c[g+220>>2]=h}if((h|0?(p=c[g+4>>2]|0,q=(p|0)<2?2:1,p=(p|0)<3?2:1,n=g+224|0,c[n>>2]=N(p,hP(b)|0)|0,o=g+228|0,c[o>>2]=N(hP(b)|0,p)|0,p=g+232|0,c[p>>2]=N(hP(b)|0,q)|0,q=N(hP(b)|0,q)|0,c[g+236>>2]=q,f|0):0)?c[e+64>>2]&65536|0:0){z=c[o>>2]|0;A=c[p>>2]|0;c[r>>2]=c[n>>2];c[r+4>>2]=z;c[r+8>>2]=A;c[r+12>>2]=q;Wf(e,48,153933,r);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0}n=g+240|0;o=g+264|0;p=g+268|0;q=g+272|0;f=g+276|0;r=g+280|0;s=g+284|0;t=g+288|0;u=g+292|0;v=g+296|0;w=g+244|0;x=g+248|0;y=g+252|0;z=g+260|0;A=g+68|0;i=g+256|0;h=0;b:while(1){g=iP(b)|0;c[n>>2]=g;if(g|0){j=(h|0)!=0;if(!(j|(pP(b)|0)>65)){Wf(e,24,154013,E);iX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue}c[w>>2]=vP(b,32)|0;k=vP(b,32)|0;c[x>>2]=k;if(j){g=c[w>>2]|0;c[F>>2]=k;c[F+4>>2]=g;Wf(e,32,154058,F)}g=iP(b)|0;c[y>>2]=g;if(g|0)c[i>>2]=hP(b)|0;g=iP(b)|0;c[z>>2]=g;if(g|0)EP(b,1,c[A>>2]|0)}g=iP(b)|0;c[o>>2]=g;do if(g|0)if((h|0)!=0|(pP(b)|0)>7){c[p>>2]=iP(b)|0;c[q>>2]=iP(b)|0;c[f>>2]=iP(b)|0;c[r>>2]=hP(b)|0;c[s>>2]=hP(b)|0;c[t>>2]=hP(b)|0;c[u>>2]=hP(b)|0;c[v>>2]=hP(b)|0;break}else{Wf(e,24,154079,G);iX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue b}while(0);if((h|0)!=0|(pP(b)|0)>0)break;Wf(e,24,154163,H);iX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1}l=I;return}function DP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function EP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(b){b=iP(a)|0;f=iP(a)|0;if(!(f|b))e=0;else{e=iP(a)|0;if(!e){DP(a,4);DP(a,4)}else{DP(a,8);DP(a,5);DP(a,1);DP(a,5);DP(a,4);DP(a,4);DP(a,4)}DP(a,5);DP(a,5);DP(a,5)}}else{e=0;f=0;b=0}h=(b|0)==0;g=(f|0)==0;f=0;while(1){if((f|0)>=(d|0))break;if((iP(a)|0)==0?(iP(a)|0)==0:0)if(!(iP(a)|0))j=13;else b=1;else{hP(a)|0;j=13}if((j|0)==13){j=0;n=hP(a)|0;b=n+1|0;if(n>>>0>31){j=14;break}}if(!h)FP(a,b,e);if(!g)FP(a,b,e);f=f+1|0}if((j|0)==14){c[i>>2]=b;Wf(0,16,154217,i)}l=k;return}function FP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;c=0;while(1){if((c|0)==(b|0))break;hP(a)|0;hP(a)|0;if(!d){hP(a)|0;hP(a)|0}GP(a);c=c+1|0}return}function GP(a){a=a|0;DP(a,1);return}function HP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=j+32|0;g=j+24|0;if((pP(b)|0)<88)d=-1;else{a[e>>0]=jP(b,2)|0;a[e+1>>0]=iP(b)|0;f=jP(b,5)|0;k=f&255;i=e+2|0;a[i>>0]=k;f=f&255;a:do switch(k<<24>>24){case 1:{Wf(d,48,154649,j);d=0;break}case 2:{Wf(d,48,154673,j+8|0);d=0;break}case 3:{Wf(d,48,154700,j+16|0);d=0;break}default:if((f|0)==4){Wf(d,48,154738,g);d=0;break a}else{c[h>>2]=f;Wf(d,24,154773,h);d=0;break a}}while(0);while(1){f=iP(b)|0;g=f&255;if((d|0)==32)break;a[e+3+d>>0]=g;if(!((f&255|0)==0|((d|0)<1|(a[i>>0]|0)!=0)))a[i>>0]=d;d=d+1|0}a[e+36>>0]=g;a[e+37>>0]=iP(b)|0;a[e+38>>0]=iP(b)|0;a[e+39>>0]=iP(b)|0;DP(b,16);DP(b,16);DP(b,12);d=0}l=j;return d|0}function IP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+(b<<2)|0;d=c[f>>2]|0;a:do if(d|0){e=a+384|0;if((c[e>>2]|0)==(c[d+4>>2]|0)){c[e>>2]=0;d=0}else d=0;while(1){if((d|0)==16)break a;e=c[a+64+(d<<2)>>2]|0;if(e|0?(c[c[e+4>>2]>>2]|0)==(b|0):0)yP(a,d);d=d+1|0}}while(0);Bg(f);return}function JP(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=p;o=p+8|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;a=Ii(o,a,b,j,f,g,173,1)|0;a:do if((a|0)>=0){k=o+16|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break a;b=c[o>>2]|0;f=c[b+(g*68|0)+44>>2]|0;switch(f|0){case 32:{a=zO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 33:{a=AO(b+(g*68|0)+24|0,j,d,i)|0;if((a|0)<0)break a;break}case 34:{a=BO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 40:case 39:{a=CO(b+(g*68|0)+24|0,j,e,d,f)|0;if((a|0)<0)break a;break}default:{c[n>>2]=f;Wf(j,40,155282,n)}}g=g+1|0}}while(0);oi(o);l=p;return ((h&8|0)==0?0:a)|0}function KP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;a=LP(a,d)|0;if((a|0)>=0){Ig(b,c[d>>2]|0);wg(d);a=0}l=e;return a|0}function LP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=MP()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function MP(){var a=0;a=Ng(72)|0;if(a|0)zg(a);return a|0}function NP(){var a=0,b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);a=b;do if((OP(a,155317)|0)!=4)if((OP(a,155330)|0)==4){a=c[a>>2]|0;break}else{a=PP()|0;break}else a=c[a>>2]|0;while(0);l=b;return a|0}function OP(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=WP(b,0,c)|0;if((b|0)==-1)b=-1;else{a=TU(b,a,4)|0;qU(b)|0;b=a}l=c;return b|0}function PP(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+160|0;if((l|0)>=(m|0))W(160);a=n+120|0;h=n;i=n+132|0;k=182800;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[22226]|0)>>>0>=121){c[a>>2]=155342;c[a+4>>2]=155369;c[a+8>>2]=77;Wf(0,0,159637,a);Ub()}e=(j|0)==0&(k|0)==0;a=0;b=0;d=0;a:while(1){f=Yb()|0;g=f-a|0;do if(((b<<1|1)+a|0)<(f|0)){a=182800;a=VW(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=y;o=182800;c[o>>2]=a;c[o+4>>2]=b;o=183564+((a&511)<<2)|0;c[o>>2]=(c[o>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249){a=WW(a|0,b|0,j|0,k|0)|0;b=y;if(e)if(b>>>0>0|(b|0)==0&a>>>0>64)break a;else break;else if(b>>>0>0|(b|0)==0&a>>>0>4)break a;else break}}else{o=183564+((c[45700]&511)<<2)|0;b=N(c[o>>2]|0,1664525)|0;c[o>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}while(0);a=f;b=g;d=(d|0)==0?f:d}QP(h,160)|0;RP(h,183564,2048);SP(h,i);o=gX(c[i>>2]|0)|0;o=(gX(c[i+16>>2]|0)|0)+o|0;l=n;return o|0}function QP(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=196;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=197;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=197;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function RP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=b+8|0;j=i;f=c[j>>2]|0;j=VW(f|0,c[j+4>>2]|0,e|0,0)|0;c[i>>2]=j;c[i+4>>2]=y;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){Sd[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function SP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=b+8|0;j=g;j=eX(c[j>>2]|0,c[j+4>>2]|0,3)|0;j=TP(j,y)|0;i=f;c[i>>2]=j;c[i+4>>2]=y;RP(b,155393,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;RP(b,262508,1)}RP(b,f,8);f=0;while(1){if((f|0)>=(d[b>>0]|0|0))break;i=gX(c[b+80+(f<<2)>>2]|0)|0;j=e+(f<<2)|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;f=f+1|0}l=h;return}function TP(a,b){a=a|0;b=b|0;a=gX(a|0)|0;b=gX(b|0)|0;y=a;return b|0}function UP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;G=l;l=l+256|0;if((l|0)>=(m|0))W(256);y=G;z=c[a>>2]|0;A=a+4|0;B=c[A>>2]|0;C=a+8|0;D=c[C>>2]|0;E=a+12|0;F=c[E>>2]|0;q=a+16|0;r=c[q>>2]|0;s=a+20|0;t=c[s>>2]|0;u=a+24|0;v=c[u>>2]|0;w=a+28|0;x=c[w>>2]|0;e=0;f=t;g=r;h=F;i=D;j=B;k=z;n=x;o=v;while(1){if((e|0)==64)break;if(e>>>0<16){p=b+(e<<2)|0;p=gX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0}else{H=c[y+(e+-15<<2)>>2]|0;p=c[y+(e+-2<<2)>>2]|0;p=(c[y+(e+-7<<2)>>2]|0)+(c[y+(e+-16<<2)>>2]|0)+((H<<14|H>>>18)^H>>>3^(H<<25|H>>>7))+((p<<13|p>>>19)^p>>>10^(p<<15|p>>>17))|0}c[y+(e<<2)>>2]=p;L=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+n+((o^f)&g^o)+p+(c[105232+(e<<2)>>2]|0)|0;K=o;J=k;I=j;p=i;H=g;e=e+1|0;g=L+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+L|0;o=f;n=K;j=J;i=I;h=p;f=H}c[a>>2]=z+k;c[A>>2]=B+j;c[C>>2]=D+i;c[E>>2]=F+h;c[q>>2]=r+g;c[s>>2]=t+f;c[u>>2]=v+o;c[w>>2]=x+n;l=G;return}function VP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+320|0;if((l|0)>=(m|0))W(320);p=x;q=c[a>>2]|0;r=a+4|0;s=c[r>>2]|0;t=a+8|0;u=c[t>>2]|0;v=a+12|0;w=c[v>>2]|0;n=a+16|0;o=c[n>>2]|0;f=o;g=w;h=u;i=s;j=q;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=gX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[p+(k+-8<<2)>>2]^c[p+(k+-3<<2)>>2]^c[p+(k+-14<<2)>>2]^c[p+(k+-16<<2)>>2];e=e<<1|e>>>31}c[p+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40)if(k>>>0<20){e=((g^h)&i^g)+1518500249|0;break}else{e=(h^i^g)+1859775393|0;break}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(h^i^g)+-899497514|0;break}while(0);A=j;z=h;y=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=A;g=z;f=y}c[a>>2]=q+j;c[r>>2]=s+i;c[t>>2]=u+h;c[v>>2]=w+g;c[n>>2]=o+f;l=x;return}function WP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=i+16|0;g=i+8|0;f=i;e=i+24|0;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=sU(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(rU(e,2,g)|0)==-1):0)Wf(0,48,155395,h);l=i;return e|0}function XP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=cg((DU(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(oV(f,155424)|0)|0;k=e;f=e;a:while(1){b:while(1){h=a[g>>0]|0;if(!(h<<24>>24))break a;if(oV(g,d)|0)break a;i=g+1|0;switch(h<<24>>24){case 39:break b;case 92:{j=a[i>>0]|0;if(j<<24>>24){l=8;break b}break}default:{}}a[f>>0]=h;g=i;f=f+1|0}if((l|0)==8){l=0;i=f+1|0;a[f>>0]=j;g=g+2|0;k=i;f=i;continue}while(1){g=a[i>>0]|0;j=g<<24>>24==0;h=i+1|0;if(!(j^g<<24>>24!=39))break;a[f>>0]=g;i=h;f=f+1|0}g=j?i:h;k=j?k:f}do{a[f>>0]=0;f=f+-1|0;if(f>>>0>>0)break}while((oV(f,155424)|0)!=0);c[b>>2]=g}return e|0}function YP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=ZP(a[e>>0]|0)|0;b=ZP(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function ZP(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function _P(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=ZP(a[e>>0]|0)|0;e=e+1|0;b=ZP(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function $P(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=DU(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=EU(c,44)|0;if(!d)d=c+(DU(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!(_P(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(LT(155429,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function aQ(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}else h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;else g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((N(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=EU(h,i)|0;h=k+((k|0)!=0&1)|0}k=EU(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function bQ(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function cQ(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function dQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?cQ(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=bg(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;dQ(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;iX(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;Dg(a,h);d=0}}}else{d=bg(0,b)|0;c[h>>2]=d;do if(d){d=mh(d,b,11,0,0)|0;if(!d){Sf(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);l=i;return d|0}function eQ(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(DU(b)|0)|0;g=0;c=0;while(1){if(b>>>0>>0)d=b;else{b=g;break}a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=fQ(b,d-b|0)|0;f=y;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}y=c;return b|0}function fQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;f=0;while(1){if(f>>>0>=28){e=0;i=7;break}e=c[28168+(f<<4)>>2]|0;if((DU(e)|0)==(d|0)?(KT(e,b,d)|0)==0:0){i=5;break}f=f+1|0}do if((i|0)==5){e=28168+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}else if((i|0)==7){while(1){i=0;if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[105488+(e<<3)>>2]|0,(DU(g)|0)==(d|0)):0)?(KT(g,b,d)|0)==0:0){i=11;break}e=e+1|0;i=7}if((i|0)==11){e=eX(1,0,e|0)|0;f=y;break}c[(oT()|0)>>2]=0;e=AT(b,j,10)|0;if(((c[(oT()|0)>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=gQ(e)|0;f=y;break}c[(oT()|0)>>2]=0;g=yT(b,j,0)|0;e=y;if(!(c[(oT()|0)>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}while(0);y=f;l=k;return e|0}function gQ(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[28168+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=28168+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}y=b;return a|0}function hQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=p+40|0;o=p+32|0;n=p+24|0;j=p+16|0;i=p+8|0;h=p;if((b|0)<1)b=Wh(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[28168+(f<<4)+4>>2]|0)?(g=28168+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[28168+(f<<4)>>2];fg(a,156091,h)}else if((g|0)==9?(c[i>>2]=b,fg(a,156094,i),!((d|0)==0&(e|0)==0)):0){fg(a,156106,j);b=0;g=0;while(1){if((g|0)==64)break;j=eX(1,0,g|0)|0;if(!((j&d|0)==0&(y&e|0)==0)){f=iQ(g)|0;if(f|0){if((b|0)>0)fg(a,156109,n);c[o>>2]=f;fg(a,156091,o)}b=b+1|0}g=g+1|0}fg(a,156111,k)}l=p;return}function iQ(a){a=a|0;if(a>>>0>35)a=0;else a=c[105488+(a<<3)>>2]|0;return a|0}function jQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);g=f;bQ(g,a,b);hQ(g,c,d,e);l=f;return}function kQ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+1072|0;if((l|0)>=(m|0))W(1072);J=K+792|0;I=K+784|0;H=K+528|0;j=K+1060|0;k=K+1056|0;F=K+520|0;G=K+512|0;D=K;E=K+800|0;c[H>>2]=j;c[H+4>>2]=k;c[H+8>>2]=K+1064;if(!((aV(f,156113,H)|0)==2?(i=c[j>>2]|0,i=lQ(b,e,g,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){v=e+12|0;w=e+44|0;x=e+16|0;y=e+32|0;B=e+24|0;C=e+16|0;i=0;while(1){u=G;c[u>>2]=1;c[u+4>>2]=0;if(!(c[v>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{n=j<<24>>24;j=f+1|0;break}default:{n=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[H+f>>0]=k;f=f+1|0}a[H+f>>0]=0;t=f}else{n=0;t=0;j=f}s=(t|0)!=0;r=s?H:j;k=mQ(d,r,c[w>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==10:0){u=k+16|0;h[F>>3]=+((c[u>>2]|0)>>>0)+4294967296.0*+(c[u+4>>2]|0);u=30}else u=15;do if((u|0)==15){u=0;q=c[w>>2]|0;b:do if(!q){k=0;u=24}else{k=0;f=0;while(1){while(1){f=Eg(d,f)|0;if(!f){u=24;break b}if((c[f+12>>2]|0)!=10)continue;p=c[f+44>>2]|0;if(!p)continue;if(!(JT(p,q)|0))break}if((k+6|0)>>>0>63)break;c[E+(k<<2)>>2]=c[f>>2];p=f+16|0;h[D+(k<<3)>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);k=k+1|0}c[I>>2]=q;Wf(b,16,156127,I);i=-1163346256}while(0);if((u|0)==24){u=0;c[E+(k<<2)>>2]=167437;switch(c[v>>2]|0){case 1:case 0:case 10:case 9:case 2:{q=C;o=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0);break}default:o=+h[x>>3]}p=k+1|0;h[D+(k<<3)>>3]=o;c[E+(p<<2)>>2]=156427;q=k+2|0;h[D+(p<<3)>>3]=+h[y>>3];c[E+(q<<2)>>2]=156431;p=k+3|0;h[D+(q<<3)>>3]=+h[B>>3];c[E+(p<<2)>>2]=167415;q=k+4|0;h[D+(p<<3)>>3]=0.0;c[E+(q<<2)>>2]=167631;k=k+5|0;h[D+(q<<3)>>3]=-1.0;c[E+(k<<2)>>2]=0;h[D+(k<<3)>>3]=0.0;k=nQ(F,r,E,D,0,0,0,0,0,0,b)|0;if((k|0)>=0){u=30;break}c[J>>2]=j;Wf(b,16,156164,J);i=k}f=1}while(0);if((u|0)==30){c:do if(!(c[v>>2]|0)){oQ(e,g,0,0,G)|0;switch(n|0){case 43:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]|~~o>>>0)>>>0)+4294967296.0*+(c[u+4>>2]|(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}case 45:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]&~(~~o>>>0))>>>0)+4294967296.0*+(c[u+4>>2]&~(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}default:break c}}while(0);k=lQ(b,e,g,+h[F>>3],1,1,0)|0;if((k|0)>=0){j=j+t|0;if(s){u=(a[j>>0]|0)==0;f=u&1;i=u?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}l=K;return i|0}function lQ(a,b,d,e,f,i,j){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;i=i|0;j=j|0;var k=0,n=0,o=0.0,p=0.0,q=0.0,t=0,u=0,v=0,w=0;w=l;l=l+64|0;if((l|0)>=(m|0))W(64);k=w+40|0;u=w+8|0;t=w;n=c[b+12>>2]|0;a:do if(!n){o=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);if(!(o<-1.5|o>4294967295.5)?(u=QU(o*256.0)|0,(u&255|0)==0&0==0):0){v=14;break}d=c[b>>2]|0;h[k>>3]=o;c[k+8>>2]=d;Wf(a,16,156682,k);k=-34}else{if(!f){p=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;o=+h[b+32>>3]}else{o=+h[b+32>>3];p=+(f|0);q=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(o*p>3]*p>q):0)switch(n|0){case 1:case 18:{v=14;break a}case 12:{c[d>>2]=$W(QU(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 13:{c[d>>2]=$W(QU(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 6:case 14:{o=(+(i>>>0)+4294967296.0*+(j|0))*e;if(+(~~e|0)==e){c[d>>2]=~~o;c[d+4>>2]=f;k=0;break a}else{LQ(t,o/+(f|0),16777216);i=t;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break a}}case 2:case 17:case 15:{o=e/+(f|0);if((i|0)==1&(j|0)==0&o==9223372036854775808.0){k=-1;n=2147483647}else{k=QU(o)|0;k=$W(k|0,y|0,i|0,j|0)|0;n=y}c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 9:{o=e/+(f|0);do if(!((i|0)==1&(j|0)==0&o==18446744073709551616.0))if(o>9223372036854775808.0){k=QU(o+-9223372036854775808.0)|0;k=$W(k|0,y^-2147483648|0,i|0,j|0)|0;n=y;break}else{k=QU(o)|0;k=$W(k|0,y|0,i|0,j|0)|0;n=y;break}else{k=-1;n=-1}while(0);c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 4:{g[d>>2]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}case 3:{h[d>>3]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}default:{k=-22;break a}}p=q/p}k=c[b>>2]|0;e=+h[b+24>>3];h[u>>3]=p;c[u+8>>2]=k;h[u+16>>3]=e;h[u+24>>3]=o;Wf(a,16,156630,u);k=-34}while(0);if((v|0)==14){k=QU(e/+(f|0))|0;k=$W(k|0,y|0,i|0,j|0)|0;c[d>>2]=k;k=0}l=w;return k|0}function mQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return IQ(a,b,c,d,e,0)|0}function nQ(a,b,d,e,f,g,i,j,k,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;c[p>>2]=0;b=pQ(p,b,d,f,g,i,j,n,o)|0;if((b|0)<0)h[a>>3]=r;else{b=c[p>>2]|0;h[a>>3]=+qQ(b,e,k);rQ(b);b=sQ(+h[a>>3])|0;k=y&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}l=q;return b|0}function oQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(c[a+12>>2]|0){case 0:{a=f;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break}case 12:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 13:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 1:case 18:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 9:case 2:case 15:case 17:{d=b;e=c[d+4>>2]|0;a=f;c[a>>2]=c[d>>2];c[a+4>>2]=e;a=0;break}case 4:{h[d>>3]=+g[b>>2];a=0;break}case 3:{h[d>>3]=+h[b>>3];a=0;break}case 6:{d=c[b>>2]|0;a=f;c[a>>2]=d;c[a+4>>2]=((d|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break}case 10:{h[d>>3]=+h[a+16>>3];a=0;break}default:a=-22}return a|0}function pQ(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;if((l|0)>=(m|0))W(64);s=u;r=u+12|0;t=u+8|0;n=r;o=n+52|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));c[t>>2]=0;q=cg((DU(d)|0)+1|0)|0;if(!q)n=-12;else{p=q;n=d;a:while(1){do{o=a[n>>0]|0;if(!(o<<24>>24))break a;n=n+1|0}while((uQ(o<<24>>24)|0)!=0);a[p>>0]=o;p=p+1|0}a[p>>0]=0;c[r>>2]=105776;c[r+4>>2]=100;o=r+8|0;c[o>>2]=q;c[r+16>>2]=e;c[r+20>>2]=g;c[r+24>>2]=f;c[r+28>>2]=i;c[r+32>>2]=h;c[r+40>>2]=j;c[r+44>>2]=k;n=vQ(t,r)|0;do if((n|0)>=0){o=c[o>>2]|0;if(a[o>>0]|0){c[s>>2]=o;c[s+4>>2]=d;Wf(r,16,156203,s);n=-22;break}o=c[t>>2]|0;if(wQ(o)|0){s=Ng(80)|0;c[o+32>>2]=s;if(!s)n=-12;else{c[b>>2]=o;c[t>>2]=0}}else n=-22}while(0);rQ(c[t>>2]|0);Tf(q)}l=u;return n|0}function qQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;g=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+tQ(e,a);l=g;return +i}function rQ(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=a;if(a|0){rQ(c[a+20>>2]|0);rQ(c[a+24>>2]|0);rQ(c[a+28>>2]|0);Sf(a+32|0);Sf(b)}l=d;return}function sQ(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function tQ(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,n=0,o=0,p=0.0,q=0.0,s=0.0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=t;a:do switch(c[b>>2]|0){case 0:{e=+h[b+8>>3];break}case 1:{e=+h[b+8>>3]*+h[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{q=+h[b+8>>3];o=c[b+16>>2]|0;s=+tQ(a,c[b+20>>2]|0);s=q*+Gd[o&15](s);l=t;return +s}case 3:{q=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;s=+tQ(a,c[b+20>>2]|0);s=q*+Hd[n&0](o,s);l=t;return +s}case 4:{p=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;q=+tQ(a,c[b+20>>2]|0);s=+tQ(a,c[b+24>>2]|0);s=p*+Id[n&0](o,q,s);l=t;return +s}case 5:{s=1.0/(+K(+(+tQ(a,c[b+20>>2]|0)*4.0))+1.0);l=t;return +s}case 6:{s=+tQ(a,c[b+20>>2]|0);s=+K(+(s*s*-.5))/2.5066282746310002;l=t;return +s}case 7:{s=+h[b+8>>3];o=c[a+48>>2]|0;a=~~+tQ(a,c[b+20>>2]|0);l=t;return +(s*+h[o+(((a|0)>0?((a|0)<9?a:9):0)<<3)>>3])}case 8:{s=+h[b+8>>3];a=sQ(+tQ(a,c[b+20>>2]|0))|0;b=y&2147483647;l=t;return +(s*+((b>>>0>2146435072|(b|0)==2146435072&a>>>0>0)&1))}case 9:{s=+h[b+8>>3]*+((sQ(+tQ(a,c[b+20>>2]|0))|0)==0&(y&2147483647|0)==2146435072&1);l=t;return +s}case 27:{s=+h[b+8>>3]*+z(+(+tQ(a,c[b+20>>2]|0)));l=t;return +s}case 28:{s=+h[b+8>>3]*+M(+(+tQ(a,c[b+20>>2]|0)));l=t;return +s}case 29:{s=+h[b+8>>3]*+pc(+(+tQ(a,c[b+20>>2]|0)));l=t;return +s}case 30:{s=+h[b+8>>3]*+hX(+(+tQ(a,c[b+20>>2]|0)));l=t;return +s}case 31:{s=+h[b+8>>3]*+B(+(+tQ(a,c[b+20>>2]|0)));l=t;return +s}case 32:{s=+h[b+8>>3]*+(+tQ(a,c[b+20>>2]|0)==0.0&1);l=t;return +s}case 36:{g=+h[b+8>>3];if(!(+tQ(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else o=22}else{f=c[b+24>>2]|0;o=22}if((o|0)==22)e=+tQ(a,f);e=g*e;break}case 37:{g=+h[b+8>>3];if(+tQ(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else o=27}else{f=c[b+24>>2]|0;o=27}if((o|0)==27)e=+tQ(a,f);e=g*e;break}case 42:{f=b+20|0;e=+tQ(a,c[f>>2]|0);g=+tQ(a,c[b+24>>2]|0);j=+tQ(a,c[b+28>>2]|0);o=sQ(g)|0;n=y&2147483647;if((!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)?(o=sQ(j)|0,n=y&2147483647,!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)):0)?(o=sQ(e)|0,n=y&2147483647,!(g>j|(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0))):0){q=+h[b+8>>3];s=+tQ(a,c[f>>2]|0);l=t;return +(q*(sj?j:s))}else e=r;break}case 41:{e=+tQ(a,c[b+20>>2]|0);g=+h[b+8>>3];if(!(e>=+tQ(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+tQ(a,c[b+28>>2]|0)&1);e=g*e;break}case 44:{s=+tQ(a,c[b+20>>2]|0);s=s+(+tQ(a,c[b+24>>2]|0)-s)*+tQ(a,c[b+28>>2]|0);l=t;return +s}case 38:{e=+tQ(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+tQ(a,f);h[i>>3]=e;Wf(a,f,156199,i);break}case 33:{n=~~+tQ(a,c[b+20>>2]|0);a=(c[a+48>>2]|0)+(((n|0)>0?((n|0)<9?n:9):0)<<3)|0;s=+h[a>>3];n=sQ(s)|0;i=y&2147483647;o=VW($W(~~s>>>0|0,(+A(s)>=1.0?(s>0.0?~~+O(+z(s/4294967296.0),4294967295.0)>>>0:~~+M((s-+(~~s>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,y|0,1013904223,0)|0;s=i>>>0>2146435072|(i|0)==2146435072&n>>>0>0?1013904223.0:+(o>>>0)+4294967296.0*+(y>>>0);h[a>>3]=s;l=t;return +(+h[b+8>>3]*(s*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+tQ(a,c[i>>2]|0)!=0.0))break a;e=+tQ(a,c[f>>2]|0)}}case 25:{k=+tQ(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)o=0;else{o=~~+tQ(a,f);o=(o|0)>0?((o|0)<9?o:9):0}n=a+48|0;p=+h[(c[n>>2]|0)+(o<<3)>>3];i=b+20|0;g=1.0;e=0.0;f=0;while(1){if((f|0)>=1e3)break;h[(c[n>>2]|0)+(o<<3)>>3]=+(f|0);s=+tQ(a,c[i>>2]|0);j=e+g*s;if(s!=0.0&e==j){e=j;break}b=f+1|0;g=g*(k/+(b|0));e=j;f=b}h[(c[n>>2]|0)+(o<<3)>>3]=p;break}case 26:{n=a+48|0;s=+h[c[n>>2]>>3];q=+tQ(a,c[b+24>>2]|0);i=b+20|0;k=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;g=-1.0;e=-1.0;f=-1;while(1){if((f|0)>=1024)break;if((f|0)<255)h[c[n>>2]>>3]=q*+(d[116282+(f&255)>>0]|0)/255.0;else{p=q*+C(.9,+(+(f+-255|0)));h[c[n>>2]>>3]=(f&2|0?e:g)+((f&1|0)==0?p:-p)}p=+tQ(a,c[i>>2]|0);if(p<=0.0&p>j){j=p;e=+h[c[n>>2]>>3]}if(p>=0.0&p>2]>>3]}if(e>=0.0&g>=0.0){f=0;o=60;break}else f=f+1|0}b:do if((o|0)==60)while(1){if((f|0)>=1e3)break b;q=(e+g)*.5;h[c[n>>2]>>3]=q;if(e==q|g==q)break b;p=+tQ(a,c[i>>2]|0);if(p<=0.0)e=+h[c[n>>2]>>3];if(p>=0.0)g=+h[c[n>>2]>>3];b=sQ(p)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&b>>>0>0){g=p;e=p;break}else{f=f+1|0;o=60}}while(0);h[c[n>>2]>>3]=s;e=k>-j?e:g;break}default:{e=+tQ(a,c[b+20>>2]|0);g=+tQ(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-g*+z(+(e/g)))*+h[b+8>>3];break a}case 35:{e=+h[b+8>>3]*(+((NM(~~e>>>0,+A(e)>=1.0?(e>0.0?~~+O(+z(e/4294967296.0),4294967295.0)>>>0:~~+M((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~g>>>0,+A(g)>=1.0?(g>0.0?~~+O(+z(g/4294967296.0),4294967295.0)>>>0:~~+M((g-+(~~g>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(y|0));break a}case 11:{e=(e>g?e:g)*+h[b+8>>3];break a}case 12:{e=(e>3];break a}case 13:{e=(e==g?1.0:0.0)*+h[b+8>>3];break a}case 14:{e=(e>g?1.0:0.0)*+h[b+8>>3];break a}case 15:{e=(e>=g?1.0:0.0)*+h[b+8>>3];break a}case 17:{e=(e>3];break a}case 16:{e=(e<=g?1.0:0.0)*+h[b+8>>3];break a}case 18:{e=+C(+e,+g)*+h[b+8>>3];break a}case 19:{e=e*g*+h[b+8>>3];break a}case 20:{e=e/g*+h[b+8>>3];break a}case 21:{e=(e+g)*+h[b+8>>3];break a}case 22:{e=g*+h[b+8>>3];break a}case 23:{s=+h[b+8>>3];b=~~e;h[(c[a+48>>2]|0)+(((b|0)>0?((b|0)<9?b:9):0)<<3)>>3]=g;e=g*s;break a}case 34:{e=+h[b+8>>3]*+BT(e,g);break a}case 43:{e=+h[b+8>>3]*+J(+e,+g);break a}case 39:{a=sQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=sQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g&~~e|0);break a}case 40:{a=sQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=sQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);l=t;return +e}function uQ(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function vQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n+4|0;i=n;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=xQ(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=xQ(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=yQ(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;rQ(h);break}else if((f|0)==8){c[j>>2]=0;rQ(h);rQ(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);l=n;return e|0}function wQ(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33: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(!(wQ(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(wQ(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(wQ(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(wQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(wQ(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(wQ(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(wQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(wQ(c[a+24>>2]|0)|0)){a=0;break a}a=(wQ(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(wQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(wQ(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function xQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+4|0;i=k;e=zQ(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=zQ(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=yQ(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;rQ(h);break}else if((f|0)==7){c[j>>2]=0;rQ(h);rQ(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);l=k;return e|0}function yQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ng(40)|0;if(!e)e=0;else{c[e>>2]=a;h[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function zQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n+4|0;j=n;e=AQ(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=AQ(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=yQ(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;rQ(i);break}else if((f|0)==7){c[k>>2]=0;rQ(i);rQ(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);l=n;return e|0}function AQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+12|0;j=p+8|0;k=p+4|0;o=p;e=BQ(k,d,n)|0;do if((e|0)>=0){i=d+8|0;g=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=10;break}c[i>>2]=e+1;e=BQ(o,d,j)|0;if((e|0)<0){f=5;break}f=yQ(18,g,c[o>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(!e){g=f;continue}g=e+8|0;h[g>>3]=+h[g>>3]*+(c[j>>2]|1|0);g=f}if((f|0)==5){rQ(g);break}else if((f|0)==7){rQ(g);rQ(c[o>>2]|0);e=-12;break}else if((f|0)==10){if(g|0){o=g+8|0;h[o>>3]=+h[o>>3]*+(c[n>>2]|1|0)}c[b>>2]=g;e=0;break}}while(0);l=p;return e|0}function BQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+qV(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=CQ(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=DQ(b,d,e)|0;l=j;return b|0}function CQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=x+24|0;r=x+16|0;q=x+8|0;p=x;w=x+32|0;s=x+28|0;o=Ng(40)|0;c[w>>2]=o;t=d+8|0;v=c[t>>2]|0;c[s>>2]=v;a:do if(!o)e=-12;else{j=o+8|0;h[j>>3]=+EQ(v,s);n=c[s>>2]|0;i=o;if((n|0)!=(c[t>>2]|0)){c[o>>2]=0;c[t>>2]=n;c[b>>2]=i;e=0;break}h[j>>3]=1.0;f=c[d+16>>2]|0;b:do if(!f)e=0;else{e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g){e=0;break b}if(FQ(n,g)|0)break;e=e+1|0}c[t>>2]=n+(DU(g)|0);c[o>>2]=1;c[o+16>>2]=e;c[b>>2]=i;e=0;break a}while(0);while(1){if(e>>>0>=4)break;f=c[28616+(e<<4)>>2]|0;if(FQ(n,f)|0){k=11;break}e=e+1|0}if((k|0)==11){c[t>>2]=n+(DU(f)|0);c[o>>2]=0;h[j>>3]=+h[28616+(e<<4)+8>>3];c[b>>2]=i;e=0;break}e=EU(n,40)|0;c[t>>2]=e;if(!e){c[p>>2]=v;Wf(d,16,156253,p);c[t>>2]=c[s>>2];rQ(c[w>>2]|0);e=-22;break}c[t>>2]=e+1;if((a[n>>0]|0)==40){Sf(w);e=vQ(w,d)|0;if((e|0)<0)break;e=c[t>>2]|0;if((a[e>>0]|0)==41){c[t>>2]=e+1;c[b>>2]=c[w>>2];e=0;break}else{c[q>>2]=v;Wf(d,16,156296,q);rQ(c[w>>2]|0);e=-22;break}}e=vQ(o+20|0,d)|0;if((e|0)<0){rQ(c[w>>2]|0);break}f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;vQ((c[w>>2]|0)+24|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;vQ((c[w>>2]|0)+28|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[r>>2]=v;Wf(d,16,156317,r);rQ(c[w>>2]|0);e=-22;break}c[t>>2]=f+1;k=c[w>>2]|0;c[k>>2]=2;i=c[s>>2]|0;j=k;do if(!(FQ(i,156355)|0)){if(FQ(i,156360)|0){c[k+16>>2]=2;break}if(FQ(i,156365)|0){c[k+16>>2]=3;break}if(FQ(i,156370)|0){c[k+16>>2]=4;break}if(FQ(i,156374)|0){c[k+16>>2]=5;break}if(FQ(i,156378)|0){c[k+16>>2]=6;break}if(FQ(i,156382)|0){c[k+16>>2]=7;break}if(FQ(i,156387)|0){c[k+16>>2]=8;break}if(FQ(i,156392)|0){c[k+16>>2]=9;break}if(FQ(i,156397)|0){c[k+16>>2]=10;break}if(FQ(i,168867)|0){c[k+16>>2]=11;break}if(FQ(i,156401)|0){c[k+16>>2]=12;break}if(FQ(i,156405)|0){c[k+16>>2]=13;break}if(FQ(i,156410)|0){c[k>>2]=5;break}if(FQ(i,156417)|0){c[k>>2]=6;break}if(FQ(i,156423)|0){c[k>>2]=10;break}if(FQ(i,156427)|0){c[k>>2]=11;break}if(FQ(i,156431)|0){c[k>>2]=12;break}if(FQ(i,156435)|0){c[k>>2]=13;break}if(FQ(i,156438)|0){c[k>>2]=15;break}if(FQ(i,156442)|0){c[k>>2]=14;break}if(FQ(i,156445)|0){c[k>>2]=16;break}if(FQ(i,156449)|0){c[k>>2]=17;break}if(FQ(i,156452)|0){c[k>>2]=7;break}if(FQ(i,156455)|0){c[k>>2]=8;break}if(FQ(i,156461)|0){c[k>>2]=9;break}if(FQ(i,156467)|0){c[k>>2]=23;break}if(FQ(i,156470)|0){c[k>>2]=24;break}if(FQ(i,156476)|0){c[k>>2]=25;break}if(FQ(i,156483)|0){c[k>>2]=26;break}if(FQ(i,156488)|0){c[k>>2]=27;break}if(FQ(i,156494)|0){c[k>>2]=28;break}if(FQ(i,162573)|0){c[k>>2]=29;break}if(FQ(i,156499)|0){c[k>>2]=30;break}if(FQ(i,156505)|0){c[k>>2]=31;break}if(FQ(i,156510)|0){c[k>>2]=32;break}if(FQ(i,156514)|0){c[k>>2]=18;break}if(FQ(i,156518)|0){c[k>>2]=38;break}if(FQ(i,156981)|0){c[k>>2]=33;break}if(FQ(i,156524)|0){c[k>>2]=34;break}if(FQ(i,156530)|0){c[k>>2]=35;break}if(FQ(i,156534)|0){c[k>>2]=36;break}if(FQ(i,156537)|0){c[k>>2]=37;break}if(FQ(i,156543)|0){c[k>>2]=39;break}if(FQ(i,156550)|0){c[k>>2]=40;break}if(FQ(i,156556)|0){c[k>>2]=41;break}if(FQ(i,156564)|0){c[k>>2]=42;break}if(FQ(i,156569)|0){c[k>>2]=43;break}if(FQ(i,156575)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break c;if(FQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break d;if(FQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[u>>2]=v;Wf(d,16,156580,u);rQ(c[w>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);l=x;return e|0}function DQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return CQ(b,d)|0}function EQ(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;if((a[b>>0]|0)==48?(a[b+1>>0]|32|0)==120:0)f=+((zT(b,k,16)|0)>>>0);else f=+qV(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+PU(f/20.0*3.321928094887362);b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{g=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[28680+(b*24|0)+16>>0]|0){g=i+1|0;if((a[g>>0]|0)==105){f=f*+h[28680+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+h[28680+(b*24|0)+8>>3];c[k>>2]=g;e=g;b=g;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)g=a[b>>0]|0;if(g<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;l=n;return +f}function FQ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function GQ(a){a=+a;var b=0;b=HQ()|0;return +((+(b>>>0)+4294967296.0*+(y|0))*1.0e-06)}function HQ(){var a=0,b=0,d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=a;hc(b|0,0)|0;d=c[b>>2]|0;d=$W(d|0,((d|0)<0)<<31>>31|0,1e6,0)|0;b=c[b+4>>2]|0;b=VW(d|0,y|0,b|0,((b|0)<0)<<31>>31|0)|0;l=a;return b|0}function IQ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=KQ(a,i)|0;if(!i)break b;h=IQ(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=JQ(j,h)|0;c[i>>2]=h;if(!h){i=7;break}h=IQ(i,b,d,e,f,0)|0;if(h|0){i=10;break}h=c[i>>2]|0}if((i|0)==7)break;else if((i|0)==10)break a}while(0);j=(d|0)==0;h=0;while(1){h=Eg(a,h)|0;if(!h){h=0;break a}if(JT(c[h>>2]|0,b)|0)continue;if((c[h+40>>2]&e|0)!=(e|0))continue;i=(c[h+12>>2]|0)==10;if(j)if(i)continue;else break;if(!i)continue;i=c[h+44>>2]|0;if(!i)continue;if(!(JT(i,d)|0))break}if(g)c[g>>2]=(f&2|0)==0?a:0}else h=0;while(0);l=k;return h|0}function JQ(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Kd[a&31](b)|0;return a|0}function KQ(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Ld[d&15](a,b)|0;return a|0}function LQ(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0.0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;e=n+8|0;i=MQ(b)|0;h=y&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+A(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+dU(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=eX(1,0,61-f|0)|0;f=y;g=j+4|0;o=+z(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~o>>>0;i=+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0;Mn(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)Mn(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);l=n;return}function MQ(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function NQ(){var a=0,b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;a=Gc(84)|0;if(!(c[46403]|0)){c[b>>2]=a;Wf(0,48,156753,b);c[46403]=1}l=d;return a|0}function OQ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=s;p=a+68|0;g=c[p>>2]|0;do if((g|0)>0?(q=a+72|0,h=c[q>>2]|0,(h|0)>0):0){r=a+392|0;e=c[r>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,t=c[k>>2]|0,n=a+388|0,i=c[n>>2]|0,(i+t|0)>>>0>>0&((f+e|0)>>>0>>0&t>>>0<(2147483647-i|0)>>>0)):0){i=ph(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[p>>2]=(c[p>>2]|0)-(c[j>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[j>>2]=0;c[n>>2]=0;e=0;break}PQ(o,a,i);if(!(b&1)){h=c[r>>2]|0;if(!h)b=2147483647;else b=d[156780+((N(h&0-h,125613361)|0)>>>27)>>0]|0;f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[o+(g<<2)>>2]|0;if(!e)e=2147483647;else e=d[156780+((N(e&0-e,125613361)|0)>>>27)>>0]|0;f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[r>>2]=h&-1<>2]|0;if(!g)break;c[f>>2]=g+(c[o+(e<<2)>>2]|0);e=e+1|0}c[p>>2]=(c[p>>2]|0)-((c[j>>2]|0)+(c[r>>2]|0));c[q>>2]=(c[q>>2]|0)-((c[n>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);l=s;return e|0}function PQ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=10;break}i=d[n>>0]|0;g=0;while(1){if((g|0)>=(i|0))break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=N((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;c[a+(f<<2)>>2]=(N((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j;f=f+1|0}if((q|0)==10)c[a+4>>2]=0;return}function QQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[d>>2]|0;g=c[e+4>>2]|0;h=$W(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=y;e=c[e>>2]|0;d=c[d+4>>2]|0;e=$W(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Cn(a,b,h,g,e,y,f)|0;return f|0}function RQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=QQ(a,b,h,g,5)|0;l=f;return e|0}function SQ(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Ng(N(b,a)|0)|0;else a=0;return a|0}function TQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=n+16|0;k=n+8|0;i=n;j=n+32|0;h=n+24|0;f=IQ(a,b,0,0,e,j)|0;e=c[j>>2]|0;a:do if((f|0)!=0&(e|0)!=0){b=(d|0)!=0;if(!b)switch(c[f+12>>2]|0){case 18:case 17:case 16:case 15:case 14:case 11:case 13:case 12:case 5:break;default:{b=-22;break a}}if(!(c[f+40>>2]&128)){j=e+(c[f+8>>2]|0)|0;do switch(c[f+12>>2]|0){case 18:{b=UQ(a,f,d,j)|0;break a}case 5:{b=VQ(d,j)|0;break a}case 7:{b=WQ(d,j)|0;break a}case 6:case 3:case 4:case 9:case 2:case 1:case 0:{b=kQ(a,e,f,d,j)|0;break a}case 11:{b=XQ(a,d,j)|0;break a}case 14:{b=YQ(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=lQ(a,f,j,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}case 12:{b=ZQ(a,f,d,j)|0;break a}case 13:{b=_Q(a,f,d,j)|0;break a}case 15:{if(!b){b=j;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=$Q(j,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;Wf(a,16,156812,i);break a}case 16:{b=aR(a,d,j)|0;break a}case 17:{if(b?JT(d,167415)|0:0){e=eQ(d)|0;f=y;if((e|0)==0&(f|0)==0){c[k>>2]=d;Wf(a,16,156859,k);b=-22}else b=0;a=j;c[a>>2]=e;c[a+4>>2]=f;break a}d=j;c[d>>2]=0;c[d+4>>2]=0;break}default:{}}while(0);Wf(a,16,156912,g);b=-22}else b=-22}else b=-1414549496;while(0);l=n;return b|0}function UQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;j=o+4|0;do if(!d)f=0;else{if(JT(d,163852)|0)if(!($P(d,159228)|0))if(!($P(d,159257)|0)){c[j>>2]=0;g=AT(d,j,10)|0;p=d+(DU(d)|0)|0;if((p|0)==(c[j>>2]|0)){f=g;n=6}}else{f=0;n=6}else{f=1;n=6}else{f=-1;n=6}if(((n|0)==6?(i=+(f|0),!(+h[b+24>>3]>i)):0)?!(+h[b+32>>3]>2]=f;f=0;break}c[k>>2]=d;Wf(a,16,159289,k);f=-22}while(0);l=o;return f|0}function VQ(a,b){a=a|0;b=b|0;Sf(b);a=di(a)|0;c[b>>2]=a;return (a|0?0:-12)|0}function WQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;Sf(d);c[j>>2]=0;do if((b|0)!=0?(e=DU(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=cg(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=9;break}e=qR(e)|0;f=qR(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){Tf(i);e=-22;break}else if((b|0)==9){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function XQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if((b|0)!=0?(JT(b,167415)|0)!=0:0){d=pR(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;Wf(a,16,158923,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}l=f;return d|0}function YQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;if(b){d=nR(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;Wf(a,16,158825,e)}l=g;return d|0}function ZQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kR(a,b,c,d,183,18,158786)|0}function _Q(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kR(a,b,c,d,12,19,158669)|0}function $Q(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;if((l|0)>=(m|0))W(144);o=s+132|0;p=s+88|0;q=s+44|0;r=s;f=p;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));j=b;c[j>>2]=0;c[j+4>>2]=-2147483648;j=(e|0)!=0;a:do if(j){g=(a[d>>0]|0)==45;d=g?d+1|0:d;g=g&1;f=dR(d,158518,p)|0;if(!f){f=dR(d,158527,p)|0;e=p+8|0;c[e>>2]=0;if(!f){c[p>>2]=AT(d,r,10)|0;f=c[r>>2]|0;if((f|0)==(d|0)){e=-22;break}else{c[p+4>>2]=0;c[e>>2]=0;e=g;d=0;k=18;break}}else{n=g;h=0;k=19}}else{n=g;h=0;k=19}}else{e=HQ()|0;f=y;n=ZW(e|0,f|0,1e6,0)|0;c[o>>2]=n;if(!(YP(d,158514)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}else f=0;while(1){if(f>>>0>=2){e=0;break}e=dR(d,c[106940+(f<<2)>>2]|0,p)|0;if(!e)f=f+1|0;else break}h=(e|0)==0;g=h?d:e;h=h&1;e=a[g>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{d=g+1|0;break}default:{d=g;while(1){f=d+1|0;if(!(eR(e<<24>>24)|0))break b;d=f;e=a[f>>0]|0}}}while(0);e=0;f=g;while(1){if(e>>>0>=2){e=0;d=h;k=18;break a}f=dR(d,c[106948+(e<<2)>>2]|0,p)|0;if(!f){e=e+1|0;f=0}else{n=0;k=19;break}}}while(0);if((k|0)==18)if(!f)e=-22;else{n=e;h=d;k=19}c:do if((k|0)==19){e=a[f>>0]|0;if(e<<24>>24==46){g=1e5;d=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(fR(e)|0))break;i=(N(e+-48|0,g)|0)+d|0;g=(g>>>0)/10|0;d=i}while(1){e=a[f>>0]|0;if(!(fR(e<<24>>24)|0)){i=f;g=e;break}else f=f+1|0}}else{d=0;i=f;g=e}d:do if(j){j=((c[p+4>>2]|0)*60|0)+((c[p+8>>2]|0)*3600|0)+(c[p>>2]|0)|0;e=((j|0)<0)<<31>>31;switch(g<<24>>24){case 109:{if((a[i+1>>0]|0)==115){i=i+2|0;d=(d|0)/1e3|0;g=1e3;h=0;f=j;break d}else k=28;break}case 117:{f=i+1|0;if((a[f>>0]|0)==115){i=i+2|0;d=0;g=1;h=0;f=j;break d}break}default:k=28}if((k|0)==28)f=i+1|0;i=g<<24>>24==115?f:i;g=1e6;h=0;f=j}else{j=(g|32)<<24>>24==122;e=j&1;i=i+e|0;h=(h|0)!=0;e:do if(h|j){f=0;g=0}else{switch(a[i>>0]|0){case 45:case 43:break;default:{f=0;g=0;break e}}f=r;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=(a[i>>0]|0)==43;f=i+1|0;i=f;e=0;while(1){if(e>>>0>=3){k=37;break}i=dR(f,c[106956+(e<<2)>>2]|0,r)|0;if(!i){i=0;e=e+1|0}else break}if((k|0)==37)if(!i){e=-22;break c}g=N(g?-60:60,((c[r+8>>2]|0)*60|0)+(c[r+4>>2]|0)|0)|0;e=1;f=g;g=((g|0)<0)<<31>>31}while(0);if(h){if(!e){q=(qc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}else{q=(ic(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}q=p+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2]}r=(e|0)!=0;c[p+32>>2]=(r^1)<<31>>31;if(r)e=gR(p)|0;else e=sc(p|0)|0;f=VW(f|0,g|0,e|0,((e|0)<0)<<31>>31|0)|0;g=1e6;h=0;e=y}while(0);r=(a[i>>0]|0)==0;e=$W(g|0,h|0,f|0,e|0)|0;e=VW(e|0,y|0,d|0,((d|0)<0)<<31>>31|0)|0;f=y;if(r){r=(n|0)!=0;q=WW(0,0,e|0,f|0)|0;c[b>>2]=r?q:e;c[b+4>>2]=r?y:f;e=0}else e=-22}while(0);l=s;return e|0}function aR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if(b){d=bR(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;Wf(a,16,156934,e)}}else d=0;l=f;return d|0}function bR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+160|0;if((l|0)>=(m|0))W(160);t=u+16|0;p=u+8|0;o=u;s=u+28|0;q=u+32|0;n=u+24|0;if((a[d>>0]|0)==35)i=1;else{i=(LT(d,156978,2)|0)==0;i=i?2:0}if((e|0)<0)e=DU(d)|0;e=e-i+1|0;fi(q,d+i|0,e>>>0<128?e:128)|0;e=EU(q,64)|0;c[s>>2]=e;if(!e)k=0;else{k=e+1|0;c[s>>2]=k;a[e>>0]=0}h=DU(q)|0;j=b+3|0;a[j>>0]=-1;a:do if((YP(q,156981)|0)!=0?(YP(q,156988)|0)!=0:0){if((i|0)==0?(oV(q,156997)|0)!=(h|0):0){e=sV(q,105820,140,8,10)|0;if(!e){c[p>>2]=q;Wf(f,16,157061,p);e=-22;break}else{r=e+4|0;a[b>>0]=a[r>>0]|0;a[b+1>>0]=a[r+1>>0]|0;a[b+2>>0]=a[r+2>>0]|0;r=20;break}}e=zT(q,n,16)|0;b:do if(!(a[c[n>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;r=20;break a}while(0);c[o>>2]=q;Wf(f,16,157020,o);e=-22}else r=9;while(0);if((r|0)==9){q=NP()|0;a[b>>0]=q>>>24;a[b+1>>0]=q>>>16;a[b+2>>0]=q>>>8;a[j>>0]=q;r=20}do if((r|0)==20)if(!k)e=0;else{if(!(LT(k,156978,2)|0))g=+((zT(k,s,16)|0)>>>0);else{g=+qV(k,s);g=g<0.0|g>1.0?256.0:g*255.0}s=c[s>>2]|0;if((s|0)!=(k|0)?!(g<0.0|(g>255.0|(a[s>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[t>>2]=k;c[t+4>>2]=d;Wf(f,16,157085,t);e=-22}while(0);l=u;return e|0}function cR(a,b){a=a|0;b=b|0;return YP(a,c[b>>2]|0)|0}function dR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q;c[o>>2]=b;h=e+8|0;i=e+4|0;j=e+20|0;k=e+16|0;n=e+12|0;a:while(1){g=d+1|0;f=a[d>>0]|0;switch(f<<24>>24){case 0:{p=27;break a}case 37:break;default:{d=(eR(f<<24>>24)|0)==0;b=c[o>>2]|0;if(d){if((a[b>>0]|0)!=f<<24>>24){b=0;break a}c[o>>2]=b+1;d=g;continue a}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(eR(d<<24>>24)|0))break;b=b+1|0}c[o>>2]=b;d=g;continue a}}d=d+2|0;b=a[g>>0]|0;switch(b<<24>>24|0){case 74:case 72:{b=hR(o,0,b<<24>>24==72?23:2147483647,2)|0;if((b|0)==-1){b=0;break a}c[h>>2]=b;continue a}case 77:{b=hR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[i>>2]=b;continue a}case 83:{b=hR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[e>>2]=b;continue a}case 89:{b=hR(o,0,9999,4)|0;if((b|0)==-1){b=0;break a}c[j>>2]=b+-1900;continue a}case 109:{b=hR(o,1,12,2)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b+-1;continue a}case 100:{b=hR(o,1,31,2)|0;if((b|0)==-1){b=0;break a}c[n>>2]=b;continue a}case 84:{g=dR(c[o>>2]|0,158547,e)|0;c[o>>2]=g;if(!g){b=0;break a}else continue a}case 104:case 66:case 98:{b=iR(o)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b;continue a}case 37:{g=c[o>>2]|0;c[o>>2]=g+1;if((a[g>>0]|0)==37)continue a;else{b=0;break a}}default:{b=0;break a}}}if((p|0)==27)b=c[o>>2]|0;l=q;return b|0}function eR(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function fR(a){a=a|0;return (a+-48|0)>>>0<10|0}function gR(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function hR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(fR(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function iR(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if((b|0)>=12){b=-1;break}d=c[106968+(b<<2)>>2]|0;if(!(_P(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=DU(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?(_P(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function jR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=12){b=-1;break}if(!(JT(101804+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function kR(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);q=r+8|0;o=r;n=r+28|0;do if((e|0)!=0?(JT(e,167415)|0)!=0:0){k=Kd[i&31](e)|0;if((k|0)==-1){k=AT(e,n,0)|0;if(k>>>0>>0?(a[c[n>>2]>>0]|0)==0:0){p=7;break}else{c[o>>2]=e;c[o+4>>2]=j;Wf(b,16,158683,o);i=-22;break}}else p=7}else{k=-1;p=7}while(0);do if((p|0)==7){s=+h[d+24>>3];e=~~(s>-1.0?s:-1.0);s=+h[d+32>>3];p=g+-1|0;t=+(p|0);i=~~(s>t?t:s);g=(i|e|0)==0;e=g?-1:e;i=g?p:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[q>>2]=k;c[q+4>>2]=f;c[q+8>>2]=j;c[q+12>>2]=e;c[q+16>>2]=i;Wf(b,16,158724,q);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);l=r;return i|0}function lR(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=f;d=f+8|0;if(!(JT(a,158799)|0))b=124973;else{b=(JT(a,158805)|0)==0;b=b?124963:a}a=mR(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=158816;MU(d,32,158811,e)|0;a=mR(d)|0;if((a|0)==-1){e=(JT(b,158819)|0)==0;l=f;return (e?46:-1)|0}}l=f;return a|0}function mR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=183){b=-1;break}if(!(JT(c[112+(b*152|0)>>2]|0,a)|0))break;if($P(a,c[112+(b*152|0)+144>>2]|0)|0)break;b=b+1|0}return b|0}function nR(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)>=8){e=6;break}if(!(JT(c[107016+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=107016+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=oR(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function oR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=k+8|0;i=k;g=a+4|0;c[j>>2]=a;c[j+4>>2]=g;c[j+8>>2]=k+20;do if((aV(b,158874,j)|0)!=2){b=nQ(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{LQ(i,+h[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[g>>2]|0;Mn(a,g,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);l=k;return b|0}function pR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=0;while(1){if((g|0)>=53){i=6;break}if(!(JT(c[107112+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[107112+(g*12|0)+8>>2]|0;e=c[107112+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=AT(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=AT(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}l=j;return e|0}function qR(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function rR(a){a=a|0;return (a>>>0>11?0:101804+(a*20|0)|0)|0}function sR(a){a=a|0;tR(a,0,0);return}function tR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;j=n+8|0;i=j+4|0;e=0;a:while(1){e=Eg(a,e)|0;if(!e)break;g=a+(c[e+8>>2]|0)|0;f=c[e+40>>2]|0;if(!((f&b|0)==(d|0)&(f&128|0)==0))continue;f=c[e+12>>2]|0;switch(f|0){case 8:case 10:continue a;case 13:case 12:case 17:case 15:case 9:case 2:case 1:case 0:case 18:{f=e+16|0;lQ(a,e,g,1.0,1,c[f>>2]|0,c[f+4>>2]|0)|0;continue a}case 4:case 3:{lQ(a,e,g,+h[e+16>>3],1,1,0)|0;continue a}case 6:{LQ(j,+h[e+16>>3],2147483647);f=c[j>>2]|0;lQ(a,e,g,1.0,c[i>>2]|0,f,((f|0)<0)<<31>>31)|0;continue a}case 16:{aR(a,c[e+16>>2]|0,g)|0;continue a}case 5:{VQ(c[e+16>>2]|0,g)|0;continue a}case 11:{XQ(a,c[e+16>>2]|0,g)|0;continue a}case 14:{YQ(a,c[e+16>>2]|0,g)|0;continue a}case 7:{WQ(c[e+16>>2]|0,g)|0;continue a}default:{g=c[e>>2]|0;c[k>>2]=f;c[k+4>>2]=g;Wf(a,48,159335,k);continue a}}}l=n;return} -function og(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function pg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((qg(b,12)|0)==4095){rg(b);sg(b,2);g=tg(b)|0;h=qg(b,2)|0;i=qg(b,4)|0;j=c[89208+(i<<2)>>2]|0;if(j){rg(b);f=qg(b,3)|0;rg(b);rg(b);rg(b);rg(b);e=qg(b,13)|0;if((e|0)<7)e=-67308554;else{sg(b,11);b=qg(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;c[d+8>>2]=((N(e<<3,j)|0)>>>0)/(i>>>0)|0}}else e=-50531338}else e=-16976906;return e|0}function qg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function rg(a){a=a|0;sg(a,1);return}function sg(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function tg(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function ug(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){Rd[e&31](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)vg(f);vg(g);f=g+8|0;wg(c[f>>2]|0);Sf(f);Sf(b);xg(g+16|0);xg(g+20|0);Sf(a)}return}function vg(a){a=a|0;var b=0;b=0;a:while(1){b=Eg(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{Sf(a+(c[b+8>>2]|0)|0);continue a}case 8:{Fg(a+(c[b+8>>2]|0)|0);continue a}default:continue a}}return}function wg(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){zg(b);Sf(a)}return}function xg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yg(b);Sf(a)}return}function yg(a){a=a|0;var b=0,d=0;Sf(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function zg(a){a=a|0;Ag(a);Bg(a);Cg(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function Ag(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;Sf((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}Sf(b);c[d>>2]=0;return}function Bg(a){a=a|0;if(a|0?c[a>>2]|0:0)Dg(a,0);return}function Cg(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)Sf(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];Sf(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;Sd[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);Sf(d)}l=g;return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function Fg(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;Sf((c[d>>2]|0)+(e<<3)|0);Sf((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}Sf(d)}Sf(a);return}function Gg(a,b){a=a|0;b=b|0;return Ld[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){Wf(a,16,116930,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){Ig(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}l=g;return a|0}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Cg(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;yg(a);iX(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=Ng((c[b>>2]|0)+64|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;iX(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Kg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=p+24|0;j=p+16|0;i=p;n=a+4|0;e=c[(c[n>>2]|0)+4>>2]|0;g=a+16|0;a:do if(!e)o=13;else{f=c[(c[g>>2]|0)+4>>2]|0;b=0;while(1){d=c[e+(b<<2)>>2]|0;if(!d)break;if((f|0)==(d|0)){o=13;break a}else b=b+1|0}b=Lg(f)|0;if(!b)b=166686;else b=c[b+8>>2]|0;h=c[(c[g>>2]|0)+4>>2]|0;d=c[c[n>>2]>>2]|0;c[i>>2]=b;c[i+4>>2]=h;c[i+8>>2]=d;Wf(a,16,116968,i);d=0;while(1){b=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=Lg(b)|0;if(!b)b=166686;else b=c[b+8>>2]|0;i=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[j>>2]=b;c[j+4>>2]=i;Wf(a,16,117054,j);d=d+1|0}Wf(a,16,128525,k);b=-22}while(0);do if((o|0)==13){b=Jg(c[a+20>>2]|0,c[g>>2]|0)|0;if((b|0)>=0){k=a+24|0;o=c[k+4>>2]|0;b=a+32|0;c[b>>2]=c[k>>2];c[b+4>>2]=o;b=c[(c[n>>2]|0)+16>>2]|0;if(b|0?(h=Kd[b&31](a)|0,(h|0)<0):0){b=h;break}b=0}}while(0);l=p;return b|0}function Lg(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=a;a=sV(d,89272,436,28,6)|0;l=b;return a|0}function Mg(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Ng(a){a=a|0;var b=0;b=cg(a)|0;if(b|0)kX(b|0,0,a|0)|0;return b|0}function Og(a){a=a|0;var b=0;b=c[a+24>>2]|0;if(c[c[a+28>>2]>>2]|0){kX(b|0,0,46324)|0;a=ON(a,b)|0;if((a|0)>=0){c[b+25692>>2]=0;a=0}}else a=0;return a|0}function Pg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=u;s=c[a+24>>2]|0;t=c[b+24>>2]|0;k=s+25692|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[s+25668>>2]|0)==(c[t+25668>>2]|0)?(c[s+25672>>2]|0)==(c[t+25672>>2]|0):0)?(c[s+27012>>2]|0)==(c[t+27012>>2]|0):0)?(c[s+27008>>2]|0)==(c[t+27008>>2]|0):0)?(d=c[s+28216>>2]|0,d|0):0)?(e=c[t+28216>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=s+25976|0;i=t+25976|0;iX(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32){a=0;break}b=s+27052+(a<<2)|0;Bg(b);d=c[t+27052+(a<<2)>>2]|0;if(d|0?(p=Dh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}while(1){if(a>>>0>=256)break;b=s+27180+(a<<2)|0;Bg(b);d=c[t+27180+(a<<2)>>2]|0;if(d|0?(p=Dh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}b=s+28204|0;Bg(b);e=s+28208|0;Bg(e);d=s+28212|0;c[d>>2]=0;f=s+28216|0;c[f>>2]=0;a=c[t+28204>>2]|0;if(a|0){a=Dh(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[t+28208>>2]|0;if(a|0){a=Dh(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[s+25668>>2]=c[t+25668>>2];c[s+25672>>2]=c[t+25672>>2];c[s+27008>>2]=c[t+27008>>2];c[s+27012>>2]=c[t+27012>>2];c[s+27020>>2]=c[t+27020>>2];c[s+27016>>2]=c[t+27016>>2];c[s+26368>>2]=c[t+26368>>2];if((c[k>>2]|0)==0?(c[t+25692>>2]|0)==0:0)a=0;else{a=Jn(s)|0;if((a|0)<0){Wf(c[s+4>>2]|0,16,150552,n);break}}iX(h|0,i|0,384)|0}p=c[t+4>>2]|0;f=c[s+4>>2]|0;c[f+104>>2]=c[p+104>>2];c[f+100>>2]=c[p+100>>2];c[f+92>>2]=c[p+92>>2];c[f+96>>2]=c[p+96>>2];c[s+29664>>2]=c[t+29664>>2];c[s+29668>>2]=c[t+29668>>2];c[s+25688>>2]=c[t+25688>>2];c[s+26384>>2]=c[t+26384>>2];c[s+26380>>2]=c[t+26380>>2];c[s+26376>>2]=c[t+26376>>2];f=t+25684|0;p=s+25684|0;c[p>>2]=c[f>>2];b=0;while(1){if((b|0)>=36)break;d=s+696+(b*656|0)|0;Wg(s,d);e=t+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(o=ki(s,d,e)|0,(o|0)<0):0){a=o;break a}b=b+1|0}b=c[t+24312>>2]|0;if((b|0)!=0?(q=t+696|0,b>>>0>=q>>>0&b>>>0<(t+24312|0)>>>0):0)b=s+696+(((b-q|0)/656|0)*656|0)|0;else b=0;o=s+24312|0;c[o>>2]=b;b=s+24316|0;Wg(s,b);d=t+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(r=ki(s,b,d)|0,(r|0)<0):0){a=r;break}c[s+29672>>2]=c[t+29672>>2];c[s+25700>>2]=c[t+25700>>2];c[s+25704>>2]=c[t+25704>>2];c[p>>2]=c[f>>2];c[s+27036>>2]=c[t+27036>>2];c[s+27040>>2]=c[t+27040>>2];b=s+28224|0;j=b;k=t+28224|0;n=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));d=s+28348|0;e=t+28348|0;j=d;k=e;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));f=s+28476|0;g=t+28476|0;j=f;k=g;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));h=s+28604|0;i=t+28604|0;j=h;k=i;n=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));j=s+28676|0;k=t+28676|0;n=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));c[s+28740>>2]=c[t+28740>>2];c[s+28744>>2]=c[t+28744>>2];iX(s+28748|0,t+28748|0,792)|0;c[s+29540>>2]=c[t+29540>>2];c[s+29544>>2]=c[t+29544>>2];c[s+29548>>2]=c[t+29548>>2];c[s+29552>>2]=c[t+29552>>2];c[s+29556>>2]=c[t+29556>>2];VN(d,e,32,s,t);VN(f,g,32,s,t);VN(h,i,18,s,t);c[s+29576>>2]=c[t+29576>>2];if(c[o>>2]|0){if(!(c[p>>2]|0)){a=zi(s)|0;c[s+28248>>2]=c[s+28228>>2];c[s+28252>>2]=c[b>>2]}c[s+28260>>2]=c[s+28256>>2];c[s+28264>>2]=c[s+28244>>2];c[s+29572>>2]=c[t+29572>>2]}else a=0}else a=0;while(0);l=u;return a|0}function Qg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;d=o;i=c[a+24>>2]|0;b=ON(a,i)|0;do if((b|0)>=0){if(Dc(183556,3)|0){Wf(a,16,148668,d);b=-1313558101;break}f=a+84|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+80|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+76|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+72>>2]|0;if(((b|0)>0?(g=c[a+68>>2]|0,g|0):0)?(h=si(g,b,i+27052|0,i+27036|0,i+27040|0,c[a+580>>2]|0,a)|0,(h|0)<0):0){Sg(a)|0;b=h;break}b=c[i+28216>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+140|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+28>>2]|0)+4>>2]=1;Ug(i);b=i+29672|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+696>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+696>>2]&2))b=0;else{Wf(a,24,148693,n);b=0}}while(0);l=o;return b|0}function Rg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+48|0;if((l|0)>=(m|0))W(48);v=w+24|0;q=w+16|0;p=w;n=w+36|0;o=c[g+24>>2]|0;h=c[g+28>>2]|0;s=c[b+24>>2]|0;c[s+25696>>2]=c[b+60>>2];c[s+29588>>2]=0;c[s+25636>>2]=0;t=s+24972|0;Wg(s,t);a:do if(h){i=s+27036|0;if((c[i>>2]|0?qi(g,1,0)|0:0)?(j=qi(g,1,n)|0,k=c[n>>2]|0,ri(j,k)|0):0)si(j,k,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[o>>0]|0)==1:0)?(a[o+2>>0]|0)==0:0)?(d[o+4>>0]|0)>251:0)?a[o+5>>0]&31:0)?(a[o+8>>0]|0)==103:0)?ri(o,h)|0:0){h=si(o,h,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;break}j=ti(s,o,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[s+24312>>2]|0)==0;if(i?(c[s+27028>>2]|0)==10:0)if((j|0)>(h|0)){c[p>>2]=127058;c[p+4>>2]=127080;c[p+8>>2]=998;Wf(0,0,159637,p);Ub()}else{h=pi(s,e,f,j)|0;break}do if(c[b+64>>2]&32768){q=c[s+27008>>2]|0;if(!((q|0)==0?1:(c[s+27004>>2]|0)<(q|0)))r=30}else{if(!i?c[s+27032>>2]|0:0){r=30;break}if((c[b+732>>2]|0)>7)break a;if((h|0)>3?(KT(150769,o,4)|0)==0:0)break a;Wf(b,16,127101,q);h=-1094995529;break a}while(0);if((r|0)==30){i=ui(s,c[s+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[s+28740>>2]|0;if(i|0?(u=vi(s,e,i,f)|0,(u|0)<0):0){h=u;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[v>>2]=127112;c[v+4>>2]=127080;c[v+8>>2]=1023;Wf(0,0,159637,v);Ub()}Wg(s,t);h=wi(j,h)|0}}else h=pi(s,e,f,0)|0;while(0);l=w;return h|0}function Sg(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;ii(d);Xg(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;Wg(d,b);Fh(b);a=a+1|0}a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;Sf(d+25628|0);c[d+25632>>2]=0;Vg(d+29676|0);ni(d+27052|0);oi(d+25640|0);b=d+24316|0;Wg(d,b);Fh(b);b=d+24972|0;Wg(d,b);Fh(b);return 0}function Tg(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));Ug(d);Vg(d+29676|0);a=0;while(1){if((a|0)==36)break;Wg(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;Wg(d,d+24316|0);c[d+27004>>2]=0;Xg(d);c[d+25692>>2]=0;return}function Ug(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28744>>2]=-2147483648;c[a+29564>>2]=1;hi(a);c[a+28264>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28604+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28604+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28604+(b<<2)>>2]=0}Wg(a,a+24972|0);c[a+26384>>2]=0;c[a+29572>>2]=-1;c[a+29576>>2]=0;c[a+29560>>2]=0;c[a+29544>>2]=1;return}function Vg(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+208>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;Sf(a+32|0);return}function Wg(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){_g(c[a+4>>2]|0,b+4|0);Bg(b+52|0);d=b+20|0;Bg(d);Bg(b+44|0);a=0;while(1){if((a|0)==2)break;Bg(b+28+(a<<2)|0);Bg(b+60+(a<<2)|0);a=a+1|0}kX(d|0,0,636)|0}return}function Xg(a){a=a|0;var b=0,d=0,e=0;Sf(a+25732|0);Sf(a+26396|0);Sf(a+26392|0);Sf(a+26400|0);Sf(a+26404|0);Sf(a+26408|0);Sf(a+25972|0);Sf(a+28220|0);c[a+26372>>2]=0;Sf(a+26388|0);Sf(a+26360|0);Sf(a+26364|0);Yg(a+29924|0);Yg(a+29928|0);Yg(a+29932|0);Yg(a+29936|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;Sf(e+(a*34768|0)+27784|0);Sf(e+(a*34768|0)+572|0);Sf(e+(a*34768|0)+604|0);Sf(e+(a*34768|0)+608|0);Sf(e+(a*34768|0)+27788|0);Sf(e+(a*34768|0)+27792|0);Sf(e+(a*34768|0)+27796|0);Sf(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function Yg(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)Zg(b);return}function Zg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+4|0;e=g;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];Sd[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);Sf(e);a=c[f>>2]|0}Bc(a|0)|0;b=c[a+52>>2]|0;if(b|0)Rd[b&31](c[a+40>>2]|0);Sf(f);l=g;return}function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=i;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)d=(c[a+400>>2]|0)==12;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+576>>2]&32768|0){c[e>>2]=b;Wf(a,48,124511,e)}Bg(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){ah(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;mX(a|0)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5263439?(f=h+304|0,g=Vf(c[f>>2]|0,h+312|0,e*408|0)|0,g|0):0){c[f>>2]=g;bh(g+((c[d>>2]|0)*408|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}nX(a|0)|0}while(0);l=i;return}function $g(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+860>>2]|0;a:do if(!d){d=gh(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=hh(a,b)|0;break a}case 1:{d=ih(a,b)|0;break a}default:{d=-1;break a}}}else{d=fh(d,b,0)|0;c[b+68>>2]=c[a+100>>2];c[b+72>>2]=c[a+104>>2]}while(0);return d|0}function ah(a){a=a|0;var b=0,d=0,e=0;if(a|0){dh(a);b=0;while(1){if((b|0)==8)break;Bg(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Bg((c[e>>2]|0)+(b<<2)|0);b=b+1|0}Sf(e);Fg(a+344|0);Bg(a+372|0);Bg(a+376|0);Bg(a+380|0);Bg(a+400|0);ch(a)}return}function bh(a,b){a=a|0;b=b|0;iX(a|0,b|0,408)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;kX(b|0,0,408)|0;ch(b);return}function ch(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))Sf(b);kX(a|0,0,408)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function dh(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;eh((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;Sf(b);return}function eh(a){a=a|0;var b=0;b=c[a>>2]|0;Bg(b+16|0);Fg(b+12|0);Sf(a);return}function fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=Dh(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Ld[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)Bg(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=Dh(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=Eh()|0,c[f>>2]=e,(e|0)!=0):0){d=fh(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)<0){Fh(f);break}d=Gh(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){Fh(f);d=0;break}else{c[h>>2]=d;Wf(i,16,126586,h);Fh(f);break}}else d=-12;while(0)}l=j;return d|0}function gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=t;j=t+56|0;p=t+40|0;q=t+24|0;g=t+16|0;h=t+12|0;s=c[(c[a+28>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;n=b+72|0;f=c[n>>2]|0;c[h>>2]=f;o=s+16|0;i=b+80|0;if(((c[o>>2]|0)==(c[i>>2]|0)?(c[s+20>>2]|0)==(e|0):0)?(c[s+24>>2]|0)==(f|0):0)d=0;else r=5;b:do if((r|0)==5){sh(a,g,h,s+28|0);f=a+112|0;a=c[g>>2]|0;do{d=th(p,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[p+(d<<2)>>2]|0)%(c[s+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=uh(j,c[f>>2]|0,c[h>>2]|0,0,p)|0;if((f|0)>=0){d=0;while(1){if((d|0)>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[q+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[q+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if((d|0)>=4){r=20;break}e=s+(d<<2)|0;Yg(e);c[s+60+(d<<2)>>2]=c[p+(d<<2)>>2];a=c[q+(d<<2)>>2]|0;if(a|0?(r=wh(a+23|0,15)|0,c[e>>2]=r,(r|0)==0):0){r=22;break}d=d+1|0}if((r|0)==20){c[o>>2]=c[i>>2];c[s+20>>2]=c[k>>2];c[s+24>>2]=c[n>>2];d=0;break a}else if((r|0)==22){d=-12;r=31;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(xh(c[g>>2]|0)|0)!=0;h=h?f:1;i=s+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[s+76>>2]|0)==(h|0):0)?(c[s+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[s+84>>2]|0):0){d=0;break a}Yg(s);a=s+60|0;e=b+76|0;d=yh(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){q=wh(c[a>>2]|0,0)|0;c[s>>2]=q;if(!q){d=-12;r=31}else{c[i>>2]=c[g>>2];c[s+76>>2]=h;c[s+80>>2]=f;c[s+84>>2]=c[e>>2];d=0}}else r=31;break}default:{c[e>>2]=165642;c[e+4>>2]=124579;c[e+8>>2]=1524;Wf(0,0,159637,e);Ub()}}while(0);if((r|0)==31){e=0;while(1){if((e|0)==4)break;Yg(s+(e<<2)|0);e=e+1|0}c[s+16>>2]=-1;c[s+84>>2]=0;c[s+80>>2]=0;c[s+76>>2]=0;c[s+24>>2]=0;c[s+20>>2]=0}l=t;return d|0}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;e=n+8|0;d=n;f=c[(c[a+28>>2]|0)+16>>2]|0;h=b+80|0;i=ph(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){c[e>>2]=qh(c[h>>2]|0)|0;Wf(a,16,124687,e);d=-22;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if((d|0)>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=kh(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=19;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==19){ah(b);d=-12;break}while(1){if((d|0)>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))rh(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+576>>2]&32768))d=0;else{c[j>>2]=b;Wf(a,48,124740,j);d=0}}else k=5;while(0);if((k|0)==5){Wf(a,16,124637,d);d=-1}l=n;return d|0}function ih(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;f=o;k=c[(c[a+28>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){d=b+64|0;c[d>>2]=jh(h,4)|0;i=h+-8|0;c[b+284>>2]=i;i=jh(i,4)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){Sf(d);Sf(e);d=-12}else{i=d;j=5}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=5}else{c[f>>2]=124551;c[f+4>>2]=124579;c[f+8>>2]=1556;Wf(0,0,159637,f);Ub()}}a:do if((j|0)==5){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=8;break}f=kh(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==8){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=kh(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+576>>2]&32768)){d=0;break a}c[n>>2]=b;Wf(a,48,124599,n);d=0;break a}while(0);ah(b);d=-12}while(0);l=o;return d|0}function jh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Ng(N(b,a)|0)|0;else a=0;return a|0}function kh(a){a=a|0;var b=0,d=0,e=0,f=0;mX(a|0)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=nh(a)|0;nX(a|0)|0;if(!b)b=0;else f=6}else{b=mh(c[e>>2]|0,c[a+36>>2]|0,10,e,0)|0;if(!b){nX(a|0)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;nX(a|0)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function lh(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;mX(b|0)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;nX(b|0)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)Zg(b);return}function mh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=Ng(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=d|0?d:11;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=Ng(12)|0;if(!d){Sf(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);l=j;return d|0}function nh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=c[a+48>>2]|0;if(!b)b=Kd[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Ld[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=Ng(20)|0;if(!d){Bg(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=10;break}}else b=0;while(0);l=f;return b|0}function oh(a,b){a=a|0;b=b|0;Tf(b);return}function ph(a){a=a|0;return (a>>>0>182?0:112+(a*152|0)|0)|0}function qh(a){a=a|0;if(a>>>0<183)a=c[112+(a*152|0)>>2]|0;else a=0;return a|0}function rh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if((g|0)>=256){d=0;break}switch(b|0){case 20:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>5)*36|0;break}case 17:{d=(g>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 22:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>3)*255|0;break}case 19:{d=(g>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function sh(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+112|0;g=ph(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}a:do switch(c[i>>2]|0){case 114:case 115:case 163:case 164:case 78:case 79:case 138:case 139:case 136:case 137:case 76:case 77:case 74:case 75:case 98:case 99:case 92:case 93:case 86:case 87:case 52:case 51:case 134:case 135:case 132:case 133:case 69:case 70:case 67:case 68:case 157:case 156:case 155:case 154:case 96:case 97:case 90:case 91:case 84:case 85:case 50:case 49:case 130:case 131:case 128:case 129:case 65:case 66:case 71:case 72:case 94:case 95:case 88:case 89:case 82:case 83:case 48:case 47:case 126:case 127:case 124:case 125:case 63:case 64:case 61:case 62:case 81:case 80:case 33:case 14:case 32:case 13:case 12:case 30:case 29:case 8:case 113:case 73:case 5:case 31:case 4:case 15:case 110:case 1:case 0:{h=32;g=16;break}case 16:case 140:case 7:{h=32;g=32;break}case 6:{i=(c[a+16>>2]|0)==22;h=i?64:h;g=i?64:g;break}case 39:{j=c[a+16>>2]|0;i=(j|0)==42;j=(j|0)==39;h=j?8:i?4:h;g=j?8:i?4:g;break}case 20:case 17:case 11:{i=c[a+16>>2]|0;switch(i|0){case 43:case 49:{h=4;g=4;break}default:{}}switch(i|0){case 39:case 148:break;default:break a}h=8;g=8;break}case 3:{j=((c[a+16>>2]|0)+-53|0)>>>0<2;h=j?4:h;g=j?4:g;break}case 2:{j=(c[a+16>>2]|0)==43;h=j?4:h;g=j?4:g;break}default:{}}while(0);j=c[a+16>>2]|0;g=(j|0)==136?((g|0)>8?g:8):g;c[b>>2]=(c[b>>2]|0)+-1+g&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((j|0)!=27?(c[a+680>>2]|0)==0:0)g=0;else{c[e>>2]=g+2;g=c[b>>2]|0;c[b>>2]=(g|0)>32?g:32;g=0}while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;h=i;f=ph(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){Bh(g,h,f);e=0;while(1){if((e|0)>=4){b=0;break a}b=Ch(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);l=i;return b|0}function uh(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=p;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;j=ph(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=N(h,e)|0;if((i&66|0)==0&0==0)b=0;else{c[a+4>>2]=f+h;b=h+1024|0;break}while(1){if((b|0)==4)break;c[o+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}n=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if((e|0)>=4)break a;if(!(c[o+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[n>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<>i;q=c[g+(e<<2)>>2]|0;h=N(f,q)|0;i=(b|0)>(2147483647-h|0);if((q|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);l=p;return b|0}function vh(a){a=a|0;var b=0;b=Ah(a)|0;if(!b)b=0;else kX(c[b+4>>2]|0,0,a|0)|0;return b|0}function wh(a,b){a=a|0;b=b|0;var d=0;d=Ng(56)|0;if(!d)d=0;else{Cc(d|0,0)|0;c[d+36>>2]=a;c[d+44>>2]=b|0?b:16;c[d+32>>2]=1}return d|0}function xh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101804+(a*20|0)+12>>2]|0;return a|0}function yh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=zh(e)|0;g=xh(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=$W(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=y,f=(2147483647-(N(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;e=e+-1+(N(N(f?1:b,h)|0,d)|0)&0-e;if(a|0)c[a>>2]=e;e=N(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function zh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101804+(a*20|0)+8>>2]>>3;return a|0}function Ah(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=cg(a)|0;c[d>>2]=b;if(b){a=mh(b,a,11,0,0)|0;if(!a){Sf(d);a=0}}else a=0;l=e;return a|0}function Bh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;e=0}else e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function Ch(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=N(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function Dh(a){a=a|0;var b=0;b=Ng(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function Eh(){var a=0;a=Ng(408)|0;if(!a)a=0;else{c[a+64>>2]=0;ch(a)}return a|0}function Fh(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){ah(b);Sf(a)}return}function Gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=s;h=c[b+376>>2]|0;i=a+376|0;a:do if(h){f=c[i>>2]|0;do if(f|0){k=c[h+4>>2]|0;f=c[f+4>>2]|0;if(!(((k|0)==(f|0)?(c[b+80>>2]|0)==(c[k+40>>2]|0):0)?(c[a+80>>2]|0)==(c[k+36>>2]|0):0)){g=c[(c[k+4>>2]|0)+12>>2]|0;if(!g)break;if((c[g+4>>2]|0)!=(f|0))break}e=c[b+248>>2]|0;if(!e){Wf(k,16,126639,n);e=-22;break a}else{e=c[e+4>>2]|0;ah(a);e=Hh(a,c[e>>2]|0)|0;break a}}while(0);f=c[h+4>>2]|0;if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=Nd[j&3](f,a,b,d)|0,(e|0)!=-38):0))r=14}else r=14;while(0);do if((r|0)==14){e=c[i>>2]|0;if(((e|0?(o=c[e+4>>2]|0,(c[o+36>>2]|0)==(c[a+80>>2]|0)):0)?(p=c[(c[c[o+4>>2]>>2]|0)+76>>2]|0,p|0):0)?(q=Nd[p&3](o,a,b,d)|0,(q|0)!=-38):0){e=q;break}e=-38}while(0);l=s;return e|0}function Hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Ih(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Jh(a,32)|0;if((d|0)<0)break;d=Kh(a,b)|0;if((d|0)>=0)break;ah(a);break}else d=0;while(1){if(d>>>0>=8){f=10;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=Dh(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==10){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=jh(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=Dh(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=Dh(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=Lh(4,d)|0;c[a+64>>2]=e;if(!e){d=-12;break}iX(e|0,c[f>>2]|0,d<<2|0)|0};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);ah(a)}while(0);return d|0}function Ih(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);q=t;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];_h(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));i=b+292|0;j=b+288|0;k=b+68|0;n=a+68|0;o=b+72|0;p=a+72|0;d=(d|0)==0;g=0;while(1){if((g|0)>=(c[i>>2]|0)){r=15;break}h=c[(c[j>>2]|0)+(g<<2)>>2]|0;e=c[h>>2]|0;if(!e){if((c[k>>2]|0)==(c[n>>2]|0)?(c[o>>2]|0)==(c[p>>2]|0):0)r=6}else r=6;if((r|0)==6){r=0;if(d){e=Dh(c[h+16>>2]|0)|0;c[q>>2]=e;e=ai(a,c[h>>2]|0,e)|0;if(!e){r=12;break}}else{f=h+8|0;e=$h(a,e,c[f>>2]|0)|0;if(!e){r=8;break}iX(c[e+4>>2]|0,c[h+4>>2]|0,c[f>>2]|0)|0}_h(e+12|0,c[h+12>>2]|0,0)|0}g=g+1|0}do if((r|0)==8){dh(a);e=-12}else if((r|0)==12){Bg(q);dh(a);e=-12}else if((r|0)==15){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;Bg(d);h=c[b+372>>2]|0;if(h|0?(s=Dh(h)|0,c[d>>2]=s,s|0):0){c[e>>2]=c[s+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;Bg(f);g=a+400|0;Bg(g);e=c[b+380>>2]|0;if(e|0?(a=Dh(e)|0,c[f>>2]=a,(a|0)==0):0){e=-12;break}e=c[b+400>>2]|0;if(e|0?(b=Dh(e)|0,c[g>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);l=t;return e|0}function Jh(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Uh(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=Vh(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Kh(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Mh(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=Nh(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function Lh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=cg(N(b,a)|0)|0;else a=0;return a|0}function Mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=Ph(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];Qh(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);l=j;return d|0}function Nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=xh(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=h|0?g:1;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}Oh(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function Oh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(xh(h)|0)!=0;j=k?g:1;i=zh(h)|0;g=N(k?1:g,i)|0;i=N(g,f)|0;h=N(g,d)|0;g=N(g,e)|0;d=c[a>>2]|0;f=c[b>>2]|0;e=d>>>0>>0;a:do if(((e?f:d)-(c[(e?a:b)>>2]|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;jX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;iX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function Ph(a){a=a|0;var b=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=ph(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0)){a=0;b=0;break}c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);l=g;return a|0}function Qh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;k=n;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}Sh(a,j,d,k,f,g,h,4);l=n;return}function Rh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;k=o;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[k>>2]=126715;c[k+4>>2]=126746;c[k+8>>2]=314;Wf(0,0,159637,k);Ub()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[n>>2]=126767;c[n+4>>2]=126746;c[n+8>>2]=315;Wf(0,0,159637,n);Ub()}else{h=g;i=a;j=d}while(1){if((h|0)<=0)break a;iX(i|0,j|0,f|0)|0;h=h+-1|0;i=i+b|0;j=j+e|0}}while(0);l=o;return}function Sh(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;o=ph(g)|0;a:do if(o|0?(k=c[o+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){Wd[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);iX(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}n=d[o+4>>0]|0;r=0;k=0;while(1){if((k|0)==(n|0))break;q=(c[o+16+(k<<5)>>2]|0)+1|0;r=(r|0)>(q|0)?r:q;k=k+1|0}o=o+6|0;p=0-i|0;n=0;while(1){if((n|0)>=(r|0))break a;q=Th(g,h,n)|0;if((q|0)<0)break;if((n+-1|0)>>>0<2)k=0-(p>>(d[o>>0]|0))|0;else k=i;Wd[j&63](c[a+(n<<2)>>2]|0,c[b+(n<<2)>>2]|0,c[e+(n<<2)>>2]|0,c[f+(n<<2)>>2]|0,q,k);n=n+1|0}Wf(0,16,126685,s)}while(0);l=t;return}function Th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=g+16|0;f=g;a=ph(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){Bh(e,f,a);a=Ch(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;l=g;return a|0}function Uh(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+80|0;k=ph(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=Xh(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){b=(b|0)<1?32:b;j=b+-1|0;f=1;while(1){if((f|0)>(b|0))break;e=th(g,c[h>>2]|0,f+-1+(c[i>>2]|0)&0-f)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else f=f<<1}b=0-b|0;e=0;while(1){if((e|0)>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if((f|0)>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=Ah((N(b,e)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;Bg(m);e=Ah(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);ah(a);e=-12}}else e=-22;while(0);return e|0}function Vh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+80|0;g=xh(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=Wh(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=g|0?f:1;j=a+32|0;if(!((c[j>>2]|0)==0?(d=yh(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){d=a+64|0;c[d>>2]=jh(i,4)|0;e=i+-8|0;h=jh(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){Sf(d);Sf(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=Ah(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=14;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==14){ah(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=Ah(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}ah(a);d=-12}while(0);return d|0}function Wh(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=dX(a|0,b|0,33)|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function Xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Yh(a,b,-1,2147483647,-1,c,d)|0}function Yh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=n+8|0;j=n;i=n+24|0;c[i>>2]=102044;c[i+4>>2]=g;c[i+8>>2]=h;g=Th(f,a,0)|0;h=(g|0)<1;f=eX(a|0,0,3)|0;f=h?f:g;g=h?y:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(h=VW(f|0,g|0,1024,0)|0,h=$W(h|0,y|0,b+128|0,0)|0,g=y,!(g>>>0>0|(g|0)==0&h>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(j=$W(b|0,0,a|0,0)|0,h=y,(h|0)>(e|0)|(h|0)==(e|0)&j>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;Wf(i,16,126829,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;Wf(i,16,126798,j);f=-22}l=n;return f|0}function Zh(a){a=a|0;return c[c[a>>2]>>2]|0}function _h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=bi(b,262508,f,2)|0;if(!f){e=0;break}e=ci(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function $h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=Ah(d)|0;c[e>>2]=d;a=ai(a,b,d)|0;if(!a)Bg(e);l=f;return a|0}function ai(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((((d|0)!=0?(g=a+292|0,h=c[g>>2]|0,h>>>0<=536870910):0)?(i=a+288|0,f=bg(c[i>>2]|0,(h<<2)+4|0)|0,(f|0)!=0):0)?(c[i>>2]=f,e=Ng(20)|0,(e|0)!=0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;h=c[i>>2]|0;i=c[g>>2]|0;c[g>>2]=i+1;c[h+(i<<2)>>2]=e}else e=0;return e|0}function bi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=gi(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(gi(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function ci(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=r+8|0;q=r+4|0;o=r;g=c[a>>2]|0;c[n>>2]=0;c[q>>2]=0;c[o>>2]=0;if(!(e&64))i=bi(g,b,0,e)|0;else i=0;if(!(e&4))h=di(b)|0;else h=b;c[q>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=di(d)|0;c[o>>2]=f}else{c[o>>2]=d;f=d}if(!g){g=Ng(8)|0;c[a>>2]=g;if(!g)k=32;else{p=g;k=11}}else{p=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=p+4|0;b=bg(c[g>>2]|0,(c[p>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){Tf(h);Tf(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))Tf(g);else c[n>>2]=g;Tf(c[i>>2]|0);d=c[p+4>>2]|0;h=(c[p>>2]|0)+-1|0;c[p>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=p+4|0;h=c[d>>2]|0;g=c[p>>2]|0;c[h+(g<<3)>>2]=j;f=c[o>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[n>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=DU(h)|0;g=g+1+(DU(f)|0)|0;b=Ng(g)|0;if(!b)break;ei(b,h,g)|0;Sf(n);ei(b,f,g)|0;c[(c[d>>2]|0)+(c[p>>2]<<3)+4>>2]=b;Sf(o);f=c[p>>2]|0}f=f+1|0;c[p>>2]=f}else if((k|0)==27){Sf(q);f=c[p>>2]|0}if(f|0){f=0;break a}Sf(p+4|0);Sf(a);f=0;break a}else f=0}while(0);if(!(c[p>>2]|0)){Sf(p+4|0);Sf(a);k=32}else k=32}while(0);if((k|0)==32){Tf(c[q>>2]|0);Tf(f);f=-12}l=r;return f|0}function di(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(DU(a)|0)+1|0,b=bg(0,c)|0,(b|0)!=0):0)iX(b|0,a|0,c|0)|0;else b=0;return b|0}function ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=DU(a)|0;if((d+1|0)>>>0>>0)a=fi(a+d|0,b,c-d|0)|0;else a=DU(b)|0;return a+d|0}function fi(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0>>0)a[b>>0]=0;return (DU(c)|0)+g|0}function gi(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function hi(a){a=a|0;var b=0;ii(a);c[a+28260>>2]=0;c[a+28264>>2]=0;c[a+28248>>2]=65536;c[a+28252>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}return}function ii(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;ji(a,b,0);b=b+1|0}d=a+29556|0;if((c[d>>2]|0)!=0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){Wg(a,e);ki(a,e,c[a+28348>>2]|0)|0;b=0}else b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28348+(b<<2)|0;li(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28268|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28476+(b<<2)|0;e=c[b>>2]|0;if(e|0?li(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29552|0;c[d>>2]=(c[d>>2]|0)+-1}return}function ki(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=126947;c[e+4>>2]=126963;c[e+8>>2]=70;Wf(0,0,159637,e);Ub()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=126989;c[g+4>>2]=126963;c[g+8>>2]=71;Wf(0,0,159637,g);Ub()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=127004;c[i+4>>2]=126963;c[i+8>>2]=72;Wf(0,0,159637,i);Ub()}i=b+4|0;c[i>>2]=h;e=mi(i,e)|0;a:do if((e|0)>=0){i=b+20|0;c[i>>2]=Dh(c[d+20>>2]|0)|0;h=Dh(c[d+44>>2]|0)|0;c[b+44>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19}else{c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];e=0;while(1){if((e|0)>=2)break;i=b+28+(e<<2)|0;c[i>>2]=Dh(c[d+28+(e<<2)>>2]|0)|0;h=Dh(c[d+60+(e<<2)>>2]|0)|0;c[b+60+(e<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19;break a}c[b+36+(e<<2)>>2]=c[d+36+(e<<2)>>2];c[b+68+(e<<2)>>2]=c[d+68+(e<<2)>>2];e=e+1|0}if(!(c[d+56>>2]|0))e=0;else{e=Dh(c[d+52>>2]|0)|0;c[b+52>>2]=e;if(!e){e=-12;j=19;break}c[b+56>>2]=c[e+4>>2];e=0}while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}iX(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}}else j=19;while(0);if((j|0)==19)Wg(a,b);l=k;return e|0}function li(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28604+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Hh(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=127024;c[f+4>>2]=127039;c[f+8>>2]=1792;Wf(0,0,159637,f);Ub()}d=c[b+12>>2]|0;if((d|0)!=0?(f=Dh(d)|0,c[e>>2]=f,(f|0)==0):0){_g(c[g>>2]|0,a);d=-12}else d=0}l=h;return d|0}function ni(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32){b=0;break}Bg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==256)break;Bg(a+128+(b<<2)|0);b=b+1|0}Bg(a+1156|0);Bg(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function oi(a){a=a|0;var b=0,d=0;d=a+20|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Sf((c[a>>2]|0)+(b*68|0)+60|0);b=b+1|0}Sf(a);c[d>>2]=0;Sf(a+4|0);c[a+12>>2]=0;c[a+8>>2]=0;return}function pi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+28604>>2]|0;c[a+24312>>2]=0;c[a+26384>>2]=0;h=0;f=1;while(1){g=c[a+28604+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28604+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28604+(k<<2)>>2]|0;c[a+28604+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=vi(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function qi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function ri(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=5;break}c=((fX(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24==7){e=e+-1|0;b=b+c|0}else{c=0;break}}a:do if((f|0)==5){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((fX(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24==8){e=e+-1|0;c=c+b|0}else{c=0;break}}}}while(0);return c|0}function si(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=u+16|0;q=u+8|0;k=u;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;Wf(j,16,148522,k);e=-1094995529;break a}k=a[b+5>>0]&31;s=b+e|0;p=b+6|0;g=0;while(1){if((g|0)>=(k|0))break;n=((fX(d[p>>0]|d[p+1>>0]<<8|0)|0)&65535)+2|0;if((n|0)>(s-p|0)){e=-1094995529;break a}o=MN(p,n,f,i,j)|0;if((o|0)<0){r=9;break}p=p+n|0;g=g+1|0}if((r|0)==9){c[q>>2]=g;Wf(j,16,148541,q);e=o;break a}o=d[p>>0]|0;g=p+1|0;n=0;while(1){if((n|0)>=(o|0)){r=17;break}k=((fX(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(s-g|0)){e=-1094995529;break a}p=MN(g,k,f,i,j)|0;if((p|0)<0){r=15;break}g=g+k|0;n=n+1|0}if((r|0)==15){c[t>>2]=n;Wf(j,16,148575,t);e=p;break a}else if((r|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=NN(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);l=u;return e|0}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+80|0;if((l|0)>=(m|0))W(80);P=Z+48|0;T=Z+40|0;S=Z+32|0;R=Z+24|0;Q=Z+16|0;O=Z+8|0;j=Z;L=Z+52|0;U=b+4|0;M=c[U>>2]|0;Y=b+27032|0;c[Y>>2]=0;N=b+27028|0;c[N>>2]=0;i=M+64|0;if(!(c[i>>2]&32768)){c[b+29560>>2]=0;if(!(c[b+26384>>2]|0))c[b+24312>>2]=0;Vg(b+29676|0)}h=c[b+27040>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){X=e+5|0;if((gX(d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27036>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}X=gX(g|0)|0;if(!(X>>>0<2|X>>>0>f>>>0))c[b+27036>>2]=1}while(0);F=b+25640|0;g=Ii(F,e,f,M,c[b+27036>>2]|0,h,c[M+16>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)Wf(M,16,128082,j);else{C=M+696|0;if(c[C>>2]&1){g=Ji(b)|0;if((g|0)<0)break}else g=0;p=b+25656|0;q=M+732|0;r=b+27024|0;D=b+29560|0;s=b+29580|0;t=b+29588|0;X=b+24312|0;u=M+592|0;v=b+25632|0;w=b+25636|0;E=b+25628|0;x=b+29676|0;y=b+27052|0;z=b+29716|0;A=M+576|0;B=b+29900|0;h=0;o=0;a:while(1){if((o|0)>=(c[p>>2]|0)){V=71;break}k=c[F>>2]|0;j=k+(o*68|0)|0;i=c[k+(o*68|0)+64>>2]|0;if((c[q>>2]|0)>7&(i|0)==0){if((c[k+(o*68|0)+44>>2]|0)==6){i=0;V=22}}else V=22;b:do if((V|0)==22){V=0;c[r>>2]=i;i=c[k+(o*68|0)+44>>2]|0;c[N>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(o*68|0)+8>>2]|0)+1>>0]&-4)<<24>>24==-104){V=24;break a}if(!h){if(c[D>>2]|0?c[C>>2]&2|0:0){V=28;break a}hi(b)}c[s>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{Ni(M,128233,R);break b}case 6:{n=Oi(x,k+(o*68|0)+24|0,y,M)|0;if(!(c[s>>2]|0))i=(c[z>>2]|0)!=-1;else i=1;c[s>>2]=i&1;if(c[A>>2]&8388608|0)Pi(B,c[U>>2]|0);if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}case 7:{i=k+(o*68|0)+24|0;c[L>>2]=c[i>>2];c[L+4>>2]=c[i+4>>2];c[L+8>>2]=c[i+8>>2];c[L+12>>2]=c[i+12>>2];c[L+16>>2]=c[i+16>>2];j=c[u>>2]|0;if((j|0?(H=c[j+28>>2]|0,H|0):0)?(I=Nd[H&3](M,7,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(I|0)<0):0){V=61;break a}if((Qi(L,M,y,0)|0)<=-1?(Wf(c[U>>2]|0,48,128251,S),Ri(L,(c[k+(o*68|0)+20>>2]|0)+1|0,(c[k+(o*68|0)+16>>2]|0)+-1|0)|0,(Qi(L,M,y,0)|0)<=-1):0)Qi(i,M,y,1)|0;break b}case 8:{i=c[u>>2]|0;if((i|0?(J=c[i+28>>2]|0,J|0):0)?(K=Nd[J&3](M,8,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(K|0)<0):0){n=K;break a}n=Si(k+(o*68|0)+24|0,M,y,c[k+(o*68|0)+12>>2]|0)|0;if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}default:{n=c[k+(o*68|0)+12>>2]|0;c[T>>2]=i;c[T+4>>2]=n;Wf(M,48,128309,T);break b}}c[Y>>2]=1;i=Ki(b,j)|0;if(i|0){k=c[E>>2]|0;n=c[w>>2]|0;c[k+(n*34768|0)+23408>>2]=0;c[k+(n*34768|0)+23404>>2]=0;if((i|0)>=0)break;Wf(c[U>>2]|0,16,128341,P);break}if((c[D>>2]|0)==1){if((!((o|0)<(g|0)|(c[C>>2]&1|0)==0)?(c[t>>2]|0)==0:0)?c[X>>2]|0:0){Li(M);c[t>>2]=1}i=c[U>>2]|0;j=c[i+592>>2]|0;if(j|0?(G=Md[c[j+24>>2]&15](i,e,f)|0,(G|0)<0):0){n=G;break a}}i=c[u>>2]|0;if(!i)j=c[v>>2]|0;else j=1;if((c[w>>2]|0)==(j|0)){if(!(c[(c[U>>2]|0)+592>>2]|0))n=Mi(b)|0;else{n=Md[c[i+32>>2]&15](M,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0;c[w>>2]=0}if((n|0)<0?(c[(c[U>>2]|0)+580>>2]&8|0)!=0:0)break a}}while(0);o=o+1|0}do if((V|0)==24){Wf(c[U>>2]|0,16,128125,O);c[b+28744>>2]=-2147483648;n=-1}else if((V|0)==28){Wf(b,16,128150,Q);n=-1094995529}else if((V|0)==61)n=I;else if((V|0)==71){g=Mi(b)|0;if((g|0)<0?c[(c[U>>2]|0)+580>>2]&8|0:0){n=g;break}n=0}while(0);k=b+26380|0;if((((c[k>>2]|0)==3?c[D>>2]|0:0)?(c[b+28216>>2]|0)==(c[(c[b+27052+(c[c[b+28212>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29672>>2]|0:0){h=c[E>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;Ti(h+696|0,c[X>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){Ti(g,0);break}else{Ti(g,c[h+23452>>2]|0);break}}else{Ti(h+728|0,g);V=h+23416|0;c[h+23452>>2]=g;U=c[g>>2]|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];V=h+23428|0;U=(c[g>>2]|0)+32|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)Ti(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];Ui(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[X>>2]|0;if((g|0?(c[b+25684>>2]|0)==0:0)?c[Y>>2]|0:0)Ai(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(n|0)<0?n:f}while(0);l=Z;return g|0}function ui(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=c[a+4>>2]|0;c[a+27004>>2]=0;f=(d|0)!=0;if(!f?(c[e+696>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25684>>2]|0)){b=zi(a)|0;c[a+28248>>2]=c[a+28228>>2];c[a+28252>>2]=c[a+28224>>2]}else b=0;c[a+28260>>2]=c[a+28256>>2];c[a+28264>>2]=c[a+28244>>2]}d=c[e+592>>2]|0;if(d){b=Kd[c[d+36>>2]&31](e)|0;if((b|0)<0)Wf(e,16,127360,g)}if(!f?(c[a+25684>>2]|0)==0:0)Ai((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[a+29560>>2]=0;l=h;return b|0}function vi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=o;j=o+40|0;k=o+24|0;n=o+8|0;f=c[a+4>>2]|0;if(((c[f+60>>2]&8|0)==0?(c[f+64>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+592>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;p=h&1;c[g>>2]=p;Wf(f,48,127140,g);g=0-(p^1)|0;f=0;while(1){if((f|0)==4)break;q=i+(f<<2)|0;p=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[q>>2]|0)+(p&g);c[n+(f<<2)>>2]=(c[q>>2]|0)+(h?p:0);c[k+(f<<2)>>2]=p<<1;f=f+1|0}Qh(j,k,n,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=xi(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}l=o;return f|0}function wi(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function xi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Hh(b,c[d>>2]|0)|0;if((e|0)>=0){ci(b+344|0,127178,yi(a+29852|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}return e|0}function yi(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?127190:127206;break a}case 1:{a=(c[a+20>>2]|0)==2?127222:127241;break a}case 2:{a=(c[a+20>>2]|0)==2?127260:127279;break a}case 3:{a=(c[a+20>>2]|0)==2?127298:127309;break a}case 4:{a=(c[a+20>>2]|0)==2?127320:127331;break a}case 5:{a=(c[a+20>>2]|0)==2?127342:127351;break a}default:{a=155879;break a}}case 1:{a=155879;break}default:a=0}while(0);return a|0}function zi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=l;l=l+144|0;if((l|0)>=(m|0))W(144);E=N+112|0;D=N+104|0;C=N+96|0;w=N+80|0;v=N+72|0;u=N+64|0;t=N+56|0;z=N+48|0;y=N+40|0;x=N+24|0;e=N+16|0;p=N+128|0;L=N;r=N+124|0;G=L;c[G>>2]=0;c[G+4>>2]=0;G=a+28216|0;do if(c[G>>2]|0){if(!(c[a+29548>>2]|0))Bi(a);q=c[a+29540>>2]|0;b=a+4|0;d=c[b>>2]|0;if((q|0)==0?(c[d+576>>2]&2048|0)!=0:0)Wf(d,48,127446,e);J=a+29556|0;H=a+29552|0;B=a+28348|0;K=a+24312|0;I=a+26380|0;n=a+28244|0;o=a+29544|0;k=0;j=0;f=0;g=0;d=0;a:while(1){if((k|0)>=(q|0))break;e=c[b>>2]|0;if(!(c[e+576>>2]&2048))h=a+28748+(k*12|0)|0;else{h=a+28748+(k*12|0)|0;O=c[a+28748+(k*12|0)+4>>2]|0;i=c[a+28748+(k*12|0)+8>>2]|0;c[x>>2]=c[h>>2];c[x+4>>2]=O;c[x+8>>2]=i;Wf(e,48,127460,x)}e=c[h>>2]|0;b:do switch(e|0){case 3:case 1:{f=Ci(a,c[a+28748+(k*12|0)+4>>2]|0,r)|0;g=Di(a,f,p)|0;e=c[h>>2]|0;if(!g){if(((e|0)==3?(s=c[a+28476+(c[a+28748+(k*12|0)+8>>2]<<2)>>2]|0,s|0):0)?(c[s+88>>2]|0)==(f|0):0){h=j;e=0;break b}Wf(c[b>>2]|0,c[J>>2]|0?16:48,127475,y);h=j;d=-1094995529;e=0}else{i=f;A=18}break}default:{i=f;A=18}}while(0);c:do if((A|0)==18){A=0;switch(e|0){case 1:{e=c[b>>2]|0;if(c[e+576>>2]&2048|0){O=c[J>>2]|0;c[z>>2]=c[a+28748+(k*12|0)+4>>2];c[z+4>>2]=O;Wf(e,48,127502,z)}Ei(a,i,c[r>>2]^3)|0;h=j;f=i;e=g;break c}case 3:{e=a+28748+(k*12|0)+8|0;f=c[e>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(g|0))ji(a,f,0);Fi(a,c[p>>2]|0);c[a+28476+(c[e>>2]<<2)>>2]=g;e=c[a+28476+(c[e>>2]<<2)>>2]|0;if(!e){h=j;f=i;e=g;break c}c[e+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;h=j;f=i;e=g;break c}case 2:{e=Ci(a,c[a+28748+(k*12|0)+8>>2]|0,r)|0;c[p>>2]=e;g=c[a+28476+(e<<2)>>2]|0;if(g|0){ji(a,e,c[r>>2]^3);h=j;f=i;e=g;break c}e=c[b>>2]|0;if(!(c[e+576>>2]&2048)){h=j;f=i;e=0;break c}Wf(e,48,127533,t);h=j;f=i;e=0;break c}case 6:{e=c[K>>2]|0;if((c[B>>2]|0)==(e|0)){Wf(c[b>>2]|0,16,127559,u);Fi(a,0);e=c[K>>2]|0}h=a+28748+(k*12|0)+8|0;if(c[e+100>>2]|0){e=0;while(1){if((e|0)==32)break;if((c[a+28476+(e<<2)>>2]|0)==(c[K>>2]|0)){if((e|0)!=(c[h>>2]|0))Wf(c[b>>2]|0,16,127631,v);ji(a,e,0)}e=e+1|0}c[p>>2]=32;e=c[K>>2]|0}f=c[h>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(e|0)){if(c[e+100>>2]|0){A=42;break a}ji(a,f,0);c[a+28476+(c[h>>2]<<2)>>2]=c[K>>2];c[(c[a+28476+(c[h>>2]<<2)>>2]|0)+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;e=c[K>>2]|0}h=e+640|0;c[h>>2]=c[h>>2]|c[I>>2];h=1;f=i;e=g;break c}case 4:{e=c[a+28748+(k*12|0)+8>>2]|0;while(1){if((e|0)>=16)break;ji(a,e,0);e=e+1|0}c[p>>2]=e;h=j;f=i;e=g;break c}case 5:{while(1){if(!(c[J>>2]|0)){e=0;break}Ei(a,c[(c[B>>2]|0)+88>>2]|0,0)|0}while(1){if((e|0)==16)break;ji(a,e,0);e=e+1|0}c[p>>2]=16;e=c[K>>2]|0;c[e+88>>2]=0;c[n>>2]=0;c[o>>2]=1;c[e+92>>2]=1;e=0;while(1){if((e|0)==16)break;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}c[p>>2]=16;h=j;f=i;e=g;break c}default:{h=j;f=i;e=g;break c}}}while(0);k=k+1|0;j=h;g=e}if((A|0)==42){c[w>>2]=127694;c[w+4>>2]=127720;c[w+8>>2]=702;Wf(0,0,159637,w);Ub()}do if(!j){if(c[J>>2]|0){f=c[B>>2]|0;e=c[K>>2]|0;if((f|0)==(e|0)){O=f+640|0;c[O>>2]=c[O>>2]|c[I>>2];break}}else e=c[K>>2]|0;if(c[e+100>>2]|0){Wf(c[b>>2]|0,16,127743,C);d=-1094995529;break}if(Ei(a,c[e+88>>2]|0,0)|0){Wf(c[b>>2]|0,16,127856,D);d=-1094995529}e=c[J>>2]|0;if(!e)e=1;else{jX(a+28352|0,B|0,e<<2|0)|0;e=(c[J>>2]|0)+1|0}O=c[K>>2]|0;c[a+28348>>2]=O;c[J>>2]=e;O=O+640|0;c[O>>2]=c[O>>2]|c[I>>2]}while(0);e=c[H>>2]|0;f=c[J>>2]|0;g=c[(c[G>>2]|0)+48>>2]|0;do if((f+e|0)>(((g|0)>1?g:1)|0)){d=c[b>>2]|0;c[E>>2]=e;c[E+4>>2]=f;c[E+8>>2]=g;Wf(d,16,127898,E);d=c[J>>2]|0;if((c[H>>2]|0)!=0&(d|0)==0)d=0;else{Ei(a,c[(c[a+28348+(d+-1<<2)>>2]|0)+88>>2]|0,0)|0;d=-1094995529;break}while(1){if((d|0)>=16)break;if(c[a+28476+(d<<2)>>2]|0)break;d=d+1|0}ji(a,d,0);d=-1094995529}while(0);e=0;while(1){if((e|0)>=(c[J>>2]|0))break;f=c[a+28348+(e<<2)>>2]|0;if(c[f+648>>2]|0?(F=c[f+88>>2]|0,O=c[G>>2]|0,((1<>2])+-1&(c[(c[K>>2]|0)+88>>2]|0)-F|0)>(c[O+48>>2]|0)):0)Ei(a,F,0)|0;e=e+1|0}Gi(a);Hi(a);h=L+4|0;g=0;i=0;f=0;while(1){if((g|0)==256)break;e=c[a+27180+(g<<2)>>2]|0;if(!e)e=i;else{G=c[e+4>>2]|0;O=G+20|0;e=c[(i>>>0>(c[O>>2]|0)>>>0?L:O)>>2]|0;c[L>>2]=e;f=c[(f>>>0>(c[G+24>>2]|0)>>>0?L:O)+4>>2]|0;c[h>>2]=f}g=g+1|0;i=e}if((d|0)>-1?(c[H>>2]|0)==0:0){e=c[I>>2]|0;if((c[J>>2]|0)>=3?!((i|0)<=(((e|0)!=3?2:1)|0)&(f|0)<2):0)break;if(((i|0)<=((((c[a+29580>>2]|0)==0&1)<<1)+((e|0)!=3?3:2)|0)?(M=c[K>>2]|0,(c[(c[M>>2]|0)+88>>2]|0)==1):0)?(O=M+644|0,c[O>>2]=c[O>>2]|1,(c[(c[b>>2]|0)+140>>2]|0)==0):0){O=a+29576|0;c[O>>2]=c[O>>2]|2}}}else{b=a+4|0;Wf(c[b>>2]|0,16,127432,N+8|0);d=-1094995529}while(0);l=N;return (c[(c[b>>2]|0)+580>>2]&8|0?d:0)|0}function Ai(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;e=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){a=c[a>>2]|0;c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;Wf(a,48,127407,h)}h=e+184|0;mX(h|0)|0;c[g>>2]=b;lX(e+60|0)|0;nX(h|0)|0}l=i;return}function Bi(a){a=a|0;var b=0,d=0,e=0;b=c[a+29556>>2]|0;do if((b|0)!=0?((c[a+29552>>2]|0)+b|0)>=(c[(c[a+28216>>2]|0)+48>>2]|0):0){e=(c[a+26380>>2]|0)==3;if((!e?(c[a+26384>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28748>>2]=1;d=c[(c[a+28348+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28752|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28760>>2]=1;c[a+28764>>2]=d|1;b=2}}else b=0;while(0);c[a+29540>>2]=b;return}function Ci(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26380|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function Di(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;h=a+29556|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28348+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+576>>2]&2048))f=e+88|0;else{o=e+88|0;p=c[o>>2]|0;c[j>>2]=g;c[j+4>>2]=p;c[j+8>>2]=e;Wf(f,48,128072,j);f=o}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;l=n;return e|0}function Ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+576>>2]&2048|0){i=c[a+29556>>2]|0;c[f>>2]=b;c[f+4>>2]=i;Wf(e,48,128046,f)}b=Di(a,b,g)|0;if(b|0?li(a,b,d)|0:0)Fi(a,c[g>>2]|0);l=h;return b|0}function Fi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28348+(b<<2)|0;c[d>>2]=0;f=a+29556|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)jX(d|0,a+28348+(b+1<<2)|0,e-b<<2|0)|0;return}function Gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){Wf(b,48,128028,g);d=a+29556|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28348+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;Wf(h,48,128008,f);b=b+1|0}}while(0);l=g;return}function Hi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){Wf(b,48,127991,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28476+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;Wf(h,48,128008,f)}b=b+1|0}}while(0);l=g;return}function Ii(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=E+40|0;C=E+32|0;B=E+24|0;A=E+16|0;k=E;y=E+44|0;x=(g|0)!=0;if((e|0)<=-1){c[k>>2]=155165;c[k+4>>2]=155179;c[k+8>>2]=137;Wf(0,0,159637,k);Ub()}s=b;t=b+e|0;u=a+4|0;wN(u,a+8|0,(j|0?0:262144)+e|0);a:do if(c[u>>2]|0){c[a+12>>2]=0;v=a+16|0;c[v>>2]=0;w=a+20|0;r=(i|0)==173;n=x?0:e;g=s;b:while(1){e=b+n|0;while(1){i=t-g|0;if(i>>>0<=3){g=0;break a}k=g-s|0;if((k|0)==(n|0)){D=8;break}if((k|0)>(n|0))Wf(f,24,147974,A);k=yN(g,e)|0;i=g+(i>>>0>k>>>0?k:i)|0;k=i;g=t-k|0;if(!g)break b;q=k-s|0;p=n-q|0;g=g>>>0>p>>>0?p:g;if((n|0)>(q|0)){q=g;break}else g=i+g|0}if((D|0)==8){D=0;c[y>>2]=0;k=g;g=xN(h,k,i,y,f)|0;k=k+(i>>>0>h>>>0?h:i)|0;if((g|0)<0)break a;else{q=g;n=k-s+g|0}}g=c[w>>2]|0;i=c[v>>2]|0;if((g|0)<=(i|0)){g=g+1|0;i=zN(c[a>>2]|0,g,68)|0;if(!i){g=-12;break a}c[a>>2]=i;e=c[w>>2]|0;kX(i+(e*68|0)|0,0,(g-e|0)*68|0)|0;e=c[a>>2]|0;o=c[v>>2]|0;c[e+(o*68|0)+56>>2]=1024;p=Lh(1024,4)|0;c[e+(o*68|0)+60>>2]=p;if(!p){g=-12;break a}c[w>>2]=g;i=c[v>>2]|0}p=c[a>>2]|0;o=p+(i*68|0)|0;e=k;g=AN(e,q,u,o,j)|0;if((g|0)<0)break a;if(x?(q|0)!=0&(q|0)!=(g|0):0){c[C>>2]=g;c[C+4>>2]=q;Wf(f,48,148042,C)}c[v>>2]=(c[v>>2]|0)+1;k=t-k|0;g=e+(k>>>0>g>>>0?g:k)|0;e=g;k=t-e|0;if(k>>>0>3){if((k|0)<4)g=0;else g=gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;g=(g|0)!=480&1}else g=1;g=BN(o,g)|0;c[p+(i*68|0)+12>>2]=g;g=CN(p+(i*68|0)+24|0,c[p+(i*68|0)+8>>2]|0,g)|0;if((g|0)<0)break a;if(r)g=DN(o,f)|0;else g=EN(o,f)|0;if((g|0)<1){if((g|0)<0){c[z>>2]=c[p+(i*68|0)+44>>2];Wf(f,16,148087,z)}}else if((c[p+(i*68|0)+4>>2]|0)>=1){g=e;continue}c[v>>2]=(c[v>>2]|0)+-1;g=e}if((c[v>>2]|0)>0)g=0;else{Wf(f,16,148017,B);g=-1094995529}}else g=-12;while(0);l=E;return g|0}function Ji(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;h=o+4|0;i=a+25656|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*68|0)+44|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=Ri(h,(c[d+(f*68|0)+8>>2]|0)+1|0,(c[d+(f*68|0)+4>>2]|0)+-1|0)|0;if((d|0)<0){Wf(c[g>>2]|0,16,147941,k);if(!(c[(c[g>>2]|0)+580>>2]&8))break b;else{n=12;break a}}d=(b|0)!=0;if(!(d&(rN(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((n|0)==12)a=d;l=o;return a|0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+34832|0;if((l|0)>=(m|0))W(34832);v=x+34824|0;u=x+34816|0;t=x+34808|0;s=x+34800|0;q=x+34784|0;j=x+34776|0;h=x+34768|0;i=x;o=a+25628|0;e=c[o>>2]|0;w=a+25636|0;g=c[w>>2]|0;f=e+(g*34768|0)|0;if(!g)n=(c[a+29560>>2]|0)==0;else n=0;r=n&1;d=e+(g*34768|0)+4|0;y=b+24|0;c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];c[d+16>>2]=c[y+16>>2];d=Ul(a,f,b)|0;a:do if((d|0)>=0){if((c[e+(g*34768|0)+21836>>2]|0)>0){c[e+(g*34768|0)+23408>>2]=0;c[e+(g*34768|0)+23404>>2]=0;d=0;break}d=(c[e+(g*34768|0)+21808>>2]|0)==0;if(!d?(c[a+29560>>2]|0)!=0:0)k=11;else{if(c[a+29588>>2]|0){Wf(c[a+4>>2]|0,16,144241,h);d=-1094995529;break}if(d){h=a+29560|0;do if(c[h>>2]|0){if(c[w>>2]|0){d=Mi(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+580>>2]&8|0:0)break a;y=c[o>>2]|0;iX(i|0,y|0,34768)|0;iX(y|0,f|0,34768)|0;iX(f|0,i|0,34768)|0;f=c[o>>2]|0}e=a+24312|0;if(!(c[e>>2]|0)){d=-1094995529;break a}g=a+26384|0;d=(c[g>>2]|0)==0;if((c[a+26380>>2]|0)!=3){if(d){d=-1094995529;break a}d=ui(a,c[o>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27028>>2]|0)!=5){d=-1094995529;break a}Wf(a,24,144258,j);d=ui(a,c[o>>2]|0,1)|0;Ai((c[e>>2]|0)+4|0,2147483647,0);Ai((c[e>>2]|0)+4|0,2147483647,1);c[e>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26384|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;e=c[d>>2]|0;if(e|0?(c[a+25684>>2]|0)==0:0)Ai(e+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[d>>2]=0;g=f;d=h}else{g=f;d=h}}else k=11}if((k|0)==11){g=f;d=a+29560|0}f=c[d>>2]|0;e=(f|0)==0;do if(e){if((g|0)!=(c[o>>2]|0)){c[q>>2]=144284;c[q+4>>2]=133441;c[q+8>>2]=2090;Wf(0,0,159637,q);Ub()}if((c[a+26384>>2]|0)==0?(p=c[(c[a+4>>2]|0)+732>>2]|0,(p|0)>7):0){if(!(c[a+27024>>2]|0)){d=0;break a}if((p|0)>15){if((c[g+840>>2]|0)==3){d=0;break a}if((p|0)>23){if((c[g+840>>2]|0)!=1){d=0;break a}if((p|0)>31)if((c[a+27028>>2]|0)==5)if((p|0)>47){d=0;break a}else break;else if((c[a+29716>>2]|0)<0|(p|0)>47){d=0;break a}else break}}}}while(0);do if(!n){y=c[(c[a+27180+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;q=c[a+28212>>2]|0;d=c[q>>2]|0;if((d|0)==(c[y>>2]|0)?(c[q+64>>2]|0)==(c[y+64>>2]|0):0){if((c[a+28216>>2]|0)==(c[(c[a+27052+(d<<2)>>2]|0)+4>>2]|0))break;Wf(c[a+4>>2]|0,16,144331,t);d=-1094995529;break a}Wf(c[a+4>>2]|0,16,144303,s);d=-1094995529;break a}while(0);do if(e){d=Vl(a,g,b,r)|0;if((d|0)<0)break a}else{d=c[a+26380>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25684>>2]|0)==((c[b+64>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[v>>2]=f+1;Wf(d,16,144433,v);d=-1094995529;break a}y=c[a+4>>2]|0;c[u>>2]=d;c[u+4>>2]=e;Wf(y,16,144371,u);d=-1094995529;break a}while(0);d=Wl(a,g,b)|0;if((d|0)>=0){c[w>>2]=(c[w>>2]|0)+1;d=0}}while(0);l=x;return d|0}function Li(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[(c[a+28>>2]|0)+20>>2]|0;if(c[a+696>>2]&1|0){e=a+592|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){mX((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;Tl(c[f>>2]|0)}}while(0);b=f+184|0;mX(b|0)|0;d=f+300|0;if((c[d>>2]|0)==4)Wf(a,24,144200,g);c[d>>2]=4;lX(f+60|0)|0;nX(b|0)|0}l=h;return}function Mi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=w+16|0;d=w;i=c[a+4>>2]|0;v=a+25636|0;t=c[v>>2]|0;u=a+25628|0;j=c[u>>2]|0;b=j+21812|0;c[b>>2]=2147483647;if((t|0)<1|(c[i+592>>2]|0)!=0)b=0;else{k=t+-1|0;s=a+27008|0;h=c[s>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(h|0)){c[d>>2]=133372;c[d+4>>2]=133441;c[d+8>>2]=2746;Wf(0,0,159637,d);Ub()}a:do if((t|0)!=1){if((t|0)<=0){c[e>>2]=133465;c[e+4>>2]=133441;c[e+8>>2]=2758;Wf(0,0,159637,e);Ub()}r=a+27012|0;b=0;while(1){if((b|0)==(t|0))break;f=c[r>>2]|0;e=N(h,f)|0;c[j+(b*34768|0)+596>>2]=0;g=N(f,c[j+(b*34768|0)+21792>>2]|0)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(t|0))break;q=N(f,c[j+(d*34768|0)+21792>>2]|0)|0;q=q+(c[j+(d*34768|0)+21788>>2]|0)|0;q=(b|0)==(d|0)|(q|0)<(g|0)?e:(e|0)>(q|0)?q:e;d=d+1|0;e=q}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}Pd[c[i+704>>2]&7](i,7,j,0,t,34768)|0;e=c[u>>2]|0;c[a+27004>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(t|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25708|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26376|0;h=a+26380|0;f=0;while(1){if((f|0)==(t|0)){b=0;break a}q=c[u>>2]|0;i=q+(f*34768|0)|0;j=q+(f*34768|0)+21792|0;o=c[j>>2]|0;n=c[s>>2]|0;k=(o|0)<(n|0)?o+1|0:n;n=c[((o|0)>=(n|0)?r:q+(f*34768|0)+21788|0)>>2]|0;o=q+(f*34768|0)+21804|0;p=k+-1|0;q=q+(f*34768|0)+21800|0;e=c[o>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[o>>2]|0))b=0;else b=c[q>>2]|0;if((e|0)==(p|0))d=n;else d=c[r>>2]|0;hk(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{c[b>>2]=N(c[a+27012>>2]|0,h)|0;c[a+25708>>2]=0;b=gk(i,j)|0;c[a+27004>>2]=c[(c[u>>2]|0)+21792>>2]}while(0);c[v>>2]=0}l=w;return b|0}function Ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;tj(1,a,b,f);l=e;return}function Oi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);u=w+16|0;t=w;n=a+36|0;o=a+40|0;p=a+44|0;q=a+176|0;r=a+208|0;s=a+224|0;k=a+240|0;i=0;a:while(1){if((Jj(b)|0)<=16){f=i;break}if(!(Kj(b,16)|0)){f=i;break}else h=0;while(1){if((Jj(b)|0)<8){f=-1094995529;break a}h=(Kj(b,8)|0)+h|0;if((Lj(b,8)|0)!=255){g=0;break}}do{if((Jj(b)|0)<8){f=-1094995529;break a}g=(Kj(b,8)|0)+g|0}while((Lj(b,8)|0)==255);f=Jj(b)|0;if(g>>>0>((f|0)/8|0)>>>0){v=9;break}j=(Mj(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=Nj(a,b,d,e)|0;v=21;break}case 4:{f=Oj(a,b,g)|0;v=21;break}case 5:{f=Pj(n,b,g)|0;v=21;break}case 6:{Qj(o,b);f=i;break}case 0:{f=Rj(p,b,d,e)|0;v=21;break}case 45:{Sj(q,b);f=i;break}case 47:{Tj(r,b);f=i;break}case 56:{Uj(s,b);f=i;break}case 147:{Vj(k,b);f=i;break}default:{c[u>>2]=h;Wf(e,48,133190,u);f=i}}while(0);if((v|0)==21){v=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}Wj(b,j-(Mj(b)|0)|0);Xj(b);i=f}if((v|0)==9){c[t>>2]=h;c[t+4>>2]=g<<3;c[t+8>>2]=f;Wf(e,16,133153,t);f=-1094995529}l=w;return f|0}function Pi(b,f){b=b|0;f=f|0;var g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;p=l;l=l+96|0;if((l|0)>=(m|0))W(96);j=p+80|0;i=p+72|0;g=p+40|0;o=p+32|0;n=p+24|0;k=p+16|0;q=p+8|0;Wf(f,48,132898,p);c[q>>2]=d[b>>0];Wf(f,48,132931,q);switch(a[b>>0]|0){case 0:{q=b+1|0;c[k>>2]=d[q>>0];Wf(f,48,132958,k);switch(a[q>>0]|0){case 2:{c[n>>2]=e[b+2>>1];Wf(f,48,132992,n);break}case 3:{c[o>>2]=e[b+4>>1];Wf(f,48,133026,o);break}default:{}}t=+(d[b+7>>0]|0)/255.0;s=+(d[b+8>>0]|0)/255.0;r=+(d[b+9>>0]|0)/255.0;h[g>>3]=+(d[b+6>>0]|0)/255.0;h[g+8>>3]=t;h[g+16>>3]=s;h[g+24>>3]=r;Wf(f,48,133061,g);break}case 1:{q=b+10|0;c[i>>2]=d[q>>0];Wf(f,48,133106,i);if(!(a[q>>0]|0)){h[j>>3]=+(e[b+12>>1]|0)/100.0;Wf(f,48,133129,j)}break}default:{}}l=p;return}function Qi(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;R=l;l=l+240|0;if((l|0)>=(m|0))W(240);L=R+152|0;I=R+144|0;H=R+120|0;F=R+104|0;D=R+96|0;A=R+88|0;z=R+80|0;w=R+72|0;y=R+64|0;x=R+56|0;v=R+48|0;t=R+40|0;u=R+32|0;s=R+24|0;r=R+16|0;q=R+8|0;j=R;M=R+228|0;O=vh(5300)|0;c[M>>2]=O;P=O;a:do if(!O)g=-12;else{Q=O+4|0;K=c[Q>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=K+5296|0;c[i>>2]=g;if(g>>>0>4096){Wf(d,48,132039,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}iX(K+1200|0,h|0,g|0)|0;p=ij(a,8)|0;g=hj(a)|0;h=hj(a)|0;i=hj(a)|0;j=hj(a)|0;k=hj(a)|0;n=hj(a)|0;vj(a);o=ij(a,8)|0;J=fj(a)|0;b:do if(J>>>0>31){c[q>>2]=J;Wf(d,16,131126,q)}else{c[K>>2]=J;c[K+1164>>2]=24;G=K+4|0;c[G>>2]=p;c[K+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|n<<5;E=K+8|0;c[E>>2]=o;c[K+112>>2]=-1;i=K+672|0;j=K+768|0;k=K+668|0;kX(i|0,16,480)|0;c[k>>2]=0;c[K+128>>2]=2;switch(p|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=fj(a)|0;c[K+12>>2]=g;if(g>>>0>3){c[r>>2]=g;Ni(d,132072,r);break b}if((g|0)==3?(B=hj(a)|0,c[K+1192>>2]=B,B|0):0){Wf(d,16,132093,s);break b}B=K+1184|0;c[B>>2]=(ej(a)|0)+8;g=ej(a)|0;h=g+8|0;c[K+1188>>2]=h;if((h|0)!=(c[B>>2]|0)){Ni(d,132134,u);break b}if(g>>>0>6){c[t>>2]=h;c[t+4>>2]=h;Wf(d,16,132170,t);break b}c[K+16>>2]=hj(a)|0;g=mj(a,K,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[K+12>>2]=1;c[K+1184>>2]=8;c[K+1188>>2]=8}}g=ej(a)|0;if(g>>>0>12){c[v>>2]=g;Wf(d,16,132204,v);break}c[K+20>>2]=g+4;g=fj(a)|0;v=K+24|0;c[v>>2]=g;c:do switch(g|0){case 0:{g=ej(a)|0;if(g>>>0>12){c[x>>2]=g;Wf(d,16,132255,x);break b}else{c[K+28>>2]=g+4;break c}}case 1:{c[K+32>>2]=hj(a)|0;c[K+36>>2]=jj(a)|0;c[K+40>>2]=jj(a)|0;g=ej(a)|0;i=K+44|0;c[i>>2]=g;if(g>>>0>255){c[y>>2]=g;Wf(d,16,132294,y);break b}else h=0;while(1){if((h|0)>=(g|0))break c;b[K+148+(h<<1)>>1]=jj(a)|0;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[w>>2]=g;Wf(d,16,132324,w);break b}}while(0);g=fj(a)|0;t=K+48|0;c[t>>2]=g;y=(c[d+20>>2]|0)==844516691;B=(g|0)>2?g:2;c[t>>2]=y?B:g;g=y?B:g;if((g|0)>16){c[z>>2]=g;Wf(d,16,132345,z);break}c[K+52>>2]=hj(a)|0;s=K+56|0;c[s>>2]=(ej(a)|0)+1;u=K+60|0;c[u>>2]=(ej(a)|0)+1;g=hj(a)|0;B=K+64|0;c[B>>2]=g;h=c[u>>2]|0;if(h>>>0>1073741822){Wf(d,16,132375,A);break}c[u>>2]=N(h,2-g|0)|0;if(!g)g=hj(a)|0;else g=0;r=K+68|0;c[r>>2]=g;g=c[s>>2]|0;if((g>>>0<=134217726?(C=c[u>>2]|0,C>>>0<=134217726):0)?(Xh(g<<4,C<<4,0,d)|0)==0:0){q=K+72|0;c[q>>2]=hj(a)|0;D=hj(a)|0;g=K+76|0;c[g>>2]=D;d:do if(!D){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=ej(a)|0;j=ej(a)|0;k=ej(a)|0;n=ej(a)|0;o=c[s>>2]<<4;p=c[u>>2]<<4;if(c[d+64>>2]&65536|0){c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=n;Wf(d,48,132418,F);H=K+80|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;break}h=c[K+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[B>>2]|0)<<((h|0)==1&1);F=536870911>>>g;do if((!(i>>>0>F>>>0|j>>>0>F>>>0)?(F=536870911/(h>>>0)|0,!(k>>>0>F>>>0|n>>>0>F>>>0)):0)?j+i<>>0>>0:0){if((N(h,n+k|0)|0)>>>0>=p>>>0)break;c[K+80>>2]=i<>2]=j<>2]=N(h,k)|0;c[K+92>>2]=N(h,n)|0;break d}while(0);c[H>>2]=i;c[H+4>>2]=j;c[H+8>>2]=k;c[H+12>>2]=n;c[H+16>>2]=o;c[H+20>>2]=p;Wf(d,16,132484,H);break b}while(0);H=hj(a)|0;i=K+96|0;c[i>>2]=H;if(H|0?(wj(a,d,K)|0)<0:0)break;g=xj(a)|0;if((g|0)<0?(f=(f|0)!=0,c[I>>2]=c[i>>2]|0?132525:148268,c[I+4>>2]=0-g,Wf(d,f?24:16,132529,I),!f):0)break;A=(c[K+660>>2]|0)==0;e:do if(A){if((c[t>>2]|0)==0?(c[d+568>>2]|0)<=0:0)break;h=K+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[102104+(g<<3)>>2]|0)==(c[E>>2]|0))break;g=g+1|0}I=(c[102104+(g<<3)+4>>2]|0)/(N(c[u>>2]|0,c[s>>2]|0)|0)|0;c[h>>2]=(I|0)<15?I:15}while(0);g=K+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+576>>2]&1|0){z=c[G>>2]|0;y=c[E>>2]|0;x=c[v>>2]|0;w=c[t>>2]|0;v=c[s>>2]|0;u=c[u>>2]|0;if(!(c[B>>2]|0))t=c[r>>2]|0?132553:132560;else t=132568;o=c[q>>2]|0?132572:262508;p=c[K+80>>2]|0;q=c[K+84>>2]|0;r=c[K+88>>2]|0;s=c[K+92>>2]|0;h=c[i>>2]|0?132525:262508;i=132576+((c[K+12>>2]|0)*5|0)|0;if(!(c[K+132>>2]|0)){k=0;n=0}else{k=c[K+136>>2]|0;n=c[K+140>>2]|0}j=c[K+1184>>2]|0;if(A)g=-1;else g=c[K+664>>2]|0;c[L>>2]=J;c[L+4>>2]=z;c[L+8>>2]=y;c[L+12>>2]=x;c[L+16>>2]=w;c[L+20>>2]=v;c[L+24>>2]=u;c[L+28>>2]=t;c[L+32>>2]=o;c[L+36>>2]=p;c[L+40>>2]=q;c[L+44>>2]=r;c[L+48>>2]=s;c[L+52>>2]=h;c[L+56>>2]=i;c[L+60>>2]=k;c[L+64>>2]=n;c[L+68>>2]=j;c[L+72>>2]=g;Wf(d,48,132596,L)}g=e+(J<<2)|0;h=c[g>>2]|0;do if(h|0){if(KT(c[h+4>>2]|0,c[Q>>2]|0,c[O+8>>2]|0)|0)break;Bg(M);g=0;break a}while(0);yj(e,J);c[g>>2]=P;g=0;break a}Wf(d,16,132392,D)}while(0);Bg(M);g=-1094995529}while(0);l=R;return g|0}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;return uj(a,b,c>>>0>268435455?-8:c<<3)|0}function Si(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+128|0;if((l|0)>=(m|0))W(128);E=F+56|0;q=F+48|0;p=F+40|0;n=F+32|0;o=F+24|0;k=F+16|0;i=F+8|0;f=F;z=F+116|0;D=ej(a)|0;a:do if(D>>>0<=255){f=vh(173836)|0;c[z>>2]=f;C=f;if(!f)f=-12;else{B=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=B+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;Wf(b,48,131081,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}iX(B+728|0,g|0,f|0)|0;f=fj(a)|0;c[B>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){x=c[j+4>>2]|0;y=x+1184|0;f=c[y>>2]|0;if((f|0)>14){c[o>>2]=f;Wf(b,16,131150,o);f=-1094995529;break}switch(f|0){case 13:case 11:{c[n>>2]=f;gj(b,131177,n);f=-1163346256;break b}default:{}}v=B+4|0;c[v>>2]=hj(a)|0;c[B+8>>2]=hj(a)|0;u=ej(a)|0;w=B+12|0;c[w>>2]=u+1;if((u|0)>0){c[B+16>>2]=ej(a)|0;Wf(b,16,131209,p)}t=B+20|0;c[t>>2]=(ej(a)|0)+1;s=ej(a)|0;u=B+24|0;c[u>>2]=s+1;if(((c[t>>2]|0)+-1|s)>>>0>31){Wf(b,16,131228,q);f=-1094995529;break}s=(c[y>>2]|0)*6|0;k=B+28|0;c[k>>2]=hj(a)|0;c[B+32>>2]=ij(a,2)|0;s=s+-22|0;n=B+36|0;c[n>>2]=s+(jj(a)|0);o=B+40|0;c[o>>2]=s+(jj(a)|0);s=jj(a)|0;j=B+44|0;c[j>>2]=s;if((s+12|0)>>>0>24)f=-1094995529;else{p=B+52|0;c[p>>2]=hj(a)|0;q=B+56|0;c[q>>2]=hj(a)|0;r=B+60|0;c[r>>2]=hj(a)|0;s=B+64|0;c[s>>2]=0;i=B+68|0;f=i;g=x+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=B+164|0;iX(f|0,x+768|0,384)|0;if((kj(a)|0)<(e|0)?(lj(x,b)|0)!=0:0){c[s>>2]=hj(a)|0;f=mj(a,x,B,0,i,f)|0;if((f|0)<0)break;a=jj(a)|0;h=B+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=B+48|0;c[h>>2]=f}nj(B,0,f,c[y>>2]|0);nj(B,1,c[h>>2]|0,c[y>>2]|0);oj(B,x);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[B+724>>2]=1;if(c[b+576>>2]&1|0){h=c[B>>2]|0;i=c[v>>2]|0?131254:131260;j=c[w>>2]|0;v=c[t>>2]|0;w=c[u>>2]|0;x=c[k>>2]|0?131266:262508;y=c[n>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0?131275:262508;z=c[q>>2]|0?131280:262508;A=c[r>>2]|0?131287:262508;B=c[s>>2]|0?131292:262508;c[E>>2]=D;c[E+4>>2]=h;c[E+8>>2]=i;c[E+12>>2]=j;c[E+16>>2]=v;c[E+20>>2]=w;c[E+24>>2]=x;c[E+28>>2]=y;c[E+32>>2]=e;c[E+36>>2]=g;c[E+40>>2]=f;c[E+44>>2]=a;c[E+48>>2]=z;c[E+52>>2]=A;c[E+56>>2]=B;Wf(b,48,131299,E)}pj(d,D);c[d+128+(D<<2)>>2]=C;f=0;break a}}else A=8;while(0);if((A|0)==8){c[k>>2]=f;Wf(b,16,131126,k);f=-1094995529}Bg(z)}}else{c[f>>2]=D;Wf(b,16,150774,f);f=-1094995529}while(0);l=F;return f|0}function Ti(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function Ui(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;$=l;l=l+80|0;if((l|0)>=(m|0))W(80);D=$+64|0;v=$+48|0;u=$+40|0;t=$+32|0;s=$+24|0;r=$+16|0;o=$+8|0;n=$;S=f+568|0;p=c[S>>2]|0;V=f+560|0;q=c[V>>2]|0;a:do if((((c[(c[f>>2]|0)+572>>2]|0?(k=f+572|0,c[k>>2]|0):0)?(c[(c[f>>2]|0)+680>>2]|0)==0:0)?Vi(f)|0:0)?(U=f+556|0,j=c[U>>2]|0,h=c[f>>2]|0,(c[k>>2]|0)!=(N(j*3|0,(c[h+272>>2]|0)+(c[h+268>>2]|0)|0)|0)):0){g=f+672|0;E=c[g>>2]|0;X=E+32|0;_=f+580|0;Y=f+564|0;i=0;while(1){if((i|0)>=(j|0))break;if((a[(c[_>>2]|0)+((N((c[V>>2]|0)+-1|0,c[Y>>2]|0)|0)+i)>>0]|0)!=127)break;i=i+1|0}if(((i|0)==(j|0)?(c[h+16>>2]|0)==2:0)?((c[h+96>>2]|0)+15&16|0)!=0:0){h=c[f>>2]|0;if((c[k>>2]|0)==(N((c[U>>2]|0)*3|0,(c[h+268>>2]|0)+1+(c[h+272>>2]|0)|0)|0)){Wf(h,48,128368,n);break}}C=f+704|0;i=c[C>>2]|0;do if(i|0){Q=c[g>>2]|0;if(((c[i+68>>2]|0)==(c[Q+68>>2]|0)?(c[i+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[i+80>>2]|0)==(c[Q+80>>2]|0):0)break;Wf(h,24,128397,o);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;c[C+24>>2]=0;c[C+28>>2]=0}while(0);B=f+736|0;h=c[B>>2]|0;do if(h|0){Q=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[Q+68>>2]|0)?(c[h+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[h+80>>2]|0)==(c[Q+80>>2]|0):0)break;Wf(c[f>>2]|0,24,128447,r);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;c[B+24>>2]=0;c[B+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))T=27;b:do if((T|0)==27){Wf(c[f>>2]|0,16,128493,s);i=(N(p<<3,q)|0)+16|0;h=0;while(1){if((h|0)>=2)break b;k=f+768+(h<<2)|0;c[k>>2]=vh(N(c[Y>>2]<<2,c[V>>2]|0)|0)|0;j=vh(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0){g=0;break}c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}while(1){if((g|0)==2)break a;Bg(f+768+(g<<2)|0);Bg(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+576>>2]&1024|0){h=0;while(1){if((h|0)<(c[V>>2]|0))i=0;else break c;while(1){if((i|0)>=(c[U>>2]|0))break;P=d[(c[_>>2]|0)+((N(c[Y>>2]|0,h)|0)+i)>>0]|0;Q=c[f>>2]|0;c[t>>2]=P;Wf(Q,48,128520,t);i=i+1|0}Wf(c[f>>2]|0,48,128525,u);h=h+1|0}}while(0);P=f+552|0;Q=f+548|0;n=1;while(1){if((n|0)==4)break;p=9<>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=d[j>>0]|0;h=(p&k|0)==0?i:1;if(!h)a[j>>0]=q|k;i=(k&1|0)==0?h:0;h=o}n=n+1|0}O=f+792|0;d:do if(c[O>>2]|0){i=0;h=c[P>>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break d;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=a[j>>0]|0;n=k&255;h=(n&98|0)==0?((n&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(n&1|0)==0?h:0;h=o}}while(0);e:do if(c[(c[f>>2]|0)+580>>2]&8|0){h=1;n=(c[P>>2]|0)+-2|0;while(1){if((n|0)<((c[U>>2]|0)+100|0))break e;M=c[Q>>2]|0;L=c[_>>2]|0;i=L+(c[M+(n<<2)>>2]|0)|0;j=a[i>>0]|0;k=j&255;h=(k&1|0)==0?h:1;if(j<<24>>24!=127?(a[L+(c[M+(n+1<<2)>>2]|0)>>0]|0)==127:0){if((k&112|0)!=0|(h|0)==0)T=60}else if(!h)T=60;if((T|0)==60){T=0;a[i>>0]=j|14;h=0}n=n+-1|0}}while(0);M=f+600|0;h=9999999;n=1;while(1){if((n|0)==4){h=0;n=0;break}o=1<>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;L=c[(c[Q>>2]|0)+(k<<2)>>2]|0;i=(c[_>>2]|0)+L|0;j=d[i>>0]|0;K=c[M>>2]|0;if(!((K|0)!=0?(a[K+L>>0]|0)!=0:0))h=h+1|0;h=(o&j|0)==0?h:0;do if(!(c[O>>2]|0)){if((h|0)>=50)break;a[i>>0]=o|j}else{if((h|0)>=(c[p>>2]|0))break;a[i>>0]=o|j}while(0);h=(j&1|0)==0?h:9999999;i=k}n=n+1|0}while(1){j=c[P>>2]|0;if((n|0)>=(j|0))break;i=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;n=n+1|0}f:do if(!(c[O>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(i<<2)>>2]|0)|0;L=d[h>>0]|0;a[h>>0]=(L&14|0)==0?L:L|14;i=i+1|0;h=c[P>>2]|0}}else h=j;while(0);i=0;j=0;k=0;n=0;while(1){if((n|0)>=(h|0))break;L=d[(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)>>0]|0;i=(L>>>2&1)+i|0;j=(L>>>3&1)+j|0;k=(L>>>1&1)+k|0;n=n+1|0}L=c[f>>2]|0;K=(Wi(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[v>>2]=i;c[v+4>>2]=k;c[v+8>>2]=j;c[v+12>>2]=K;Wf(L,32,128527,v);j=(Xi(f)|0)!=0;j=j?1:12296;L=f+696|0;i=0;while(1){h=c[P>>2]|0;if((i|0)>=(h|0))break;h=c[(c[Q>>2]|0)+(i<<2)>>2]|0;if((a[(c[_>>2]|0)+h>>0]&12)==12)c[(c[L>>2]|0)+(h<<2)>>2]=j;i=i+1|0}K=c[C>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))T=92;g:do if((T|0)==92){K=c[B>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)break;else j=0;while(1){if((j|0)>=(h|0))break g;i=(c[L>>2]|0)+(c[(c[Q>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[P>>2]|0}j=j+1|0}}while(0);w=f+608|0;x=f+612|0;y=f+800|0;z=f+804|0;A=f+608|0;r=0;while(1){h=c[V>>2]|0;if((r|0)>=(h|0))break;q=r<<1;p=0;while(1){if((p|0)>=(c[U>>2]|0))break;i=(N(c[Y>>2]|0,r)|0)+p|0;j=c[(c[L>>2]|0)+(i<<2)>>2]|0;h=c[C>>2]|0;if(!h)h=0;else h=(c[h>>2]|0)!=0;k=(h^1)&1;o=h?1:2;K=d[(c[_>>2]|0)+i>>0]|0;if(!((K&2|0)==0|(K&8|j&7|0)!=0)){h:do if(!(j&64)){K=f+680+(k<<2)|0;h=(N(c[S>>2]|0,q)|0)+(p<<1)|0;c[w>>2]=b[(c[K>>2]|0)+(h<<2)>>1];c[x>>2]=b[(c[K>>2]|0)+(h<<2)+2>>1];h=0}else{j=c[S>>2]|0;n=(N(j,r)|0)+p<<1;i=f+680+(k<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}J=h&1|n;I=h>>1;c[f+608+(h<<3)>>2]=b[(c[i>>2]|0)+((N(j,I)|0)+J<<2)>>1];K=c[S>>2]|0;c[f+608+(h<<3)+4>>2]=b[(c[i>>2]|0)+((N(K,I)|0)+J<<2)+2>>1];h=h+1|0;j=K}}while(0);Yd[c[y>>2]&1](c[z>>2]|0,0,o,h,A,p,r,0,0)}p=p+1|0}r=r+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){q=f+784|0;r=f+640|0;s=f+644|0;t=f+786|0;u=f+740|0;v=f+744|0;p=0;j:while(1){if((p|0)>=(h|0)){R=h;break i}o=p<<1;n=0;while(1){if((n|0)>=(c[U>>2]|0))break;k=(N(o,c[S>>2]|0)|0)+(n<<1)|0;K=(N(c[Y>>2]|0,p)|0)+n|0;if(!((a[(c[_>>2]|0)+K>>0]&10)!=10?1:(c[(c[L>>2]|0)+(K<<2)>>2]&7|0)!=0)){K=c[C>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)h=3;else h=2;K=c[B>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))h=h&1;i=b[q>>1]|0;if(!(i<<16>>16)){c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;i=0}else{i=i&65535;j=e[t>>1]|0;if((c[(c[f>>2]|0)+16>>2]|0)==27)break j;Yi(c[u>>2]|0,p,0);K=c[v>>2]|0;I=b[K+(k<<2)>>1]|0;c[w>>2]=(N(I,j)|0)/(i|0)|0;K=b[K+(k<<2)+2>>1]|0;c[x>>2]=(N(K,j)|0)/(i|0)|0;J=j-i|0;c[r>>2]=(N(J,I)|0)/(i|0)|0;i=(N(J,K)|0)/(i|0)|0}c[s>>2]=i;Yd[c[y>>2]&1](c[z>>2]|0,0,h,0,A,n,p,0,0)}n=n+1|0}p=p+1|0;h=c[V>>2]|0}c[D>>2]=128578;c[D+4>>2]=128617;c[D+8>>2]=1212;Wf(0,0,159637,D);Ub()}else{Zi(f);R=c[V>>2]|0}while(0);K=E+36|0;J=E+40|0;B=f+588|0;C=f+592|0;D=f+596|0;z=0;while(1){if((z|0)>=(R|0))break;E=z<<4;F=z<<3;A=0;while(1){if((A|0)>=(c[U>>2]|0))break;G=(N(c[Y>>2]|0,z)|0)+A|0;if(!((c[(c[L>>2]|0)+(G<<2)>>2]&7|0)!=0?(c[O>>2]|0)!=0:0))T=140;do if((T|0)==140){T=0;y=c[g>>2]|0;n=c[X>>2]|0;o=(c[y>>2]|0)+(A<<4)+(N(E,n)|0)|0;p=c[y+4>>2]|0;w=A<<3;H=c[K>>2]|0;q=N(H,F)|0;y=c[y+8>>2]|0;I=c[J>>2]|0;x=N(I,F)|0;r=c[S>>2]|0;s=(c[B>>2]|0)+((N(r,z)|0)+A<<1<<1)|0;j=0;while(1){if((j|0)==4)break;t=j<<3&8;u=j>>>1<<3;k=0;h=0;while(1){if((k|0)==8)break;v=N(n,k+u|0)|0;i=0;while(1){if((i|0)==8)break;aa=h+(d[o+(i+t+v)>>0]|0)|0;i=i+1|0;h=aa}k=k+1|0}b[s+((N(r,j>>1)|0)+(j&1)<<1)>>1]=(h+4|0)>>>3;j=j+1|0}q=p+w+q|0;p=y+w+x|0;if(!y)break;else{h=0;i=0;k=0}while(1){if((k|0)==8)break;n=N(H,k)|0;o=N(I,k)|0;j=0;while(1){if((j|0)==8)break;aa=i+(d[q+(n+j)>>0]|0)|0;y=h+(d[p+(o+j)>>0]|0)|0;j=j+1|0;h=y;i=aa}k=k+1|0}b[(c[C>>2]|0)+(G<<1)>>1]=(i+4|0)>>>3;b[(c[D>>2]|0)+(G<<1)>>1]=(h+4|0)>>>3}while(0);A=A+1|0}z=z+1|0}_i(f,c[B>>2]|0,c[U>>2]<<1,R<<1,c[S>>2]|0,1);_i(f,c[C>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);_i(f,c[D>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);$i(c[B>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[S>>2]|0);n=0;while(1){h=c[V>>2]|0;if((n|0)>=(h|0))break;i=n<<4;j=n<<3;h=0;while(1){if((h|0)>=(c[U>>2]|0))break;k=(N(c[Y>>2]|0,n)|0)+h|0;do if(!(c[(c[L>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[_>>2]|0)+k>>0]&2))break;T=c[g>>2]|0;R=(c[T>>2]|0)+(h<<4)+(N(i,c[X>>2]|0)|0)|0;aa=h<<3;S=(c[T+4>>2]|0)+aa+(N(c[K>>2]|0,j)|0)|0;T=c[T+8>>2]|0;aa=T+aa+(N(c[J>>2]|0,j)|0)|0;T=(T|0)==0;aj(f,R,T?0:S,T?0:aa,h,n)}while(0);h=h+1|0}n=n+1|0}if(c[(c[f>>2]|0)+572>>2]&2|0?(bj(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,h<<1,c[X>>2]|0,1),cj(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[X>>2]|0,1),Z=c[g>>2]|0,c[Z+8>>2]|0):0){bj(f,c[Z+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);bj(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0);cj(f,c[(c[g>>2]|0)+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);cj(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[P>>2]|0)){h=0;break}k=c[(c[Q>>2]|0)+(i<<2)>>2]|0;h=c[M>>2]|0;do if(h|0){if((a[(c[_>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}while(1){if((h|0)==2)break;Bg(f+768+(h<<2)|0);Bg(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);l=$;return}function Vi(a){a=a|0;var b=0,d=0;d=c[(c[a>>2]|0)+592>>2]|0;if(!((d|0)!=0?(c[d+32>>2]|0)!=0:0))b=3;if((b|0)==3?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function Wi(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function Xi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+572>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if((e|0)>=5){l=(e|0)>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+8|0;r=b+708|0;s=b+696|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(N(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[s>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=N(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+16>>2]|0)!=27){Yi(c[r>>2]|0,k,0);f=c[h>>2]|0}w=(Od[c[q>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-(Od[c[q>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;f=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){e=c[a>>2]|0;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;Wf(e,48,131044,h)}e=f+184|0;mX(e|0)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;wc(a|0,e|0)|0}nX(e|0)|0}l=j;return}function Zi(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ma=l;l=l+128|0;if((l|0)>=(m|0))W(128);ia=ma;Z=ma+116|0;_=ma+112|0;aa=ma+48|0;ba=ma+16|0;la=e+564|0;ga=c[la>>2]|0;t=e+556|0;ha=c[t>>2]|0;h=c[e+560>>2]|0;s=e+704|0;f=c[s>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ka=(c[g+72>>2]|0)+15>>4;ka=(f|0)>(ka|0)?ka:f}else ka=f;x=c[e+584>>2]|0;U=N(h,ga)|0;y=x+(U<<3)|0;U=y+(U<<3)|0;dj(e,Z,_);i=e+712|0;if(c[i>>2]|0)Yi(c[e+708>>2]|0,ka+-1|0,0);V=N(ka,ha)|0;j=e+548|0;q=e+580|0;r=e+696|0;k=c[_>>2]|0;n=c[Z>>2]|0;X=e+680|0;o=e+720|0;Y=e+688|0;h=0;f=0;while(1){if((h|0)>=(V|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;T=(a[(c[q>>2]|0)+g>>0]&8)==0?8:(c[(c[r>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[U+g>>0]=T;if((T|0)!=8){if((c[c[s>>2]>>2]|0)!=0?(p=c[i>>2]|0,(p|0)!=0):0){T=c[la>>2]|0;T=N((N(k,(g|0)/(T|0)|0)|0)+((g|0)%(T|0)|0)|0,n)|0;S=c[X>>2]|0;b[S+(T<<2)>>1]=b[p+(T<<2)>>1]|0;b[S+(T<<2)+2>>1]=b[p+(T<<2)+2>>1]|0;T=g<<2;a[(c[Y>>2]|0)+T>>0]=a[(c[o>>2]|0)+T>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((f|0)>((ha|0)/2|0|0)?(c[(c[e>>2]|0)+572>>2]&1|0)!=0:0){f=0;j=0;b:while(1){if((j|0)>=(ka|0))break;k=N(j,ga)|0;n=(j|0)==0;o=j+1|0;p=(o|0)<(ka|0);q=j+-1|0;g=0;while(1){while(1){if((g|0)>=(ha|0)){j=o;continue b}h=g+k|0;if((a[U+h>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(u=U+(h+-1)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[x+(f<<3)>>2]=g+-1;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!n?(v=U+(h-ga)|0,(a[v>>0]|0)==0):0){a[v>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=q;f=f+1|0}i=g+1|0;if((i|0)<(ha|0)?(w=U+(h+1)|0,(a[w>>0]|0)==0):0){a[w>>0]=1;c[x+(f<<3)>>2]=i;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!p){g=i;continue}h=U+(h+ga)|0;if(a[h>>0]|0){g=i;continue}a[h>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=o;g=i;f=f+1|0}}P=aa+4|0;Q=e+672|0;R=e+608|0;S=e+612|0;T=e+800|0;O=e+804|0;M=f;while(1){f=1;L=0;g=1;while(1){if(!((L|0)<10&((L|0)<2|(f|0)!=0)))break;K=(L|0)>1;J=0;f=0;while(1){if((J|0)>=(M|0))break;G=c[x+(J<<3)>>2]|0;H=c[x+(J<<3)+4>>2]|0;I=(N(H,ga)|0)+G|0;c:do if(!((G^L^H)&1)){B=(G|0)>0;if(B)h=d[U+(I+-1)>>0]|0;else h=0;C=(G+1|0)<(ha|0);if(C)h=h|d[U+(I+1)>>0];A=(H|0)>0;if(A)h=h|d[U+(I-ga)>>0];z=(H+1|0)<(ka|0);if(z)h=h|d[U+(I+ga)>>0];if(!(K&(h&4|0)==0)){D=c[_>>2]|0;F=(N(D,H)|0)+G|0;E=c[Z>>2]|0;F=N(F,E)|0;if(B?($=I+-1|0,(d[U+$>>0]|0)>1):0){e=c[X>>2]|0;g=F-E|0;c[aa>>2]=b[e+(g<<2)>>1];c[P>>2]=b[e+(g<<2)+2>>1];c[ba>>2]=a[(c[Y>>2]|0)+($<<2)>>0];g=1}else g=0;do if(C){h=I+1|0;if((d[U+h>>0]|0)<=1)break;w=c[X>>2]|0;e=E+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(A){if((d[U+(I-ga)>>0]|0)<=1)break;w=c[X>>2]|0;e=F-(N(E,D)|0)|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(I-(c[la>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(z){if((d[U+(I+ga)>>0]|0)<=1){ja=73;break}w=c[X>>2]|0;e=(N(E,D)|0)+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+((c[la>>2]|0)+I<<2)>>0];g=g+1|0}else ja=73;while(0);if((ja|0)==73){ja=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[aa+(k<<3)>>2]|0)+j|0;i=(c[aa+(k<<3)+4>>2]|0)+i|0;e=c[ba+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[ba+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[aa+(g<<3)>>2]=(j|0)/(k|0)|0;c[aa+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[ba+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;n=k?-99999:0;k=k?99999:0;r=k;s=n;p=k;q=n;o=0;while(1){if((o|0)==(g|0))break;e=c[aa+(o<<3)>>2]|0;w=c[aa+(o<<3)+4>>2]|0;v=c[ba+(o<<2)>>2]|0;r=(r|0)>(v|0)?v:r;s=(s|0)>(v|0)?s:v;p=(p|0)>(w|0)?w:p;k=(k|0)>(e|0)?e:k;q=(q|0)>(w|0)?q:w;n=(n|0)>(e|0)?n:e;o=o+1|0}n=j-n-k|0;e=g+1|0;o=aa+(e<<3)|0;c[o>>2]=n;j=i-q-p|0;k=aa+(e<<3)+4|0;c[k>>2]=j;h=h-s-r|0;i=ba+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[o>>2]=(n|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[ba+(g<<2)>>2]=0;c[aa+(g<<3)+4>>2]=0;c[aa+(g<<3)>>2]=0;o=g+1|0;e=c[X>>2]|0;w=b[e+(F<<2)>>1]|0;e=b[e+(F<<2)+2>>1]|0;p=a[(c[Y>>2]|0)+(I<<2)>>0]|0;c[aa+(o<<3)>>2]=w;c[aa+(o<<3)+4>>2]=e;c[ba+(o<<2)>>2]=p;o=g+2|0;p=G<<4;q=H<<4;r=U+(I+-1)|0;s=U+(I+1)|0;t=U+(I-ga)|0;u=U+(I+ga)|0;v=0;g=1073741824;n=0;while(1){if((n|0)>=(o|0))break;k=c[Q>>2]|0;j=k+32|0;k=(c[k>>2]|0)+p+(N(q,c[j>>2]|0)|0)|0;i=c[aa+(n<<3)>>2]|0;c[R>>2]=i;h=c[X>>2]|0;b[h+(F<<2)>>1]=i;i=c[aa+(n<<3)+4>>2]|0;c[S>>2]=i;b[h+(F<<2)+2>>1]=i;h=c[ba+(n<<2)>>2]|0;if((h|0)<0)h=v;else{Yd[c[T>>2]&1](c[O>>2]|0,h,1,0,R,G,H,0,0);e:do if(B){if((d[r>>0]|0)>1){h=0;i=0}else{i=0;break}while(1){if((h|0)==16)break e;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+-1)>>0]|0)-(d[k+na>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}else i=0;while(0);f:do if(C){if((d[s>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break f;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+15)>>0]|0)-(d[k+(na+16)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);g:do if(A){if((d[t>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break g;na=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);h:do if(z){if((d[u>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break h;na=c[j>>2]|0;na=(d[k+((na*15|0)+h)>>0]|0)-(d[k+((na<<4)+h)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);na=(i|0)>(g|0);h=na?v:n;g=na?g:i}v=h;n=n+1|0}i=c[aa+(v<<3)>>2]|0;c[R>>2]=i;j=c[aa+(v<<3)+4>>2]|0;c[S>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(E|0))break;k=g+F|0;h=0;while(1){if((h|0)==(E|0))break;C=c[X>>2]|0;na=(N(D,h)|0)+k|0;b[C+(na<<2)>>1]=i;b[C+(na<<2)+2>>1]=j;h=h+1|0}g=g+1|0}Yd[c[T>>2]&1](c[O>>2]|0,c[ba+(v<<2)>>2]|0,1,0,R,G,H,0,0);do if((c[R>>2]|0)==(w|0)){if((c[S>>2]|0)!=(e|0))break;a[U+I>>0]=2;g=0;break c}while(0);a[U+I>>0]=4;g=0;f=f+1|0}}while(0);J=J+1|0}L=L+1|0}if(!g){f=0;k=0}else break a;while(1){if((k|0)>=(M|0))break;i=c[x+(k<<3)>>2]|0;h=c[x+(k<<3)+4>>2]|0;j=(N(h,ga)|0)+i|0;g=U+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?(ca=U+(j+-1)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[y+(f<<3)>>2]=i+-1;c[y+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(da=U+(j-ga)|0,(a[da>>0]|0)==0):0){a[da>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(ha|0)?(ea=U+(j+1)|0,(a[ea>>0]|0)==0):0){a[ea>>0]=1;c[y+(f<<3)>>2]=g;c[y+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ka|0)?(fa=U+(j+ga)|0,(a[fa>>0]|0)==0):0){a[fa>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(V|0))break;else{na=y;M=f;y=x;x=na}}c[ia>>2]=130998;c[ia+4>>2]=128617;c[ia+8>>2]=716;Wf(0,0,159637,ia);Ub()}else{k=e+608|0;n=e+612|0;o=e+800|0;i=e+804|0;h=0;while(1){if((h|0)<(ka|0))g=0;else break a;while(1){if((g|0)>=(c[t>>2]|0))break;j=(N(c[la>>2]|0,h)|0)+g|0;f=c[s>>2]|0;if(!f)f=2;else f=c[f>>2]|0?1:2;if((c[(c[r>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[q>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[n>>2]=0;Yd[c[o>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);l=ma;return}function _i(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=C;A=C+8|0;B=C+4|0;z=Lh(h,g<<3)|0;c[A>>2]=z;x=Lh(h,g<<4)|0;c[B>>2]=x;a:do if((x|0)!=0&(z|0)!=0){x=d+564|0;z=d+696|0;w=d+580|0;p=0;while(1){if((p|0)>=(g|0)){p=0;break}q=p>>i;r=N(p,h)|0;n=0;j=1024;d=-1;while(1){if((n|0)>=(f|0)){k=f;j=1024;d=-1;break}v=(N(c[x>>2]|0,q)|0)+(n>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=n+r|0;else{k=n+r|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+2>>1]=j;c[(c[B>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,q)|0)+(o>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=o+r|0}else{j=o+r|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)>>1]=n;c[(c[B>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((p|0)>=(f|0)){k=0;break}q=p>>i;j=1024;d=-1;n=0;while(1){if((n|0)>=(g|0)){k=g;j=1024;d=-1;break}v=(N(c[x>>2]|0,n>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=(N(n,h)|0)+p|0;else{k=(N(n,h)|0)+p|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+6>>1]=j;c[(c[B>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,o>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=(N(o,h)|0)+p|0}else{j=(N(o,h)|0)+p|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)+4>>1]=n;c[(c[B>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((k|0)>=(g|0))break a;n=k>>i;o=N(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;v=(N(c[x>>2]|0,n)|0)+(d>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&120|0)==0?a[(c[w>>2]|0)+v>>0]&4:0){p=c[B>>2]|0;q=d+o|0;r=c[A>>2]|0;j=0;s=0;t=0;u=0;v=0;while(1){if((j|0)==4)break;D=c[p+(q<<4)+(j<<2)>>2]|0;D=268435456/((D>>>0>1?D:1)>>>0)|0;F=b[r+(q<<3)+(j<<1)>>1]|0;F=$W(F|0,((F|0)<0)<<31>>31|0,D|0,0)|0;F=VW(F|0,y|0,s|0,t|0)|0;E=y;D=VW(u|0,v|0,D|0,0)|0;j=j+1|0;s=F;t=E;u=D;v=y}F=ZW(u|0,v|0,2,0)|0;F=VW(F|0,y|0,s|0,t|0)|0;F=ZW(F|0,y|0,u|0,v|0)|0;b[e+(q<<1)>>1]=F}d=d+1|0}k=k+1|0}}else Wf(c[d>>2]|0,16,130969,j);while(0);Sf(A);Sf(B);l=C;return}function $i(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0)){c=1;break}g=N(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;b[l>>1]=((((j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;j=a+((N(f,e)|0)+c<<1)|0;k=b[j>>1]|0;l=f+1|0;b[j>>1]=((((k<<3)-d-(b[a+((N(l,e)|0)+c<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=l}c=c+1|0}return}function aj(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>1;p=b[(c[u>>2]|0)+((N(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)>>1]|0;p=p<<16>>16>0?((p<<16>>16<2040?p:2040)&65535)>>>3&255:0;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;a[e+(j+q+(N(c[t>>2]|0,s)|0))>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(N(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;a:do if(g|0){m=j<<16>>16>0?((j<<16>>16<2040?j:2040)&65535)>>>3&255:0;n=v+36|0;e=k<<16>>16>0?((k<<16>>16<2040?k:2040)&65535)>>>3&255:0;l=v+40|0;k=0;while(1){if((k|0)==8)break a;else j=0;while(1){if((j|0)==8)break;a[f+((N(c[n>>2]|0,k)|0)+j)>>0]=m;a[g+((N(c[l>>2]|0,k)|0)+j)>>0]=e;j=j+1|0}k=k+1|0}}while(0);return}function bj(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0;Q=l;l=l+16|0;if((l|0)>=(m|0))W(16);O=Q+4|0;J=Q;dj(e,O,J);P=c[O>>2]>>j;c[O>>2]=P;O=N(c[J>>2]|0,P)|0;c[J>>2]=O;J=g+-1|0;K=e+580|0;L=e+564|0;M=e+696|0;E=e+680|0;D=0;while(1){if((D|0)>=(h|0))break;F=D>>j;G=N(D,i)|0;H=N(O,D)|0;g=0;a:while(1){if((g|0)>=(J|0))break;z=c[K>>2]|0;n=N(c[L>>2]|0,F)|0;k=n+(g>>j)|0;A=a[z+k>>0]|0;I=g+1|0;n=n+(I>>j)|0;z=a[z+n>>0]|0;o=c[M>>2]|0;q=g+G<<3;p=c[E>>2]|0;g=(N(P,g)|0)+H|0;e=(N(P,I)|0)+H|0;B=(A&14)!=0;C=(z&14)!=0;if(!((z|A)&14)){g=I;continue}if(((c[o+(k<<2)>>2]|c[o+(n<<2)>>2])&7|0)==0?(A=(b[p+(g<<2)>>1]|0)-(b[p+(e<<2)>>1]|0)|0,z=(b[p+(e<<2)+2>>1]|0)+(b[p+(g<<2)+2>>1]|0)|0,(((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)|0)<2):0){g=I;continue}t=q|7;u=q|6;v=q+8|0;w=q+9|0;A=B&C;x=q|5;y=q|4;z=q+10|0;n=q+11|0;e=0;while(1){if((e|0)==8){g=I;continue a}o=N(e,i)|0;p=f+(o+t)|0;q=d[p>>0]|0;r=f+(o+u)|0;S=q-(d[r>>0]|0)|0;s=f+(v+o)|0;g=d[s>>0]|0;R=g-q|0;k=f+(w+o)|0;g=(d[k>>0]|0)-g|0;g=((R|0)>-1?R:0-R|0)-(((S|0)>-1?S:0-S|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(R|0)<0?0-g|0:g;if(g|0){g=A?g:(g<<4|0)/9|0;if(B){a[p>>0]=a[129671+((g*7>>4)+q)>>0]|0;a[r>>0]=a[129671+((g*5>>4)+(d[r>>0]|0))>>0]|0;S=f+(o+x)|0;a[S>>0]=a[129671+((g*3>>4)+(d[S>>0]|0))>>0]|0;S=f+(o+y)|0;a[S>>0]=a[129671+((g>>4)+(d[S>>0]|0))>>0]|0}if(C){a[s>>0]=a[129671+((d[s>>0]|0)-(g*7>>4))>>0]|0;a[k>>0]=a[129671+((d[k>>0]|0)-(g*5>>4))>>0]|0;S=f+(z+o)|0;a[S>>0]=a[129671+((d[S>>0]|0)-(g*3>>4))>>0]|0;S=f+(n+o)|0;a[S>>0]=a[129671+((d[S>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}D=D+1|0}l=Q;return}function cj(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;T=l;l=l+16|0;if((l|0)>=(m|0))W(16);R=T+4|0;M=T;dj(e,R,M);S=c[R>>2]>>j;c[R>>2]=S;R=N(c[M>>2]|0,S)|0;c[M>>2]=R;M=h+-1|0;O=e+580|0;P=e+564|0;Q=e+696|0;z=e+680|0;A=i*7|0;B=i*6|0;C=i<<3;D=i*9|0;E=i*5|0;F=i<<2;G=i*10|0;H=i*11|0;h=0;a:while(1){if((h|0)>=(M|0))break;I=h>>j;J=h+1|0;K=J>>j;L=N(h,i)|0;u=N(R,h)|0;v=N(R,J)|0;t=0;while(1){if((t|0)>=(g|0)){h=J;continue a}U=c[O>>2]|0;e=t>>j;k=c[P>>2]|0;h=(N(k,I)|0)+e|0;s=a[U+h>>0]|0;e=(N(k,K)|0)+e|0;U=a[U+e>>0]|0;k=c[Q>>2]|0;w=t+L<<3;n=c[z>>2]|0;q=N(S,t)|0;o=q+u|0;p=n+(o<<2)|0;q=q+v|0;r=n+(q<<2)|0;x=(s&14)!=0;y=(U&14)!=0;b:do if((U|s)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(U=(b[p>>1]|0)-(b[r>>1]|0)|0,s=(b[n+(q<<2)+2>>1]|0)+(b[n+(o<<2)+2>>1]|0)|0,(((s|0)>-1?s:0-s|0)+((U|0)>-1?U:0-U|0)|0)<2):0)break;s=x&y;e=0;while(1){if((e|0)==8)break b;n=e+w|0;o=f+(n+A)|0;p=d[o>>0]|0;q=f+(n+B)|0;V=p-(d[q>>0]|0)|0;r=f+(n+C)|0;h=d[r>>0]|0;U=h-p|0;k=f+(n+D)|0;h=(d[k>>0]|0)-h|0;h=((U|0)>-1?U:0-U|0)-(((V|0)>-1?V:0-V|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(U|0)<0?0-h|0:h;if(h|0){h=s?h:(h<<4|0)/9|0;if(x){a[o>>0]=a[129671+((h*7>>4)+p)>>0]|0;a[q>>0]=a[129671+((h*5>>4)+(d[q>>0]|0))>>0]|0;V=f+(n+E)|0;a[V>>0]=a[129671+((h*3>>4)+(d[V>>0]|0))>>0]|0;V=f+(n+F)|0;a[V>>0]=a[129671+((h>>4)+(d[V>>0]|0))>>0]|0}if(y){a[r>>0]=a[129671+((d[r>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[129671+((d[k>>0]|0)-(h*5>>4))>>0]|0;V=f+(n+G)|0;a[V>>0]=a[129671+((d[V>>0]|0)-(h*3>>4))>>0]|0;V=f+(n+H)|0;a[V>>0]=a[129671+((d[V>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);t=t+1|0}}l=T;return}function dj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;do if((c[(c[a>>2]|0)+16>>2]|0)==27)if(!(c[a+788>>2]|0)){c[f>>2]=130951;c[f+4>>2]=128617;c[f+8>>2]=47;Wf(0,0,159637,f);Ub()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;l=g;return}function ej(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116026+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Wf(0,16,151385,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[121995+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122507+a>>0]|0}while(0);l=i;return a|0}function fj(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[121995+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122507+a>>0]|0|0}function gj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;tj(0,a,b,f);l=e;return}function hj(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function ij(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function jj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[121995+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123019+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116026+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function kj(a){a=a|0;return c[a+8>>2]|0}function lj(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{Wf(b,40,131641,d);a=0}break}default:a=1}l=d;return a|0}function mj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=(e|0)!=0;if(j)h=0;else h=(c[b+668>>2]|0)!=0;i=h?b+768|0:131373;k=h?b+960|0:131437;if(!(hj(a)|0))return 0;l=sj(a,f,16,131501,h?b+672|0:131501)|0;m=f+16|0;l=sj(a,m,16,131501,f)|0|l;m=l|(sj(a,f+32|0,16,131501,m)|0);l=f+48|0;m=m|(sj(a,l,16,131517,h?b+720|0:131517)|0);h=f+64|0;l=m|(sj(a,h,16,131517,l)|0);h=l|(sj(a,f+80|0,16,131517,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=sj(a,g,64,131373,i)|0|h;f=g+192|0;h=h|(sj(a,f,64,131437,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=sj(a,m,64,131373,g)|0|h;h=g+256|0;l=l|(sj(a,h,64,131437,f)|0);m=l|(sj(a,g+128|0,64,131373,m)|0);h=m|(sj(a,g+320|0,64,131437,h)|0)}}return ((h|0)==0?e:h)|0}function nj(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(123890+(f*88|0))>>0]|0;e=e+1|0}return}function oj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;qj(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)rj(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function pj(a,b){a=a|0;b=b|0;Bg(a+128+(b<<2)|0);return}function qj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(KT(a+68+(e<<4)|0,b,16)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+4828+(e*5632|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=(d[123802+g>>0]|0)+2|0;f=d[123714+g>>0]|0;b=0;while(1){if((b|0)==16)break;j=b>>2;c[a+4828+(h*5632|0)+(g<<6)+((b<<2&12|j)<<2)>>2]=(N(d[a+68+(h<<4)+b>>0]|0,d[(j&1)+(b&1)+(123644+(f*3|0))>>0]|0)|0)<>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(KT(a+164+(e<<6)|0,b,64)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+38620+(e*22528|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=d[123802+g>>0]|0;f=d[123714+g>>0]|0;b=0;while(1){if((b|0)==64)break;c[a+38620+(h*22528|0)+(g<<8)+((b<<3&56|b>>3)<<2)>>2]=(N(d[a+164+(h<<6)+b>>0]|0,d[(d[123662+(b>>>1&12|b&3)>>0]|0)+(123678+(f*6|0))>>0]|0)|0)<=(m|0))W(16);n=o;k=(f|0)==16?131533:131550;a:do if(hj(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=jj(b)|0;if((h+128|0)>>>0>255){i=7;break}h=h+j&255}if(!(h|i)){i=9;break}p=h|0?h:j;a[e+(d[k+i>>0]|0)>>0]=p;i=i+1|0;j=p}if((i|0)==7){c[n>>2]=h;Wf(0,16,131614,n);h=-1094995529;break}else if((i|0)==9){iX(e|0,g|0,f|0)|0;h=0;break}}else{iX(e|0,h|0,f|0)|0;h=0}while(0);l=o;return h|0}function tj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);Xf(b,24,c,d);Wf(b,24,131706,e);if(a|0)Wf(b,24,131882,e+8|0);l=e;return}function uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function vj(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function wj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=n+24|0;i=n+16|0;h=n+8|0;f=n;do if(hj(a)|0){e=ij(a,8)|0;if((e|0)==255){c[d+100>>2]=ij(a,16)|0;c[d+104>>2]=ij(a,16)|0;g=8;break}if(e>>>0<17){e=105068+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{Wf(b,16,132684,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(hj(a)|0)hj(a)|0;g=hj(a)|0;c[d+108>>2]=g;if(g|0?(ij(a,3)|0,c[d+112>>2]=hj(a)|0,g=hj(a)|0,c[d+116>>2]=g,g|0):0){e=d+120|0;c[e>>2]=ij(a,8)|0;f=d+124|0;c[f>>2]=ij(a,8)|0;g=d+128|0;c[g>>2]=ij(a,8)|0;if(!(zj(c[e>>2]|0)|0))c[e>>2]=2;if(!(Aj(c[f>>2]|0)|0))c[f>>2]=2;if(!(Bj(c[g>>2]|0)|0))c[g>>2]=2}if(hj(a)|0){c[b+332>>2]=(ej(a)|0)+1;ej(a)|0}if(Cj(a)|0?(xj(a)|0)<10:0){Wf(b,24,132706,h);e=0;break}h=hj(a)|0;e=d+132|0;c[e>>2]=h;if(h|0){f=Dj(a,32)|0;g=Dj(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;Wf(b,16,132721,i);c[e>>2]=0}c[d+144>>2]=hj(a)|0}i=hj(a)|0;e=d+1152|0;c[e>>2]=i;if(i|0?(Ej(a,b,d)|0)<0:0){e=-1094995529;break}i=hj(a)|0;f=d+1156|0;c[f>>2]=i;if(i|0?(Ej(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))hj(a)|0;c[d+1160>>2]=hj(a)|0;if((xj(a)|0)!=0?(i=hj(a)|0,j=d+660|0,c[j>>2]=i,(i|0)!=0):0){hj(a)|0;ej(a)|0;ej(a)|0;ej(a)|0;ej(a)|0;f=d+664|0;c[f>>2]=ej(a)|0;ej(a)|0;if((xj(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;Wf(b,16,132782,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);l=n;return e|0}function xj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(kj(a)|0)|0}function yj(a,b){a=a|0;b=b|0;Bg(a+(b<<2)|0);return}function zj(a){a=a|0;if(a>>>0<23)a=c[102368+(a<<2)>>2]|0;else a=0;return a|0}function Aj(a){a=a|0;if(a>>>0<19)a=c[102292+(a<<2)>>2]|0;else a=0;return a|0}function Bj(a){a=a|0;if(a>>>0<15)a=c[102232+(a<<2)>>2]|0;else a=0;return a|0}function Cj(a){a=a|0;return Ij(a)|0}function Dj(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=ij(a,b)|0;break}else{b=b+-16|0;c=(ij(a,16)|0)<=(m|0))W(16);e=h;f=fj(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;Wf(b,16,132822,e);b=-1094995529}else{ij(a,4)|0;ij(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;Fj(a);Fj(a);hj(a)|0;b=b+1|0}c[d+1172>>2]=(ij(a,5)|0)+1;c[d+1176>>2]=(ij(a,5)|0)+1;c[d+1180>>2]=(ij(a,5)|0)+1;c[d+1164>>2]=ij(a,5)|0;c[d+1168>>2]=g;b=0}l=h;return b|0}function Fj(a){a=a|0;var b=0,c=0,e=0;e=Gj(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Hj(a,b);Dj(a,b+1|0)|0;return}function Gj(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Dj(d,32)|0;l=b;return a|0}function Hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Ij(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function Jj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Mj(a)|0)|0}function Kj(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Lj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Mj(a){a=a|0;return c[a+8>>2]|0}function Nj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){c[a+16>>2]=bk(b,c[g+1176>>2]|0)|0;c[a+12>>2]=bk(b,c[g+1180>>2]|0)|0}if(c[g+1160>>2]|0){h=Lj(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[133337+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Lj(b,1)|0){i=1<<(Lj(b,2)|0);c[k>>2]=c[k>>2]|i;Yj(b,1);Yj(b,5);i=Lj(b,1)|0;Yj(b,1);Yj(b,1);Yj(b,8);if(!i){if((Lj(b,1)|0?(Yj(b,6),Lj(b,1)|0):0)?(Yj(b,6),Lj(b,1)|0):0)Yj(b,5)}else{Yj(b,6);Yj(b,6);Yj(b,5)}i=c[h>>2]|0;if((i|0)>0)Yj(b,i)}g=g+1|0}b=c[j>>2]|0;c[n>>2]=c[k>>2];c[n+4>>2]=b;Wf(f,48,133346,n)}c[a>>2]=1;g=0}else{Wf(f,16,133295,j);g=-1397768184}while(0);l=o;return g|0}function Oj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Lj(b,8)|0)==255){Yj(b,8);c=c+-8|0}else c=c+-7|0;Yj(b,8);Yj(b,8);d=bk(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=dk(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=ek(a+28|0,b,c)|0;break a}while(0);Yj(b,c<<3);c=0}while(0);return c|0}function Pj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=j+4|0;if((e+-16|0)>>>0<=2147483614){f=e+16|0;i=cg(e+17|0)|0;if(!i)e=-12;else{e=0;while(1){if((e|0)>=(f|0))break;a[i+e>>0]=Lj(d,8)|0;e=e+1|0}a[i+e>>0]=0;f=i+16|0;c[g>>2]=h;d=(aV(f,133263,g)|0)==1;e=c[h>>2]|0;if(d&(e|0)>0)c[b>>2]=e;if(d&(e|0)==1?(LT(f,133278,16)|0)==0:0)c[b>>2]=67;Tf(i);e=0}}else e=-1094995529;l=j;return e|0}function Qj(a,b){a=a|0;b=b|0;c[a>>2]=_j(b)|0;Yj(b,4);return}function Rj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;f=ck(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;c[a+4+(d<<2)>>2]=bk(b,c[f>>2]|0)|0;Yj(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;c[a+4+(d<<2)>>2]=bk(b,c[e>>2]|0)|0;Yj(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;Wf(e,16,133211,i);d=g?-1094995529:-1397768184}l=j;return d|0}function Sj(a,b){a=a|0;b=b|0;var d=0,e=0;c[a+4>>2]=_j(b)|0;d=Zj(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){d=a+12|0;c[d>>2]=Lj(b,7)|0;e=a+24|0;c[e>>2]=Zj(b)|0;c[a+20>>2]=Lj(b,6)|0;Yj(b,3);c[a+28>>2]=Zj(b)|0;Yj(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)Yj(b,16);Yj(b,8);c[a+16>>2]=_j(b)|0}$j(b);return}function Tj(a,b){a=a|0;b=b|0;var d=0;d=(Zj(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=Zj(b)|0;c[a+12>>2]=Zj(b)|0;c[a+4>>2]=Lj(b,16)|0;_j(b)|0;$j(b)}return}function Uj(c,d){c=c|0;d=d|0;var e=0;e=(Lj(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Lj(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{b[c+2>>1]=Lj(d,16)|0;break}case 3:{b[c+4>>1]=Lj(d,16)|0;break}default:{}}a[c+6>>0]=Lj(d,8)|0;a[c+7>>0]=Lj(d,8)|0;a[c+8>>0]=Lj(d,8)|0;a[c+9>>0]=Lj(d,8)|0;break}case 1:{a[c+10>>0]=Lj(d,8)|0;b[c+12>>1]=Lj(d,16)|0;break}default:{}}return}function Vj(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=Lj(b,8)|0;return}function Wj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Xj(a){a=a|0;var b=0;b=0-(Mj(a)|0)&7;if(b|0)Yj(a,b);return}function Yj(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Zj(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function _j(a){a=a|0;var b=0,c=0,e=0;e=ak(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Wj(a,b);return (bk(a,b+1|0)|0)+-1|0}function $j(a){a=a|0;Yj(a,1);return}function ak(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=bk(d,32)|0;l=b;return a|0}function bk(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Lj(a,b)|0;break}else{b=b+-16|0;c=(Lj(a,16)|0)<>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[121995+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122507+a>>0]|0|0}function dk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){Yj(d,1);f=Lj(d,1)|0;Yj(d,6);if(f)if((e|0)<2)b=-1094995529;else{Yj(d,4);a[b+4>>0]=Lj(d,4)|0;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Lj(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}Yj(d,8);e=e+1|0}}Yj(d,1);if(((Lj(d,1)|0)!=0?(Yj(d,1),g=Lj(d,5)|0,Yj(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=$W(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=VW(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=fk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Lj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Lj(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Lj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}Yj(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function fk(b,c){b=b|0;c=c|0;do if(c){c=bg(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){Sf(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{Sf(b);c=0}while(0);return c|0}function gk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;if((l|0)>=(m|0))W(64);r=D+56|0;q=D+48|0;w=D+32|0;u=D+24|0;v=D+16|0;f=D;z=c[d>>2]|0;C=d+21788|0;t=c[C>>2]|0;A=d+868|0;B=c[A>>2]|0;y=c[c[z+24312>>2]>>2]|0;b=c[y+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[y+36>>2];b=mk(d,b)|0;a:do if((b|0)>=0){p=d+21816|0;c[p>>2]=-1;if((c[z+26036>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<>2])|0)){c[f>>2]=134467;c[f+4>>2]=133441;c[f+8>>2]=2536;Wf(0,0,159637,f);Ub()}if(c[z+25708>>2]|0)c[A>>2]=0;x=z+26376|0;if(!(c[x>>2]|0))b=(c[z+26380>>2]|0)!=3;else b=1;c[d+21820>>2]=b&1;y=z+4|0;if(((((c[(c[y>>2]|0)+696>>2]&2|0)==0?(c[z+26380>>2]|0)==3:0)?(h=c[z+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(s=(N(c[z+27012>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[z+27020>>2]|0)+-1|0,g=(s|0)>(g|0)?g:s,!((s|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[z+28212>>2]|0)+4>>2]|0)){o=d+21792|0;f=z+27012|0;i=d+21812|0;n=d+4|0;j=z+26380|0;k=z+27008|0;e=t;while(1){w=(N(c[f>>2]|0,c[o>>2]|0)|0)+(c[C>>2]|0)|0;b=c[i>>2]|0;if((w|0)>=(b|0)){f=46;break}b=yk(z,d)|0;if((b|0)<=-1){f=52;break}uk(z,d);if(c[x>>2]|0){c[o>>2]=(c[o>>2]|0)+1;b=yk(z,d)|0;if((b|0)<=-1){f=50;break}uk(z,d);c[o>>2]=(c[o>>2]|0)+-1}b=(c[C>>2]|0)+1|0;c[C>>2]=b;if((b|0)>=(c[f>>2]|0)){hk(z,d,e,b);c[C>>2]=0;wk(z,d);b=c[o>>2]|0;e=b+1|0;c[o>>2]=e;if(!(c[x>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[o>>2]=e}}else{b=b+2|0;c[o>>2]=b;if((b|0)<(c[k>>2]|0)){xk(z,d);e=c[o>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=pk(n)|0;if((g|0)>=1){e=h;continue}if((c[p>>2]|0)<1){f=68;break}else e=h}if((f|0)==46){B=c[y>>2]|0;c[q>>2]=b;Wf(B,16,134594,q);sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[o>>2]|0)+-1|0;c[o>>2]=e}else if((f|0)==52)e=c[o>>2]|0;else if((f|0)==61){b=pk(n)|0;do if(b|0){if((b|0)>0?(c[(c[y>>2]|0)+580>>2]&262144|0)==0:0)break;sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,e,112);b=-1094995529;break a}while(0);sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,e,112);break}else if((f|0)==68){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[C>>2]|0;if(g|0){sk(d,b,e,f,c[o>>2]|0,14);b=-1094995529;break a}sk(d,b,e,f+-1|0,c[o>>2]|0,112);b=c[C>>2]|0;if((b|0)<=(h|0))break;hk(z,d,h,b);break}B=c[y>>2]|0;c[r>>2]=c[C>>2];c[r+4>>2]=e;Wf(B,16,134698,r);sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);break a}else{b=d+4|0;nk(b);q=d+32856|0;s=c[b>>2]|0;s=s+((ok(b)|0)/8|0)|0;b=qk(q,s,((pk(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;rk(z,d);s=d+21792|0;i=z+27012|0;j=d+21812|0;k=z+25700|0;r=d+32872|0;p=d+32876|0;n=z+27008|0;o=z+26380|0;h=t;b=c[s>>2]|0;while(1){t=(N(c[i>>2]|0,b)|0)+(c[C>>2]|0)|0;b=c[j>>2]|0;if((t|0)>=(b|0)){f=19;break}b=tk(z,d)|0;if((b|0)>-1?(uk(z,d),(c[x>>2]|0)!=0):0){c[s>>2]=(c[s>>2]|0)+1;b=tk(z,d)|0;if((b|0)>-1)uk(z,d);c[s>>2]=(c[s>>2]|0)+-1}g=vk(q)|0;e=c[r>>2]|0;f=c[p>>2]|0;if((c[k>>2]&16384|0)!=0&e>>>0>(f+2|0)>>>0){f=26;break}if(e>>>0>(f+2|0)>>>0){t=c[y>>2]|0;c[u>>2]=f-e;Wf(t,48,134626,u)}if((b|0)<0){f=31;break}b=c[r>>2]|0;e=c[p>>2]|0;if(b>>>0>(e+4|0)>>>0){f=33;break}b=(c[C>>2]|0)+1|0;c[C>>2]=b;do if((b|0)>=(c[i>>2]|0)){hk(z,d,h,b);c[C>>2]=0;wk(z,d);b=c[s>>2]|0;c[s>>2]=b+1;if(!(c[x>>2]|0)){if((c[o>>2]|0)==3){e=0;break}c[s>>2]=b+2;e=0;break}else{t=b+2|0;c[s>>2]=t;if((t|0)>=(c[n>>2]|0)){e=0;break}xk(z,d);e=0;break}}else e=h;while(0);b=c[s>>2]|0;if(g|0){f=43;break}if((b|0)>=(c[n>>2]|0)){f=43;break}else h=e}if((f|0)==19){B=c[y>>2]|0;c[v>>2]=b;Wf(B,16,134594,v);sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}else if((f|0)==26){sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,c[s>>2]|0,112);b=c[C>>2]|0;if((b|0)<(h|0))break;hk(z,d,h,b+1|0);break}else if((f|0)==31){e=c[p>>2]|0;b=c[r>>2]|0}else if((f|0)!=33)if((f|0)==43){sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,b,112);b=c[C>>2]|0;if((b|0)<=(e|0))break;hk(z,d,e,b);break}B=c[y>>2]|0;A=c[s>>2]|0;c[w>>2]=c[C>>2];c[w+4>>2]=A;c[w+8>>2]=e-b;Wf(B,16,134651,w);sk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}while(0);c[A>>2]=B;b=0}while(0);l=D;return b|0}function hk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;aa=e+21792|0;_=b+26376|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25664|0;Y=c[X>>2]|0;Z=16>>>(c[b+25680>>2]|0);if(!(c[b+25708>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28212|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{I=b+27016|0;J=e+21796|0;K=b+24364|0;i=e+21788|0;L=b+24316|0;M=e+21772|0;O=b+28216|0;P=e+21776|0;Q=e+21828|0;R=e+21780|0;S=e+21784|0;l=b+28212|0;T=b+24340|0;k=e+852|0;j=e+856|0;U=e+21832|0;V=e+27796|0;W=1-Z|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;H=f<(ba|0))break;F=(N(c[I>>2]|0,E)|0)+f|0;c[J>>2]=F;G=c[(c[K>>2]|0)+(F<<2)>>2]|0;t=(c[_>>2]|0)==0;h=G>>>7&1;if(t)h=c[Q>>2]|0;else{c[Q>>2]=h;c[U>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[L>>2]|0;p=c[M>>2]|0;m=(c[C>>2]|0)+((N(p,E)|0)+H<<4)|0;s=c[(c[O>>2]|0)+12>>2]|0;z=(s|0)==3;D=N(8<<(z&1),H)|0;r=c[P>>2]|0;o=N(N(E,Z)|0,r)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(h){h=p<<1;c[R>>2]=h;q=r<<1;c[S>>2]=q;if(!(E&1)){D=n;C=o;p=h}else{C=N(W,r)|0;m=m+(N(p,-15)|0)|0;D=n+C|0;C=o+C|0;p=h}}else{c[R>>2]=p;c[S>>2]=r;D=n;C=o;q=r}w=c[X>>2]|0;x=(s|0)==2;v=m+(0-p)|0;B=0-q|0;y=D+B|0;B=C+B|0;do if(!t){h=(c[U>>2]|0)!=0;if(!(E&1))if(h){h=0;u=f;A=33;break}else break;if(!h){t=c[V>>2]|0;h=v+(p*15|0)|0;s=h;A=c[s+4>>2]|0;u=t+(f*96|0)|0;c[u>>2]=c[s>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;s=t+(f*96|0)+8|0;c[s>>2]=c[u>>2];c[s+4>>2]=A;s=(w|0)!=0;h=h+16|0;if(s){A=h;u=c[A+4>>2]|0;r=t+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=t+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}do if(z){h=q*15|0;n=y+h|0;r=n;o=c[r>>2]|0;r=c[r+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=o;c[A+4>>2]=r;A=n+8|0;u=c[A+4>>2]|0;s=t+(f*96|0)+40|0;c[s>>2]=c[A>>2];c[s+4>>2]=u;n=n+16|0;s=n;u=c[s+4>>2]|0;A=t+(f*96|0)+48|0;c[A>>2]=c[s>>2];c[A+4>>2]=u;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+56|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+64|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=h+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+72|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=h+16|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+80|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=88;h=h+8|0;break}else{A=t+(f*96|0)+16|0;c[A>>2]=o;c[A+4>>2]=r;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+24|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+32|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=40;h=h+8|0;break}}else if(x){r=q*15|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q*7|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);A=h;u=c[A+4>>2]|0;h=t+(f*96|0)+n|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=1;u=c[i>>2]|0;A=33}else{h=1;u=f;A=33}}else{h=1;u=f;A=33}while(0);if((A|0)==33){A=0;t=c[e+27796+(h<<2)>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;o=t+(u*96|0)|0;c[o>>2]=c[s>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[o>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;o=t+(u*96|0)+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[o>>2];c[w+4>>2]=v}do if(z){h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;z=h+8|0;y=c[z+4>>2]|0;n=t+(u*96|0)+40|0;c[n>>2]=c[z>>2];c[n+4>>2]=y;n=h+16|0;y=n;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;n=n+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+64|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=h+8|0;B=c[n+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[n>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+80|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=88;h=h+8|0;break}else{z=t+(u*96|0)+16|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+32|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=40;h=h+8|0;break}}else if(x){r=q<<4;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q<<3;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+n|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(ik(b,e,G)|0)){G=c[l>>2]|0;F=(c[T>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){kk(b,e,f,E,m,D,C,p,q);break}else{jk(b,e,f,E,m,D,C,p,q);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return} -function uR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=bi(c[b>>2]|0,262508,f,2)|0;if(!f){d=7;break}h=f+4|0;e=TQ(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=ci(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=6;break}}if((d|0)==6){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;Wf(a,16,159386,i);Fg(g);break}else if((d|0)==7){Fg(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);l=j;return e|0}function vR(a,b){a=a|0;b=b|0;return uR(a,b,0)|0}function wR(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[101804+(a*20|0)+16>>2]|0}else a=-1;return a|0}function xR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=o;if((f|0)<=-1){c[g>>2]=159424;c[g+4>>2]=159440;c[g+8>>2]=102;Wf(0,0,159637,g);Ub()}if(!f){f=NQ()|0;f=(f|0)>1?f+1|0:1}k=(e|0)==0;j=f+(k<<31>>31)|0;n=Ng(120)|0;c[a>>2]=n;a:do if(!n)f=-12;else{if(j|0?(i=SQ(j,88)|0,c[n>>2]=i,(i|0)==0):0){Sf(a);f=-12;break}c[n+108>>2]=b;c[n+112>>2]=d;c[n+116>>2]=e;b=n+4|0;c[b>>2]=f;g=n+8|0;c[n+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;Cc(n+24|0,0)|0;uc(n+52|0,0)|0;c[n+100>>2]=0;g=0;while(1){if((g|0)>=(j|0))break a;p=c[n>>2]|0;i=p+(g*88|0)|0;c[i>>2]=n;d=p+(g*88|0)+4|0;Cc(d|0,0)|0;e=p+(g*88|0)+32|0;uc(e|0,0)|0;mX(d|0)|0;h=p+(g*88|0)+84|0;c[h>>2]=0;i=xc(p+(g*88|0)+80|0,0,20,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;wc(e|0,d|0)|0}nX(d|0)|0;g=g+1|0}c[b>>2]=g+(k&1);nX(d|0)|0;tc(e|0)|0;Bc(d|0)|0;zR(a);f=0-i|0}while(0);l=o;return f|0}function yR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;mX(h|0)|0;i=a+32|0;vc(i|0)|0;j=g+104|0;b=a+84|0;d=g+24|0;e=g+100|0;f=g+52|0;while(1){c[b>>2]=1;a=1;while(1){if(!a)break;wc(i|0,h|0)|0;a=c[b>>2]|0}if(c[j>>2]|0)break;if(!(AR(g)|0))continue;mX(d|0)|0;c[e>>2]=1;vc(f|0)|0;nX(d|0)|0}nX(h|0)|0;return 0}function zR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(e=c[a>>2]|0,e|0):0){d=(c[e+4>>2]|0)+(((c[e+116>>2]|0)==0)<<31>>31)|0;c[e+104>>2]=1;b=0;while(1){if((b|0)>=(d|0)){b=0;break}g=c[e>>2]|0;f=g+(b*88|0)+4|0;mX(f|0)|0;c[g+(b*88|0)+84>>2]=0;vc(g+(b*88|0)+32|0)|0;nX(f|0)|0;b=b+1|0}while(1){if((b|0)>=(d|0))break;g=c[e>>2]|0;zc(c[g+(b*88|0)+80>>2]|0,0)|0;tc(g+(b*88|0)+32|0)|0;Bc(g+(b*88|0)+4|0)|0;b=b+1|0}tc(e+52|0)|0;Bc(e+24|0)|0;Sf(e);Sf(a)}return}function AR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{Vd[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0>>0);return (a|0)==(d+-1+e|0)|0}function BR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;if((b|0)<=0){c[e>>2]=159464;c[e+4>>2]=159440;c[e+8>>2]=168;Wf(0,0,159637,e);Ub()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;mX(i|0)|0;c[j+(e*88|0)+84>>2]=0;vc(j+(e*88|0)+32|0)|0;nX(i|0)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(AR(a)|0))g=9}else{Rd[b&31](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;mX(e|0)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;wc(b|0,e|0)|0}c[d>>2]=0;nX(e|0)|0}l=h;return}function CR(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107748+(d<<2)>>2]|0;Dc(185616,4)|0;if(!d)c[a>>2]=1;return b|0}function DR(){var a=0,b=0;a=0;while(1){b=c[107748+(a<<2)>>2]|0;if(a|0)break;a=c[b+76>>2]|0;if(!a){a=1;continue}Rd[a&31](b);a=1}return}function ER(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a=0;while(1){d=CR(b)|0;if(!d)break;if(!a){a=d;continue}c[a+60>>2]=d;a=d}l=e;return}function FR(a){a=a|0;Dc(185620,5)|0;if(!a)a=101632;else a=c[a+60>>2]|0;return a|0}function GR(a){a=a|0;return IR(a,21)|0}function HR(a){a=a|0;if(a)if((c[a+84>>2]|0)==0?(c[a+88>>2]|0)==0:0)a=(c[a+100>>2]|0)!=0&1;else a=1;else a=0;return a|0}function IR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;c[f>>2]=0;d=JR(a)|0;a=0;a:while(1){while(1){e=CR(f)|0;if(!e)break a;if(!(Kd[b&31](e)|0))continue;if((c[e+12>>2]|0)==(d|0))break}if(a|0?1:(c[e+16>>2]&512|0)==0){a=e;break}else a=e}l=g;return a|0}function JR(a){a=a|0;return a|0}function KR(a){a=a|0;return IR(a,22)|0}function LR(a){a=a|0;if(a)if(!(c[a+92>>2]|0))a=(c[a+108>>2]|0)!=0&1;else a=1;else a=0;return a|0}function MR(a){a=a|0;var b=0;b=cg(896)|0;if(b){if((XR(b,a)|0)<0){Tf(b);b=0}}else b=0;return b|0}function NR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(OR(a)|0){f=a+28|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if(c[b+20>>2]|0)PR(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+96>>2]|0,d|0):0)Kd[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;Sf(b+44|0);Fh((c[f>>2]|0)+12|0);Fh((c[f>>2]|0)+100|0);Fh((c[f>>2]|0)+76|0);wg((c[f>>2]|0)+68|0);wg((c[f>>2]|0)+40|0);wg((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;Yg(e+(b<<2)|0);b=b+1|0}Sf((c[f>>2]|0)+16|0);b=c[a+592>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Kd[g&31](a)|0;Sf((c[f>>2]|0)+60|0);QR(a);Sf(f)}d=a+856|0;e=a+852|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Sf((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}Sf(e);c[d>>2]=0;Bg(a+860|0);Bg(a+880|0);d=a+24|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)vg(e);vg(a);Sf(d);if(HR(c[b>>2]|0)|0){Sf(a+68|0);Fh(a+684|0)}c[b>>2]=0;c[a+696>>2]=0}return 0}function OR(a){a=a|0;return (c[a+28>>2]|0)!=0|0}function PR(a){a=a|0;if(!(c[a+696>>2]&1))SR(a);else RR(a,c[a+688>>2]|0);return}function QR(a){a=a|0;var b=0,d=0;d=c[a+28>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;ug((c[d>>2]|0)+(a<<2)|0);a=a+1|0}Sf(d);c[b>>2]=0;return}function RR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=r;k=a+28|0;n=c[(c[k>>2]|0)+20>>2]|0;p=a+12|0;e=c[p>>2]|0;TR(n,b);f=n+4|0;g=c[f>>2]|0;if((g|0?(d=c[n>>2]|0,(g|0)!=(d|0)):0)?(UR(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){Wf(a,16,159476,h);h=c[(c[(c[n>>2]|0)+212>>2]|0)+28>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+28>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+96|0;e=0;while(1){if((e|0)>=(b|0)){d=0;break}g=c[n>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;mX(d|0)|0;c[g+(e*352|0)+332>>2]=1;vc(g+(e*352|0)+12|0)|0;nX(d|0)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)zc(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Kd[d&31](i)|0;VR(h);Fh(g+(e*352|0)+288|0);e=e+1|0}while(1){if((d|0)>=(b|0))break;e=c[n>>2]|0;Bc(e+(d*352|0)+156|0)|0;Bc(e+(d*352|0)+184|0)|0;tc(e+(d*352|0)+12|0)|0;tc(e+(d*352|0)+60|0)|0;tc(e+(d*352|0)+108|0)|0;zg(e+(d*352|0)+216|0);Sf(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){Sf(f+24|0);Sf((c[e>>2]|0)+184|0);o=17}}else o=17;if((o|0)==17?(o=0,j=c[e>>2]|0,j|0):0){Sf(j+28|0);Bg((c[e>>2]|0)+860|0)}Sf(e);d=d+1|0}Sf(n);Bc(n+8|0)|0;Bc(n+36|0)|0;Bc(n+64|0)|0;tc(n+92|0)|0;Sf((c[k>>2]|0)+20|0);d=c[a+24>>2]|0;if((d|0?(q=c[p>>2]|0,q|0):0)?c[q+44>>2]|0:0)vg(d);c[p>>2]=0;l=r;return}function SR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+28|0;d=c[(c[b>>2]|0)+20>>2]|0;zR(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;Bc((c[f>>2]|0)+(a*28|0)|0)|0;tc((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}Sf(d+28|0);Sf(f);Sf(g);Sf((c[b>>2]|0)+20|0);return}function TR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;WR(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;mX(g|0)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}nX(g|0)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}Tl(a);return}function UR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;do if((a|0)==(b|0))k=10;else{if((d|0)==0?c[(c[b+780>>2]|0)+16>>2]&1|0:0){k=12;break}e=b+76|0;f=c[e+4>>2]|0;g=a+76|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+760|0;f=c[g+4>>2]|0;e=a+760|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+92>>2]=c[b+92>>2];c[a+96>>2]=c[b+96>>2];c[a+112>>2]=c[b+112>>2];c[a+768>>2]=c[b+768>>2];c[a+100>>2]=c[b+100>>2];c[a+104>>2]=c[b+104>>2];c[a+140>>2]=c[b+140>>2];c[a+668>>2]=c[b+668>>2];c[a+672>>2]=c[b+672>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+188|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+716>>2]=c[b+716>>2];c[a+720>>2]=c[b+720>>2];c[a+676>>2]=c[b+676>>2];c[a+84>>2]=c[b+84>>2];c[a+316>>2]=c[b+316>>2];c[a+320>>2]=c[b+320>>2];c[a+324>>2]=c[b+324>>2];c[a+328>>2]=c[b+328>>2];c[a+332>>2]=c[b+332>>2];c[a+592>>2]=c[b+592>>2];c[a+596>>2]=c[b+596>>2];c[a+348>>2]=c[b+348>>2];c[a+344>>2]=c[b+344>>2];c[a+352>>2]=c[b+352>>2];g=b+376|0;f=c[g+4>>2]|0;e=a+376|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+28>>2]|0)+60>>2]=c[(c[b+28>>2]|0)+60>>2];e=a+860|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+860|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(Bg(e),j=c[h>>2]|0,j|0):0)?(j=Dh(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+884>>2]=c[b+884>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+88>>2]=(c[b+688>>2]|0)+-1;c[a+684>>2]=c[b+684>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+68>>2]|0;if(!e)e=0;else e=Ld[e&15](a,b)|0}return e|0}function VR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}mX(d|0)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*408|0)|0;c[j+(i*408|0)+64>>2]=h;ah(h);nX(d|0)|0}if((a|0)==4){c[f>>2]=159504;c[f+4>>2]=159593;c[f+8>>2]=371;Wf(0,0,159637,f);Ub()}else if((a|0)==6){l=g;return}}function WR(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=a+64|0;mX(b|0)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=159620;c[e+4>>2]=159593;c[e+8>>2]=155;Wf(0,0,159637,e);Ub()}else{c[d>>2]=0;lX(a+92|0)|0;nX(b|0)|0;l=f;return}}function XR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;kX(a|0,0,896)|0;c[a>>2]=107756;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+16>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;tR(a,d,d);c[a+76>>2]=0;c[a+80>>2]=1;c[a+760>>2]=0;c[a+764>>2]=1;c[a+772>>2]=0;c[a+776>>2]=1;c[a+400>>2]=12;c[a+120>>2]=9;c[a+704>>2]=4;c[a+708>>2]=41;c[a+188>>2]=0;c[a+192>>2]=1;c[a+112>>2]=-1;c[a+768>>2]=-1;c[a+352>>2]=-1;f=a+584|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+56>>2]|0;if(e|0){f=a+24|0;d=c[f>>2]|0;if(!d){d=Ng(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;sR(c[f>>2]|0)}}d=c[b+72>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((TQ(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=159667;c[h+4>>2]=159676;c[h+8>>2]=142;Wf(0,0,159637,h);Ub()}else g=0}else g=0;while(0);l=i;return g|0}function YR(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(N(h,g)|0)|0;i=Ld[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function ZR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=Nd[b&3](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function _R(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=170788;return b|0}function $R(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+24>>2]|0,(d|0)!=0):0))d=0;return d|0}function aS(a){a=a|0;var b=0;a:do if(!a)a=0;else{b=0;while(1){b=FR(b)|0;if(!b){a=0;break a}if((c[b+44>>2]|0)==(a|0)){a=b;break}}}while(0);do{a=FR(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function bS(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+92>>2]|0)!=0:0)a=6;else a=5;return a|0}function cS(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483582){e=dQ(b,d+64|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function dS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;Tf(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=24){a=bg(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function eS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(d>>>0<=2147483583?(e=Ng(d+64|0)|0,c[f>>2]=e,(e|0)!=0):0){if((dS(a,b,e,d)|0)<0){Sf(f);e=0}}else e=0;l=g;return e|0}function fS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];c[a+40>>2]=0;c[a+44>>2]=0;h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=eS(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}iX(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){Ag(a);b=-12}return b|0}function gS(a,b){a=a|0;b=b|0;var d=0,e=0;d=fS(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=cS(a,c[e>>2]|0)|0;if((d|0)<0)b=10;else{d=c[e>>2]|0;if(d|0)iX(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;d=(c[a>>2]|0)+4|0;b=9}}else{e=Dh(d)|0;c[a>>2]=e;if(!e){d=-12;b=10}else{e=b+28|0;d=b+24|0;b=9}}if((b|0)==9){c[a+24>>2]=c[d>>2];c[a+28>>2]=c[e>>2];d=0;break}else if((b|0)==10){Ag(a);break}}while(0);return d|0}function hS(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107800+(d<<2)>>2]|0;if(!d)c[a>>2]=1;return b|0}function iS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;do{b=hS(d)|0;if(!b){b=0;break}}while((JT(c[b>>2]|0,a)|0)!=0);l=e;return b|0}function jS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=Ng(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=107808;c[e+4>>2]=a;f=e+16|0;c[f>>2]=lS()|0;k=lS()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=Ng(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=MP()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){sR(g);d=c[a+12>>2]|0;if(d|0){f=Ng(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;sR(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);ug(h);d=-12}while(0);l=j;return d|0}function kS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;yg(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+16>>2];c[a+8>>2]=c[b+20>>2];g=b+40|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+672>>2];c[a+36>>2]=c[b+676>>2];c[a+40>>2]=c[b+716>>2];c[a+44>>2]=c[b+720>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+112>>2];c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];c[a+64>>2]=c[b+340>>2];c[a+68>>2]=c[b+328>>2];c[a+72>>2]=c[b+316>>2];c[a+76>>2]=c[b+320>>2];c[a+80>>2]=c[b+324>>2];c[a+84>>2]=c[b+332>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+140>>2];break}case 1:{c[a+20>>2]=c[b+352>>2];e=b+376|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+348>>2];c[a+108>>2]=c[b+344>>2];c[a+112>>2]=c[b+364>>2];c[a+116>>2]=c[b+356>>2];c[a+120>>2]=c[b+756>>2];c[a+124>>2]=c[b+868>>2];c[a+128>>2]=c[b+828>>2];break}case 3:{c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];break}default:{}}e=b+68|0;if(c[e>>2]|0){b=b+72|0;d=Ng((c[b>>2]|0)+64|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;iX(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function lS(){var a=0;a=Ng(136)|0;if(!a)a=0;else yg(a);return a|0}function mS(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function nS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;a:do if(a|0)do{b=hS(d)|0;if(!b)break a}while((c[b+8>>2]|0)!=(a|0));while(0);do{a=hS(d)|0;if(!a){a=0;break}a=c[a+8>>2]|0}while(!(a|0));l=e;return a|0}function oS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+28|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=pS(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=qS(c[e>>2]|0,b)|0;if((d|0)>=0){d=rS(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+108>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}zg(b)}}else d=-541478725;while(0);return d|0}function pS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;h=c[a+28>>2]|0;g=h+36|0;h=h+32|0;f=(c[g>>2]|0)+-1|0;while(1){if((f|0)<=-1){d=-11;break}d=Gg(c[(c[h>>2]|0)+(f<<2)>>2]|0,b)|0;if((d|0)==-11){f=f+-1|0;continue}e=(d|0)<0;if(e&(d|0)!=-541478725)break;if((f|0)==((c[g>>2]|0)+-1|0))break;f=f+1|0;d=Hg(c[(c[h>>2]|0)+(f<<2)>>2]|0,e?0:b)|0;if((d|0)<0){j=8;break}}if((j|0)==8){Wf(a,16,171011,i);zg(b)}l=k;return d|0}function qS(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;zg(c[d>>2]|0);if(b){a=fS(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function rS(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);o=p+32|0;n=p+24|0;j=p+16|0;h=p+8|0;e=p;k=p+36|0;c[k>>2]=0;g=qi(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){Wf(a,16,170806,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){Wf(a,16,170899,h);b=-1094995529;e=a;break b}else{c[a+348>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+376|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){Wf(a,16,170921,j);b=-1094995529;e=a;break b}else{c[a+344>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){n=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+92>>2]=j;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;c[a+96>>2]=n;c[k>>2]=b+-8;b=sS(a,j,n)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);Wf(a,16,170941,n);b=-1094995529;e=a}while(0);Wf(e,16,170976,o);b=(c[a+580>>2]&8|0)==0?0:b}while(0);l=p;return b|0}function sS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+872|0;e=Yh(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+100>>2]=b;c[a+104>>2]=f;d=c[a+680>>2]|0;c[a+92>>2]=0-(0-b>>d);c[a+96>>2]=0-(0-f>>d);return e|0}function tS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+28|0;g=c[d>>2]|0;a:do if((OR(a)|0)!=0?(LR(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=uS(a)|0;if((d|0)>=0){f=g+68|0;zg(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=gS(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=Hg(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){zg(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=vS(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function uS(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;h=o+8|0;i=o+4|0;d=c[b+28>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+120>>2]|0;f=(f|0)==0?171581:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=XP(h,171586)|0;c[i>>2]=d;if(!d){d=-12;break}d=iS(d)|0;if(!d){n=8;break}Sf(i);e=zN(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=jS(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=kS(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Jg(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=Kg(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((n|0)==8){c[k>>2]=c[i>>2];Wf(b,16,171588,k);Sf(i);d=-558323010}QR(b)}else d=0;while(0);l=o;return d|0}function vS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;d=i;e=c[a+28>>2]|0;if(c[b+248>>2]|0){c[d>>2]=171058;c[d+4>>2]=124579;c[d+8>>2]=607;Wf(0,0,159637,d);Ub()}f=a+12|0;d=c[(c[f>>2]|0)+108>>2]|0;if(!d)d=wS(a,b)|0;else d=Ld[d&15](a,b)|0;a:do if((d|0)>=0){switch(d|0){case 0:break;default:{h=16;break a}}d=c[b+400>>2]|0;e=(d|0)==0;if(!(!e?(c[d+8>>2]|0)==20:0))h=10;do if((h|0)==10)if(!(c[(c[f>>2]|0)+16>>2]&2))if(e){d=0;h=16;break a}else break;else{c[g>>2]=171073;c[g+4>>2]=124579;c[g+8>>2]=621;Wf(0,0,159637,g);Ub()}while(0);d=c[c[d+4>>2]>>2]|0;if(d){d=Ld[d&15](a,b)|0;if((d|0)<0)ah(b);else h=16}else{d=0;h=16}}else{switch(d|0){case -541478725:break;default:{h=16;break a}}c[e+80>>2]=1;d=-541478725;h=16}while(0);if((h|0)==16)Bg(b+400|0);l=i;return d|0}function wS(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=xS(a,b)|0}while((d|0)>=0);return d|0}function xS(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+144|0;if((l|0)>=(m|0))W(144);M=Z+128|0;L=Z+120|0;Y=Z+64|0;S=Z+56|0;J=Z+48|0;H=Z+40|0;E=Z+32|0;A=Z+24|0;t=Z+16|0;q=Z+8|0;j=Z;V=Z+96|0;i=Z+76|0;s=Z+112|0;D=Z+104|0;P=Z+88|0;Q=Z+80|0;R=b+28|0;X=c[R>>2]|0;T=c[X+24>>2]|0;U=T+24|0;if(!(((c[U>>2]|0)==0?(c[X+64>>2]|0)==0:0)?(zg(T),f=oS(b,T)|0,(f|0)<0&(f|0)!=-541478725):0))k=4;do if((k|0)==4){O=X+80|0;if(!(c[O>>2]|0)){if(((c[U>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+696>>2]&1|0)==0:0){f=-541478725;break}c[V>>2]=0;K=b+696|0;if(!(c[K>>2]&1)){h=b+12|0;f=Nd[c[(c[h>>2]|0)+92>>2]&3](b,e,V,T)|0;g=c[h>>2]|0;if(!(c[g+116>>2]&4)){w=T+16|0;x=c[w+4>>2]|0;z=e+120|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+8>>2]|0)){if(!(c[b+140>>2]|0)){w=T+56|0;x=c[w+4>>2]|0;z=e+328|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){w=b+188|0;x=c[w+4>>2]|0;z=g;c[z>>2]=c[w>>2];c[z+4>>2]=x}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+92>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+96>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+112>>2];x=h}else x=h}else x=h}else x=h}else{f=yS(b,e,V,T)|0;x=b+12|0}z=c[V>>2]|0;a:do switch(c[(c[x>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[V>>2]=0;break a}if(z|0){H=e+104|0;G=e+120|0;G=zS(b,c[H>>2]|0,c[H+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;H=e+320|0;c[H>>2]=G;c[H+4>>2]=y}break}case 1:{if((f|0)>-1&(z|0)!=0){g=e+104|0;w=e+120|0;w=zS(b,c[g>>2]|0,c[g+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;g=e+320|0;c[g>>2]=w;c[g+4>>2]=y;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+352>>2];g=e+240|0;w=g;if((c[w>>2]|0)==0&(c[w+4>>2]|0)==0){u=b+376|0;v=c[u+4>>2]|0;w=g;c[w>>2]=c[u>>2];c[w+4>>2]=v}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+348>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+344>>2]}g=qi(c[X+40>>2]|0,11,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){v=c[R>>2]|0;w=N(c[v+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[v+56>>2]=w;v=g+4|0;v=d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24;c[j>>2]=w;c[j+4>>2]=v;Wf(b,48,171193,j);w=a[g+8>>0]|0;u=a[g+9>>0]|0}else{v=0;w=0;u=0}g=c[V>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+64>>2]&536870912|0)==0:0){n=(c[R>>2]|0)+56|0;j=(c[n>>2]|0)-(c[e+76>>2]|0)|0;c[n>>2]=(j|0)>0?j:0;c[V>>2]=0}else k=43;do if(((k|0)==43?(o=(c[R>>2]|0)+56|0,p=c[o>>2]|0,(p|0)>0&(g|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){n=e+76|0;g=c[n>>2]|0;if((g|0)<=(p|0)){c[V>>2]=0;A=p-g|0;c[o>>2]=A;c[q>>2]=A;Wf(b,48,171240,q);break}q=c[e+64>>2]|0;Oh(q,q,0,p,g-p|0,c[b+348>>2]|0,c[e+80>>2]|0)|0;g=b+772|0;if((c[g>>2]|0)!=0?(r=c[b+344>>2]|0,(r|0)!=0):0){j=c[(c[R>>2]|0)+56>>2]|0;c[s>>2]=1;c[s+4>>2]=r;c[L>>2]=c[s>>2];c[L+4>>2]=c[s+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];j=RQ(j,((j|0)<0)<<31>>31,L,M)|0;k=y;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=VW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=VW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=VW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(k|0)|(i|0)==(k|0)&h>>>0>>0)){s=WW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}}else Wf(b,24,171273,t);t=c[n>>2]|0;c[A>>2]=c[(c[R>>2]|0)+56>>2];c[A+4>>2]=t;Wf(b,48,171323,A);A=(c[R>>2]|0)+56|0;c[n>>2]=(c[n>>2]|0)-(c[A>>2]|0);c[A>>2]=0}while(0);do if((v|0?(F=e+76|0,B=c[F>>2]|0,B>>>0>=v>>>0&(c[V>>2]|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){if((B|0)==(v|0)){c[V>>2]=0;break}g=b+772|0;if((c[g>>2]|0)!=0?(C=c[b+344>>2]|0,(C|0)!=0):0){c[D>>2]=1;c[D+4>>2]=C;c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];E=RQ(B-v|0,0,L,M)|0;g=e+336|0;c[g>>2]=E;c[g+4>>2]=y;g=b}else{Wf(b,24,171343,E);g=b}E=c[F>>2]|0;c[H>>2]=v;c[H+4>>2]=E;Wf(g,48,171395,H);c[F>>2]=(c[F>>2]|0)-v}while(0);if((c[V>>2]|0?(c[b+64>>2]&536870912|0)!=0:0)?(G=$h(e,9,10)|0,G|0):0){F=c[(c[R>>2]|0)+56>>2]|0;H=G+4|0;G=c[H>>2]|0;a[G>>0]=F;a[G+1>>0]=F>>8;a[G+2>>0]=F>>16;a[G+3>>0]=F>>24;G=(c[H>>2]|0)+4|0;a[G>>0]=v;a[G+1>>0]=v>>8;a[G+2>>0]=v>>16;a[G+3>>0]=v>>24;a[(c[H>>2]|0)+8>>0]=w;a[(c[H>>2]|0)+9>>0]=u;c[(c[R>>2]|0)+56>>2]=0}break}default:{}}while(0);g=c[x>>2]|0;if((((c[g+8>>2]|0)==1?(I=X+104|0,(f|0)>-1&(c[I>>2]|0)==0):0)?(f|0)!=(c[T+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){Wf(b,24,171418,J);c[I>>2]=1}if(!(c[V>>2]|0))ah(e);if(((f|0)>-1?(c[(c[x>>2]|0)+8>>2]|0)==0:0)?(c[b+60>>2]&65536|0)==0:0)f=c[T+28>>2]|0;g=b+760|0;if((c[g>>2]|0)>0?(c[b+764>>2]|0)>0:0){c[Q>>2]=c[b+84>>2];c[Q+4>>2]=1;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[M>>2]=c[Q>>2];c[M+4>>2]=c[Q+4>>2];bO(P,L,M);M=c[P>>2]|0;Q=b+76|0;c[Q>>2]=c[P+4>>2];c[Q+4>>2]=M}do if(!(z|0?1:(c[(c[R>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[O>>2]=1;break}if(!(c[K>>2]&1))g=21;else g=(c[b+688>>2]|0)+20|0;Q=X+112|0;R=c[Q>>2]|0;c[Q>>2]=R+1;if((R|0)>=(g|0)){Wf(b,16,171448,S);c[O>>2]=1;f=-558323010}}while(0);g=X+92|0;c[g>>2]=(c[g>>2]|0)+f;g=T+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))zg(T);else{c[U>>2]=(c[U>>2]|0)+f;c[g>>2]=h-f;X=c[X+40>>2]|0;U=X+28|0;c[U>>2]=(c[U>>2]|0)-f;U=T+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=T+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=X+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;X=X+16|0;c[X>>2]=0;c[X+4>>2]=-2147483648}if(c[V>>2]|0?(c[e+248>>2]|0)==0:0){c[Y>>2]=171524;c[Y+4>>2]=124579;c[Y+8>>2]=584;Wf(0,0,159637,Y);Ub()}f=i?f:0}else f=-541478725}while(0);l=Z;return f|0}function yS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[(c[a+28>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;WR(p);n=p+144|0;f=AS((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+688|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+16>>2]|0)==33)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;mX(g|0)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}nX(g|0)|0}bh(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}UR(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);Tl(p);return f|0}function zS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(e|0)==0&(f|0)==-2147483648;if(k)if((b|0)==0&(d|0)==-2147483648)g=0;else{l=a+808|0;c[l>>2]=b;c[l+4>>2]=d;l=6}else{l=a+808|0;i=l;h=c[i+4>>2]|0;j=a+792|0;g=j;i=VW(c[g>>2]|0,c[g+4>>2]|0,((h|0)>(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;c[j>>2]=i;c[j+4>>2]=y;c[l>>2]=e;c[l+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){h=a+800|0;g=0;i=e;j=f;l=7}else l=6}if((l|0)==6){h=a+800|0;i=h;j=c[i+4>>2]|0;g=a+784|0;m=g;i=VW(c[m>>2]|0,c[m+4>>2]|0,((j|0)>(d|0)|((j|0)==(d|0)?(c[i>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;c[g>>2]=i;c[g+4>>2]=y;g=1;i=b;j=d;l=7}if((l|0)==7){m=h;c[m>>2]=i;c[m+4>>2]=j}l=a+784|0;j=c[l+4>>2]|0;m=a+792|0;a=c[m+4>>2]|0;m=g&(k|((j|0)<(a|0)|((j|0)==(a|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));y=m?d:f;return (m?b:e)|0}function AS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=q;k=c[a>>2]|0;n=k+4|0;g=c[n>>2]|0;o=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[o>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else p=3;do if((p|0)==3){i=a+156|0;mX(i|0)|0;b=BS(c[o>>2]|0,b)|0;if(b|0){nX(i|0)|0;break}c[a+344>>2]=(c[(c[o>>2]|0)+576>>2]|0)>>>16&1;VR(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;mX(e|0)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;wc(f|0,e|0)|0}nX(e|0)|0}b=UR(c[o>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){nX(i|0)|0;break}}b=a+216|0;zg(b);b=gS(b,d)|0;if((b|0)<0){nX(i|0)|0;Wf(c[o>>2]|0,16,171538,h);break}j=a+300|0;c[j>>2]=1;vc(a+12|0)|0;nX(i|0)|0;b=c[o>>2]|0;a:do if(!(c[b+700>>2]|0)){if((c[b+120>>2]|0)==9?(c[b+400>>2]|0)==12:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;mX(b|0)|0;while(1){if((c[j>>2]|0)!=1)break;wc(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{c[d>>2]=un(c[o>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;p=27;break}case 3:{c[i>>2]=QM(c[o>>2]|0,c[h>>2]|0)|0;p=27;break}default:{}}if((p|0)==27){p=0;c[j>>2]=1;vc(e|0)|0}nX(b|0)|0}}while(0);c[n>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);l=q;return b|0}function BS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+60>>2]=c[b+60>>2];c[a+116>>2]=c[b+116>>2];c[a+400>>2]=c[b+400>>2];c[a+32>>2]=c[b+32>>2];c[a+576>>2]=c[b+576>>2];c[a+832>>2]=c[b+832>>2];c[a+240>>2]=c[b+240>>2];c[a+64>>2]=c[b+64>>2];f=a+724|0;d=b+724|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+360>>2]=c[b+360>>2];f=b+584|0;d=c[f+4>>2]|0;g=a+584|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+700>>2]=c[b+700>>2];g=b+176|0;d=c[g>>2]|0;do if(d){e=b+184|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+184|0;if((c[a+176>>2]|0)<(d|0)){d=IN(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}iX(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+176>>2]=d;d=0}return d|0}function CS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+28>>2]|0;ah(b);do if((OR(a)|0)!=0?(LR(c[a+12>>2]|0)|0)!=0:0){d=uS(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=vS(a,b)|0;if((d|0)<0)break}else bh(b,d);if((c[a+8>>2]|0)==0?(f=DS(a,b)|0,(f|0)<0):0){ah(b);d=f;break}d=a+360|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function DS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+888>>2]|0))a=0;else a=OQ(b,c[a+60>>2]&1)|0;else{p=c[b+68>>2]|0;b=c[b+72>>2]|0;c[n>>2]=g;c[n+4>>2]=i;c[n+8>>2]=k;c[n+12>>2]=e;c[n+16>>2]=p;c[n+20>>2]=b;Wf(a,24,171681,n);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}l=o;return a|0}function ES(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){NR(b)|0;Sf(b+68|0);Sf(b+736|0);Sf(b+248|0);Sf(b+252|0);Sf(b+436|0);Sf(a)}return}function FS(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;d=c[107852+(b<<2)>>2]|0;if((b|0)!=3)c[a>>2]=b+1;return d|0}function GS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a:do if(!a)a=0;else{do{d=FS(b)|0;if(!d){a=0;break a}if((c[d>>2]|0)==(a|0))break;if((c[d+4>>2]|0)==(a|0))break;if((c[d+8>>2]|0)==(a|0))break;if((c[d+12>>2]|0)==(a|0))break}while((c[d+16>>2]|0)!=(a|0));a=Ng(344)|0;if(a|0){c[a+4>>2]=d;b=Ng(c[d+20>>2]|0)|0;c[a>>2]=b;do if(b|0){c[a+72>>2]=1;c[a+32>>2]=1;b=c[d+24>>2]|0;if(b|0?Kd[b&31](a)|0:0)break;c[a+224>>2]=-1;d=a+232|0;c[d>>2]=0;c[d+4>>2]=0;c[a+240>>2]=-2147483648;c[a+244>>2]=-2147483648;c[a+248>>2]=-2147483648;c[a+336>>2]=-1;break a}while(0);Sf(a)}Tf(a);a=0}while(0);l=e;return a|0}function HS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=(e|0)!=0;if(u){n=a+48|0;o=a+40|0;p=a+288|0;q=a+184|0}else{o=a+40|0;n=o;c[n>>2]=0;c[n+4>>2]=-2147483648;n=a+48|0;p=n;c[p>>2]=0;c[p+4>>2]=-2147483648;p=a+288|0;q=p;c[q>>2]=-1;c[q+4>>2]=-1;q=a+184|0;t=q;c[t>>2]=0;c[t+4>>2]=0}r=a+16|0;s=((b|0)<0)<<31>>31;t=a+8|0;l=(d|0)==0;m=a+24|0;k=0;a:while(1){if((k|0)>=4)break;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0;i=VW(d|0,e|0,b|0,s|0)|0;h=y;j=a+80+(k<<3)|0;g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;do if(!((h|0)<(g|0)|(h|0)==(g|0)&i>>>0>>0)){i=t;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(g|0)|(i|0)==(g|0)&h>>>0>>0)){if(!((h|0)==0&(i|0)==0))break;i=m;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0))break}h=a+192+(k<<3)|0;i=h;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0)){g=a+144+(k<<3)|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!(u&((f|0)==0&(g|0)==-2147483648))){i=n;c[i>>2]=f;c[i+4>>2]=g;i=a+112+(k<<3)|0;g=c[i+4>>2]|0;f=o;c[f>>2]=c[i>>2];c[f+4>>2]=g;f=a+256+(k<<3)|0;g=c[f+4>>2]|0;i=p;c[i>>2]=c[f>>2];c[i+4>>2]=g;i=m;g=j;g=WW(c[i>>2]|0,c[i+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=q;c[i>>2]=g;c[i+4>>2]=y}if(!l){e=j;c[e>>2]=-1;c[e+4>>2]=2147483647;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0}i=VW(d|0,e|0,b|0,s|0)|0;g=y;j=h;h=c[j+4>>2]|0;if((g|0)<(h|0)|((g|0)==(h|0)?i>>>0<(c[j>>2]|0)>>>0:0))break a}}while(0);k=k+1|0}return}function IS(b,d,e,f,g,h,i,j,k,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0;A=l;l=l+80|0;if((l|0)>=(m|0))W(80);z=A;q=A+16|0;r=b+176|0;s=c[r>>2]|0;if(!(s&4)){v=b+16|0;c[v>>2]=o;c[v+4>>2]=p;v=b+24|0;c[v>>2]=o;c[v+4>>2]=p;c[r>>2]=s|4}if(h){r=b+16|0;q=c[r>>2]|0;r=c[r+4>>2]|0;s=VW(q|0,r|0,h|0,((h|0)<0)<<31>>31|0)|0;t=y;u=b+76|0;v=c[u>>2]|0;B=b+192+(v<<3)|0;if((s|0)==(c[B>>2]|0)?(t|0)==(c[B+4>>2]|0):0)q=g;else{B=v+1&3;c[u>>2]=B;v=b+80+(B<<3)|0;c[v>>2]=q;c[v+4>>2]=r;q=b+192+(B<<3)|0;c[q>>2]=s;c[q+4>>2]=t;q=b+112+(B<<3)|0;c[q>>2]=i;c[q+4>>2]=j;q=b+144+(B<<3)|0;c[q>>2]=k;c[q+4>>2]=n;q=b+256+(B<<3)|0;c[q>>2]=o;c[q+4>>2]=p;q=g}}else{r=q;s=r+64|0;do{a[r>>0]=0;r=r+1|0}while((r|0)<(s|0))}r=b+72|0;if(c[r>>2]|0){c[r>>2]=0;k=b+40|0;n=c[k+4>>2]|0;B=b+56|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;B=b+48|0;n=c[B+4>>2]|0;k=b+64|0;c[k>>2]=c[B>>2];c[k+4>>2]=n;k=b+288|0;n=c[k+4>>2]|0;B=b+296|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;HS(b,0,0,0)}t=Pd[c[(c[b+4>>2]|0)+28>>2]&7](b,d,e,f,q,h)|0;if((t|0)<=-536870912){c[z>>2]=171797;c[z+4>>2]=116604;c[z+8>>2]=253;Wf(0,0,159637,z);Ub()}if(((c[d+8>>2]|0)==0?(w=c[b+308>>2]|0,w|0):0)?(x=d+340|0,(c[x>>2]|0)==0):0)c[x>>2]=w;if(!(c[f>>2]|0)){q=b+16|0;s=q;r=c[s>>2]|0;s=c[s+4>>2]|0}else{z=b+24|0;B=z;s=c[B+4>>2]|0;q=b+8|0;c[q>>2]=c[B>>2];c[q+4>>2]=s;q=b+16|0;s=q;B=c[s>>2]|0;s=c[s+4>>2]|0;f=VW(B|0,s|0,t|0,((t|0)<0)<<31>>31|0)|0;c[z>>2]=f;c[z+4>>2]=y;c[r>>2]=1;r=B}B=(t|0)>0?t:0;f=VW(r|0,s|0,B|0,0)|0;z=q;c[z>>2]=f;c[z+4>>2]=y;l=A;return B|0}function JS(a){a=a|0;var b=0;if(a|0){b=c[(c[a+4>>2]|0)+32>>2]|0;if(b|0)Rd[b&31](a);Sf(a);Tf(a)}return}function KS(a){a=a|0;var b=0;LS(a);b=c[a+696>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=NS(a)|0;else a=MS(a)|0;return a|0}function LS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;f=c[(c[a+12>>2]|0)+16>>2]|0;if((f&4096|0)!=0?(c[a+60>>2]&589824|0)==0:0)e=(c[a+64>>2]&32768|0)==0;else e=0;d=a+688|0;b=c[d>>2]|0;do if((b|0)!=1){if(e?c[a+692>>2]&1|0:0){d=1;h=11;break}if(f&8192|0?c[a+692>>2]&2|0:0){d=2;h=11;break}if(!(f&32768)){c[d>>2]=1;d=0;b=1;h=11}}else{d=0;b=1;h=11}while(0);if((h|0)==11)c[a+696>>2]=d;if((b|0)>16){c[g>>2]=b;c[g+4>>2]=16;Wf(a,24,171935,g)}l=i;return}function MS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+688|0;b=c[i>>2]|0;h=a+12|0;if(((HR(c[h>>2]|0)|0)!=0?(c[a+16>>2]|0)==1:0)?(c[a+96>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=NQ()|0;d=c[a+96>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=Ng(48)|0;g=a+28|0;b=c[g>>2]|0;c[b+20>>2]=f;d=c[(c[h>>2]|0)+116>>2]&32|0?24:0;c[46406]=d;do if(f){b=xR(f,a,79,d,e)|0;if((b|0)<2){zR(f);b=c[g>>2]|0;break}else{c[i>>2]=b;c[a+704>>2]=5;c[a+708>>2]=42;break a}}while(0);Sf(b+20|0);c[i>>2]=1;c[a+696>>2]=0}}while(0);if((j|0)==10)c[a+696>>2]=0;return 0}function NS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=v;b=a+688|0;d=c[b>>2]|0;e=c[a+12>>2]|0;if(!d){s=NQ()|0;d=s+1|0;d=(s|0)>1?((d|0)<16?d:16):1;c[b>>2]=d}a:do if((d|0)>=2){s=Ng(156)|0;b=a+28|0;c[(c[b>>2]|0)+20>>2]=s;if(!s)b=-12;else{r=jh(d,352)|0;c[s>>2]=r;if(!r){Sf((c[b>>2]|0)+20|0);b=-12;break}Cc(s+8|0,0)|0;Cc(s+36|0,0)|0;Cc(s+64|0,0)|0;uc(s+92|0,0)|0;c[s+140>>2]=1;c[s+152>>2]=1;p=e+80|0;q=e+56|0;n=e+64|0;b=0;r=0;f=a;while(1){if((r|0)>=(d|0)){b=0;break a}c[t>>2]=cg(896)|0;o=c[s>>2]|0;j=o+(r*352|0)|0;Cc(o+(r*352|0)+156|0,0)|0;Cc(o+(r*352|0)+184|0,0)|0;uc(o+(r*352|0)+12|0,0)|0;uc(o+(r*352|0)+60|0,0)|0;uc(o+(r*352|0)+108|0,0)|0;k=Eh()|0;c[o+(r*352|0)+288>>2]=k;if(!k){u=11;break}c[j>>2]=s;e=c[t>>2]|0;c[o+(r*352|0)+212>>2]=e;k=e;if(!e){b=-12;u=23;break}iX(e|0,f|0,896)|0;e=cg(116)|0;i=k+28|0;c[i>>2]=e;if(!e){u=14;break}g=c[f+28>>2]|0;h=e+116|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=c[i>>2]|0;c[h+20>>2]=j;c[h+40>>2]=o+(r*352|0)+216;if(r){e=cg(c[q>>2]|0)|0;c[k+24>>2]=e;if(!e){b=-12;u=23;break}iX(e|0,c[f+24>>2]|0,c[q>>2]|0)|0;c[c[i>>2]>>2]=1;e=c[n>>2]|0;if(e)b=Kd[e&31](k)|0}else{e=c[p>>2]|0;if(e)b=Kd[e&31](k)|0;UR(a,k,1)|0;f=k}if(b|0){u=23;break}c[o+(r*352|0)+344>>2]=(c[k+576>>2]|0)>>>16&1;k=xc(o+(r*352|0)+4|0,0,23,j|0)|0;b=0-k|0;k=(k|0)==0;c[o+(r*352|0)+8>>2]=k&1;if(!k)break;r=r+1|0}if((u|0)==11){Sf(t);b=-12;u=23}else if((u|0)==14){c[k+24>>2]=0;b=-12;u=23}RR(a,r+1|0)}}else{c[a+696>>2]=0;b=0}while(0);l=v;return b|0}function OS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+32|0;if((l|0)>=(m|0))W(32);B=D+16|0;A=D;p=c[a+212>>2]|0;j=c[p+12>>2]|0;v=a+156|0;mX(v|0)|0;w=a+332|0;x=a+300|0;y=a+12|0;z=j+68|0;d=p+700|0;e=p+400|0;f=a+336|0;g=p+592|0;h=a+288|0;i=a+292|0;j=j+92|0;k=a+216|0;n=a+296|0;o=p+28|0;q=a+340|0;r=a+184|0;s=a+60|0;t=a+108|0;a:while(1){while(1){b=(c[w>>2]|0)==0;if(c[x>>2]|0)break;if(!b){C=28;break a}wc(y|0,v|0)|0}if(!b){C=28;break}do if(!(c[z>>2]|0)){if((c[d>>2]|0)==0?(c[e>>2]|0)!=12:0)break;Li(p)}while(0);if(c[f>>2]|0){C=12;break}if(c[g>>2]|0){mX((c[a>>2]|0)+36|0)|0;c[f>>2]=1}ah(c[h>>2]|0);c[i>>2]=0;b=Nd[c[j>>2]&3](p,c[h>>2]|0,i,k)|0;c[n>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))C=17;if((C|0)==17?(C=0,u=c[h>>2]|0,c[u+248>>2]|0):0){if(!(c[(c[o>>2]|0)+4>>2]|0))b=u;else{Wf(p,16,171841,B);b=c[h>>2]|0}ah(b)}if((c[x>>2]|0)==1)Li(p);if(c[f>>2]|0){c[f>>2]=0;nX((c[a>>2]|0)+36|0)|0}if(c[q>>2]|0){c[q>>2]=0;WR(c[a>>2]|0)}mX(r|0)|0;c[x>>2]=0;lX(s|0)|0;vc(t|0)|0;nX(r|0)|0}if((C|0)==12){c[A>>2]=171817;c[A+4>>2]=159593;c[A+8>>2]=190;Wf(0,0,159637,A);Ub()}else if((C|0)==28){nX(v|0)|0;l=D;return 0}return 0}function PS(a){a=a|0;Kd[c[(c[(c[a+28>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function QS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+28>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=Nd[c[g+8>>2]&3](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(N(c[g+24>>2]|0,b)|0)|0;f=Ld[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function RS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&2|0)!=0?(c[a+688>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;BR(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=YR(a,b,d,e,f,g)|0;return a|0}function SS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+28>>2]|0)+20>>2]|0)+8>>2]=b;return RS(a,0,d,e,f,0)|0}function TS(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)nX(185628)|0;return}function US(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=l;l=l+848|0;if((l|0)>=(m|0))W(848);$=ja+336|0;_=ja+328|0;da=ja+288|0;Z=ja+280|0;Y=ja+272|0;X=ja+264|0;V=ja+248|0;S=ja+240|0;R=ja+232|0;Q=ja+224|0;O=ja+208|0;N=ja+192|0;M=ja+184|0;L=ja+176|0;K=ja+168|0;J=ja+152|0;H=ja+144|0;F=ja+136|0;D=ja+128|0;C=ja+120|0;B=ja+112|0;A=ja+104|0;z=ja+96|0;x=ja+88|0;t=ja+80|0;s=ja+72|0;r=ja+64|0;q=ja+48|0;ca=ja+40|0;p=ja+32|0;o=ja+24|0;n=ja+16|0;j=ja+8|0;i=ja;ia=ja+312|0;aa=ja+320|0;ba=ja+304|0;c[ia>>2]=0;do if(!(OR(a)|0)){ha=a+12|0;g=c[ha>>2]|0;h=(g|0)==0;if(!b)if(h){Wf(a,16,172031,i);f=-22;break}else fa=g;else if(h|(g|0)==(b|0))fa=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;Wf(a,16,172069,j);f=-22;break}if((c[a+72>>2]|0)>>>0<=268435391){ga=(e|0)!=0;if(ga)_h(ia,c[e>>2]|0,0)|0;VS(fa);U=Ng(116)|0;ea=a+28|0;c[ea>>2]=U;a:do if(!U)f=-12;else{U=Ng(88)|0;c[(c[ea>>2]|0)+16>>2]=U;b:do if(((((((U|0)!=0?(U=Eh()|0,c[(c[ea>>2]|0)+12>>2]=U,(U|0)!=0):0)?(U=Eh()|0,c[(c[ea>>2]|0)+100>>2]=U,(U|0)!=0):0)?(U=Eh()|0,c[(c[ea>>2]|0)+76>>2]=U,(U|0)!=0):0)?(U=MP()|0,c[(c[ea>>2]|0)+68>>2]=U,(U|0)!=0):0)?(U=MP()|0,c[(c[ea>>2]|0)+24>>2]=U,(U|0)!=0):0)?(U=MP()|0,k=c[ea>>2]|0,c[k+40>>2]=U,(U|0)!=0):0){c[k+108>>2]=1;T=fa+56|0;b=c[T>>2]|0;U=a+24|0;do if((b|0)>0){if(!(c[U>>2]|0)){g=Ng(b)|0;c[U>>2]=g;if(!g){f=-12;break a}b=fa+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;sR(g)}else b=fa+44|0;if(c[b>>2]|0?(f=vR(c[U>>2]|0,ia)|0,(f|0)<0):0)break b}else c[U>>2]=0;while(0);f=vR(a,ia)|0;if((f|0)>=0){b=a+844|0;g=c[b>>2]|0;if(g|0?(aQ(c[fa>>2]|0,g,44)|0)<1:0){f=c[b>>2]|0;c[n>>2]=c[fa>>2];c[n+4>>2]=f;Wf(a,16,172145,n);f=-22;break}i=a+100|0;b=c[i>>2]|0;c:do if(!b)P=37;else{g=c[a+104>>2]|0;if(!g){P=37;break}do if(c[a+92>>2]|0){if(!(c[a+96>>2]|0))break;switch(c[a+16>>2]|0){case 189:case 92:case 27:{P=43;break c}default:{}}}while(0);f=sS(a,b,g)|0;P=40}while(0);do if((P|0)==37){g=c[a+92>>2]|0;if(!g){P=42;break}h=c[a+96>>2]|0;if(!h){P=42;break}f=sS(a,g,h)|0;P=40}while(0);if((P|0)==40){if((f|0)<0)break;b=c[i>>2]|0;P=42}do if((P|0)==42){if(b|0){P=43;break}g=c[a+104>>2]|0;if(g|0){b=0;P=47;break}b=a+92|0;if(c[b>>2]|0){b=0;g=0;P=47;break}if(!(c[a+96>>2]|0))u=b;else{b=0;g=0;P=47}}while(0);if((P|0)==43){g=c[a+104>>2]|0;P=47}do if((P|0)==47){h=a+872|0;I=h;i=a+92|0;if((Yh(b,g,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0?(I=h,(Yh(c[i>>2]|0,c[a+96>>2]|0,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0):0){u=i;break}Wf(a,24,172179,o);sS(a,0,0)|0;u=i}while(0);b=c[u>>2]|0;do if((b|0)>0){g=c[a+96>>2]|0;if((g|0)<=0)break;h=a+188|0;c[$>>2]=c[h>>2];c[$+4>>2]=c[h+4>>2];if((Bn(b,g,$)|0)>=0)break;I=a+192|0;G=c[I>>2]|0;c[p>>2]=c[h>>2];c[p+4>>2]=G;Wf(a,24,172217,p);c[a+188>>2]=0;c[I>>2]=1}while(0);if(LR(fa)|0)Sf(a+736|0);G=a+348|0;if((c[G>>2]|0)>>>0>64){f=-22;break}c[ha>>2]=fa;I=a+8|0;h=c[I>>2]|0;do if((h|0)==-1)P=60;else{if((h|0)==(c[fa+8>>2]|0)){P=60;break}g=a+16|0;n=g;g=c[g>>2]|0;b=h}while(0);do if((P|0)==60){b=a+16|0;g=c[b>>2]|0;if(g|0){n=b;b=h;break}E=c[fa+8>>2]|0;c[I>>2]=E;g=c[fa+12>>2]|0;c[b>>2]=g;n=b;b=E}while(0);h=fa+12|0;do if((g|0)==(c[h>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[fa+8>>2]|0)))break;c[a+360>>2]=0;E=a+780|0;c[E>>2]=Lg(g)|0;b=c[ha>>2]|0;do if(c[b+16>>2]&512|0){if((c[a+568>>2]|0)<=-2)break;b=(HR(fa)|0)!=0;b=b?172275:172283;da=c[fa>>2]|0;c[q>>2]=b;c[q+4>>2]=da;c[q+8>>2]=-2;Wf(a,16,172291,q);da=(HR(fa)|0)==0;f=c[h>>2]|0;if(da)f=KR(f)|0;else f=GR(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[r>>2]=b;c[r+4>>2]=f;Wf(a,16,172401,r);f=-733130664;break b}while(0);do if((c[I>>2]|0)==1){h=a+76|0;g=a+80|0;if(c[h>>2]|0?c[g>>2]|0:0)break;c[h>>2]=1;c[g>>2]=c[a+344>>2]}while(0);if(!((c[(c[ea>>2]|0)+52>>2]|0)!=0?(c[a+696>>2]&1|0)!=0:0)){f=KS(a)|0;if((f|0)<0)break b;b=c[ha>>2]|0}g=d[b+40>>0]|0;h=a+680|0;if((c[h>>2]|0)>>>0>g>>>0){c[s>>2]=g;Wf(a,24,172450,s);b=c[ha>>2]|0;c[h>>2]=d[b+40>>0]}d:do if(HR(b)|0){s=Eh()|0;c[a+684>>2]=s;if(!s){f=-12;break b}o=a+76|0;do if((c[o>>2]|0)>=1){p=a+80|0;if((c[p>>2]|0)<1)break;g=c[ha>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+352|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[G>>2]|0)==1){t=wR(i)|0;t=(t|0)==(wR(c[(c[(c[ha>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);v=c[ha>>2]|0;w=c[v+32>>2]|0;if(t){P=94;break}else{g=v;b=w}}j=j+1|0}if((P|0)==94?(w=w+(j<<2)|0,c[k>>2]=c[w>>2],(c[w>>2]|0)!=-1):0){j=v;break}c[x>>2]=c[k>>2];MU($,128,172545,x)|0;c[z>>2]=WS(rR(c[k>>2]|0)|0,$)|0;Wf(a,16,172548,z);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+112|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){P=103;break}else b=b+1|0}if((P|0)==103){switch(i|0){case 14:case 32:case 13:case 140:case 12:break;default:break f}c[a+328>>2]=2;break}switch(c[n>>2]|0){case 9:case 7:{if((c[a+568>>2]|0)<0)break f;break}default:{}}c[A>>2]=c[h>>2];MU($,128,172545,A)|0;c[B>>2]=WS(qh(c[h>>2]|0)|0,$)|0;Wf(a,16,172604,B);f=-22;break b}while(0);h=c[j+28>>2]|0;b=c[a+344>>2]|0;g:do if(h){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break;if((b|0)==(i|0))break g;else g=g+1|0}c[C>>2]=b;Wf(a,16,172659,C);f=-22;break b}while(0);if((b|0)<0){c[D>>2]=b;Wf(a,16,172659,D);f=-22;break b}i=c[j+36>>2]|0;n=a+376|0;h:do if(i|0){k=n;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){Wf(a,24,172702,F);break}else b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}jQ($,512,-1,j,k);c[H>>2]=$;Wf(a,16,172732,H);f=-22;break b}while(0);h=n;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[G>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=Wh(g,h)|0;if(!b){c[G>>2]=g;b=g;break}if((g|0)==(c[G>>2]|0)){b=g;break}f=n;jQ($,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[G>>2]|0;c[J>>2]=$;c[J+4>>2]=g;c[J+8>>2]=f;Wf(a,16,172780,J);f=-22;break b}while(0);if((b|0)<0){c[K>>2]=b;Wf(a,16,172865,K);f=-22;break b}b=c[I>>2]|0;i:do if(!b){b=ph(c[a+112>>2]|0)|0;h=a+676|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)P=129}else{g=b+32|0;b=g;g=c[g>>2]|0;P=129}while(0);if((P|0)==129){c[L>>2]=i;c[L+4>>2]=g;Wf(a,24,172915,L);c[h>>2]=c[b>>2]}do if((c[u>>2]|0)>=1){if((c[a+96>>2]|0)<1)break;b=c[I>>2]|0;break i}while(0);Wf(a,16,172994,M);f=-22;break b}while(0);do if(b>>>0<2){g=a+40|0;b=c[g>>2]|0;g=c[g+4>>2]|0;M=VW(b|0,g|0,-1,-1)|0;L=y;if(!(L>>>0<0|(L|0)==0&M>>>0<999))break;M=N;c[M>>2]=b;c[M+4>>2]=g;M=N+8|0;c[M>>2]=b;c[M+4>>2]=g;Wf(a,24,173014,N)}while(0);b=a+464|0;if(!(c[b>>2]|0)){N=c[a+428>>2]|0;N=$W(N|0,((N|0)<0)<<31>>31|0,3,0)|0;N=ZW(N|0,y|0,4,0)|0;c[b>>2]=N}g=c[a+84>>2]|0;do if(g|0){b=c[o>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;da=c[p>>2]|0;c[O>>2]=g;c[O+4>>2]=b;c[O+8>>2]=da;Wf(a,16,173067,O);break b}while(0);f=c[a+860>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+112>>2]|0)){Wf(a,16,173120,Q);f=-22;break b}h=a+768|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}da=qh(g)|0;f=qh(c[b>>2]|0)|0;c[R>>2]=da;c[R+4>>2]=f;Wf(a,16,173185,R);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);Wf(a,16,172511,t);f=-22;break b}while(0);R=a+784|0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;R=a+808|0;c[R>>2]=0;c[R+4>>2]=-2147483648;R=a+800|0;c[R>>2]=0;c[R+4>>2]=-2147483648;do if(c[a+60>>2]&8192|0){if(c[(c[E>>2]|0)+4>>2]|0)break;Wf(a,24,173266,S)}while(0);f=c[ha>>2]|0;b=c[f+80>>2]|0;do if(b){if(c[a+696>>2]&1|0?(c[(c[ea>>2]|0)+52>>2]|0)==0:0)break;f=Kd[b&31](a)|0;if((f|0)<0)break b;f=c[ha>>2]|0}while(0);do if(LR(f)|0){f=a+40|0;S=f;if((c[S>>2]|0)==0&(c[S+4>>2]|0)==0){R=XS(a)|0;S=f;c[S>>2]=R;c[S+4>>2]=y}g=a+376|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)P=166;else{f=Wh(f,b)|0;b=c[G>>2]|0;if(!b){c[G>>2]=f;break}if((f|0)==(b|0))break;P=g;jQ($,512,-1,c[P>>2]|0,c[P+4>>2]|0);P=c[G>>2]|0;c[V>>2]=$;c[V+4>>2]=f;c[V+8>>2]=P;Wf(a,24,173329,V);P=g;c[P>>2]=0;c[P+4>>2]=0;P=166}while(0);if((P|0)==166)f=c[G>>2]|0;if(f>>>0>64){f=-22;break b}b=a+816|0;g=c[b>>2]|0;j:do if(g|0){if((c[I>>2]|0)!=3){Wf(a,16,173449,X);f=-22;break b}f=c[E>>2]|0;if(c[f+16>>2]&65536|0){c[Y>>2]=c[f+8>>2];Wf(a,24,173509,Y);c[a+820>>2]=-1;break}f=a+820|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}if((GU(173583,g)|0)==(-1|0)){f=0-(c[(oT()|0)>>2]|0)|0;c[Z>>2]=c[b>>2];Wf(a,16,173589,Z);break b}else break}while(0);f=a+760|0;if((c[f>>2]|0)<=0)break;if((c[a+764>>2]|0)<=0)break;c[ba>>2]=c[a+84>>2];c[ba+4>>2]=1;c[_>>2]=c[f>>2];c[_+4>>2]=c[f+4>>2];c[$>>2]=c[ba>>2];c[$+4>>2]=c[ba+4>>2];bO(aa,_,$);$=c[aa>>2]|0;ba=a+76|0;c[ba>>2]=c[aa+4>>2];c[ba+4>>2]=$}while(0);if((c[T>>2]|0)<=0){f=0;break a}f=c[U>>2]|0;if(!f){f=0;break a}b=c[fa+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[da>>2]=173654;c[da+4>>2]=127039;c[da+8>>2]=995;Wf(0,0,159637,da);Ub()}while(0);Wf(a,16,172246,ca);f=-22}}else f=-12;while(0);b=c[ha>>2]|0;if(b|0?c[b+116>>2]&2|0:0)Kd[c[b+96>>2]&31](a)|0;if(c[fa+44>>2]|0?c[fa+56>>2]|0:0)vg(c[a+24>>2]|0);vg(a);Fh(a+684|0);Fg(ia);Sf(a+24|0);b=c[ea>>2]|0;if(b|0){Fh(b+12|0);Fh((c[ea>>2]|0)+100|0);Fh((c[ea>>2]|0)+76|0);wg((c[ea>>2]|0)+68|0);wg((c[ea>>2]|0)+40|0);wg((c[ea>>2]|0)+24|0);Sf((c[ea>>2]|0)+16|0)}Sf(ea);c[ha>>2]=0}while(0);TS(fa);if(ga){Fg(e);c[e>>2]=c[ia>>2]}}else f=-22}else f=0;while(0);l=ja;return f|0}function VS(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)mX(185628)|0;return}function WS(a,b){a=a|0;b=b|0;return (a|0?a:b)|0}function XS(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=YS(c[a+16>>2]|0)|0;if(!b){b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+344>>2]|0;a=c[a+348>>2]|0;b=$W(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=$W(b|0,y|0,a|0,((a|0)<0)<<31>>31|0)|0;a=y;break a}}default:{a=0;b=0}}while(0);y=a;return b|0}function YS(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=ZS(a)|0}return a|0}function ZS(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86070)switch(a|0){case 86071:case 86070:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function _S(){$S(0);return}function $S(a){a=a|0;yb(52696,173711);nb(52712,173716,1,1,0);ub(52720,173721,1,-128,127);ub(52736,173726,1,-128,127);ub(52728,173738,1,0,255);ub(52744,173752,2,-32768,32767);ub(52752,173758,2,0,65535);ub(52760,173773,4,-2147483648,2147483647);ub(52768,173777,4,0,-1);ub(52776,173790,4,-2147483648,2147483647);ub(52784,173795,4,0,-1);tb(52792,173809,4);tb(52800,173815,8);wb(16,173822);wb(48312,173834);xb(48336,4,173867);sb(40,173880);vb(48360,0,173896);vb(48368,0,173926);vb(48376,1,173963);vb(48384,2,174002);vb(48392,3,174033);vb(48400,4,174073);vb(48408,5,174102);vb(48416,4,174140);vb(48424,5,174170);vb(48368,0,174209);vb(48376,1,174241);vb(48384,2,174274);vb(48392,3,174307);vb(48400,4,174341);vb(48408,5,174374);vb(48432,6,174408);vb(48440,7,174439);vb(48448,7,174471);return}function aT(a){a=a|0;return XU(c[a+4>>2]|0)|0}function bT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=y;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;o=c[46414]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=185696+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[46414]=o&~(1<>2]=a;c[d>>2]=g}x=b<<3;c[e+4>>2]=x|3;x=e+x+4|0;c[x>>2]=c[x>>2]|1;x=f;l=y;return x|0}n=c[46416]|0;if(k>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=185696+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}x=e<<3;h=x-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+x>>2]=h;if(n|0){e=c[46419]|0;b=n>>>3;d=185696+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46416]=h;c[46419]=f;x=i;l=y;return x|0}g=c[46415]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[185960+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=185960+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46415]=g&~(1<>2]|0)==(i|0)?x:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){x=j+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(n|0){e=c[46419]|0;b=n>>>3;d=185696+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46416]=j;c[46419]=h}x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[46415]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;s=a<>>16&4;s=s<>>16&2;j=14-(i|o|j)+(s<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[185960+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;s=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=d;f=0;s=65;break a}else{a=d;f=h}s=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(s|0)==0|(s|0)==(d|0)?g:s;if(!d){d=g;s=61;break}else i=i<<1}}while(0);if((s|0)==61){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>h;g=o>>>5&8;o=o>>>g;i=o>>>2&4;o=o>>>i;j=o>>>1&2;o=o>>>j;d=o>>>1&1;a=0;d=c[185960+((g|h|i|j|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else s=65}if((s|0)==65){g=d;while(1){o=(c[g+4>>2]&-8)-k|0;d=o>>>0>>0;f=d?o:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[46416]|0)-k|0)>>>0:0)?(n=i+k|0,n>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{x=c[i+8>>2]|0;c[x+12>>2]=b;c[b+8>>2]=x}while(0);do if(g){a=c[i+28>>2]|0;d=185960+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<>2]|0)==(i|0)?x:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){x=h+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[n+4>>2]=h|1;c[n+h>>2]=h;b=h>>>3;if(h>>>0<256){d=185696+(b<<1<<2)|0;a=c[46414]|0;b=1<>2]|0}c[a>>2]=n;c[b+12>>2]=n;c[n+8>>2]=b;c[n+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;d=14-(v|w|d)+(x<>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=185960+(d<<2)|0;c[n+28>>2]=d;a=n+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break b}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=n;c[w>>2]=n;c[n+8>>2]=x;c[n+12>>2]=b;c[n+24>>2]=0}while(0);x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=-1;while(0);d=c[46416]|0;if(d>>>0>=o>>>0){b=d-o|0;a=c[46419]|0;if(b>>>0>15){x=a+o|0;c[46419]=x;c[46416]=b;c[x+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=o|3}else{c[46416]=0;c[46419]=0;c[a+4>>2]=d|3;x=a+d+4|0;c[x>>2]=c[x>>2]|1}x=a+8|0;l=y;return x|0}h=c[46417]|0;if(h>>>0>o>>>0){v=h-o|0;c[46417]=v;x=c[46420]|0;w=x+o|0;c[46420]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}if(!(c[46532]|0)){c[46534]=4096;c[46533]=4096;c[46535]=-1;c[46536]=-1;c[46537]=0;c[46525]=0;c[46532]=p&-16^1431655768;a=4096}else a=c[46534]|0;i=o+48|0;j=o+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=o>>>0){x=0;l=y;return x|0}a=c[46524]|0;if(a|0?(n=c[46522]|0,p=n+k|0,p>>>0<=n>>>0|p>>>0>a>>>0):0){x=0;l=y;return x|0}d:do if(!(c[46525]&4)){d=c[46420]|0;e:do if(d){e=186104;while(1){p=c[e>>2]|0;if(p>>>0<=d>>>0?(p+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){s=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=oX(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;s=145;break d}}else{e=a;s=136}}else b=0}else s=128;while(0);do if((s|0)==128){d=oX(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[46533]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+k|0,q=c[46522]|0,r=b+q|0,b>>>0>o>>>0&b>>>0<2147483647):0){p=c[46524]|0;if(p|0?r>>>0<=q>>>0|r>>>0>p>>>0:0){b=0;break}a=oX(b|0)|0;if((a|0)==(d|0)){h=b;g=d;s=145;break d}else{e=a;s=136}}else b=0}while(0);do if((s|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;s=145;break d}a=c[46534]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;s=145;break d}if((oX(a|0)|0)==(-1|0)){oX(d|0)|0;b=0;break}else{h=a+b|0;g=e;s=145;break d}}while(0);c[46525]=c[46525]|4;s=143}else{b=0;s=143}while(0);if(((s|0)==143?k>>>0<2147483647:0)?(v=oX(k|0)|0,r=oX(0)|0,t=r-v|0,u=t>>>0>(o+40|0)>>>0,!((v|0)==(-1|0)|u^1|v>>>0>>0&((v|0)!=(-1|0)&(r|0)!=(-1|0))^1)):0){h=u?t:b;g=v;s=145}if((s|0)==145){b=(c[46522]|0)+h|0;c[46522]=b;if(b>>>0>(c[46523]|0)>>>0)c[46523]=b;j=c[46420]|0;f:do if(j){b=186104;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){s=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((s|0)==154?(w=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[w>>2]=d+h;x=(c[46417]|0)+h|0;v=j+8|0;v=(v&7|0)==0?0:0-v&7;w=j+v|0;v=x-v|0;c[46420]=w;c[46417]=v;c[w+4>>2]=v|1;c[j+x+4>>2]=40;c[46421]=c[46536];break}if(g>>>0<(c[46418]|0)>>>0)c[46418]=g;d=g+h|0;b=186104;while(1){if((c[b>>2]|0)==(d|0)){s=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((s|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;n=b+4|0;c[n>>2]=(c[n>>2]|0)+h;n=g+8|0;n=g+((n&7|0)==0?0:0-n&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=n+o|0;i=b-n-o|0;c[n+4>>2]=o|3;g:do if((j|0)==(b|0)){x=(c[46417]|0)+i|0;c[46417]=x;c[46420]=k;c[k+4>>2]=x|1}else{if((c[46419]|0)==(b|0)){x=(c[46416]|0)+i|0;c[46416]=x;c[46419]=k;c[k+4>>2]=x|1;c[k+x>>2]=x;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[46414]=c[46414]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{x=c[b+8>>2]|0;c[x+12>>2]=a;c[a+8>>2]=x}while(0);if(!g)break;d=c[b+28>>2]|0;e=185960+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){x=g+16|0;c[((c[x>>2]|0)==(b|0)?x:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[46415]=c[46415]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=185696+(b<<1<<2)|0;a=c[46414]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=185960+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46415]|0;d=1<>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=k;c[w>>2]=k;c[k+8>>2]=x;c[k+12>>2]=b;c[k+24>>2]=0}while(0);x=n+8|0;l=y;return x|0}b=186104;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(x=a+(c[b+4>>2]|0)|0,x>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=x+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=d-v|0;c[46420]=w;c[46417]=v;c[w+4>>2]=v|1;c[g+d+4>>2]=40;c[46421]=c[46536];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46526];c[b+4>>2]=c[46527];c[b+8>>2]=c[46528];c[b+12>>2]=c[46529];c[46526]=g;c[46527]=h;c[46529]=0;c[46528]=b;b=a+24|0;do{w=b;b=b+4|0;c[b>>2]=7}while((w+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=185696+(b<<1<<2)|0;a=c[46414]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=185960+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[46415]|0;a=1<>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=j;c[w>>2]=j;c[j+8>>2]=x;c[j+12>>2]=b;c[j+24>>2]=0}}else{x=c[46418]|0;if((x|0)==0|g>>>0>>0)c[46418]=g;c[46526]=g;c[46527]=h;c[46529]=0;c[46423]=c[46532];c[46422]=-1;c[46427]=185696;c[46426]=185696;c[46429]=185704;c[46428]=185704;c[46431]=185712;c[46430]=185712;c[46433]=185720;c[46432]=185720;c[46435]=185728;c[46434]=185728;c[46437]=185736;c[46436]=185736;c[46439]=185744;c[46438]=185744;c[46441]=185752;c[46440]=185752;c[46443]=185760;c[46442]=185760;c[46445]=185768;c[46444]=185768;c[46447]=185776;c[46446]=185776;c[46449]=185784;c[46448]=185784;c[46451]=185792;c[46450]=185792;c[46453]=185800;c[46452]=185800;c[46455]=185808;c[46454]=185808;c[46457]=185816;c[46456]=185816;c[46459]=185824;c[46458]=185824;c[46461]=185832;c[46460]=185832;c[46463]=185840;c[46462]=185840;c[46465]=185848;c[46464]=185848;c[46467]=185856;c[46466]=185856;c[46469]=185864;c[46468]=185864;c[46471]=185872;c[46470]=185872;c[46473]=185880;c[46472]=185880;c[46475]=185888;c[46474]=185888;c[46477]=185896;c[46476]=185896;c[46479]=185904;c[46478]=185904;c[46481]=185912;c[46480]=185912;c[46483]=185920;c[46482]=185920;c[46485]=185928;c[46484]=185928;c[46487]=185936;c[46486]=185936;c[46489]=185944;c[46488]=185944;x=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=x-v|0;c[46420]=w;c[46417]=v;c[w+4>>2]=v|1;c[g+x+4>>2]=40;c[46421]=c[46536]}while(0);b=c[46417]|0;if(b>>>0>o>>>0){v=b-o|0;c[46417]=v;x=c[46420]|0;w=x+o|0;c[46420]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}}c[(oT()|0)>>2]=12;x=0;l=y;return x|0}function cT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[46418]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[46419]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46416]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[46414]=c[46414]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=185960+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46415]=c[46415]&~(1<>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[46420]|0)==(j|0)){j=(c[46417]|0)+b|0;c[46417]=j;c[46420]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46419]|0))return;c[46419]=0;c[46416]=0;return}if((c[46419]|0)==(j|0)){j=(c[46416]|0)+b|0;c[46416]=j;c[46419]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[46414]=c[46414]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=185960+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46415]=c[46415]&~(1<>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[46419]|0)){c[46416]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=185696+(a<<1<<2)|0;b=c[46414]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;e=14-(g|h|e)+(j<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=185960+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46415]|0;d=1<>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[46422]|0)+-1|0;c[46422]=j;if(j|0)return;a=186112;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46422]=-1;return}function dT(a,b){a=a|0;b=b|0;var d=0;if(a){d=N(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=bT(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;kX(a|0,0,d|0)|0;return a|0}function eT(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=bT(b)|0;return b|0}if(b>>>0>4294967231){c[(oT()|0)>>2]=12;b=0;return b|0}d=fT(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=bT(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;iX(d|0,a|0,(e>>>0>>0?e:b)|0)|0;cT(a);b=d;return b|0}function fT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[46534]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;gT(k,d);return a|0}if((c[46420]|0)==(i|0)){k=(c[46417]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[46420]=e;c[46417]=d;return a|0}if((c[46419]|0)==(i|0)){e=(c[46416]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[46416]=d;c[46419]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[46414]=c[46414]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=185960+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46415]=c[46415]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;gT(i,k);return a|0}return 0}function gT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[46419]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46416]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[46414]=c[46414]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=185960+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46415]=c[46415]&~(1<>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[46420]|0)==(i|0)){i=(c[46417]|0)+b|0;c[46417]=i;c[46420]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46419]|0))return;c[46419]=0;c[46416]=0;return}if((c[46419]|0)==(i|0)){i=(c[46416]|0)+b|0;c[46416]=i;c[46419]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[46414]=c[46414]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=185960+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46415]=c[46415]&~(1<>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[46419]|0)){c[46416]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=185696+(b<<1<<2)|0;a=c[46414]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;e=14-(d|g|e)+(i<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=185960+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46415]|0;d=1<>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function hT(a,b){a=a|0;b=b|0;if(a>>>0<9){b=bT(b)|0;return b|0}else{b=iT(a,b)|0;return b|0}return 0}function iT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){c[(oT()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=bT(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;gT(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;gT(f,i)}i=b+8|0;return i|0}function jT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{b=iT(b>>>0>16?b:16,d)|0;break}}else b=bT(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function kT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=pT(c[a+60>>2]|0)|0;a=nT(lb(6,d|0)|0)|0;l=b;return a|0}function lT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=o+16|0;g=o;f=o+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=nT(gb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;q=c[f+4>>2]|0;p=g>>>0>q>>>0;f=p?f+8|0:f;b=b+(p<<31>>31)|0;q=g-(p?q:0)|0;c[f>>2]=(c[f>>2]|0)+q;p=f+4|0;c[p>>2]=(c[p>>2]|0)-q;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=nT(gb(146,k|0)|0)|0;if((e|0)==(g|0)){n=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else n=3;while(0);if((n|0)==3){q=c[a+44>>2]|0;c[a+16>>2]=q+(c[a+48>>2]|0);c[i>>2]=q;c[j>>2]=q}l=o;return d|0}function mT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((nT(fb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function nT(a){a=a|0;if(a>>>0>4294963200){c[(oT()|0)>>2]=0-a;a=-1}return a|0}function oT(){return 186216}function pT(a){a=a|0;return a|0}function qT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,kb(54,f|0)|0):0)a[b+75>>0]=-1;f=lT(b,d,e)|0;l=g;return f|0}function rT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;sT(h,0);d=tT(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function sT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function tT(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(oT()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0}while((vT(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=uT(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0;if((d[175007+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){sT(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[175007+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;sT(b,0);c[(oT()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=uT(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=$W(i|0,m|0,10,0)|0;k=y;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=VW(f|0,k|0,e|0,l|0)|0;m=y;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=uT(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[175263+((o*23|0)>>>5&7)>>0]|0;f=a[175007+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=uT(b)|0;f=a[175007+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=dX(-1,-1,n|0)|0;m=y;if(o>>>0<=k>>>0|(m>>>0>>0|(m|0)==(e|0)&l>>>0>>0)){f=o;n=76;break}while(1){i=eX(i|0,e|0,n|0)|0;e=y;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=uT(b)|0;f=a[175007+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[175007+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(N(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=uT(b)|0;e=a[175007+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=bX(-1,-1,o|0,0)|0;n=y;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=$W(i|0,e|0,o|0,0)|0;l=y;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=VW(k|0,l|0,f|0,0)|0;e=y;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=uT(b)|0;f=a[175007+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[175007+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0}while(f>>>0>(d[175007+i>>0]|0)>>>0);c[(oT()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(oT()|0)>>2]=34;g=VW(g|0,h|0,-1,-1)|0;h=y;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(oT()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=WW(i^j|0,e^g|0,j|0,g|0)|0;h=y}while(0);y=h;return g|0}function uT(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=wT(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function vT(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function wT(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;if((xT(a)|0)==0?(Md[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function xT(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Md[c[b+36>>2]&15](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function yT(a,b,c){a=a|0;b=b|0;c=c|0;c=rT(a,b,c,0,-2147483648)|0;return c|0}function zT(a,b,c){a=a|0;b=b|0;c=c|0;c=rT(a,b,c,-1,0)|0;return c|0}function AT(a,b,c){a=a|0;b=b|0;c=c|0;c=rT(a,b,c,-2147483648,0)|0;return c|0}function BT(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;o=r+16|0;p=r+8|0;q=r;h[j>>3]=a;u=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0>>0|(g|0)==(f|0)&u>>>0>>0;t=i?e:u;s=i?f:g;e=i?u:e;f=i?g:f;g=dX(t|0,s|0,52)|0;i=dX(e|0,f|0,52)|0;c[j>>2]=t;c[j+4>>2]=s;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{u=(i|0)<573;d=u?1.90109156629516e-211:1.0;b=u?a*5260135901548373507240989.0e186:a;a=u?k*5260135901548373507240989.0e186:k}CT(n,o,b);CT(p,q,a);a=d*+B(+(+h[q>>3]+ +h[o>>3]+ +h[p>>3]+ +h[n>>3]))}}else a=k;while(0);l=r;return +a}function CT(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function DT(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function ET(a){a=+a;var b=0;h[j>>3]=a;b=c[j+4>>2]&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+GT(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+K(+a);a=(a+1.0/a)*.5;break}else{a=+HT(a);break}while(0);return +a}function FT(a){a=+a;var b=0.0,d=0,e=0.0;h[j>>3]=a;d=c[j+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=d;b=+h[j>>3];do if(d>>>0<1082535490){b=+GT(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+HT(b);while(0);return +a}function GT(a){a=+a;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0,k=0,l=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;d=dX(c[j>>2]|0,d|0,63)|0;do if(b>>>0>1078159481){i=IT(a)|0;b=y&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&i>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{g=0.0;i=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){g=e-f;a=g;g=e-g-f;i=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!i){a=a-(a*f-e);break}f=a*(f-g)-g-e;switch(i|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=eX(i+1023|0,0,52)|0;k=y;c[j>>2]=d;c[j+4>>2]=k;g=+h[j>>3];if(i>>>0>56){a=a-f+1.0;a=((i|0)==1024?a*2.0*8988465674311579538646525.0e283:a*g)+-1.0;break a}b=eX(1023-i|0,0,52)|0;d=y;if((i|0)<20){c[j>>2]=b;c[j+4>>2]=d;e=1.0-+h[j>>3];a=a-f}else{c[j>>2]=b;c[j+4>>2]=d;e=a-(f+ +h[j>>3]);a=1.0}a=(e+a)*g;break a}}}while(0);return +a}function HT(a){a=+a;return +(+K(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function IT(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function JT(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function KT(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function LT(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function MT(a){a=a|0;return (a+-48|0)>>>0<10|0}function NT(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=o+124|0;n=o;h=n;i=108328;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(oT()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[n+48>>2]=k;g=n+20|0;c[g>>2]=b;c[n+44>>2]=b;d=b+k|0;b=n+16|0;c[b>>2]=d;c[n+28>>2]=d;d=OT(n,e,f)|0;if(k){n=c[g>>2]|0;a[n+(((n|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=o;return d|0}function OT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+224|0;if((l|0)>=(m|0))W(224);o=t+120|0;p=t+80|0;r=t;s=t+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((PT(0,d,o,r,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)q=QT(b)|0;else q=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=s;i=b+28|0;c[i>>2]=s;j=b+20|0;c[j>>2]=s;c[f>>2]=80;k=b+16|0;c[k>>2]=s+80;e=PT(b,d,o,r,p)|0;if(h){Md[c[b+36>>2]&15](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=PT(b,d,o,r,p)|0;f=c[b>>2]|0;c[b>>2]=f|n;if(q|0)RT(b);e=(f&32|0)==0?e:-1}l=t;return e|0}function PT(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+64|0;if((l|0)>=(m|0))W(64);E=J+16|0;F=J;B=J+24|0;H=J+8|0;I=J+20|0;c[E>>2]=e;x=(d|0)!=0;z=B+40|0;A=z;B=B+39|0;C=H+4|0;j=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(oT()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);t=c[E>>2]|0;j=a[t>>0]|0;if(!(j<<24>>24)){w=94;break a}k=t;b:while(1){switch(j<<24>>24){case 37:{w=10;break b}case 0:{j=k;break b}default:{}}v=k+1|0;c[E>>2]=v;j=a[v>>0]|0;k=v}c:do if((w|0)==10){w=0;j=k;do{if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[E>>2]=k}while((a[k>>0]|0)==37)}while(0);j=j-t|0;if(x)ST(d,t,j)}while((j|0)!=0);v=(MT(a[(c[E>>2]|0)+1>>0]|0)|0)==0;k=c[E>>2]|0;if(!v?(a[k+2>>0]|0)==36:0){r=(a[k+1>>0]|0)+-48|0;p=1;j=3}else{r=-1;p=n;j=1}j=k+j|0;c[E>>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0;if(n>>>0>31|(1<>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0}while(!(n>>>0>31|(1<>24==42){if((MT(a[j+1>>0]|0)|0)!=0?(G=c[E>>2]|0,(a[G+2>>0]|0)==36):0){j=G+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;n=1;k=G+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);j=c[v>>2]|0;c[f>>2]=v+4}else j=0;n=0;k=(c[E>>2]|0)+1|0}c[E>>2]=k;v=(j|0)<0;u=v?0-j|0:j;o=v?o|8192:o;v=n}else{j=TT(E)|0;if((j|0)<0){e=-1;break}u=j;v=p;k=c[E>>2]|0}do if((a[k>>0]|0)==46){j=k+1|0;if((a[j>>0]|0)!=42){c[E>>2]=j;j=TT(E)|0;k=c[E>>2]|0;break}if(MT(a[k+2>>0]|0)|0?(D=c[E>>2]|0,(a[D+3>>0]|0)==36):0){j=D+2|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=D+4|0;c[E>>2]=k;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);j=c[s>>2]|0;c[f>>2]=s+4}else j=0;k=(c[E>>2]|0)+2|0;c[E>>2]=k}else j=-1;while(0);s=0;while(1){if(((a[k>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=k;k=k+1|0;c[E>>2]=k;n=a[(a[n>>0]|0)+-65+(175272+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(r|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(r<<2)>>2]=p;q=g+(r<<3)|0;r=c[q+4>>2]|0;w=F;c[w>>2]=c[q>>2];c[w+4>>2]=r;w=54;break}if(!x){e=0;break a}UT(F,p,f);k=c[E>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else j=0}d:do if((w|0)==55){w=0;k=a[k+-1>>0]|0;k=(s|0)!=0&(k&15|0)==3?k&-33:k;n=o&-65537;r=(o&8192|0)==0?o:n;e:do switch(k|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[F>>2]>>2]=e;j=0;break d}case 1:{c[c[F>>2]>>2]=e;j=0;break d}case 2:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}case 3:{b[c[F>>2]>>1]=e;j=0;break d}case 4:{a[c[F>>2]>>0]=e;j=0;break d}case 6:{c[c[F>>2]>>2]=e;j=0;break d}case 7:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}default:{j=0;break d}}case 112:{k=120;j=j>>>0>8?j:8;n=r|8;w=67;break}case 88:case 120:{n=r;w=67;break}case 111:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;q=WT(k,n,z)|0;w=A-q|0;o=0;p=175736;j=(r&8|0)==0|(j|0)>(w|0)?j:w+1|0;w=73;break}case 105:case 100:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){k=WW(0,0,k|0,n|0)|0;n=y;o=F;c[o>>2]=k;c[o+4>>2]=n;o=1;p=175736;w=72;break e}else{o=(r&2049|0)!=0&1;p=(r&2048|0)==0?((r&1|0)==0?175736:175738):175737;w=72;break e}}case 117:{n=F;o=0;p=175736;k=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[B>>0]=c[F>>2];s=B;o=0;p=175736;q=1;j=A;break}case 109:{k=YT(c[(oT()|0)>>2]|0)|0;w=77;break}case 115:{k=c[F>>2]|0;k=(k|0)==0?175746:k;w=77;break}case 67:{c[H>>2]=c[F>>2];c[C>>2]=0;c[F>>2]=H;p=-1;w=81;break}case 83:{if(!j){_T(d,32,u,0,r);j=0;w=91}else{p=j;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=aU(d,+h[F>>3],u,j,r,k)|0;break d}default:{s=t;o=0;p=175736;q=j;n=r;j=A}}while(0);f:do if((w|0)==67){t=F;s=c[t>>2]|0;t=c[t+4>>2]|0;q=VT(s,t,z,k&32)|0;p=(n&8|0)==0|(s|0)==0&(t|0)==0;o=p?0:2;p=p?175736:175736+(k>>>4)|0;r=n;k=s;n=t;w=73}else if((w|0)==72){q=XT(k,n,z)|0;w=73}else if((w|0)==77){w=0;t=ZT(k,0,j)|0;r=(t|0)==0;s=k;o=0;p=175736;q=r?j:t-k|0;j=r?k+j|0:t}else if((w|0)==81){w=0;o=c[F>>2]|0;j=0;while(1){k=c[o>>2]|0;if(!k)break;k=$T(I,k)|0;n=(k|0)<0;if(n|k>>>0>(p-j|0)>>>0){w=85;break}j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((w|0)==85){w=0;if(n){e=-1;break a}}_T(d,32,u,j,r);if(!j){j=0;w=91}else{n=c[F>>2]|0;o=0;while(1){k=c[n>>2]|0;if(!k){w=91;break f}k=$T(I,k)|0;o=k+o|0;if((o|0)>(j|0)){w=91;break f}ST(d,I,k);if(o>>>0>=j>>>0){w=91;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;n=(k|0)!=0|(n|0)!=0;t=(j|0)!=0|n;n=A-q+((n^1)&1)|0;s=t?q:z;q=t?((j|0)>(n|0)?j:n):0;n=(j|0)>-1?r&-65537:r;j=A}else if((w|0)==91){w=0;_T(d,32,u,j,r^8192);j=(u|0)>(j|0)?u:j;break}r=j-s|0;q=(q|0)<(r|0)?r:q;t=q+o|0;j=(u|0)<(t|0)?t:u;_T(d,32,j,t,n);ST(d,p,o);_T(d,48,j,t,n^65536);_T(d,48,q,r,0);ST(d,s,r);_T(d,32,j,t,n^8192)}while(0);n=v}g:do if((w|0)==94)if(!d)if(!n)e=0;else{e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;UT(g+(e<<3)|0,j,f);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);l=J;return e|0}function QT(a){a=a|0;return 0}function RT(a){a=a|0;return}function ST(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))nU(b,d,a)|0;return}function TT(b){b=b|0;var d=0,e=0;if(!(MT(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((MT(a[e>>0]|0)|0)!=0)}return d|0}function UT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function VT(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[175784+(b&15)>>0]|0|f;b=dX(b|0,c|0,4)|0;c=y}while(!((b|0)==0&(c|0)==0));return e|0}function WT(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=dX(b|0,c|0,3)|0;c=y}while(!((b|0)==0&(c|0)==0));return d|0}function XT(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=bX(b|0,c|0,10,0)|0;f=c;c=y;g=$W(b|0,c|0,10,0)|0;g=WW(e|0,f|0,g|0,y|0)|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function YT(a){a=a|0;return iU(a,c[(hU()|0)+188>>2]|0)|0}function ZT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=N(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function _T(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;if((l|0)>=(m|0))W(256);f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;kX(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{ST(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}ST(a,f,e)}l=g;return}function $T(a,b){a=a|0;b=b|0;if(!a)a=0;else a=eU(a,b,0)|0;return a|0}function aU(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+560|0;if((l|0)>=(m|0))W(560);n=I+8|0;w=I;H=I+524|0;G=H;o=I+512|0;c[w>>2]=0;F=o+12|0;bU(e)|0;j=y;if((j|0)<0){e=-e;bU(e)|0;E=1;D=175753;j=y}else{E=(h&2049|0)!=0&1;D=(h&2048|0)==0?((h&1|0)==0?175754:175759):175756}do if(0==0&(j&2146435072|0)==2146435072){H=(i&32|0)!=0;j=E+3|0;_T(b,32,f,j,h&-65537);ST(b,D,E);ST(b,e!=e|0.0!=0.0?(H?177703:175780):H?175772:175776,3);_T(b,32,f,j,h^8192)}else{s=+cU(e,w)*2.0;j=s!=0.0;if(j)c[w>>2]=(c[w>>2]|0)+-1;v=i|32;if((v|0)==97){q=i&32;t=(q|0)==0?D:D+9|0;r=E|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[t>>0]|0)==45){e=-(e+(-s-e));break}else{e=s+e-e;break}}else e=s;while(0);k=c[w>>2]|0;j=(k|0)<0?0-k|0:k;j=XT(j,((j|0)<0)<<31>>31,F)|0;if((j|0)==(F|0)){j=o+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;p=j+-2|0;a[p>>0]=i+15;k=(g|0)<1;n=(h&8|0)==0;o=H;do{E=~~e;j=o+1|0;a[o>>0]=q|d[175784+E>>0];e=(e-+(E|0))*16.0;if((j-G|0)==1?!(n&(k&e==0.0)):0){a[j>>0]=46;o=o+2|0}else o=j}while(e!=0.0);if((g|0)!=0?(-2-G+o|0)<(g|0):0){k=F;n=p;j=g+2+k-n|0}else{k=F;n=p;j=k-G-n+o|0}F=j+r|0;_T(b,32,f,F,h);ST(b,t,r);_T(b,48,f,F,h^65536);G=o-G|0;ST(b,H,G);H=k-n|0;_T(b,48,j-(G+H)|0,0,0);ST(b,p,H);_T(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[w>>2]|0)+-28|0;c[w>>2]=j;e=s*268435456.0}else{e=s;j=c[w>>2]|0}C=(j|0)<0?n:n+288|0;n=C;do{A=~~e>>>0;c[n>>2]=A;n=n+4|0;e=(e-+(A>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){q=C;while(1){p=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=q>>>0){o=0;do{x=eX(c[j>>2]|0,0,p|0)|0;x=VW(x|0,y|0,o|0,0)|0;z=y;o=bX(x|0,z|0,1e9,0)|0;A=$W(o|0,y|0,1e9,0)|0;A=WW(x|0,z|0,A|0,y|0)|0;c[j>>2]=A;j=j+-4|0}while(j>>>0>=q>>>0);if(o){A=q+-4|0;c[A>>2]=o;o=A}else o=q}else o=q;a:do if(n>>>0>o>>>0){j=n;while(1){n=j+-4|0;if(c[n>>2]|0){n=j;break a}if(n>>>0>o>>>0)j=n;else break}}while(0);j=(c[w>>2]|0)-p|0;c[w>>2]=j;if((j|0)>0)q=o;else break}}else o=C;if((j|0)<0){g=((k+25|0)/9|0)+1|0;u=(v|0)==102;do{t=0-j|0;t=(t|0)<9?t:9;if(o>>>0>>0){p=(1<>>t;r=0;j=o;do{A=c[j>>2]|0;c[j>>2]=(A>>>t)+r;r=N(A&p,q)|0;j=j+4|0}while(j>>>0>>0);o=(c[o>>2]|0)==0?o+4|0:o;if(r){c[n>>2]=r;n=n+4|0}}else o=(c[o>>2]|0)==0?o+4|0:o;j=u?C:o;n=(n-j>>2|0)>(g|0)?j+(g<<2)|0:n;j=(c[w>>2]|0)+t|0;c[w>>2]=j}while((j|0)<0);u=o}else u=o;A=C;if(u>>>0>>0){j=(A-u>>2)*9|0;p=c[u>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else j=0;x=(v|0)==103;z=(k|0)!=0;o=k-((v|0)==102?0:j)+((z&x)<<31>>31)|0;if((o|0)<(((n-A>>2)*9|0)+-9|0)){w=o+9216|0;o=(w|0)/9|0;g=C+4+(o+-1024<<2)|0;o=w-(o*9|0)|0;if((o|0)<8){p=10;while(1){p=p*10|0;if((o|0)<7)o=o+1|0;else break}}else p=10;r=c[g>>2]|0;o=(r>>>0)/(p>>>0)|0;t=r-(N(o,p)|0)|0;q=(g+4|0)==(n|0);if(!(q&(t|0)==0)){s=(o&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;e=t>>>0>>0?.5:q&(t|0)==(w|0)?1.0:1.5;if(E){w=(a[D>>0]|0)==45;e=w?-e:e;s=w?-s:s}o=r-t|0;c[g>>2]=o;if(s+e!=s){w=o+p|0;c[g>>2]=w;if(w>>>0>999999999){p=g;j=u;while(1){o=p+-4|0;c[p>>2]=0;if(o>>>0>>0){j=j+-4|0;c[j>>2]=0}w=(c[o>>2]|0)+1|0;c[o>>2]=w;if(w>>>0>999999999)p=o;else{p=j;break}}}else{o=g;p=u}j=(A-p>>2)*9|0;r=c[p>>2]|0;if(r>>>0>=10){q=10;do{q=q*10|0;j=j+1|0}while(r>>>0>=q>>>0)}}else{o=g;p=u}}else{o=g;p=u}w=o+4|0;n=n>>>0>w>>>0?w:n}else p=u;g=0-j|0;b:do if(n>>>0>p>>>0)while(1){o=n+-4|0;if(c[o>>2]|0){w=n;v=1;break b}if(o>>>0>p>>>0)n=o;else{w=o;v=0;break}}else{w=n;v=0}while(0);do if(x){k=k+((z^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){q=i+-1|0;k=k+-1-j|0}else{q=i+-2|0;k=k+-1|0}if(!(h&8)){if(v?(B=c[w+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){o=0;n=10;do{n=n*10|0;o=o+1|0}while(!((B>>>0)%(n>>>0)|0|0))}else o=0;else o=9;n=((w-A>>2)*9|0)+-9|0;if((q|32|0)==102){i=n-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=n+j-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else q=i;while(0);u=(k|0)!=0;r=u?1:h>>>3&1;t=(q|32|0)==102;if(t){x=0;j=(j|0)>0?j:0}else{n=(j|0)<0?g:j;n=XT(n,((n|0)<0)<<31>>31,F)|0;o=F;if((o-n|0)<2)do{n=n+-1|0;a[n>>0]=48}while((o-n|0)<2);a[n+-1>>0]=(j>>31&2)+43;j=n+-2|0;a[j>>0]=q;x=j;j=o-j|0}j=E+1+k+r+j|0;_T(b,32,f,j,h);ST(b,D,E);_T(b,48,f,j,h^65536);if(t){r=p>>>0>C>>>0?C:p;t=H+9|0;p=t;q=H+8|0;o=r;do{n=XT(c[o>>2]|0,0,t)|0;if((o|0)==(r|0)){if((n|0)==(t|0)){a[q>>0]=48;n=q}}else if(n>>>0>H>>>0){kX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}ST(b,n,p-n|0);o=o+4|0}while(o>>>0<=C>>>0);if(!((h&8|0)==0&(u^1)))ST(b,175800,1);if(o>>>0>>0&(k|0)>0)while(1){n=XT(c[o>>2]|0,0,t)|0;if(n>>>0>H>>>0){kX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}ST(b,n,(k|0)<9?k:9);o=o+4|0;n=k+-9|0;if(!(o>>>0>>0&(k|0)>9)){k=n;break}else k=n}_T(b,48,k+9|0,9,0)}else{w=v?w:p+4|0;if(p>>>0>>0&(k|0)>-1){g=H+9|0;u=(h&8|0)==0;v=g;r=0-G|0;t=H+8|0;q=p;do{n=XT(c[q>>2]|0,0,g)|0;if((n|0)==(g|0)){a[t>>0]=48;n=t}do if((q|0)==(p|0)){o=n+1|0;ST(b,n,1);if(u&(k|0)<1){n=o;break}ST(b,175800,1);n=o}else{if(n>>>0<=H>>>0)break;kX(H|0,48,n+r|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}while(0);G=v-n|0;ST(b,n,(k|0)>(G|0)?G:k);k=k-G|0;q=q+4|0}while(q>>>0>>0&(k|0)>-1)}_T(b,48,k+18|0,18,0);ST(b,x,F-x|0)}_T(b,32,f,j,h^8192)}while(0);l=I;return ((j|0)<(f|0)?f:j)|0}function bU(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function cU(a,b){a=+a;b=b|0;return +(+dU(a,b))}function dU(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=dX(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+dU(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function eU(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(fU()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(oT()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(oT()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function fU(){return gU()|0}function gU(){return 108452}function hU(){return gU()|0}function iU(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[175802+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=175890;else{b=f;g=5}if((g|0)==5){f=175890;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return jU(f,c[e+20>>2]|0)|0}function jU(a,b){a=a|0;b=b|0;return kU(a,b)|0}function kU(a,b){a=a|0;b=b|0;if(!b)b=0;else b=lU(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function lU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=mU(c[b+8>>2]|0,o)|0;f=mU(c[b+12>>2]|0,o)|0;g=mU(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=mU(c[b+(g<<2)>>2]|0,o)|0;g=mU(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=JT(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}l=f?l:k;h=f?j:h-j|0}f=i+m|0;g=mU(c[b+(f<<2)>>2]|0,o)|0;f=mU(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function mU(a,b){a=a|0;b=b|0;var c=0;c=gX(a|0)|0;return ((b|0)==0?a:c)|0}function nU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(oU(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Md[c[e+36>>2]&15](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=Md[c[e+36>>2]&15](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);iX(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function oU(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function pU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;iX(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function qU(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=pT(a)|0;a=lb(6,d|0)|0;a=nT((a|0)==-4?0:a)|0;l=b;return a|0}function rU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+192|0;if((l|0)>=(m|0))W(192);i=t+152|0;h=t+136|0;s=t+120|0;r=t+104|0;q=t+96|0;n=t+80|0;k=t+64|0;f=t+48|0;o=t+32|0;g=t+16|0;e=t;u=t+176|0;j=t+168|0;c[u>>2]=d;d=(c[u>>2]|0)+(4-1)&~(4-1);p=c[d>>2]|0;c[u>>2]=d+4;p=(b|0)==4?p|32768:p;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=p;d=nT(hb(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=hb(221,g|0)|0;switch(d|0){case -22:{c[o>>2]=a;c[o+4>>2]=9;c[o+8>>2]=p;d=hb(221,o|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=nT(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=p;d=hb(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;hb(221,k|0)|0}d=nT(d)|0;break a}c[n>>2]=a;c[n+4>>2]=1030;c[n+8>>2]=0;d=hb(221,n|0)|0;if((d|0)==-22){c[r>>2]=a;c[r+4>>2]=0;c[r+8>>2]=p;d=hb(221,r|0)|0;if((d|0)>-1){c[s>>2]=d;c[s+4>>2]=2;c[s+8>>2]=1;hb(221,s|0)|0}d=nT(d)|0;break a}else{if((d|0)>-1){c[q>>2]=d;lb(6,q|0)|0}d=nT(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=p;d=nT(hb(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=p;d=nT(hb(221,i|0)|0)|0}}while(0);l=t;return d|0}function sU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=jb(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;hb(221,g|0)|0}i=nT(e)|0;l=h;return i|0}function tU(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=uT(b)|0}while((vT(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=uT(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[177694+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=uT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[177703+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=uT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=uT(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=uT(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(oT()|0)>>2]=22;sT(b,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=uT(b)|0;if((e|32|0)==120){g=+uU(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+vU(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(oT()|0)>>2]=22;sT(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function uU(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=a+4|0;i=c[z>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=uT(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=uT(a)|0;j=1}if((w|0)==10){i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=uT(a)|0;if((i|0)==48){l=0;j=0;do{i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=uT(a)|0;l=VW(l|0,j|0,-1,-1)|0;j=y}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=VW(m|0,u|0,1,0)|0;q=i;r=1;p=y}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=uT(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[z>>2]=(c[z>>2]|0)+-1;if(g){if(!i?(c[z>>2]=(c[z>>2]|0)+-1,!((s|0)==0|i)):0)c[z>>2]=(c[z>>2]|0)+-1}else sT(a,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;w=m;m=VW(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&w>>>0<7)){m=j;break}else l=y}}else m=v;if((i|32|0)==112){j=wU(a,g)|0;i=y;if((j|0)==0&(i|0)==-2147483648){if(!g){sT(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}l=eX(p|0,o|0,2)|0;l=VW(l|0,y|0,-32,-1)|0;l=VW(l|0,y|0,j|0,i|0)|0;i=y;if(!m){h=+(f|0)*0.0;break}z=0-e|0;g=((z|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>z>>>0){c[(oT()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=e+-106|0;g=((z|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(oT()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(h>=.5);j=j<<1|(z^1)&1;h=h+(z?h:h+-1.0);l=VW(l|0,i|0,-1,-1)|0;i=y}while((j|0)>-1);n=h;m=j}else n=h;z=((b|0)<0)<<31>>31;e=WW(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=VW(e|0,y|0,l|0,i|0)|0;e=y;if((e|0)<(z|0)|(e|0)==(z|0)&i>>>0>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+yU(+xU(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(oT()|0)>>2]=34;h=+AU(h,l)}while(0);return +h}function vU(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;if((l|0)>=(m|0))W(512);G=J;H=f+e|0;I=0-H|0;F=a+4|0;E=a+100|0;j=0;a:while(1){switch(b|0){case 46:{C=7;break a}case 48:break;default:{w=0;r=j;j=0;q=0;break a}}b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=uT(a)|0;j=1}if((C|0)==7){b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=uT(a)|0;if((b|0)==48){j=0;b=0;while(1){j=VW(j|0,b|0,-1,-1)|0;q=y;b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=uT(a)|0;if((b|0)==48)b=q;else{w=1;r=1;break}}}else{w=1;r=j;j=0;q=0}}c[G>>2]=0;p=b+-48|0;o=(b|0)==46;b:do if(o|p>>>0<10){D=G+496|0;x=0;n=0;u=0;z=w;B=r;C=p;r=0;p=0;c:while(1){do if(o)if(!z){z=1;j=r;q=p}else break c;else{r=VW(r|0,p|0,1,0)|0;p=y;w=(b|0)!=48;if((n|0)>=125){if(!w)break;c[D>>2]=c[D>>2]|1;break}o=G+(n<<2)|0;if(!x)b=C;else b=b+-48+((c[o>>2]|0)*10|0)|0;c[o>>2]=b;x=x+1|0;B=(x|0)==9;x=B?0:x;n=n+(B&1)|0;u=w?r:u;B=1}while(0);b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=uT(a)|0;C=b+-48|0;o=(b|0)==46;if(!(o|C>>>0<10)){w=z;o=B;C=31;break b}}b=x;o=(B|0)!=0;C=39}else{x=0;n=0;u=0;o=r;r=0;p=0;C=31}while(0);do if((C|0)==31){D=(w|0)==0;j=D?r:j;q=D?p:q;o=(o|0)!=0;if(!(o&(b|32|0)==101))if((b|0)>-1){b=x;C=39;break}else{b=x;C=41;break}o=wU(a,h)|0;b=y;if((o|0)==0&(b|0)==-2147483648){if(!h){sT(a,0);i=0.0;break}if(!(c[E>>2]|0)){o=0;b=0}else{c[F>>2]=(c[F>>2]|0)+-1;o=0;b=0}}j=VW(o|0,b|0,j|0,q|0)|0;b=x;q=y;C=43}while(0);if((C|0)==39)if(c[E>>2]|0){c[F>>2]=(c[F>>2]|0)+-1;if(o)C=43;else C=42}else C=41;if((C|0)==41)if(o)C=43;else C=42;do if((C|0)==42){c[(oT()|0)>>2]=22;sT(a,0);i=0.0}else if((C|0)==43){o=c[G>>2]|0;if(!o){i=+(g|0)*0.0;break}if(((p|0)<0|(p|0)==0&r>>>0<10)&((j|0)==(r|0)&(q|0)==(p|0))?(e|0)>30|(o>>>e|0)==0:0){i=+(g|0)*+(o>>>0);break}a=(f|0)/-2|0;F=((a|0)<0)<<31>>31;if((q|0)>(F|0)|(q|0)==(F|0)&j>>>0>a>>>0){c[(oT()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;F=((a|0)<0)<<31>>31;if((q|0)<(F|0)|(q|0)==(F|0)&j>>>0>>0){c[(oT()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){p=G+(n<<2)|0;o=c[p>>2]|0;while(1){o=o*10|0;if((b|0)>=8)break;else b=b+1|0}c[p>>2]=o}n=n+1|0}if((u|0)<9?(u|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[108696+(8-j<<2)>>2]|0);break}a=e+27+(N(j,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[108696+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)o=0;else{u=(j|0)>-1?b:b+9|0;q=c[108696+(8-u<<2)>>2]|0;if(n){r=1e9/(q|0)|0;p=0;o=0;b=0;do{E=G+(b<<2)|0;F=c[E>>2]|0;a=(F>>>0)/(q>>>0)|0;F=F-(N(a,q)|0)|0;a=a+p|0;c[E>>2]=a;p=N(r,F)|0;a=(b|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(n|0));if(!p)b=n;else{c[G+(n<<2)>>2]=p;b=n+1|0}}else{o=0;b=0}n=b;j=9-u+j|0}b=0;d:while(1){w=(j|0)<18;x=(j|0)==18;z=G+(o<<2)|0;while(1){if(!w){if(!x)break d;if((c[z>>2]|0)>>>0>=9007199){j=18;break d}}p=0;B=n;n=n+127|0;while(1){r=n&127;q=G+(r<<2)|0;n=eX(c[q>>2]|0,0,29)|0;n=VW(n|0,y|0,p|0,0)|0;p=y;if(p>>>0>0|(p|0)==0&n>>>0>1e9){u=bX(n|0,p|0,1e9,0)|0;a=$W(u|0,y|0,1e9,0)|0;n=WW(n|0,p|0,a|0,y|0)|0}else u=0;c[q>>2]=n;a=(r|0)==(o|0);q=(r|0)!=(B+127&127|0)|a?B:(n|0)==0?r:B;if(a)break;else{p=u;B=q;n=r+-1|0}}b=b+-29|0;if(!u)n=B;else break}o=o+127&127;n=q+127&127;p=G+((q+126&127)<<2)|0;if((o|0)==(q|0))c[p>>2]=c[p>>2]|c[G+(n<<2)>>2];else n=B;c[G+(o<<2)>>2]=u;j=j+9|0}e:while(1){x=n+1&127;z=G+((n+127&127)<<2)|0;while(1){r=(j|0)==18;w=(j|0)>27?9:1;B=o;while(1){q=0;while(1){o=q+B&127;if((o|0)==(n|0)){C=92;break}o=c[G+(o<<2)>>2]|0;p=c[108728+(q<<2)>>2]|0;if(o>>>0

>>0){C=92;break}if(o>>>0>p>>>0)break;if((q+1|0)>>>0<2)q=1;else{C=92;break}}if((C|0)==92?(C=0,r):0)break e;b=w+b|0;if((B|0)==(n|0))B=n;else break}r=(1<>>w;q=0;o=B;p=B;do{E=G+(p<<2)|0;F=c[E>>2]|0;a=(F>>>w)+q|0;c[E>>2]=a;q=N(F&r,u)|0;a=(p|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;p=p+1&127}while((p|0)!=(n|0));if(q|0){if((x|0)!=(o|0))break;c[z>>2]=c[z>>2]|1}}c[G+(n<<2)>>2]=q;n=x}i=0.0;j=n;o=0;do{p=o+B&127;n=j+1&127;if((p|0)==(j|0)){c[G+(n+-1<<2)>>2]=0;j=n}i=i*1.0e9+ +((c[G+(p<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);v=+(g|0);k=i*v;p=b+53|0;q=p-f|0;r=(q|0)<(e|0);o=r?((q|0)>0?q:0):e;if((o|0)<53){K=+yU(+xU(1.0,105-o|0),k);s=+zU(k,+xU(1.0,53-o|0));t=K;i=s;s=K+(k-s)}else{t=0.0;i=0.0;s=k}n=B+2&127;if((n|0)!=(j|0)){n=c[G+(n<<2)>>2]|0;do if(n>>>0>=5e8){if((n|0)!=5e8){i=v*.75+i;break}if((B+3&127|0)==(j|0)){i=v*.5+i;break}else{i=v*.75+i;break}}else{if((n|0)==0?(B+3&127|0)==(j|0):0)break;i=v*.25+i}while(0);if((53-o|0)>1?!(+zU(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=s+k-t;do if((p&2147483647|0)>(-2-H|0)){H=!(+A(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(k!=0.0&(r&((o|0)!=(q|0)|H))):0)break;c[(oT()|0)>>2]=34}while(0);i=+AU(i,b)}while(0);l=J;return +i}function wU(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=uT(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=uT(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=uT(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=$W(f|0,h|0,10,0)|0;b=y;e=VW(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=VW(e|0,y|0,l|0,b|0)|0;h=y;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=uT(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=uT(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;l=(g|0)==0;j=WW(0,0,f|0,e|0)|0;f=l?f:j;e=l?e:y}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}y=e;return f|0}function xU(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=eX(b+1023|0,0,52)|0;e=y;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function yU(a,b){a=+a;b=+b;return +(+DT(a,b))}function zU(a,b){a=+a;b=+b;return +(+BU(a,b))}function AU(a,b){a=+a;b=b|0;return +(+xU(a,b))}function BU(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=dX(i|0,l|0,52)|0;e=e&2047;m=dX(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=eX(n|0,o|0,1)|0;k=y;a:do if(!((g|0)==0&(k|0)==0)?(f=CU(b)|0,d=y&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=eX(i|0,l|0,1)|0;f=y;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=eX(i|0,l|0,12)|0;f=y;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=eX(d|0,f|0,1)|0;f=y}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=eX(i|0,l|0,1-e|0)|0;g=y}else g=l&1048575|1048576;if(!m){f=eX(n|0,o|0,12)|0;k=y;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=eX(f|0,k|0,1)|0;k=y}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=eX(n|0,o|0,1-d|0)|0;m=d;l=y}else l=o&1048575|1048576;f=WW(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=eX(f|0,d|0,1)|0;g=y;e=e+-1|0;f=WW(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=eX(f|0,d|0,1)|0;d=y;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=VW(f|0,d|0,0,-1048576)|0;d=y;e=eX(e|0,0,52)|0;d=d|y;e=o|e}else{e=dX(f|0,d|0,1-e|0)|0;d=y}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function CU(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function DU(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function EU(b,c){b=b|0;c=c|0;b=FU(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function FU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(DU(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=N(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function GU(a,b){a=a|0;b=b|0;var e=0;a=HU(a)|0;if(((a|0)!=-1?(e=HU(b)|0,(e|0)!=-1):0)?(d[177707+a>>0]|0)<=207:0)a=e<<16|a;else{c[(oT()|0)>>2]=22;a=-1}return a|0}function HU(b){b=b|0;var c=0,d=0,e=0;d=(a[b>>0]|0)==0?177707:b;b=177707;while(1){if(!(IU(d,b)|0)){e=3;break}b=b+((DU(b)|0)+1)|0;c=a[b>>0]|0;if(!(c<<24>>24)){c=a[b+1>>0]|0;if((c&255)>128)c=2;else c=(((128-(c&255)|0)>>>2)*5|0)+2|0;c=b+c|0;b=c;c=a[c>>0]|0}if(!(c<<24>>24)){b=-1;break}}if((e|0)==3){if(a[b>>0]|0)do b=b+((DU(b)|0)+1)|0;while((a[b>>0]|0)!=0);b=b+1-177707|0}return b|0}function IU(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;a:do if(!(d<<24>>24)){d=0;g=9}else while(1){f=a[c>>0]|0;if(!(f<<24>>24)){g=9;break a}e=d;d=d&255;while(1){if(!((d+-48|0)>>>0>10&((d|32)+-97|0)>>>0>26)){d=e;break}b=b+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;break}else{e=d;d=d&255}}if((d|32)<<24>>24!=f<<24>>24){d=1;break a}b=b+1|0;c=c+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;g=9;break}}while(0);if((g|0)==9)d=d<<24>>24!=(a[c>>0]|0)&1;return d|0}function JU(a){a=a|0;return 0}function KU(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=n;j=(g|0)==0?186220:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(c[c[(LU()|0)+188>>2]>>2]|0)==0;g=a[e>>0]|0;if(h){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[107868+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;o=b>>>3;if((o+-16|o+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[(oT()|0)>>2]=84;g=-1}l=n;return g|0}function LU(){return gU()|0}function MU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=e;e=NT(a,b,d,g)|0;l=f;return e|0}function NU(a,b){a=a|0;b=b|0;OU(a,b)|0;return a|0}function OU(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function PU(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(c[j>>2]|0)>>>0>4294967295;if(b&d>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|b){e=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(d>>>0<1016070144)a=a+1.0;else e=9;while(0);if((e|0)==9){g=a+26388279066624.0;h[j>>3]=g;e=(c[j>>2]|0)+128|0;d=e<<1&510;f=+h[48456+(d<<3)>>3];a=a-(g+-26388279066624.0)-+h[48456+((d|1)<<3)>>3];a=+xU(f+f*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(e&-256|0)/256|0)}return +a}function QU(a){a=+a;a=+RU(a);y=+A(a)>=1.0?(a>0.0?~~+O(+z(a/4294967296.0),4294967295.0)>>>0:~~+M((a-+(~~a>>>0))/4294967296.0)>>>0):0;return ~~a>>>0|0}function RU(a){a=+a;var b=0,d=0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function SU(a){a=+a;var b=0,d=0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+GT(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+GT(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+GT(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function TU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=nT(ib(3,f|0)|0)|0;l=e;return d|0}function UU(a,b){a=a|0;b=b|0;var c=0;c=DU(a)|0;return ((VU(a,1,c,b)|0)!=(c|0))<<31>>31|0}function VU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=N(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(QT(e)|0)==0;a=nU(a,f,e)|0;if(!g)RT(e)}else a=nU(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function WU(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(oU(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Md[c[b+36>>2]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=n;return f|0}function XU(a){a=a|0;var b=0,c=0;b=(DU(a)|0)+1|0;c=bT(b)|0;if(!c)a=0;else a=iX(c|0,a|0,b|0)|0;return a|0}function YU(){cb(186224);return 186232}function ZU(){mb(186224);return} -function ml(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;x=c[O>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){U=d[146228+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=38;else{M=x;x=5}}else if((x|0)==1){y=f+21792|0;M=y;y=c[y>>2]|0;x=5}else x=38;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;L=c[u>>2]|0;K=c[u+4>>2]|0;P=c[e+25664>>2]|0;Q=o<<1;U=f+21780|0;E=c[U>>2]|0;S=k+((N(E,Q)|0)+(n<<1<>2]|0;Q=(N(x,Q)|0)+(n<>2]<<3)+n|0;r=f+21828|0;l=c[r>>2]|0;y=(y>>l<<3)+o|0;if(!(z&A)){B=A&1;z=d[146228+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;v=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;u=z<<2&12|v&3;x=v>>2;A=z>>2;t=(N(A,E)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;y=m<<4;l=c[e+27008>>2]<<4>>l;n=v&7;M=(n|0)==0?0:-3;O=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(A|0)<(0-O|0))?(x+16|0)<=(M+y|0):0)?(A+16|0)<=(l+O|0):0){k=0;y=E}else{O=f+27792|0;k=2<>2]&3](c[O>>2]|0,t+(0-k)+(0-(E<<1))|0,E,E,21,21,x+-2|0,A+-2|0,y,l);y=c[U>>2]|0;t=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;Td[c[x>>2]&1023](S,t,y);if(!h)Td[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);v=v>>3;u=v<>2]|0;x=N(y,A)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+u+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+u+x|0;u=f+27792|0;if(!k){e=z<<1&6;Wd[q&63](R,t,y,i,n,e);y=e}else{j=m<<3;h=e+8|0;Zd[c[h>>2]&3](c[u>>2]|0,t,y,y,9,17,v,A,j,l);y=z<<1&6;Wd[q&63](R,c[u>>2]|0,c[T>>2]|0,i,n,y);e=c[T>>2]|0;Zd[c[h>>2]&3](c[u>>2]|0,x,e,e,9,17,v,A,j,l);x=c[u>>2]|0}Wd[q&63](Q,x,c[T>>2]|0,i,n,y);Wd[D&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;Wd[C&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Wd[C&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}I=c[f+27788>>2]|0;J=I+(16<>0]|0;w=a[f+28272+C>>0]|0;G=a[f+28312+C>>0]|0;o=t<<3;k=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;m=B+(b[f+27952+(C<<2)+2>>1]|0)|0;u=m<<2&12|k&3;x=k>>2;z=m>>2;y=(N(z,E)|0)+(x<>2]|0)+y|0;D=e+27012|0;A=c[D>>2]|0;t=A<<4;s=e+27008|0;l=c[s>>2]<<4>>l;n=k&7;F=(n|0)==0?0:-3;g=(m&7|0)==0?0:-3;if((!((x|0)<(0-F|0)|(z|0)<(0-g|0))?(x+16|0)<=(F+t|0):0)?(z+16|0)<=(l+g|0):0){t=y;v=0;y=E}else{g=f+27792|0;v=2<>2]&3](c[g>>2]|0,y+(0-v)+(0-(E<<1))|0,E,E,21,21,x+-2|0,z+-2|0,t,l);y=c[U>>2]|0;t=(c[g>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;Td[c[x>>2]&1023](S,t,y);E=(h|0)!=0;if(!E)Td[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);y=k>>3;F=y<>2]|0;x=N(t,z)|0;u=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!v){y=m<<1&6;Wd[q&63](R,u,t,i,n,y)}else{g=A<<3;A=e+8|0;Zd[c[A>>2]&3](c[F>>2]|0,u,t,t,9,17,y,z,g,l);h=m<<1&6;Wd[q&63](R,c[F>>2]|0,c[T>>2]|0,i,n,h);m=c[T>>2]|0;Zd[c[A>>2]&3](c[F>>2]|0,x,m,m,9,17,y,z,g,l);x=c[F>>2]|0;y=h}Wd[q&63](Q,x,c[T>>2]|0,i,n,y);z=o+(b[f+28112+(C<<2)>>1]|0)|0;n=B+(b[f+28112+(C<<2)+2>>1]|0)|0;k=n<<2&12|z&3;u=z>>2;o=n>>2;y=c[U>>2]|0;t=(N(o,y)|0)+(u<>2]|0)+t|0;A=c[D>>2]|0;x=A<<4;l=c[s>>2]<<4>>c[r>>2];m=z&7;g=(m|0)==0?0:-3;h=(n&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(o|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(o+16|0)<=(l+h|0):0)v=0;else{v=2<>2]&3](c[F>>2]|0,t+(0-v)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,x,l);y=c[U>>2]|0;t=(c[F>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!E)Td[c[x>>2]&1023](H+j|0,t+j|0,c[U>>2]|0);u=z>>3;j=u<>2]|0;x=N(y,o)|0;t=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=n<<1&6;Wd[q&63](I,t,y,i,m,e);y=e}else{j=A<<3;h=e+8|0;Zd[c[h>>2]&3](c[F>>2]|0,t,y,y,9,17,u,o,j,l);y=n<<1&6;Wd[q&63](I,c[F>>2]|0,c[T>>2]|0,i,m,y);e=c[T>>2]|0;Zd[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,u,o,j,l);x=c[F>>2]|0}Wd[q&63](J,x,c[T>>2]|0,i,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[M>>2]&1)<<2)>>2]|0;f=64-e|0;Xd[L&31](S,H,c[U>>2]|0,i,5,e,f,0);Xd[K&31](R,I,c[T>>2]|0,i,5,e,f,0);Xd[K&31](Q,J,c[T>>2]|0,i,5,e,f,0);break}else{Xd[L&31](S,H,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;Xd[K&31](R,I,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Xd[K&31](Q,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==38){I=c[e+25664>>2]|0;K=o<<1;H=f+21780|0;y=c[H>>2]|0;G=k+((N(y,K)|0)+(n<<1<>2]|0,K)|0)+(n<>2]<<3)+n|0;F=f+21828|0;x=c[F>>2]|0;E=(c[f+21792>>2]>>x<<3)+o|0;if(v){n=d[146228+g>>0]|0;A=a[f+28272+n>>0]|0;l=(D<<3)+(b[f+27952+(n<<2)>>1]|0)|0;n=(E<<3)+(b[f+27952+(n<<2)+2>>1]|0)|0;k=n<<2&12|l&3;u=l>>2;o=n>>2;t=(N(o,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;v=B<<4;m=c[e+27008>>2]<<4>>x;C=l&7;T=(C|0)==0?0:-3;U=(n&7|0)==0?0:-3;if((!((u|0)<(0-T|0)|(o|0)<(0-U|0))?(u+16|0)<=(T+v|0):0)?(o+16|0)<=(m+U|0):0)z=0;else{U=f+27792|0;z=2<>2]&3](c[U>>2]|0,t+(0-z)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,v,m);y=c[H>>2]|0;t=(c[U>>2]|0)+z+(y<<1)|0;z=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!h)Td[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);t=l>>3;y=t<>2]|0;x=N(u,o)|0;v=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!z){y=n<<1&6;Wd[q&63](J,v,u,i,C,y)}else{T=B<<3;R=e+8|0;Zd[c[R>>2]&3](c[y>>2]|0,v,u,u,9,17,t,o,T,m);U=n<<1&6;Wd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,C,U);S=c[L>>2]|0;Zd[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,t,o,T,m);x=c[y>>2]|0;y=U}Wd[q&63](K,x,c[L>>2]|0,i,C,y);q=s;p=r}if(w|0){m=d[146228+g>>0]|0;A=a[f+28312+m>>0]|0;l=(D<<3)+(b[f+28112+(m<<2)>>1]|0)|0;m=(E<<3)+(b[f+28112+(m<<2)+2>>1]|0)|0;v=m<<2&12|l&3;x=l>>2;n=m>>2;y=c[H>>2]|0;t=(N(n,y)|0)+(x<>2]|0)+t|0;o=c[e+27012>>2]|0;u=o<<4;z=c[e+27008>>2]<<4>>c[F>>2];B=l&7;T=(B|0)==0?0:-3;U=(m&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(n|0)<(0-U|0))?(x+16|0)<=(u+T|0):0)?(n+16|0)<=(z+U|0):0)k=0;else{U=f+27792|0;k=2<>2]&3](c[U>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,n+-2|0,u,z);y=c[H>>2]|0;t=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!h)Td[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);v=l>>3;y=v<>2]|0;x=N(t,n)|0;u=(c[f+25336+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=m<<1&6;Wd[q&63](J,u,t,i,B,y)}else{j=o<<3;h=e+8|0;Zd[c[h>>2]&3](c[y>>2]|0,u,t,t,9,17,v,n,j,z);f=m<<1&6;Wd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,B,f);e=c[L>>2]|0;Zd[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,v,n,j,z);x=c[y>>2]|0;y=f}Wd[q&63](K,x,c[L>>2]|0,i,B,y)}}while(0);return}function nl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)il(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){A=q<<24>>24;B=c[f+21788>>2]|0;B=((B<<4|8)+(b[f+28e3>>1]>>2)<>2]<<4|B<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;C=f+21772|0;Td[c[z>>2]&1023]((c[f+23416+(A*40|0)>>2]|0)+B|0,c[C>>2]|0,4);Td[c[z>>2]&1023]((c[f+23416+(A*40|0)+4>>2]|0)+B|0,c[C>>2]|0,4);Td[c[z>>2]&1023]((c[f+23416+(A*40|0)+8>>2]|0)+B|0,c[C>>2]|0,4)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;ol(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);ol(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}A=f+21780|0;if(D&32|0){w=j+64|0;x=k+4|0;y=l+64|0;z=m+4|0;B=n+4|0;C=o+4|0;ol(d,f,0,0,16,c[A>>2]<<3,g,h,i,0,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&4096,D&16384);ol(d,f,4,0,16,c[A>>2]<<3,g,h,i,4,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&8192,D&32768);break}B=j+128|0;C=k+8|0;w=l+128|0;x=m+8|0;y=n+8|0;z=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;ol(d,f,n,0,4,4<>2],g,h,i,o,j,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);ol(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;ol(d,f,n,0,8,c[A>>2]<<2,g,h,i,o,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);ol(d,f,n|1,0,8,c[A>>2]<<2,g,h,i,o|2,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;ol(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,l,q);p=p+1|0}}else ol(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else ol(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){G=F<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;i=f+21772|0;Td[c[g>>2]&1023]((c[f+25336+(G*40|0)>>2]|0)+h|0,c[i>>2]|0,4);Td[c[g>>2]&1023]((c[f+25336+(G*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);Td[c[g>>2]&1023]((c[f+25336+(G*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function ol(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0;K=f+880|0;q=c[K>>2]|0;x=(v|0)!=0;y=(w|0)!=0;if(y&(x&(q|0)==2)){Q=d[146228+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=59;else{J=q;q=5}}else if((q|0)==1){s=f+21792|0;J=s;s=c[s>>2]|0;q=5}else q=59;do if((q|0)==5){z=c[t>>2]|0;I=c[u>>2]|0;L=c[e+25664>>2]|0;Q=f+21780|0;w=c[Q>>2]|0;M=(N(o<<1,w)|0)+(n<<1<>2]<<3)+n|0;B=f+21828|0;u=c[B>>2]|0;q=(s>>u<<3)+o|0;if(!(x&y)){o=y&1;K=d[146228+g>>0]|0;n=a[f+28272+(o*40|0)+K>>0]|0;J=(t<<3)+(b[f+27952+(o*160|0)+(K<<2)>>1]|0)|0;K=(q<<3)+(b[f+27952+(o*160|0)+(K<<2)+2>>1]|0)|0;t=K<<2&12|J&3;y=J>>2;l=K>>2;v=(N(l,w)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>u;J=(J&7|0)==0?0:-3;K=(K&7|0)==0?0:-3;if((!((y|0)<(0-J|0)|(l|0)<(0-K|0))?(y+16|0)<=(J+m|0):0)?(l+16|0)<=(k+K|0):0){u=0;s=w}else{K=f+27792|0;u=2<>2]&3](c[K>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){K=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](O,q,s);if(!p)Td[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+8>>2]|0)+v|0;if(t){K=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](M,q,s);if(!p)Td[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);Wd[z&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(n<<4)+(o<<3)>>2]|0,c[f+912+(n<<4)+(o<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;Wd[z&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)>>2]|0,c[f+1680+(n<<5)+(o<<4)+4>>2]|0);Wd[z&63](M,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)+8>>2]|0,c[f+1680+(n<<5)+(o<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<>2]<<4)|0;z=d[146228+g>>0]|0;C=a[f+28272+z>>0]|0;D=a[f+28312+z>>0]|0;o=t<<3;x=o+(b[f+27952+(z<<2)>>1]|0)|0;n=q<<3;g=n+(b[f+27952+(z<<2)+2>>1]|0)|0;t=g<<2&12|x&3;l=x>>2;m=g>>2;k=(N(m,w)|0)+(l<>2]|0)+k|0;A=e+27012|0;y=c[A>>2]<<4;r=e+27008|0;v=c[r>>2]<<4>>u;x=(x&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((l|0)<(0-x|0)|(m|0)<(0-g|0))?(l+16|0)<=(x+y|0):0)?(m+16|0)<=(v+g|0):0){u=0;s=w}else{g=f+27792|0;u=2<>2]&3](c[g>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](P,q,s);w=(h|0)!=0;if(!w)Td[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](O,q,s);if(!w)Td[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+8>>2]|0)+k|0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](M,q,s);if(!w)Td[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);g=o+(b[f+28112+(z<<2)>>1]|0)|0;h=n+(b[f+28112+(z<<2)+2>>1]|0)|0;u=h<<2&12|g&3;y=g>>2;l=h>>2;q=c[Q>>2]|0;v=(N(l,q)|0)+(y<>2]|0)+v|0;k=c[A>>2]<<4;x=c[r>>2]<<4>>c[B>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(l|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(l+16|0)<=(x+h|0):0)t=0;else{h=f+27792|0;t=2<>2]&3](c[h>>2]|0,s+(0-t)+(0-(q<<1))|0,q,q,21,21,y+-2|0,l+-2|0,k,x);q=c[Q>>2]|0;s=(c[h>>2]|0)+t+(q<<1)|0;t=1}u=p+(u<<2)|0;Td[c[u>>2]&1023](H,s,q);if(!w)Td[c[u>>2]&1023](H+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;t=(t|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[u>>2]&1023](E,q,s);if(!w)Td[c[u>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[u>>2]&1023](F,q,s);if(!w)Td[c[u>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[K>>2]|0)==2){f=c[f+3216+(C*384|0)+(D<<3)+((c[J>>2]&1)<<2)>>2]|0;j=64-f|0;Xd[I&31](P,H,c[Q>>2]|0,i,5,f,j,0);Xd[I&31](O,E,c[G>>2]|0,i,5,f,j,0);Xd[I&31](M,F,c[G>>2]|0,i,5,f,j,0);break}else{Xd[I&31](P,H,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(C<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(C<<4)+4>>2]|0)|0);j=f+892|0;Xd[I&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(C<<5)+4>>2]|0)|0);Xd[I&31](M,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(C<<5)+12>>2]|0)|0);break}}else if((q|0)==59){E=c[e+25664>>2]|0;F=f+21780|0;x=c[F>>2]|0;D=(N(o<<1,x)|0)+(n<<1<>2]<<3)+n|0;A=f+21828|0;s=c[A>>2]|0;o=(c[f+21792>>2]>>s<<3)+o|0;if(v){i=d[146228+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(z<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;l=Q>>2;m=i>>2;k=(N(m,x)|0)+(l<>2]|0)+k|0;n=c[e+27012>>2]<<4;y=c[e+27008>>2]<<4>>s;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((l|0)<(0-Q|0)|(m|0)<(0-i|0))?(l+16|0)<=(Q+n|0):0)?(m+16|0)<=(y+i|0):0){u=0;s=x}else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(x<<1))|0,x,x,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){Q=f+27792|0;i=2<>2]|0;Zd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](C,q,s);if(!p)Td[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(t){Q=f+27792|0;i=2<>2]|0;Zd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](D,q,s);if(p)p=r;else{Td[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0);p=r}}if(w|0){i=d[146228+g>>0]|0;n=a[f+28312+i>>0]|0;Q=(z<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;y=Q>>2;l=i>>2;s=c[F>>2]|0;v=(N(l,s)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>c[A>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(l|0)<(0-i|0))?(y+16|0)<=(m+Q|0):0)?(l+16|0)<=(k+i|0):0)u=0;else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){i=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](C,q,s);if(!p)Td[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+8>>2]|0)+v|0;if(t){h=f+27792|0;f=2<>2]|0;Zd[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](D,q,s);if(!p)Td[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0)}}while(0);return}function pl(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26376>>2]|0){j=c[a+27016>>2]|0;h=(N(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(N(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27016>>2]<<((c[a+26380>>2]|0)!=3&1))|0}while(0);i=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return tl(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function ql(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27016>>2]<<1)|0;return tl(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0}function rl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D+4|0;A=D;B=g+21796|0;C=c[B>>2]|0;c[A>>2]=0;h=(c[f+25972>>2]|0)+(C*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));x=g+21828|0;if(!(c[x>>2]|0))h=0;else{c[A>>2]=128;h=128}z=g+840|0;if((c[z>>2]|0)==3){h=h|63744;c[A>>2]=h;if(c[g+21844>>2]|0){sl(f,g,h);vl(f,g,h)}Mk(f,g,A);k=c[A>>2]|2048;c[A>>2]=k;h=f+26368|0}else{k=h|14344;c[A>>2]=k;sl(f,g,k);r=c[f+24384>>2]|0;s=c[f+24352>>2]|0;h=f+26368|0;t=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;n=c[g+21740>>2]|0;if(!(n&12288))if(!n)i=0;else{w=183552;u=-1;o=16}else{i=c[g+21720>>2]|0;w=d[c[g+21748>>2]>>0]|0;j=a[r+((w&254)+(i<<2|1))>>0]|0;i=s+((N(t,w)|0)+3+(c[(c[f+26360>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=i>>16<<1;i=y;j=j>>1;break}else{if(n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=y;j=j<<1;break}}while(0);if(!(c[i>>2]|j))i=0;else{w=i;u=j;o=16}}do if((o|0)==16){n=c[g+21732>>2]|0;if(!(n&12288))if(!n){i=0;break}else{p=-1;q=183552}else{j=c[g+21712>>2]|0;i=a[r+(j<<2|2)>>0]|0;j=s+((c[(c[f+26360>>2]|0)+(j<<2)>>2]|0)+(t*3|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=q>>16<<1;i=i>>1;break}else{if(n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=((q>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[j>>2]|i)){i=0;break}else{p=i;q=j}}j=c[g+21736>>2]|0;do if(!(j&12288))if((j|0)==0?(v=c[g+21728>>2]|0,(v&12288|0)!=0):0){n=c[g+21708>>2]|0;o=c[g+21752>>2]|0;i=a[r+(n<<2|o&2|1)>>0]|0;n=s+(t+3+(o&t<<1)+(c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)<<2)|0;if(c[f+26376>>2]|0){j=(v&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}else{o=183552;i=-1}else{n=c[g+21716>>2]|0;i=a[r+(n<<2|2)>>0]|0;n=s+((c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)+(t*3|0)<<2)|0;if(c[f+26376>>2]|0){j=(j&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}while(0);n=(p|0)!=0;j=(u|0)!=0;i=((n^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=Bl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=Bl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0;break}if(!j){j=b[w+2>>1]|0;i=b[w>>1]|0;break}if(n){j=b[o+2>>1]|0;i=b[o>>1]|0;break}else{j=b[q+2>>1]|0;i=b[q>>1]|0;break}}else{i=Bl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=Bl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0}while(0);i=j<<16|i&65535}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i}h=c[h>>2]|0;i=(N(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[B>>2]<<2;if(!(k&12288)){y=(c[f+24384>>2]|0)+j|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[f+24352>>2]|0)+(i<<2)|0;w=g+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24384>>2]|0)+j|0;a[y>>0]=a[g+28284>>0]|0;a[y+1>>0]=a[g+28286>>0]|0;a[y+2>>0]=a[g+28300>>0]|0;a[y+3>>0]=a[g+28302>>0]|0}if(k&49152|0){y=(c[f+24356>>2]|0)+(i<<2)|0;w=g+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24388>>2]|0)+j|0;a[y>>0]=a[g+28324>>0]|0;a[y+1>>0]=a[g+28326>>0]|0;a[y+2>>0]=a[g+28340>>0]|0;a[y+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[z>>2]|0)!=3)){B=(c[f+26408>>2]|0)+(c[B>>2]<<2)|0;a[B+1>>0]=(e[g+28554>>1]|0)>>>1;a[B+2>>0]=(e[g+28556>>1]|0)>>>1;a[B+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(C<<2)>>2]=c[A>>2];a[(c[f+24340>>2]|0)+C>>0]=c[g+848>>2];b[(c[f+26372>>2]|0)+(C<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;l=D;return}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=135815;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?135911:135879;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=135847;h=i}else d=135911;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function tl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121164+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[121804+f>>0]|0;h=c[g>>2]|0;e=d[120652+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Ll(b);return f&1|0}function ul(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(tl(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(tl(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(Ml(e)|0)){b=(tl(e,f+1|0)|0)*12|1;if(tl(e,f+2|0)|0)b=b+4+((tl(e,f+(d+2)|0)|0)<<2)|0;b=((tl(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(tl(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function vl(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ja=l;l=l+16|0;if((l|0)>=(m|0))W(16);za=Ja+8|0;Aa=Ja;Ba=c[g+21748>>2]|0;Ha=c[g+21708>>2]|0;qa=c[g+21712>>2]|0;ra=c[g+21716>>2]|0;sa=c[g+21720>>2]|0;c[za>>2]=sa;ta=c[g+21724>>2]|0;c[za+4>>2]=ta;ua=c[g+21728>>2]|0;va=c[g+21732>>2]|0;wa=c[g+21736>>2]|0;xa=c[g+21740>>2]|0;c[Aa>>2]=xa;ya=c[g+21744>>2]|0;c[Aa+4>>2]=ya;if(!(h&2048)){v=(h&7|0)!=0;a:do if(v){r=c[(c[f+28212>>2]|0)+56>>2]|0?7:-1;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;o=g+21756|0;c[o>>2]=65535;p=g+21764|0;c[p>>2]=61162;q=(r&va|0)!=0;if(q){i=65535;n=60138}else{c[o>>2]=46079;c[i>>2]=13311;c[p>>2]=9962;i=46079;n=8938}j=h&128;do if((j|0)==(xa&128|0)){if(!(xa&r)){i=i&57183;c[o>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((xa&r|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27016>>2]|0)+sa<<2)>>2]&r|0)==0))break;i=i&57183;c[o>>2]=i;c[k>>2]=24415;break}if(!(xa&r)){i=i&57343;c[o>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(ya&r)){i=i&65375;c[o>>2]=i;c[k>>2]=j}}while(0);if(!(r&ua))c[o>>2]=i&32767;if(!(r&wa))c[p>>2]=n;if(h&1|0){if(!(va&1)){kX(g+21668|0,(q?2:-1)|0,4)|0;n=g+21704|0;o=f+26364|0}else{n=g+21704|0;o=f+26364|0;c[g+21668>>2]=c[(c[n>>2]|0)+(c[(c[o>>2]|0)+(qa<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[Aa+(k<<2)>>2]|0;if(!(i&1)){i=(i&r|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{pa=(c[n>>2]|0)+(c[(c[o>>2]|0)+(c[za+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[pa+(6-(d[Ba+i>>0]|0))>>0]|0;i=a[pa+(6-(d[Ba+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);u=(va|0)!=0;if(u){t=f+25972|0;i=c[t>>2]|0;c[g+27828>>2]=c[i+(qa*48|0)+12>>2];pa=(c[f+25680>>2]|0)==0;c[g+27868>>2]=c[(pa?28:20)+(i+(qa*48|0))>>2];i=c[(pa?44:36)+(i+(qa*48|0))>>2]|0}else{i=v?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;t=f+25972|0}c[g+27908>>2]=i;r=v?64:0;s=f+28216|0;q=0;while(1){if((q|0)==2)break;if(!(c[Aa+(q<<2)>>2]|0)){j=q<<4;a[j+99+(g+27824)>>0]=r;a[j+91+(g+27824)>>0]=r;a[j+59+(g+27824)>>0]=r;a[j+51+(g+27824)>>0]=r;a[j+19+(g+27824)>>0]=r;j=j|11;i=r}else{o=c[t>>2]|0;p=c[za+(q<<2)>>2]|0;i=q<<1;k=Ba+(i+8)|0;j=q<<4;a[(j|11)+(g+27824)>>0]=a[(d[k>>0]|0)+(o+(p*48|0))>>0]|0;n=Ba+(i+9)|0;a[j+19+(g+27824)>>0]=a[(d[n>>0]|0)+(o+(p*48|0))>>0]|0;switch(c[(c[s>>2]|0)+12>>2]|0){case 3:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+32+(o+(p*48|0))>>0]|0;n=(d[n>>0]|0)+32|0;i=j+99|0;break}case 2:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+30+(o+(p*48|0))>>0]|0;i=(d[n>>0]|0)+30|0;k=99;w=39;break}default:{j=q<<3;a[j+51+(g+27824)>>0]=a[(d[Ba+(i+12)>>0]|0)+(o+(p*48|0))>>0]|0;i=d[Ba+(i+13)>>0]|0;k=91;w=39}}if((w|0)==39){w=0;n=i;i=k+j|0}j=i;i=a[o+(p*48|0)+n>>0]|0}a[g+27824+j>>0]=i;q=q+1|0}if(u)i=e[(c[f+26392>>2]|0)+(qa<<1)>>1]|0;else i=v?1999:15;c[g+21860>>2]=i;if(!xa)i=v?1999:15;else{i=c[f+26392>>2]|0;pa=e[i+(sa<<1)>>1]|0;i=pa>>>(a[Ba>>0]&-2&255)&2|pa&2032|(e[i+(ta<<1)>>1]|0)>>>(a[Ba+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)w=53}else w=53;b:do if((w|0)==53){y=c[f+26368>>2]|0;z=g+23412|0;A=f+26360|0;B=y*3|0;D=qa<<2;C=D|2;D=D|3;E=(h&80|0)==0;F=xa|0?-1:-2;G=sa<<2|1;H=wa|0?-1:-2;I=ua|0?-1:-2;J=g+21752|0;K=y<<1;L=y+3|0;M=Ha<<2;O=(h&2304|0)==0;P=f+26364|0;Q=g+840|0;R=g+28524|0;S=f+26408|0;T=g+28532|0;U=g+28548|0;V=g+28540|0;X=(va&256|0)==0;Y=(va&64|0)==0;Z=g+28516|0;_=g+28518|0;$=g+28523|0;aa=ta<<2|1;ba=Ba+2|0;ca=g+28539|0;da=Ba+3|0;ea=Ba+1|0;fa=f+26376|0;ga=g+21828|0;ha=(ua&128|0)!=0;ia=(va&128|0)==0;ja=(wa&128|0)==0;ka=(xa&128|0)==0;la=(ya&128|0)==0;ma=ra<<2|2;na=va|0?-1:-16843010;oa=(xa&320|0)==64;w=xa&256|0?-128:4;pa=(ya&320|0)==64;x=ya&256|0?-128:4;v=0;while(1){if(v>>>0>=(c[z>>2]|0)>>>0)break b;p=g+28272+(v*40|0)+12|0;r=c[f+24384+(v<<2)>>2]|0;q=g+27952+(v*160|0)+48|0;s=c[f+24352+(v<<2)>>2]|0;u=12288<<(v<<1);do if(u&h|0){t=(u&va|0)!=0;if(t){k=(c[(c[A>>2]|0)+(qa<<2)>>2]|0)+B|0;j=s+(k<<2)|0;o=c[j+4>>2]|0;n=g+27952+(v*160|0)+16|0;c[n>>2]=c[j>>2];c[n+4>>2]=o;k=s+(k<<2)+8|0;n=c[k+4>>2]|0;o=g+27952+(v*160|0)+24|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;o=a[r+C>>0]|0;a[g+28272+(v*40|0)+5>>0]=o;a[g+28272+(v*40|0)+4>>0]=o;o=a[r+D>>0]|0;a[g+28272+(v*40|0)+7>>0]=o;a[g+28272+(v*40|0)+6>>0]=o}else{o=g+27952+(v*160|0)+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[g+28272+(v*40|0)+4>>2]=na}c:do if(E){if(!(xa&u)){c[g+27952+(v*160|0)+44>>2]=0;i=F}else{c[g+27952+(v*160|0)+44>>2]=c[s+((c[(c[A>>2]|0)+(sa<<2)>>2]|0)+3+(N(y,d[Ba>>0]|0)|0)<<2)>>2];i=a[r+(G+(a[Ba>>0]&-2&255))>>0]|0}a[g+28272+(v*40|0)+11>>0]=i}else{o=0;while(1){if((o|0)==2)break c;j=o<<1;k=o<<4;i=k+-1|0;n=c[Aa+(o<<2)>>2]|0;if(!(n&u)){c[q+(i<<2)>>2]=0;k=k|7;c[q+(k<<2)>>2]=0;j=n|0?-1:-2;a[p+k>>0]=j}else{Ka=c[za+(o<<2)>>2]|0;Ma=(c[(c[A>>2]|0)+(Ka<<2)>>2]|0)+3|0;Ka=Ka<<2|1;La=Ba+j|0;c[q+(i<<2)>>2]=c[s+((N(y,d[La>>0]|0)|0)+Ma<<2)>>2];j=Ba+(j|1)|0;n=k|7;c[q+(n<<2)>>2]=c[s+((N(y,d[j>>0]|0)|0)+Ma<<2)>>2];a[p+i>>0]=a[r+(Ka+(a[La>>0]&-2&255))>>0]|0;j=a[r+(Ka+(a[j>>0]&-2&255))>>0]|0;i=n}a[p+i>>0]=j;o=o+1|0}}while(0);if(!(u&wa)){c[g+27952+(v*160|0)+32>>2]=0;i=H}else{c[g+27952+(v*160|0)+32>>2]=c[s+((c[(c[A>>2]|0)+(ra<<2)>>2]|0)+B<<2)>>2];i=a[r+ma>>0]|0}o=g+28272+(v*40|0)+8|0;a[o>>0]=i;n=g+28272+(v*40|0)+6|0;if((a[n>>0]|i)<<24>>24<0){if(!(u&ua)){c[g+27952+(v*160|0)+12>>2]=0;i=I}else{i=c[J>>2]|0;c[g+27952+(v*160|0)+12>>2]=c[s+(L+(c[(c[A>>2]|0)+(Ha<<2)>>2]|0)+(i&K)<<2)>>2];i=a[r+(M|i&2|1)>>0]|0}a[g+28272+(v*40|0)+3>>0]=i}if(O){k=c[g+32848+(v<<2)>>2]|0;a[g+28272+(v*40|0)+30>>0]=-2;a[g+28272+(v*40|0)+14>>0]=-2;c[g+27952+(v*160|0)+56>>2]=0;c[g+27952+(v*160|0)+120>>2]=0;if(t){j=k+(c[(c[P>>2]|0)+(qa<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ma=g+28352+(v*80|0)+8|0;c[Ma>>2]=i;c[Ma+4>>2]=j;if(!(xa&u)){b[g+28352+(v*80|0)+22>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(sa<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+22>>1]=b[k+(i-(d[Ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[ea>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+38>>1]=i;if(!(ya&u)){b[g+28352+(v*80|0)+54>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(ta<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+54>>1]=b[k+(i-(d[ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[da>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+70>>1]=i;b[g+28352+(v*80|0)+28>>1]=0;b[g+28352+(v*80|0)+60>>1]=0;if((c[Q>>2]|0)==3){j=c[S>>2]|0;c[R>>2]=67372036;c[T>>2]=67372036;c[V>>2]=67372036;c[U>>2]=67372036;do if(X)if(Y){c[Z>>2]=67372036;break}else{a[Z>>0]=a[j+C>>0]|0;a[_>>0]=a[j+D>>0]|0;break}else c[Z>>2]=-2139062144;while(0);if(oa)i=a[j+(G+(a[Ba>>0]&-2&255))>>0]|0;else i=w;a[$>>0]=i;if(pa)i=a[j+(aa+(a[ba>>0]&-2&255))>>0]|0;else i=x;a[ca>>0]=i}if(!(c[fa>>2]|0))break}else if(!(c[fa>>2]|0))break;if(!(c[ga>>2]|0)){if(ha?(Fa=g+28272+(v*40|0)+3|0,Ga=a[Fa>>0]|0,Ga<<24>>24>-1):0){a[Fa>>0]=(Ga&255)>>>1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=d[Ma>>0]<<1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=(i&255)>>>1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(!ja?(Ia=a[o>>0]|0,Ia<<24>>24>-1):0){a[o>>0]=(Ia&255)>>>1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=d[Ma>>0]<<1;break}else{if(!ha?(Ca=g+28272+(v*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=Da<<24>>24<<1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=i<<24>>24<<1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(ja?(Ea=a[o>>0]|0,Ea<<24>>24>-1):0){a[o>>0]=Ea<<24>>24<<1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(!la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1;break}}while(0);v=v+1|0}}while(0);c[g+21840>>2]=(xa>>>24&1)+(va>>>24&1);l=Ja;return}function wl(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Fl(c,a+32972|0)|0)){a=a+32973|0;d=Fl(c,a)|0;d=((Fl(c,a)|0)<<1)+d|0;c=d+((Fl(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function xl(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26396>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26396>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(tl(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(tl(b,e)|0))e=1;else{e=(tl(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function yl(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Fl(d,a+32940|0)|0))a=0;else{do if(!(Fl(d,a+32941|0)|0)){b=Fl(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Fl(d,a+32942|0)|0)if(!(Fl(d,c)|0))a=7;else{b=Fl(d,c)|0;a=11;break}else a=3;b=((Fl(d,c)|0)<<1)+a|0;a=Fl(d,c)|0}while(0);a=b+a|0}return a|0}function zl(a){a=a|0;var b=0;b=a+32856|0;if(!(Fl(b,a+32925|0)|0))if(!(Fl(b,a+32926|0)|0))a=1;else{a=(Fl(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function Al(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[146228+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Fl(g,e+54+(b+32904)|0)|0))break;if((f|0)>30){f=-1;break}else{f=f+1|0;e=(e>>2)+4|0}}return f|0}function Bl(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Cl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;i=a+32856|0;do if(!(Fl(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if((f|0)>=9){d=3;h=7;break}if(!(Fl(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+((f|0)<4&1)|0;f=f+1|0;d=b}if((h|0)==7){while(1){h=0;if(!(Kl(i)|0)){b=d;break}f=(1<23){h=12;break}else{d=d+1|0;h=7}}if((h|0)==12){Wf(c[(c[a>>2]|0)+4>>2]|0,16,135782,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((Kl(i)|0)<>2]=d;d=c[i>>2]<<1;c[i>>2]=d;if(!(d&65534)){Jl(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);l=j;return d|0}function Dl(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=tl(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((tl(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((tl(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((tl(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function El(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a+21864>>2]|0)>>>4&3;e=(c[a+21860>>2]|0)>>>4&3;f=(b|0)!=0&1;d=a+32856|0;f=(tl(d,((e|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;b=(b|0)==2?5:4;if(f)b=0;else b=(tl(d,((e|0)==2?b|2:b)+77+(a+32904)|0)|0)+1|0;return b|0}function Fl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121164+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[121804+f>>0]|0;h=c[g>>2]|0;e=d[120652+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Ll(b);return f&1|0}function Gl(f,g,h,i,j,k,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;B=g+32860|0;t=w+4|0;c[t>>2]=c[B>>2];y=g+32856|0;c[w>>2]=c[y>>2];z=g+32872|0;A=w+16|0;c[A>>2]=c[z>>2];s=c[g+21828>>2]|0;r=(c[102572+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[102684+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;u=(c[102796+(i<<2)>>2]|0)+(g+32904)|0;q=n+-1|0;p=0;o=0;while(1){if((p|0)>=(q|0)){x=6;break}if(Fl(w,r+p|0)|0){n=o+1|0;c[v+(o<<2)>>2]=p;if(!(Fl(w,s+p|0)|0))o=n;else{o=n;break}}p=p+1|0}if((x|0)==6)if((p|0)==(q|0)){c[v+(o<<2)>>2]=q;o=o+1|0}s=(i|0)==3;i=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(s?64:256)<<(s?-49:-48)+j|(e[i>>1]|0);a[(d[146228+j>>0]|0)+(g+27824)>>0]=o;if(!(c[f+25664>>2]|0)){s=o;n=0;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Fl(w,u+(d[135616+n>>0]|0)|0)|0)){o=d[135624+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Jl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135640+n>>0]|0)|0;r=d[135632+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=34;break}if(!(Fl(w,o)|0))break;n=n+1|0}if((x|0)==34){while(1){x=0;if((n|0)<23&(Kl(w)|0)!=0){n=n+1|0;x=34}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Kl(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Jl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}b[h+(f<<1)>>1]=p-q;if(!s)break;else n=r}}else{n=0;s=o;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Fl(w,u+(d[135616+n>>0]|0)|0)|0)){o=d[135624+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Jl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135640+n>>0]|0)|0;r=d[135632+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=18;break}if(!(Fl(w,o)|0))break;n=n+1|0}if((x|0)==18){while(1){x=0;if((n|0)<23&(Kl(w)|0)!=0){n=n+1|0;x=18}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Kl(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Jl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}c[h+(f<<2)>>2]=p-q;if(!s)break;else n=r}}c[B>>2]=o;c[y>>2]=n;c[z>>2]=c[A>>2];l=C;return}function Hl(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;y=f+32860|0;u=w+4|0;c[u>>2]=c[y>>2];z=f+32856|0;c[w>>2]=c[z>>2];A=f+32872|0;B=w+16|0;c[B>>2]=c[A>>2];p=c[f+21828>>2]|0;q=(c[102572+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[102684+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;t=(c[102796+(h<<2)>>2]|0)+(f+32904)|0;s=(n|0)==64;a:do if(s){o=0;n=0;while(1){if((o|0)>=63)break;if(Fl(w,q+(d[135656+(p*63|0)+o>>0]|0)|0)|0){D=r+(d[121932+o>>0]|0)|0;h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Fl(w,D)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==63){c[v+(n<<2)>>2]=63;n=n+1|0}}else{p=n+-1|0;o=0;n=0;while(1){if((o|0)>=(p|0))break;if(Fl(w,q+o|0)|0){h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Fl(w,r+o|0)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==(p|0)){c[v+(n<<2)>>2]=p;n=n+1|0}}while(0);if(s){D=(d[146228+i>>0]|0)+(f+27824)|0;i=n*257&65535;b[D>>1]=i;b[D+8>>1]=i}else a[(d[146228+i>>0]|0)+(f+27824)>>0]=n;if(!(c[e+25664>>2]|0)){q=n;h=0;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Fl(w,t+(d[135616+h>>0]|0)|0)|0)){n=d[135624+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Jl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135640+h>>0]|0)|0;p=d[135632+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=44;break}if(!(Fl(w,n)|0))break;h=h+1|0}if((x|0)==44){while(1){x=0;if((h|0)<23&(Kl(w)|0)!=0){h=h+1|0;x=44}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Kl(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Jl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}b[g+(r<<1)>>1]=o>>>6;if(!q)break;else h=p}}else{h=0;q=n;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Fl(w,t+(d[135616+h>>0]|0)|0)|0)){n=d[135624+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Jl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135640+h>>0]|0)|0;p=d[135632+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=28;break}if(!(Fl(w,n)|0))break;h=h+1|0}if((x|0)==28){while(1){x=0;if((h|0)<23&(Kl(w)|0)!=0){h=h+1|0;x=28}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Kl(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Jl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}c[g+(r<<2)>>2]=o>>6;if(!q)break;else h=p}}c[y>>2]=n;c[z>>2]=h;c[A>>2]=c[B>>2];l=C;return}function Il(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+304|0;if((l|0)>=(m|0))W(304);s=A+48|0;t=A;y=g+32860|0;u=t+4|0;c[u>>2]=c[y>>2];z=g+32856|0;c[t>>2]=c[z>>2];w=g+32872|0;x=t+16|0;c[x>>2]=c[w>>2];q=c[g+21828>>2]|0;p=(c[102572+(q*56|0)+12>>2]|0)+(g+32904)|0;q=(c[102684+(q*56|0)+12>>2]|0)+(g+32904)|0;r=g+33161|0;o=0;k=0;while(1){if((o|0)>=7){v=6;break}j=d[135609+o>>0]|0;if(Fl(t,p+j|0)|0){n=k+1|0;c[s+(k<<2)>>2]=o;if(!(Fl(t,q+j|0)|0))k=n;else{k=n;break}}o=o+1|0}if((v|0)==6)if((o|0)==7){c[s+(k<<2)>>2]=7;k=k+1|0}q=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[q>>1]=64<>1]|0);a[(d[146228+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25664>>2]|0)){q=k;j=0;while(1){q=q+-1|0;f=d[123636+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Fl(t,r+(d[135616+j>>0]|0)|0)|0)){k=d[135624+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Jl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135648+j>>0]|0)|0;p=d[135632+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=34;break}if(!(Fl(t,k)|0))break;j=j+1|0}if((v|0)==34){while(1){v=0;if((j|0)<23&(Kl(t)|0)!=0){j=j+1|0;v=34}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Kl(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Jl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}b[h+(f<<1)>>1]=n-o;if(!q)break;else j=p}}else{j=0;q=k;while(1){q=q+-1|0;f=d[123636+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Fl(t,r+(d[135616+j>>0]|0)|0)|0)){k=d[135624+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Jl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135648+j>>0]|0)|0;p=d[135632+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=18;break}if(!(Fl(t,k)|0))break;j=j+1|0}if((v|0)==18){while(1){v=0;if((j|0)<23&(Kl(t)|0)!=0){j=j+1|0;v=18}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Kl(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Jl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}c[h+(f<<2)>>2]=n-o;if(!q)break;else j=p}}c[y>>2]=k;c[z>>2]=j;c[w>>2]=c[x>>2];l=A;return}function Jl(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function Kl(a){a=a|0;var b=0,d=0;b=c[a>>2]<<1;c[a>>2]=b;if(!(b&65534)){Jl(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function Ll(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[120652+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function Ml(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){Nl(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function Nl(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))Jl(a);return}function Ol(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=u;s=b+556|0;p=c[s>>2]|0;q=(N(p,f)|0)+e|0;r=b+552|0;n=c[r>>2]|0;o=n+-1|0;q=(q|0)<0?0:(q|0)>(o|0)?o:q;h=(N(p,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(n|0)?n:h;n=b+548|0;p=c[n>>2]|0;o=c[p+(q<<2)>>2]|0;p=c[p+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+592>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((p|0)<(o|0)|(q|0)>(h|0)){Wf(e,16,135943,j);break}if(c[e+572>>2]|0){if(!(i&18))e=-2;else{e=b+572|0;c[e>>2]=(c[e>>2]|0)+(q+~h);e=-20}if(i&36){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-38}if(i&72){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-73}if(i&14|0){c[b+576>>2]=1;c[b+572>>2]=2147483647}g=b+580|0;a:do if((e|0)==-128)kX((c[g>>2]|0)+o|0,0,p-o|0)|0;else{f=o;while(1){if((f|0)>=(p|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[r>>2]|0))c[b+572>>2]=2147483647;else{r=(c[g>>2]|0)+p|0;a[r>>0]=e&(d[r>>0]|0);r=(c[g>>2]|0)+p|0;a[r>>0]=d[r>>0]|0|i}i=(c[g>>2]|0)+o|0;a[i>>0]=a[i>>0]|1;if(((((o|0)>0?(t=c[b>>2]|0,(c[t+696>>2]&2|0)==0):0)?Vi(b)|0:0)?(N(c[s>>2]|0,c[t+268>>2]|0)|0)<(q|0):0)?(a[(c[g>>2]|0)+(c[(c[n>>2]|0)+(q+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;c[b+572>>2]=2147483647}}}while(0);l=u;return}function Pl(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Ql(a,b,c){a=a|0;b=b|0;c=c|0;Sl(a,b,c,0);return}function Rl(a,b,c){a=a|0;b=b|0;c=c|0;Sl(a,b,c,1);return}function Sl(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148478;c[h+4>>2]=144175;c[h+8>>2]=33;Wf(0,0,159637,h);Ub()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;Sf(b);if(!g)f=cg(h)|0;else f=Ng(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}l=i;return}function Tl(a){a=a|0;var b=0,d=0;b=a+64|0;mX(b|0)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;wc(a|0,b|0)|0}c[d>>2]=1;nX(b|0)|0;return}function Ul(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+112|0;if((l|0)>=(m|0))W(112);E=F+96|0;D=F+88|0;B=F+80|0;A=F+72|0;s=F+64|0;r=F+56|0;o=F+48|0;n=F+40|0;k=F+32|0;j=F+24|0;i=F+16|0;g=F;if((c[b+25628>>2]|0)==(e|0)?(c[b+29560>>2]|0)==0:0)if(!(c[b+29588>>2]|0))p=1;else{c[g>>2]=147339;c[g+4>>2]=133441;c[g+8>>2]=1681;Wf(0,0,159637,g);Ub()}else p=0;C=e+4|0;g=e+21808|0;c[g>>2]=UM(C)|0;h=VM(C)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[123531+(i?h+-5|0:h)>>0]|0;w=i&255;x=e+836|0;c[x>>2]=w;w=w&3;u=e+840|0;c[u>>2]=w;t=f+44|0;if(!((w|0)==1|(c[t>>2]|0)!=5)){Wf(c[b+4>>2]|0,16,147389,j);g=-1094995529;break}h=WM(C)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;Wf(g,16,150774,k);g=-1094995529;break}g=c[b+27180+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[n>>2]=h;Wf(g,16,150798,n);g=-1094995529;break}w=c[g+4>>2]|0;g=c[w>>2]|0;h=c[b+27052+(g<<2)>>2]|0;if(!h){E=c[b+4>>2]|0;c[o>>2]=g;Wf(E,16,150830,o);g=-1094995529;break}o=c[h+4>>2]|0;j=o+20|0;g=XM(C,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!p?(q=c[b+28244>>2]|0,(q|0)!=(g|0)):0){E=c[b+4>>2]|0;c[r>>2]=q;c[r+4>>2]=g;Wf(E,16,147428,r);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[o+64>>2]|0)){if(i<<24>>24==3&(c[o+72>>2]|0)==0){Wf(c[b+4>>2]|0,16,147460,s);g=-1;break}if(YM(C)|0)n=(YM(C)|0)+1|0;else n=3}else n=3;c[e+21824>>2]=n;c[e+21828>>2]=(n|0)!=3&1;i=(n|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<>2]|0)==5)UM(C)|0;h=o+24|0;g=c[h>>2]|0;if(!g){c[e+34736>>2]=XM(C,c[o+28>>2]|0)|0;if(i&(c[w+8>>2]|0)==1)c[e+34740>>2]=ZM(C)|0;g=c[h>>2]|0}if(((g|0)==1?(c[o+32>>2]|0)==0:0)?(c[e+34744>>2]=ZM(C)|0,i&(c[w+8>>2]|0)==1):0)c[e+34748>>2]=ZM(C)|0;g=e+21836|0;c[g>>2]=0;if(c[w+60>>2]|0)c[g>>2]=WM(C)|0;g=c[u>>2]|0;if((g|0)==3){c[e+21844>>2]=YM(C)|0;g=c[u>>2]|0}i=e+23404|0;k=b+4|0;g=_M(e+23412|0,i,C,w,g,n,c[k>>2]|0)|0;if((g|0)>=0){if((c[u>>2]|0)!=1?(v=$M(e,c[k>>2]|0)|0,(v|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=v;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[w+28>>2]|0)!=0?(c[u>>2]|0)==2:0){y=2;g=51}else g=49;if(((g|0)==49?(c[w+32>>2]|0)==1:0)?(c[u>>2]|0)==3:0){y=3;g=51}if((g|0)==51?(z=aN(C,o,i,y,h,n,c[k>>2]|0)|0,(z|0)<0):0){g=z;break}c[e+34728>>2]=0;do if(c[f+64>>2]|0){if((bN(e,C,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+580>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[u>>2]|0)!=1){if(!(c[w+4>>2]|0))break;g=VM(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[A>>2]=g;Wf(E,16,147530,A);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[w+36>>2]|0;g=(ZM(C)|0)+g|0;if(g>>>0>(((c[o+1184>>2]|0)*6|0)+3|0)>>>0){E=c[k>>2]|0;c[B>>2]=g;Wf(E,16,147558,B);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[w+548+g>>0];c[e+856>>2]=d[w+636+g>>0];g=c[x>>2]|0;if((g|0)==6){YM(C)|0;g=c[x>>2]|0}if((g+-5|0)>>>0<2)ZM(C)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[w+52>>2]|0)){g=0;break}g=VM(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[D>>2]=g;Wf(E,16,147578,D);g=-1094995529;break}D=(g|0)==2?2:g^1;c[h>>2]=D;if(!D){g=0;break}h=ZM(C)|0;g=ZM(C)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){D=c[k>>2]|0;c[E>>2]=h;c[E+4>>2]=g;Wf(D,16,147617,E);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{E=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;Wf(E,16,147358,i);g=-1094995529}while(0);l=F;return g|0}function Vl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+96|0;if((l|0)>=(m|0))W(96);z=G+72|0;y=G+56|0;w=G+48|0;q=G+40|0;r=G+32|0;n=G+16|0;k=G;e=km(a,b,e)|0;a:do if((e|0)>=0){B=a+28216|0;s=c[B>>2]|0;o=a+25684|0;p=c[o>>2]|0;F=a+26380|0;x=c[F>>2]|0;D=d+64|0;c[o>>2]=(c[D>>2]|0)==0&1;e=c[b+21824>>2]|0;c[F>>2]=e;f=c[b+34732>>2]|0;A=a+28224|0;E=a+28244|0;c[E>>2]=f;c[A>>2]=c[b+34736>>2];c[a+28232>>2]=c[b+34740>>2];c[a+28236>>2]=c[b+34744>>2];c[a+28240>>2]=c[b+34748>>2];t=a+28264|0;g=c[t>>2]|0;if((f|0)!=(g|0)?(h=1<>2],C=c[s+48>>2]|0,i=f-C|0,(f-g+((f|0)<(g|0)?h:0)|0)>(C|0)):0)c[t>>2]=i+-1+((i|0)<1?h:0);C=a+26384|0;do if(c[C>>2]|0){i=(x|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=145139;c[k+4>>2]=133441;c[k+8>>2]=1446;Wf(0,0,159637,k);Ub()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[n>>2]=145154;c[n+4>>2]=133441;c[n+8>>2]=1447;Wf(0,0,159637,n);Ub()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){Ai(g+4|0,2147483647,f);e=c[F>>2]|0}if((e|0)==3|(e|0)==(x|0)){if((x|0)==3){p=j;break}Ai((c[j>>2]|0)+4|0,2147483647,(x|0)==1&1);p=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[E>>2]|0)){if((x|0)==3){p=j;break}Ai(f+4|0,2147483647,(x|0)==1&1);p=j;break}if(!((x|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[r>>2]=x;c[r+4>>2]=e;Wf(a,16,145180,r);c[F>>2]=x;c[o>>2]=p;e=-1094995529;break a}if((p|0)==(c[o>>2]|0))p=j;else{Ni(c[h>>2]|0,145218,q);c[F>>2]=x;c[o>>2]=p;e=-1163346256;break a}}else{h=a+4|0;p=a+24312|0}while(0);k=s+20|0;n=a+29556|0;g=s+52|0;o=a+29548|0;j=a+28348|0;while(1){i=c[E>>2]|0;e=c[t>>2]|0;f=(c[C>>2]|0)==0;if((i|0)==(e|0)){g=45;break}if(!f){g=46;break}if((i|0)==((e+1|0)%(1<>2]|0)|0|0)){g=57;break}if(!(c[n>>2]|0))f=0;else f=c[j>>2]|0;s=c[h>>2]|0;c[w>>2]=i;c[w+4>>2]=e;Wf(s,48,145284,w);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=lm(a)|0;if((e|0)<0){g=33;break}s=((c[t>>2]|0)+1|0)%(1<>2]|0)|0;c[t>>2]=s;e=c[p>>2]|0;c[e+88>>2]=s;c[e+648>>2]=(c[g>>2]|0)==0&1;Ai(e+4|0,2147483647,0);Ai((c[p>>2]|0)+4|0,2147483647,1);c[o>>2]=0;e=zi(a)|0;if((e|0)<0?c[(c[h>>2]|0)+580>>2]&8|0:0)break a;if(!(c[n>>2]|0))continue;e=c[j>>2]|0;if((((f|0)!=0?(u=c[e>>2]|0,v=c[f>>2]|0,(c[u+68>>2]|0)==(c[v+68>>2]|0)):0)?(c[u+72>>2]|0)==(c[v+72>>2]|0):0)?(c[u+80>>2]|0)==(c[v+80>>2]|0):0){e=f+4|0;Yi(e,2147483647,0);if(c[f+636>>2]|0)Yi(e,2147483647,1);s=c[c[j>>2]>>2]|0;e=c[f>>2]|0;Qh(s,s+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[t>>2]}if((g|0)==33){c[C>>2]=0;break}else if((g|0)==45)if(f)g=57;else g=46;do if((g|0)==46){g=c[p>>2]|0;if(!g){c[y>>2]=145139;c[y+4>>2]=133441;c[y+8>>2]=1553;Wf(0,0,159637,y);Ub()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[z>>2]=145154;c[z+4>>2]=133441;c[z+8>>2]=1554;Wf(0,0,159637,z);Ub()}e=c[F>>2]|0;f=a+29584|0;if((e|0)==3|(e|0)==(x|0)){c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=0;f=(e|0)!=3&1;c[C>>2]=f;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){Ai(g+4|0,2147483647,(e|0)==2&1);c[C>>2]=1;c[p>>2]=0;e=c[F>>2]|0;f=1;break}if(!(c[g+640>>2]&4)){c[C>>2]=0;f=0;break}else{c[C>>2]=1;c[p>>2]=0;f=1;break}}else if((g|0)==57){e=c[F>>2]|0;f=(e|0)!=3&1;c[C>>2]=f}while(0);if(!((e|0)!=3&(f|0)==0)){if((lm(a)|0)<0){c[C>>2]=0;e=-1094995529;break}}else{mm(a,0);c[(c[p>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[F>>2]|0;c:do if((e|0)==3)kX(c[a+26372>>2]|0,-1,(N(c[a+27008>>2]<<1,c[a+27016>>2]|0)|0)+-2|0)|0;else{g=a+27008|0;h=a+26372|0;i=a+27016|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;y=c[i>>2]|0;z=e+1|0;kX((c[h>>2]|0)+((N(y,e)|0)<<1)|0,-1,y-((z|0)==(f|0)&1)<<1|0)|0;e=z}}while(0);e=c[p>>2]|0;e=nm(e+76|0,e+84|0,c[B>>2]|0,A,c[F>>2]|0,c[D>>2]|0)|0;if((e|0)>=0){k=b+34724|0;iX(a+28748|0,b+33932|0,(c[k>>2]|0)*12|0)|0;c[a+29540>>2]=c[k>>2];c[o>>2]=c[b+34728>>2];k=(c[d+44>>2]|0)==5;j=k&1;c[a+25712>>2]=j;h=c[a+29716>>2]|0;do if((h|0)>-1){i=c[E>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29568>>2]=1;g=a+29572|0;f=c[g>>2]|0;if((f|0)>=0){e=c[(c[B>>2]|0)+20>>2]|0;if(((1<>>0<=h>>>0)break}else e=c[(c[B>>2]|0)+20>>2]|0;B=(1<>2]=B;c[g>>2]=(c[a+29568>>2]|0)==0?i:B}while(0);f=c[p>>2]|0;e=(c[f>>2]|0)+84|0;c[e>>2]=c[e>>2]|j;e=a+29572|0;if(k){c[e>>2]=-1;c[f+644>>2]=1;E=a+29576|0;e=c[E>>2]|1;c[E>>2]=e}else{if((c[e>>2]|0)==(c[E>>2]|0)?c[D>>2]|0:0){c[e>>2]=-1;c[f+644>>2]=1}e=c[a+29576>>2]|0}E=f+644|0;c[E>>2]=c[E>>2]|e;if(((c[F>>2]|0)!=3?c[C>>2]|0:0)?(c[a+29584>>2]|0)<=1:0){e=0;break}om(a);pm(a);e=0}}while(0);l=G;return e|0}function Wl(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+160|0;if((l|0)>=(m|0))W(160);F=G+24|0;o=G+16|0;g=G+8|0;f=G;x=G+96|0;if((c[a+25712>>2]|0)!=0?(c[e+44>>2]|0)!=5:0){Wf(c[a+4>>2]|0,16,144464,f);f=-1094995529}else y=4;do if((y|0)==4){h=c[d+21808>>2]|0;j=a+26376|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26380>>2]|0)!=3;else f=1;E=c[a+27020>>2]|0;if(!(h<<(f&1)>>>0>>0&h>>>0>>0)){Wf(c[a+4>>2]|0,16,144503,g);f=-1094995529;break}A=a+27012|0;f=c[A>>2]|0;w=(h>>>0)%(f>>>0)|0;B=d+21788|0;c[B>>2]=w;c[d+21800>>2]=w;w=a+26380|0;E=c[w>>2]|0;f=((h>>>0)/(f>>>0)|0)<<(((E|0)!=3|i^1)&1);v=d+21792|0;c[v>>2]=f;n=d+21804|0;c[n>>2]=f;if((E|0)==2){E=f+1|0;c[v>>2]=E;c[n>>2]=E}f=Xl(a,d)|0;if((f|0)>=0){h=a+28212|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){Yl(a,d,-1);if(!(c[j>>2]|0))y=15;else{Yl(a,d,0);Yl(a,d,1);y=15}}}else y=15;if(((y|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)Zl(a,d);if(!(c[a+29588>>2]|0))_l(a,d);u=a+4|0;k=c[u>>2]|0;f=c[k+724>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27028>>2]|0)==5)y=24;else{y=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){y=29;break a}else break;else if((f|0)>7)break;else break a;else y=24;while(0);if((y|0)==24?(c[g>>2]|0)!=1:0){y=29;break}if(!(c[e+64>>2]|0))y=29}else y=29;while(0);if((y|0)==29)c[d+868>>2]=0;C=d+868|0;do if((c[C>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[k+64>>2]&1)){c[a+25708>>2]=1;break}else{c[C>>2]=2;break}while(0);D=d+872|0;i=c[D>>2]|0;E=d+876|0;j=c[E>>2]|0;g=c[h>>2]|0;f=g+44|0;h=c[f>>2]|0;z=(h|0)<0;g=g+48|0;h=((z?0:h)|0)<=(c[g>>2]|0);if(h|z^1)f=c[(h?g:f)>>2]|0;else f=0;c[d+860>>2]=-33-((i|0)>(j|0)?j:i)-f+((c[(c[a+28216>>2]|0)+1184>>2]|0)*6|0);t=a+29560|0;g=c[t>>2]|0;h=g+1|0;c[t>>2]=h;t=d+832|0;c[t>>2]=h;if(!h)f=c[n>>2]|0;else{f=c[n>>2]|0;b[a+29600+((g&31)<<1)>>1]=f}z=b[a+29600+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(z|0)&(z+3|0)>=(f|0))){c[o>>2]=h;c[o+4>>2]=32;Wf(k,24,144531,o)}p=d+23412|0;q=a+29556|0;r=a+29552|0;o=0;while(1){if((o|0)==2)break;s=c[t>>2]&31;k=d+23404+(o<<2)|0;j=0;while(1){if((j|0)==16)break;n=x+(j<<2)|0;c[n>>2]=60;b:do if(o>>>0<(c[p>>2]|0)>>>0?j>>>0<(c[k>>2]|0)>>>0:0){f=c[(c[c[d+23416+(o*1920|0)+(j*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!f)break;h=c[f>>2]|0;i=c[q>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;if((c[c[(c[c[a+28348+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(h|0)){y=53;break}f=f+1|0}if((y|0)==53){y=0;c[n>>2]=f}g=c[r>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;z=c[a+28476+(f<<2)>>2]|0;if(z|0?(c[c[(c[z>>2]|0)+248>>2]>>2]|0)==(h|0):0)break;f=f+1|0}c[n>>2]=i+f}while(0);j=j+1|0}c[a+29940+(s<<9)+(o<<8)+4>>2]=-1;c[a+29940+(s<<9)+(o<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29940+(s<<9)+(o<<8)+(f+2<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f<<2)>>2]<<2;f=f+1|0}c[a+29940+(s<<9)+(o<<8)+76>>2]=-1;c[a+29940+(s<<9)+(o<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29940+(s<<9)+(o<<8)+(f+4<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f+-16>>1<<2)>>2]<<2;f=f+1|0}o=o+1|0}z=c[u>>2]|0;if(!(c[z+576>>2]&1))f=0;else{y=c[t>>2]|0;x=c[w>>2]|0;u=N(c[A>>2]|0,c[v>>2]|0)|0;u=u+(c[B>>2]|0)|0;f=d+836|0;v=(Wi(c[f>>2]|0)|0)<<24>>24;w=c[d+844>>2]|0?144632:262508;s=(c[e+44>>2]|0)==5?144637:262508;t=c[a+28244>>2]|0;o=c[a+24312>>2]|0;n=c[o+76>>2]|0;o=c[o+80>>2]|0;p=c[d+23404>>2]|0;q=c[d+23408>>2]|0;r=c[d+848>>2]|0;k=c[C>>2]|0;j=c[D>>2]|0;g=c[E>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=c[d+884>>2]|0?144642:262508;else i=262508;if((c[f>>2]|0)==3)f=c[d+21844>>2]|0?144644:144649;else f=262508;c[F>>2]=y;c[F+4>>2]=(x|0)==3?144630:(x|0)==1?144626:144628;c[F+8>>2]=u;c[F+12>>2]=v;c[F+16>>2]=w;c[F+20>>2]=s;c[F+24>>2]=t;c[F+28>>2]=n;c[F+32>>2]=o;c[F+36>>2]=p;c[F+40>>2]=q;c[F+44>>2]=r;c[F+48>>2]=k;c[F+52>>2]=j;c[F+56>>2]=g;c[F+60>>2]=h;c[F+64>>2]=i;c[F+68>>2]=f;Wf(z,48,144654,F);f=0}}}while(0);l=G;return f|0}function Xl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+64|0;if((l|0)>=(m|0))W(64);I=K+48|0;J=K+40|0;E=K+32|0;D=K+16|0;C=K+8|0;B=K;w=K+60|0;Gi(b);Hi(b);bm(b,d);F=d+23412|0;x=d+34752|0;z=d+34756|0;A=b+29556|0;G=b+4|0;H=b+26380|0;u=0;a:while(1){e=c[F>>2]|0;if(u>>>0>=e>>>0){p=0;r=29;break}s=d+27768+(u<<2)|0;t=d+23404+(u<<2)|0;p=0;e=c[x>>2]|0;while(1){if((p|0)>=(c[s>>2]|0))break;f=a[d+27256+(u<<8)+(p<<3)>>0]|0;i=c[d+27256+(u<<8)+(p<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[z>>2]|0;if(g>>>0>h>>>0){r=11;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;g=Ci(b,e,w)|0;i=c[w>>2]|0;f=c[A>>2]|0;while(1){r=f;f=f+-1|0;if((r|0)<=0){r=18;break b}h=c[b+28348+(f<<2)>>2]|0;if((c[h+88>>2]|0)!=(g|0))continue;if(i&c[h+640>>2]|0){o=e;r=15;break}}break}case 2:{f=Ci(b,i,w)|0;if(f>>>0>31){r=16;break a}f=c[b+28476+(f<<2)>>2]|0;if((f|0)!=0?(y=c[w>>2]|0,(y&c[f+640>>2]|0)!=0):0){o=e;h=f;e=i;i=y;r=15}else r=18;break}default:{r=17;break a}}while(0);if((r|0)==15){c[h+96>>2]=e;f=h+96|0;g=c[t>>2]|0;j=h+100|0;e=p;while(1){k=e+1|0;if(k>>>0>=g>>>0)break;n=c[d+23416+(u*1920|0)+(e*40|0)+36>>2]|0;if(!n){e=k;continue}if((c[j>>2]|0)!=(c[n+100>>2]|0)){e=k;continue}if((c[f>>2]|0)==(c[d+23416+(u*1920|0)+(e*40|0)+32>>2]|0))break;else e=k}while(1){if((e|0)<=(p|0))break;g=e+-1|0;f=d+23416+(u*1920|0)+(e*40|0)|0;e=d+23416+(u*1920|0)+(g*40|0)|0;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=g}e=d+23416+(u*1920|0)+(p*40|0)|0;cm(e,h);if((c[H>>2]|0)==3)e=o;else{dm(e,i);e=o}}else if((r|0)==18){Wf(c[G>>2]|0,16,144922,E);f=d+23416+(u*1920|0)+(p*40|0)|0;q=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(q|0))}p=p+1|0}u=u+1|0}c:do if((r|0)==11){Wf(c[G>>2]|0,16,144867,B);v=-1094995529}else if((r|0)==16){Wf(c[G>>2]|0,16,144894,C);v=-1094995529}else if((r|0)==17){c[D>>2]=165642;c[D+4>>2]=127720;c[D+8>>2]=373;Wf(0,0,159637,D);Ub()}else if((r|0)==29){d:while(1){r=0;if(p>>>0>=e>>>0)break;i=d+23404+(p<<2)|0;j=b+28268+(p*40|0)|0;k=b+28268+(p*40|0)+28|0;n=b+28268+(p*40|0)+36|0;o=b+28268+(p*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(p*1920|0)+(h*40|0)|0;g=d+23416+(p*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[H>>2]|0)==3?(c[d+23416+(p*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)r=35}else r=35;if((r|0)==35){r=0;e=c[G>>2]|0;c[J>>2]=c[k>>2];Wf(e,16,144964,J);e=0;while(1){if((e|0)==16)break;c[b+28676+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[n>>2]|0)){v=-1;break c}if((c[H>>2]|0)==3?(c[o>>2]&3|0)!=3:0){v=-1;break c}e=j;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=c[g>>2]|0}if((em(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{r=43;break d}}p=p+1|0;e=c[F>>2]|0;r=29}if((r|0)==43){c[I>>2]=145006;c[I+4>>2]=127720;c[I+8>>2]=411;Wf(0,0,159637,I);Ub()}if(!(c[b+26376>>2]|0))v=0;else{fm(d);v=0}}while(0);l=K;return v|0}function Yl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26380>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26376>>2]|0)==0?(l=c[b+23444>>2]|0,m=c[b+25364>>2]|0,l=VW(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0,m=g<<1,(l|0)==(m|0)&(y|0)==(((m|0)<0)<<31>>31|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(p=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,p=(p+128|0)>>>0>255?p>>31^127:p,o=p&255,p=p<<24>>24,o<<24>>24!=0):0){i=(N((((o<<24>>24>-1?p:0-p|0)>>1)+16384|0)/(p|0)|0,l)|0)+32>>8;i=(i+64|0)>>>0<193?64-i|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function Zl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=c[a+26380>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26376>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;c[b+21996+(e<<7)+((a^e)<<2)>>2]=am(b,g,h,a+16|0)|0;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;c[b+21868+(a<<2)>>2]=am(b,j,k,a)|0;a=a+1|0}return}function _l(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;j=s;o=a+24312|0;h=c[o>>2]|0;n=a+26380|0;q=c[n>>2]&1^1;p=b+25360|0;f=c[p>>2]&1;k=b+23412|0;d=0;while(1){if(d>>>0>=(c[k>>2]|0)>>>0)break;g=b+23404+(d<<2)|0;c[h+616+(q<<3)+(d<<2)>>2]=c[g>>2];e=0;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break;c[h+104+(q<<8)+(d<<7)+(e<<2)>>2]=c[b+23416+(d*1920|0)+(e*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(e*40|0)+36>>2]|0)+88>>2]<<2;e=e+1|0}d=d+1|0}i=f^1;if((c[n>>2]|0)==3){e=h+616|0;f=c[e+4>>2]|0;g=h+624|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;iX(h+360|0,h+104|0,256)|0}if(c[a+29560>>2]|0){if((c[h+632>>2]|0)!=(c[a+26376>>2]|0)){c[j>>2]=144744;c[j+4>>2]=144776;c[j+8>>2]=144;Wf(0,0,159637,j);Ub()}}else c[h+632>>2]=c[a+26376>>2];f=b+21852|0;c[f>>2]=0;a:do if((c[k>>2]|0)==2?c[b+23408>>2]|0:0){e=c[n>>2]|0;if((e|0)!=3){d=c[p>>2]|0;if((d&e|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0){c[f>>2]=(d<<1)+-3;d=q}else d=q}else{d=c[(c[o>>2]|0)+84>>2]|0;f=c[b+25372>>2]|0;e=c[f+76>>2]|0;f=c[f+80>>2]|0;if((e|0)==2147483647&(f|0)==2147483647){Wf(c[a+4>>2]|0,16,144801,r);d=1}else{r=e-d|0;d=f-d|0;d=(((r|0)>-1?r:0-r|0)|0)>=(((d|0)>-1?d:0-d|0)|0)&1}c[b+21848>>2]=d;i=d}if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26376|0;f=0;while(1){if((f|0)==2)break a;$l(a,b,g,f,d,i,0);b:do if(c[h>>2]|0){e=0;while(1){if((e|0)==2)break b;$l(a,b,b+22636+(e*384|0)|0,f,e,e,1);e=e+1|0}}while(0);f=f+1|0}}}while(0);l=s;return}function $l(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26380>>2]|0)!=3;kX(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;a:while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0)){h=m;continue a}h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=13;break}h=h+1|0}if((t|0)==13){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}}return}function am(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;h=c[a+23416+(e*40|0)+28>>2]|0;i=((h|0)<0)<<31>>31;d=WW(d|0,((d|0)<0)<<31>>31|0,h|0,i|0)|0;g=(d+128|0)>>>0>255?d>>31^127:d;f=g&255;g=g<<24>>24;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))Ni(c[(c[a>>2]|0)+4>>2]|0,144830,k);if(f<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=WW(b|0,((b|0)<0)<<31>>31|0,h|0,i|0)|0;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))Wf(c[(c[a>>2]|0)+4>>2]|0,48,144848,j);j=(N((((f<<24>>24>-1?g:0-g|0)>>1)+16384|0)/(g|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=j>>6;d=(d+1024|0)>>>0>2047?j>>31^1023:d}else d=256;l=k;return d|0}function bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+240|0;if((l|0)>=(m|0))W(240);t=u+48|0;d=u+32|0;p=u+16|0;o=u;n=u+104|0;q=u+96|0;r=u+56|0;s=b+840|0;do if((c[s>>2]|0)==3){k=a+26380|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28348|0;i=a+29556|0;j=a+28476|0;f=0;while(1){if((f|0)>=2){d=11;break}d=gm(n,h,c[i>>2]|0,g,f^1)|0;d=(gm(n+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=hm(b+23416+(f*1920|0)|0,48,n,d,0,c[k>>2]|0)|0;d=(hm(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)kX(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[q+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[o>>2]=145079;c[o+4>>2]=127720;c[o+8>>2]=153;Wf(0,0,159637,o);Ub()}else if((d|0)==7){c[p>>2]=145079;c[p+4>>2]=127720;c[p+8>>2]=160;Wf(0,0,159637,p);Ub()}else if((d|0)==11){e=c[q>>2]|0;q=c[q+4>>2]|0;if((e|0)==(q|0)&(q|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=r;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=r;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{r=a+26380|0;e=hm(b+23416|0,48,a+28348|0,c[a+29556>>2]|0,0,c[r>>2]|0)|0;e=(hm(b+23416+(e*40|0)|0,48-e|0,a+28476|0,16,1,c[r>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=145079;c[d+4>>2]=127720;c[d+8>>2]=181;Wf(0,0,159637,d);Ub()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)kX(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if((f|0)>=(((c[s>>2]|0)==3?2:1)|0))break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;e=b+23416+(f*1920|0)+(g*40|0)|0;d=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(d|0?im(a,d)|0:0){Wf(c[h>>2]|0,16,145089,t);j=e;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28268+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}l=u;return}function cm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function em(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function fm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+23412|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;k=a+23404+(g<<2)|0;h=0;while(1){if(h>>>0>=(c[k>>2]|0)>>>0)break;f=(h<<1)+16|0;j=a+23416+(g*1920|0)+(f*40|0)|0;b=j;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=j+40|0;d=j;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=j+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[j+64>>2]=2;c[j+68>>2]=c[(c[j+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function gm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f|0?-2147483648:2147483647;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function hm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;q=s;p=g^3;o=(f|0)==0;j=0;f=0;h=0;while(1){if(!((f|0)<(e|0)|(h|0)<(e|0))){f=24;break}while(1){if((f|0)>=(e|0)){i=0;break}n=c[d+(f<<2)>>2]|0;if(n|0?c[n+640>>2]&g|0:0){i=1;break}f=f+1|0}n=h;while(1){if((n|0)>=(e|0)){k=0;break}k=c[d+(n<<2)>>2]|0;if(k|0?c[k+640>>2]&p|0:0){k=1;break}n=n+1|0}if(i){if((j|0)>=(b|0)){f=14;break}i=c[d+(f<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=f;c[i+96>>2]=h;jm(a+(j*40|0)|0,i,g,1);j=j+1|0;f=f+1|0}if(!k){h=n;continue}if((j|0)>=(b|0)){f=20;break}i=c[d+(n<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=n;c[i+96>>2]=h;jm(a+(j*40|0)|0,i,p,0);j=j+1|0;h=n+1|0}if((f|0)==14){c[q>>2]=145123;c[q+4>>2]=127720;c[q+8>>2]=90;Wf(0,0,159637,q);Ub()}else if((f|0)==20){c[r>>2]=145123;c[r+4>>2]=127720;c[r+8>>2]=95;Wf(0,0,159637,r);Ub()}else if((f|0)==24){l=s;return j|0}return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function jm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(cm(a,b),(d|0)!=3):0){dm(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;if((l|0)>=(m|0))W(64);o=t+56|0;n=t+48|0;s=t+40|0;r=t+24|0;q=t;k=(d|0)!=0;if(k){i=a+28204|0;Bg(i);f=a+28212|0;c[f>>2]=0;d=Dh(c[a+27180+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28212|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28216|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27052+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28208|0;Bg(i);c[h>>2]=0;d=Dh(c[a+27052+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+27012>>2]|0)==(c[g+56>>2]|0)?(c[a+27008>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29596>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27044>>2]|0)==(e|0)?(c[a+27048>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25692|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+100>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+104>>2]|0)):0)?(c[a+29596>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)?(c[a+27012>>2]|0)==(f|0):0)f=(c[a+27008>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+112>>2]|0;if(!((e|0)!=-1?(j=En(e)|0,(j|0)==(En(Fn(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+188|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];o=(Gn(n,o)|0)==0;f=o?f:1}if(((c[a+29588>>2]|0)==0?(o=Hn(g)|0,n=c[h>>2]|0,c[n+716>>2]=o,c[n+720>>2]=c[g+8>>2],c[n+300>>2]=c[g+48>>2],n=c[g+56>>2]|0,c[a+27012>>2]=n,o=c[g+60>>2]|0,c[a+27008>>2]=o,c[a+27020>>2]=N(o,n)|0,c[a+27016>>2]=n+1,c[a+26368>>2]=n<<2,c[a+25680>>2]=(c[g+12>>2]|0)<2&1,c[a+25668>>2]=n<<4,c[a+25672>>2]=o<<4,In(a),(c[g+108>>2]|0)!=0):0)?(p=c[h>>2]|0,c[p+328>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){o=p+324|0;n=c[g+128>>2]|0;d=(c[o>>2]|0)==(n|0)?d:1;c[p+316>>2]=c[g+120>>2];c[p+320>>2]=c[g+124>>2];c[o>>2]=n}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;p=c[d+100>>2]|0;b=c[a+25672>>2]|0;r=c[d+104>>2]|0;s=(c[a+29560>>2]|0)+1|0;c[q>>2]=c[a+25668>>2];c[q+4>>2]=p;c[q+8>>2]=b;c[q+12>>2]=r;c[q+16>>2]=s;Wf(d,16,145873,q);d=-1094995529;break}if(!e)Ug(a);d=Fn(a,1)|0;if((d|0)>=0){q=c[h>>2]|0;c[q+112>>2]=d;p=c[a+25668>>2]|0;b=c[a+25672>>2]|0;d=qh(d)|0;c[r>>2]=p;c[r+4>>2]=b;c[r+8>>2]=d;Wf(q,40,145928,r);d=Jn(a)|0;if((d|0)<0)Wf(c[h>>2]|0,16,145966,s);else d=0}}else d=0}while(0);l=t;return d|0}function lm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=p+8|0;f=p+16|0;n=c[b+25664>>2]|0;o=b+28216|0;g=c[o>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(tm(c[g>>2]|0)|0){mm(b,1);k=b+24312|0;c[k>>2]=0;d=um(b)|0;if((d|0)<0){Wf(c[g>>2]|0,16,145433,e);break}i=b+696+(d*656|0)|0;j=b+26380|0;h=c[j>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25684>>2]|0)==0?h:0;e=b+25688|0;q=c[e>>2]|0;c[e>>2]=q+1;e=c[i>>2]|0;c[e+128>>2]=q;c[b+696+(d*656|0)+636>>2]=(h|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28244>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29716>>2];h=b+25628|0;c[e+88>>2]=c[(c[h>>2]|0)+836>>2];c[e+392>>2]=c[b+25716>>2];c[e+396>>2]=c[b+25720>>2];c[e+384>>2]=c[b+25724>>2];c[e+388>>2]=c[b+25728>>2];d=vm(b,i)|0;if((d|0)>=0){if((c[b+29576>>2]|0)==0?(c[(c[g>>2]|0)+592>>2]|0)==0:0)wm(c[i>>2]|0,f);c[k>>2]=i;d=b+24316|0;Wg(b,d);Ti((c[h>>2]|0)+696|0,0);d=ki(b,d,c[k>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;g=c[c[k>>2]>>2]|0;q=c[h>>2]|0;c[q+(d*34768|0)+21772>>2]=c[g+32>>2];c[q+(d*34768|0)+21776>>2]=c[g+36>>2];d=d+1|0}if(!(c[b+29672>>2]|0))d=0;else{xm((c[h>>2]|0)+24|0);Ti((c[h>>2]|0)+728|0,0);Ti((c[h>>2]|0)+760|0,0);d=0}while(1){if((d|0)==16){d=0;break}q=a[146228+d>>0]|0;h=((q<<2&255)+16&28)<>3;c[b+25976+(d<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<2,q)|0);c[b+25976+(d+48<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<3,q)|0);d=d+1|0}while(1){if((d|0)==16)break;q=a[146228+d>>0]|0;h=((q<<2&255)+16&28)<>3;g=h+(N(c[(c[i>>2]|0)+36>>2]<<2,q)|0)|0;c[b+25976+(d+32<<2)>>2]=g;c[b+25976+(d+16<<2)>>2]=g;q=h+(N(c[(c[i>>2]|0)+36>>2]<<3,q)|0)|0;c[b+25976+(d+80<<2)>>2]=q;c[b+25976+(d+64<<2)>>2]=q;d=d+1|0}q=c[k>>2]|0;c[q+640>>2]=0;c[q+80>>2]=2147483647;c[q+76>>2]=2147483647;c[b+28740>>2]=0;c[b+25708>>2]=0;if(!(c[(c[o>>2]|0)+68>>2]|0))d=0;else d=(c[j>>2]|0)==3&1;c[b+26376>>2]=d;d=c[b+29712>>2]|0;if((d|0)>-1){c[b+25704>>2]=d;d=0}else d=0}}}else{Wf(c[g>>2]|0,16,145387,p);d=-1}while(0);l=p;return d|0}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;Wg(a,f)}while(0);b=b+1|0}return}function nm(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=k+i|0;l=((j|0)<0)<<31>>31;if((g|0)==3){k=c[f+8>>2]|0;k=VW(k|0,((k|0)<0)<<31>>31|0,j|0,l|0)|0;i=j;h=l;j=y}else{i=j;h=l;k=j;j=l}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:l+i|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){i=i+-1|0;k=(i|0)%(m|0)|0;i=N((i|0)/(m|0)|0,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;i=(c[f+12>>2]|0)+i|0;l=((i|0)<0)<<31>>31;k=c[e+40>>2]|0;k=VW(i|0,l|0,k|0,((k|0)<0)<<31>>31|0)|0;j=y;if((g|0)==3){h=c[f+16>>2]|0;k=VW(k|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=l;j=y}else h=l;break}default:{k=(l+i<<1)+(((h|0)==0)<<31>>31)|0;j=((k|0)<0)<<31>>31;i=k;h=j}}if((i|0)==(i|0)&(h|0)==(((i|0)<0)<<31>>31|0)?(k|0)==(k|0)&(j|0)==(((k|0)<0)<<31>>31|0):0){if((g|0)!=2?(c[a>>2]=i,(g|0)==1):0)j=a+4|0;else{j=a+4|0;c[j>>2]=k;i=c[a>>2]|0}c[d>>2]=c[a+(((i|0)>(c[j>>2]|0)&1)<<2)>>2];i=0}else i=-1094995529;return i|0}function om(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+28216>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;g=j+212|0;c[g>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29676>>2]|0)!=0:0){f=c[b+29680>>2]|0;switch(f|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[g>>2]=1;d=1;break}case 4:case 3:{if((c[b+26376>>2]|0)==0?(c[b+26380>>2]|0)==3:0)d=c[b+29564>>2]|0;else d=1;c[g>>2]=d;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}e=c[b+29684>>2]|0;if((e&3|0)!=0&f>>>0<5){d=e>>>1&1;h=17}}else{if(!(c[b+26376>>2]|0))d=(c[b+26380>>2]|0)!=3;else d=1;d=d&1;h=17}if((h|0)==17)c[g>>2]=d;c[b+29564>>2]=d;e=c[q+76>>2]|0;f=c[q+80>>2]|0;do if((e|0)==(f|0)){if(!i?c[b+29676>>2]|0:0){switch(c[b+29680>>2]|0){case 5:case 3:{d=1;break}default:d=0}c[j+216>>2]=d;break}c[j+216>>2]=(d|0)!=0&1}else c[j+216>>2]=(e|0)<(f|0)&1;while(0);if(((c[b+29852>>2]|0?(k=b+29864|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29872|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=qm(j)|0,m|0):0){switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:{c[m>>2]=c[b+29876>>2]|0?5:1;break}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}if((c[l>>2]|0)==2)c[m+4>>2]=1;if((c[k>>2]|0)==5)c[m+8>>2]=c[b+29880>>2]|0?1:2}do if(c[b+29884>>2]|0){d=c[b+29888>>2]|0;if(((d|0)==0?(c[b+29892>>2]|0)==0:0)?(c[b+29896>>2]|0)==0:0)break;e=$h(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;rm(c[m>>2]|0,+(d*360|0)*.0000152587890625);sm(c[m>>2]|0,c[b+29892>>2]|0,c[b+29896>>2]|0)}}while(0);d=b+29696|0;if(c[d>>2]|0?(n=$h(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29700>>0]|0;c[d>>2]=0}d=b+29708|0;if(c[d>>2]|0){e=b+29704|0;f=$h(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)iX(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;Sf(d);c[e>>2]=0;n=(c[b+4>>2]|0)+848|0;c[n>>2]=c[n>>2]|2}if((c[b+29916>>2]|0?(o=b+29920|0,Aj(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+320>>2]=p}return}function pm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);r=s+32|0;o=s+16|0;k=s+8|0;h=s;d=c[a+28216>>2]|0;n=c[a+24312>>2]|0;j=a+29544|0;i=n+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=d+660|0;b=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[b+568>>2]|0)<=0:0)){p=b+140|0;f=c[p>>2]|0;g=c[d+664>>2]|0;c[p>>2]=(f|0)>(g|0)?f:g}g=n+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;p=8;break}d=c[a+28676+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){p=7;break}if(!e)c[a+28676+(b+-1<<2)>>2]=d;b=b+1|0}if((p|0)==7)if(e)b=0;else p=8;if((p|0)==8)c[a+28676+(b+-1<<2)>>2]=f;e=16-b|0;if((c[(c[n>>2]|0)+88>>2]|0)==3)if((e|0)>1)p=17;else p=16;else{p=c[a+28732>>2]|0;if((p|0)!=-2147483648?!((e|0)>1?1:((c[a+28736>>2]|0)-p|0)<3):0)p=16;else p=17}if((p|0)==16){b=a+4|0;e=1;d=c[b>>2]|0;p=22}else if((p|0)==17){f=a+4|0;d=c[f>>2]|0;if(!b){e=a+28676|0;b=c[e>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;Wf(d,40,145305,h);b=1;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}c[e>>2]=c[g>>2];c[i>>2]=1;h=f}else{b=f;p=22}}if((p|0)==22)if((c[d+140>>2]|0)<(e|0)?(c[j>>2]|0)==0:0){h=(c[d+360>>2]|0)>1?24:40;c[k>>2]=e;Wf(d,h,145324,k);c[(c[b>>2]|0)+140>>2]=e;h=b}else h=b;k=0;while(1){b=a+28604+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if((k|0)>=17){c[o>>2]=145357;c[o+4>>2]=133441;c[o+8>>2]=1337;Wf(0,0,159637,o);Ub()}c[b>>2]=n;b=n+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28604|0;f=c[j>>2]|0;n=f;i=0;b=1;while(1){d=c[a+28604+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;p=(c[d+84>>2]|0)<(c[n+84>>2]|0);n=p?d:n;i=p?b:i;b=b+1|0}b=c[h>>2]|0;e=c[b+140>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28744>>2]=-2147483648}while(0);d=c[n+84>>2]|0;g=a+28744|0;f=(d|0)<(c[g>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=n+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28604+(i<<2)>>2]|0;while(1){if(!e)break;p=b+1|0;e=c[a+28604+(p<<2)>>2]|0;c[a+28604+(b<<2)>>2]=e;b=p}if(f){b=c[h>>2]|0;p=61;break}else{e=c[h>>2]|0;b=e;e=c[e+140>>2]|0;p=47;break}}else p=47;while(0);do if((p|0)==47){if((k|0)<(e|0)){p=61;break}h=a+28740|0;c[h>>2]=n;if((i|0)==0?(q=c[j>>2]|0,(q|0)!=0):0)if((c[(c[q>>2]|0)+84>>2]|0)==0?(c[q+92>>2]|0)==0:0)p=53;else d=-2147483648;else p=53;c[g>>2]=d;f=n+644|0;g=c[f>>2]|0;e=a+29576|0;d=c[e>>2]|0;if(g){d=d|2;c[e>>2]=d}a=d>>>1&1|g;c[f>>2]=a;if(!a){if((c[b+60>>2]&8|0)==0?(c[b+64>>2]&4194304|0)==0:0){c[h>>2]=0;break}a=(c[n>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((p|0)==61){c[r>>2]=f?145368:262508;Wf(b,48,145372,r)}l=s;return}function qm(b){b=b|0;var d=0,e=0;b=$h(b,2,12)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d+12|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));b=c[b>>2]|0}return b|0}function rm(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+D(+b);b=+E(+b);d=a+8|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function sm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;c[d>>2]=N(c[d>>2]|0,c[e+(((b|0)%3|0)<<2)>>2]|0)|0;b=b+1|0}}while(0);l=f;return}function tm(a){a=a|0;var b=0;if((c[a+696>>2]&1|0)!=0?(c[(c[(c[a+28>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+68>>2]|0))if((c[a+700>>2]|0)==0?(c[a+400>>2]|0)!=12:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function um(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function vm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=145483;c[e+4>>2]=133441;c[e+8>>2]=192;Wf(0,0,159637,e);Ub()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=rn(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+592>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=145500;c[g+4>>2]=133441;c[g+8>>2]=202;Wf(0,0,159637,g);Ub()}e=c[e+40>>2]|0;if(e|0){e=vh(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29924|0;e=c[f>>2]|0;if(!e){d=sn(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}f=b+20|0;c[f>>2]=kh(e)|0;e=kh(c[a+29928>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27016>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29932|0;g=a+29936|0;e=0;while(1){if((e|0)>=2){d=0;break a}i=b+28+(e<<2)|0;c[i>>2]=kh(c[f>>2]|0)|0;h=kh(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){Wg(a,b);d=(d|0)<0?d:-12}l=k;return d|0}function wm(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=v;g=ph(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=145460;c[f+4>>2]=127039;c[f+8>>2]=410;Wf(0,0,159637,f);Ub()}q=g+4|0;r=a+68|0;s=g+5|0;t=a+72|0;u=g+6|0;o=g+32|0;n=0;while(1){if((n|0)>=(d[q>>0]|0|0))break;f=c[r>>2]|0;if((n+-1|0)>>>0<2){p=0-(0-(c[t>>2]|0)>>(d[u>>0]|0))|0;f=0-(0-f>>(d[s>>0]|0))|0}else p=c[t>>2]|0;j=a+32+(n<<2)|0;k=e+(n<<2)|0;g=0;i=c[a+(n<<2)>>2]|0;while(1){if((g|0)>=(p|0))break;a:do if((c[o>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[k>>2];h=h+1|0}}else kX(i|0,c[k>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[j>>2]|0)|0}n=n+1|0}l=v;return}function xm(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+572>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){ym(a+4|0,b);c[d>>2]=1}kX(c[a+580>>2]|0,127,N(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function ym(a,b){a=a|0;b=b|0;c[a>>2]=17;c[a+484>>2]=2;c[a+488>>2]=3;c[a+492>>2]=4;c[a+496>>2]=5;c[a+500>>2]=6;c[a+504>>2]=7;c[a+508>>2]=8;c[a+512>>2]=9;c[a+52>>2]=10;c[a+56>>2]=11;c[a+68>>2]=12;c[a+72>>2]=13;c[a+76>>2]=14;c[a+80>>2]=15;c[a+292>>2]=16;c[a+296>>2]=17;c[a+316>>2]=18;c[a+320>>2]=19;c[a+4>>2]=2;c[a+8>>2]=6;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function zm(a){a=a|0;var c=0,d=0,e=0,f=0;c=0;d=0;while(1){if((c|0)==64)break;f=b[a+(c<<1)>>1]|0;e=f<<16>>16;c=c+1|0;d=(f<<16>>16>-1?e:0-e|0)+d|0}return d|0}function Am(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Bm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=d[a+1>>0]|0;w=(d[b>>0]|0)-(((d[a>>0]|0)+1+v|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+1+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Cm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Dm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;y=d[a+1>>0]|0;w=d[c+1>>0]|0;x=(d[b>>0]|0)-(((d[a>>0]|0)+2+y+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+2+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Em(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Fm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=d[a+1>>0]|0;o=(d[b>>0]|0)-(((d[a>>0]|0)+1+n|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Gm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Hm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;q=d[a+1>>0]|0;o=d[c+1>>0]|0;p=(d[b>>0]|0)-(((d[a>>0]|0)+2+q+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+2+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Im(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Jm(a,b,c,d,8)|0;f=(Jm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Jm(a,g,b,d,8)|0)+f|0;f=f+(Jm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Jm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;i=l;l=l+256|0;if((l|0)>=(m|0))W(256);h=i;a=0;while(1){if((a|0)==8){a=0;g=0;break}j=N(a,f)|0;r=j+1|0;t=d[e+r>>0]|0;r=d[b+r>>0]|0;k=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;q=k+t-r|0;g=a<<3;r=k-t+r|0;t=j+2|0;k=j+3|0;s=d[e+k>>0]|0;k=d[b+k>>0]|0;t=(d[e+t>>0]|0)-(d[b+t>>0]|0)|0;o=t+s-k|0;k=t-s+k|0;s=j+4|0;t=j+5|0;u=d[e+t>>0]|0;t=d[b+t>>0]|0;s=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;p=s+u-t|0;t=s-u+t|0;u=j+6|0;j=j+7|0;s=d[e+j>>0]|0;j=d[b+j>>0]|0;u=(d[e+u>>0]|0)-(d[b+u>>0]|0)|0;n=u+s-j|0;j=u-s+j|0;s=o+q|0;o=q-o|0;q=k+r|0;k=r-k|0;r=n+p|0;n=p-n|0;p=j+t|0;j=t-j|0;c[h+(g<<2)>>2]=r+s;c[h+((g|4)<<2)>>2]=s-r;c[h+((g|1)<<2)>>2]=p+q;c[h+((g|5)<<2)>>2]=q-p;c[h+((g|2)<<2)>>2]=n+o;c[h+((g|6)<<2)>>2]=o-n;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}while(1){if((g|0)==8)break;y=h+(g<<2)|0;s=c[y>>2]|0;w=h+(g+8<<2)|0;v=c[w>>2]|0;x=v+s|0;v=s-v|0;s=h+(g+16<<2)|0;b=c[s>>2]|0;n=h+(g+24<<2)|0;k=c[n>>2]|0;u=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;p=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+p|0;j=p-j|0;p=h+(g+48<<2)|0;q=c[p>>2]|0;o=h+(g+56<<2)|0;t=c[o>>2]|0;r=t+q|0;t=q-t|0;q=u+x|0;c[y>>2]=q;u=x-u|0;c[s>>2]=u;s=k+v|0;c[w>>2]=s;k=v-k|0;c[n>>2]=k;n=r+e|0;c[b>>2]=n;r=e-r|0;c[p>>2]=r;p=t+j|0;c[f>>2]=p;t=j-t|0;c[o>>2]=t;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=r+u|0;r=u-r|0;u=k+t|0;t=k-t|0;a=((n|0)>-1?n:0-n|0)+a+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)+((t|0)>-1?t:0-t|0)+((u|0)>-1?u:0-u|0)|0;g=g+1|0}l=i;return a|0}function Km(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Lm(a,b,c,d,8)|0;f=(Lm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Lm(a,g,b,d,8)|0)+f|0;f=f+(Lm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Lm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=l;l=l+256|0;if((l|0)>=(m|0))W(256);g=h;a=0;while(1){if((a|0)==8){a=0;e=0;break}i=N(a,f)|0;r=d[b+i>>0]|0;q=d[b+(i+1)>>0]|0;p=q+r|0;e=a<<3;q=r-q|0;r=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;n=j+r|0;j=r-j|0;r=d[b+(i+4)>>0]|0;s=d[b+(i+5)>>0]|0;o=s+r|0;s=r-s|0;r=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+r|0;i=r-i|0;r=n+p|0;n=p-n|0;p=j+q|0;j=q-j|0;q=k+o|0;k=o-k|0;o=i+s|0;i=s-i|0;c[g+(e<<2)>>2]=q+r;c[g+((e|4)<<2)>>2]=r-q;c[g+((e|1)<<2)>>2]=o+p;c[g+((e|5)<<2)>>2]=p-o;c[g+((e|2)<<2)>>2]=k+n;c[g+((e|6)<<2)>>2]=n-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}while(1){if((e|0)==8)break;y=g+(e<<2)|0;q=c[y>>2]|0;w=g+(e+8<<2)|0;v=c[w>>2]|0;x=v+q|0;v=q-v|0;q=g+(e+16<<2)|0;u=c[q>>2]|0;j=g+(e+24<<2)|0;i=c[j>>2]|0;s=i+u|0;i=u-i|0;u=g+(e+32<<2)|0;n=c[u>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;t=f+n|0;f=n-f|0;n=g+(e+48<<2)|0;o=c[n>>2]|0;k=g+(e+56<<2)|0;r=c[k>>2]|0;p=r+o|0;r=o-r|0;o=s+x|0;c[y>>2]=o;s=x-s|0;c[q>>2]=s;q=i+v|0;c[w>>2]=q;i=v-i|0;c[j>>2]=i;j=p+t|0;c[u>>2]=j;p=t-p|0;c[n>>2]=p;n=r+f|0;c[b>>2]=n;r=f-r|0;c[k>>2]=r;k=j+o|0;j=o-j|0;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=i+r|0;r=i-r|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;e=e+1|0}y=(c[g+128>>2]|0)+(c[g>>2]|0)|0;l=h;return a-((y|0)>-1?y:0-y|0)|0}function Mm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Nm(a,b,c,d,8)|0;f=(Nm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Nm(a,g,b,d,8)|0)+f|0;f=f+(Nm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Nm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=f;Ud[c[a+2964>>2]&255](g,b,d,e);Rd[c[a+2032>>2]&31](g);e=Kd[c[a+2372>>2]&31](g)|0;l=f;return e|0}function Om(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Pm(a,b,c,d,8)|0;f=(Pm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Pm(a,g,b,d,8)|0)+f|0;f=f+(Pm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Pm(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Ud[c[a+2964>>2]&255](h,d,e,f);Rd[c[a+2032>>2]&31](h);g=0;a=0;while(1){if((g|0)==64)break;e=b[h+(g<<1)>>1]|0;f=e<<16>>16;f=e<<16>>16>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}l=i;return a|0}function Qm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Rm(a,b,c,d,8)|0;f=(Rm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Rm(a,g,b,d,8)|0)+f|0;f=f+(Rm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Rm(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Ud[c[a+2964>>2]&255](h,d,e,f);g=0;while(1){if((g|0)==8){g=0;a=0;break}w=h+(g<<4)|0;A=b[w>>1]|0;f=h+(g<<4)+14|0;p=b[f>>1]|0;C=p+A|0;v=h+(g<<4)+2|0;z=b[v>>1]|0;a=h+(g<<4)+12|0;y=b[a>>1]|0;B=y+z|0;u=h+(g<<4)+4|0;o=b[u>>1]|0;n=h+(g<<4)+10|0;x=b[n>>1]|0;j=x+o|0;t=h+(g<<4)+6|0;d=b[t>>1]|0;q=h+(g<<4)+8|0;e=b[q>>1]|0;k=e+d|0;s=k+C|0;r=j+B|0;k=C-k|0;j=B-j|0;p=A-p|0;y=z-y|0;x=o-x|0;e=d-e|0;d=(p>>1)+p+y+x|0;o=p-e-((x>>1)+x)|0;p=p-y-(y>>1)+e|0;e=e+(y-x)+(e>>1)|0;b[w>>1]=s+r;b[v>>1]=(e>>>2)+d;b[u>>1]=k+(j>>>1);b[t>>1]=o+(p>>>2);b[q>>1]=s-r;b[n>>1]=p-(o>>>2);b[a>>1]=(k>>>1)-j;b[f>>1]=(d>>>2)-e;g=g+1|0}while(1){if((a|0)==8)break;y=b[h+(a<<1)>>1]|0;s=b[h+112+(a<<1)>>1]|0;p=s+y|0;w=b[h+16+(a<<1)>>1]|0;C=b[h+96+(a<<1)>>1]|0;q=C+w|0;A=b[h+32+(a<<1)>>1]|0;v=b[h+80+(a<<1)>>1]|0;z=v+A|0;u=b[h+48+(a<<1)>>1]|0;B=b[h+64+(a<<1)>>1]|0;t=B+u|0;r=t+p|0;x=z+q|0;t=p-t|0;z=q-z|0;s=y-s|0;C=w-C|0;v=A-v|0;B=u-B|0;u=(s>>1)+s+C+v|0;A=s-B-((v>>1)+v)|0;s=s-C-(C>>1)+B|0;B=B+(C-v)+(B>>1)|0;v=r+x|0;C=(B>>2)+u|0;w=t+(z>>1)|0;y=A+(s>>2)|0;x=r-x|0;A=s-(A>>2)|0;z=(t>>1)-z|0;B=(u>>2)-B|0;g=((v|0)>-1?v:0-v|0)+g+((w|0)>-1?w:0-w|0)+((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)+((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)+((B|0)>-1?B:0-B|0)+((C|0)>-1?C:0-C|0)|0;a=a+1|0}l=i;return g|0}function Sm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Tm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Um(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Vm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Wm(a,b,c,d,8)|0;f=(Wm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Wm(a,g,b,d,8)|0)+f|0;f=f+(Wm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Wm(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+272|0;if((l|0)>=(m|0))W(272);i=k;h=k+256|0;j=i+128|0;c[a+4304>>2]=0;Ud[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;c[a+16>>2]=Od[c[a+6244>>2]&63](a,i,0,c[g>>2]|0,h)|0;Ud[c[a+6236>>2]&255](a,i,0,c[g>>2]|0);on(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(N(a,a)|0)+g|0;d=d+1|0}l=k;return g|0}function Xm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ym(a,b,c,d,8)|0;f=(Ym(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Ym(a,g,b,d,8)|0)+f|0;f=f+(Ym(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Ym(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+272|0;if((l|0)>=(m|0))W(272);r=u+128|0;s=u+64|0;t=u;p=u+256|0;q=c[a+4908>>2]|0;nn(s,e,g);nn(t,f,g);Ud[c[a+2960>>2]&255](r,s,t,8);k=a+1920|0;n=Od[c[a+6244>>2]&63](a,r,0,c[k>>2]|0,p)|0;c[a+16>>2]=n;o=(c[a+4304>>2]|0)==0;if(o){g=0;e=a+4932|0;f=a+4928|0;h=0}else{g=1;e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[r>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((n|0)>=(g|0)){f=0;while(1){c[p>>2]=g;if((g|0)>=(n|0))break;e=b[r+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=q;f=0;h=e+h|0}g=g+1|0}e=d[a+204+n>>0]|0;c[p>>2]=e;e=(b[r+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+q|0;break}}while(0);do if((n|0)>-1)if(o){Ud[c[a+6236>>2]&255](a,r,0,c[k>>2]|0);break}else{Ud[c[a+6232>>2]&255](a,r,0,c[k>>2]|0);break}while(0);Td[c[a+2300>>2]&1023](t,8,r);a=Od[c[a+2404>>2]&63](0,t,s,8,8)|0;t=c[k>>2]|0;a=((N(N(h*109|0,t)|0,t)|0)+64>>7)+a|0;l=u;return a|0}function Zm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=_m(a,b,c,d,8)|0;f=(_m(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(_m(a,g,b,d,8)|0)+f|0;f=f+(_m(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function _m(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+144|0;if((l|0)>=(m|0))W(144);n=q;o=q+128|0;p=c[a+4908>>2]|0;Ud[c[a+2964>>2]&255](n,e,f,g);k=Od[c[a+6244>>2]&63](a,n,0,c[a+1920>>2]|0,o)|0;c[a+16>>2]=k;if(!(c[a+4304>>2]|0)){e=a+4932|0;f=a+4928|0;h=0;g=0}else{e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[n>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[o>>2]=g;if((g|0)>=(k|0))break;e=b[n+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=p;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[o>>2]=e;e=(b[n+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+p|0;break}}while(0);l=q;return h|0}function $m(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function an(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function bn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function cn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function dn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function en(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function fn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function gn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function hn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function jn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function kn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(mn(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function ln(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(mn(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function mn(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function nn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function on(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8){b=0;break}pn(a+(b<<3<<1)|0);b=b+1|0}while(1){if((b|0)==8)break;qn(a+(b<<1)|0);b=b+1|0}return}function pn(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(N(e,-4520)|0)+(f*19266|0)|0;i=(N(e,-22725)|0)+(f*12873|0)|0;e=(N(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=N(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(N(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(N(y,-22725)|0)+k+(N(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function qn(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;j=b[s>>1]|0;d=n+(N(j,-8867)|0)|0;r=n+(N(j,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(N(q,-4520)|0)+(c*19266|0)|0;g=(N(q,-22725)|0)+(c*12873|0)|0;c=(N(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;i=N(h,-16383)|0;h=m?0:h*16383|0;l=n+(j*21407|0)+h|0;i=m?0:i;j=n+(j*8867|0)+i|0;i=d+i|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(N(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=i;g=l}else{g=f<<16>>16;h=(N(g,-8867)|0)+h|0;k=(g*21407|0)+i|0;j=(N(g,-21407)|0)+j|0;g=(g*8867|0)+l|0}i=a+112|0;f=b[i>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(N(l,-22725)|0)+c|0;e=(N(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+j>>20;b[s>>1]=d+k>>20;b[p>>1]=c+h>>20;b[q>>1]=h-c>>20;b[r>>1]=k-d>>20;b[n>>1]=j-e>>20;b[i>>1]=g-f>>20;return}function rn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=tn(a,b,c)|0;if((b|0)<0)Wf(a,16,145530,d);l=d;return b|0}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+27016|0;g=c[i>>2]|0;f=c[a+27008>>2]|0;e=(N(f+1|0,g)|0)+1|0;h=N(f<<4,c[a+27012>>2]<<2|1)|0;b=a+29924|0;c[b>>2]=wh(e+g|0,15)|0;d=a+29928|0;c[d>>2]=wh((c[i>>2]|0)+e<<2,15)|0;e=a+29932|0;c[e>>2]=wh(h+16|0,15)|0;f=wh(N(g<<2,f)|0,15)|0;a=a+29936|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{Yg(b);Yg(d);Yg(e);Yg(a);a=-12}return a|0}function tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;e=a+28|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;a:do if(!(c[a+696>>2]&1))e=un(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+68>>2]|0)){if(c[a+700>>2]|0)break;if((c[a+400>>2]|0)==12)break}Wf(a,16,145558,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=Ah(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}mX((c[i>>2]|0)+8|0)|0;g=a+700|0;if((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0){f=i+184|0;mX(f|0)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;lX(e|0)|0;while(1){if((c[h>>2]|0)==1)break;wc(e|0,f|0)|0}e=c[i+296>>2]|0;nX(f|0)|0}else e=un(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0)?(c[(c[a+12>>2]|0)+68>>2]|0)==0:0)Li(a);if(e|0)Bg(b+12|0);nX((c[i>>2]|0)+8|0)|0}while(0);l=j;return e|0}function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=vn(a,b,d)|0;if((d|0)<0){Wf(a,16,145620,e);c[b+72>>2]=0;c[b+68>>2]=0}l=e;return d|0}function vn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=o+8|0;e=o;j=c[a+592>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+92|0;g=a+96|0;f=a+872|0;if((Yh(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+112>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{q=c[h>>2]|0;h=c[a+680>>2]|0;p=0-(0-(c[a+100>>2]|0)>>h)|0;c[f>>2]=(q|0)>(p|0)?q:p;g=c[g>>2]|0;h=0-(0-(c[a+104>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;n=13;break}Wf(a,16,145685,i);e=-22;break}Wf(a,16,145641,e);e=-22}else{f=1;n=13}while(0);if((n|0)==13){e=wn(a,b)|0;if((e|0)>=0){if(j){e=c[j+20>>2]|0;if(!e)n=18;else e=Ld[e&15](a,b)|0}else{c[a+768>>2]=c[a+112>>2];n=18}if((n|0)==18){e=Md[c[a+400>>2]&15](a,b,d)|0;if((e|0)>=0){xn(a,b);e=yn(b)|0}}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+116>>2]&16|0)==0:0){c[b+68>>2]=c[a+92>>2];c[b+72>>2]=c[a+96>>2]}if((e|0)<0)ah(b)}}l=o;return e|0}function wn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+24|0;k=n+16|0;j=n+8|0;i=n;g=c[(c[a+28>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=qi(g,c[104900+(d<<3)>>2]|0,h)|0;if(e|0){f=$h(b,c[104900+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}iX(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){An(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+584|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+316>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+320>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+324>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+328>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+332>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+112>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+188|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a};c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((Bn(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;Wf(a,24,172217,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+344>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+352>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+376|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+348>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;Wf(a,16,145849,k);d=-38;break a}d=Wh(d,e)|0;if((d|0)==(c[a+348>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{Wf(a,16,145812,j);d=-22;break a}}else d=c[a+348>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);l=n;return d|0}function xn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=Ph(c[d>>2]|0)|0;d=ph(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=145728;c[g+4>>2]=124579;c[g+8>>2]=1782;Wf(0,0,159637,g);Ub()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)Wf(a,16,145743,i);c[f>>2]=0;d=d+1|0}}while(0);l=j;return}function yn(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=a+400|0;Bg(b);a=Ng(20)|0;c[d>>2]=a;do if(a){a=mh(a,20,12,0,1)|0;if(!a){Sf(d);a=-12;break}else{c[b>>2]=a;a=0;break}}else a=-12;while(0);l=e;return a|0}function zn(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=b;a=c[b+8>>2]|0;if(a|0)Rd[a&31](c[b+4>>2]|0);a=c[b+16>>2]|0;if(a|0)Rd[a&31](c[b+12>>2]|0);Sf(d);l=e;return}function An(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;a=qi(a,13,e)|0;Dn(a,c[e>>2]|0,b+344|0)|0;l=d;return}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0){d=(f|0)<(e|0);if((f|0)==0|(f|0)==(e|0))d=0;else{g=d?e:f;f=d?f:e;d=Cn(d?a:b,0,f,((f|0)<0)<<31>>31,g,((g|0)<0)<<31>>31,0)|0;f=y;d=(f|0)>0|(f|0)==0&d>>>0>0?0:-22}}else d=-22;return d|0} -function Cn(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=VW(a|0,b|0,1,-2147483648)|0;i=y;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=WW(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=Cn(j,y,c,d,e,f,g>>>1&1^g)|0;f=WW(0,0,f|0,y|0)|0;return f|0}if((g|0)==5){g=ZW(e|0,f|0,2,0)|0;h=y}else{h=(g&1|0)==0;g=VW(e|0,f|0,-1,-1)|0;g=h?0:g;h=h?0:y}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){l=cX(c|0,d|0,32)|0;k=y;j=$W(l|0,k|0,a|0,0)|0;d=y;i=$W(c|0,0,b|0,0)|0;i=VW(j|0,d|0,i|0,y|0)|0;d=y;c=$W(c|0,0,a|0,0)|0;c=VW(0,i|0,c|0,y|0)|0;j=y;a=$W(l|0,k|0,b|0,0)|0;a=VW(d|0,0,a|0,y|0)|0;a=VW(a|0,y|0,(j>>>0>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=y;j=VW(g|0,h|0,c|0,j|0)|0;c=y;b=VW(a|0,b|0,(c>>>0>>0|(c|0)==(h|0)&j>>>0>>0)&1|0,0)|0;a=63;g=y;h=d;while(1){if((a|0)<=-1)break;d=dX(j|0,c|0,a|0)|0;n=eX(b|0,g|0,1)|0;m=y;n=d&1|n;d=eX(i|0,h|0,1)|0;l=y;k=m>>>0>>0|(m|0)==(f|0)&n>>>0>>0;m=WW(n|0,m|0,(k?0:e)|0,(k?0:f)|0)|0;a=a+-1|0;b=m;g=y;i=d|(k^1)&1;h=l}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=$W(c|0,d|0,a|0,b|0)|0;a=VW(g|0,h|0,a|0,y|0)|0;a=ZW(a|0,y|0,e|0,f|0)|0;b=y;break}i=ZW(a|0,b|0,e|0,f|0)|0;j=y;a=aX(a|0,b|0,e|0,f|0)|0;a=$W(a|0,y|0,c|0,d|0)|0;a=VW(a|0,y|0,g|0,h|0)|0;a=ZW(a|0,y|0,e|0,f|0)|0;b=y;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=WW(-1,2147483647,a|0,b|0)|0,n=ZW(n|0,y|0,c|0,d|0)|0,m=y,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=$W(i|0,j|0,c|0,d|0)|0;a=VW(a|0,b|0,n|0,y|0)|0;b=y}else{b=-2147483648;a=0}while(0);y=b;return a|0}function Dn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(DU(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=ci(d,e,c,0)|0;if((b|0)<0)break a;e=c+(DU(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function En(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;h=j+8|0;d=c[a+28216>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?75:68;g=23;break a}else{e=h+4|0;d=(d|0)==2?72:62;g=23;break a}}case 10:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?77:70;g=23;break a}else{e=h+4|0;d=(d|0)==2?66:64;g=23;break a}}case 12:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?137:133;g=23;break a}else{e=h+4|0;d=(d|0)==2?129:125;g=23;break a}}case 14:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?139:135;g=23;break a}else{e=h+4|0;d=(d|0)==2?131:127;g=23;break a}}case 8:{e=c[d+12>>2]|0;if((e|0)==3){d=c[a+4>>2]|0;if(!(c[d+324>>2]|0)){e=h+4|0;d=73;g=23;break a}else{e=h+4|0;d=(c[d+328>>2]|0)==2?14:5;g=23;break a}}d=a+4|0;f=c[d>>2]|0;if((e|0)==2){e=h+4|0;d=(c[f+328>>2]|0)==2?13:4;g=23;break a}e=c[(c[f+12>>2]|0)+24>>2]|0;if(!e){e=h+4|0;d=(c[f+328>>2]|0)==2?12:0;g=23}else{i=e;e=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;Wf(d,16,146026,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=d;i=h;d=a+4|0;g=24}b:do if((g|0)==24){c[e>>2]=-1;g=c[d>>2]|0;h=g+112|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=OM(g,i)|0}while(0);l=j;return d|0}function Gn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=$W(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=y;e=c[b>>2]|0;b=c[a+4>>2]|0;a=$W(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=WW(h|0,d|0,a|0,y|0)|0;d=y;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=cX(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;b=b|1}return b|0}function Hn(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function In(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=q+16|0;h=q;f=c[a+28216>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;o=c[a+25668>>2]|0;r=d+b|0;k=o-r|0;p=c[a+25672>>2]|0;g=f+e|0;j=p-g|0;if(o>>>0<=r>>>0){c[h>>2]=146584;c[h+4>>2]=133441;c[h+8>>2]=878;Wf(0,0,159637,h);Ub()}if(p>>>0<=g>>>0){c[i>>2]=146638;c[i+4>>2]=133441;c[i+8>>2]=879;Wf(0,0,159637,i);Ub()}g=a+29664|0;i=c[g>>2]|0;h=a+29668|0;if((((i|0)>0?(n=c[h>>2]|0,(e|d|0)==0&(n|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((n|0)>(j|0)|((i|0)>(k|0)|(n+15^j+15)>>>0>15)):0){h=n;g=i;f=p-n|0;e=0;d=0;b=o-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}r=c[a+4>>2]|0;c[r+100>>2]=o;c[r+104>>2]=p;c[r+92>>2]=g;c[r+96>>2]=h;c[a+25720>>2]=b;c[a+25716>>2]=d;c[a+25724>>2]=e;c[a+25728>>2]=f;l=q;return}function Jn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=p+32|0;k=p+24|0;g=p+16|0;f=p+8|0;e=c[a+28216>>2]|0;n=a+4|0;i=c[n>>2]|0;h=e+100|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];Kn(i,j)|0;Ln(c[(c[n>>2]|0)+112>>2]|0,a+25676|0,a+25680|0)|0;if(c[e+132>>2]|0){j=eX(c[e+140>>2]|0,0,(c[a+25704>>2]|0)>>>0<44|0)|0;i=c[n>>2]|0;Mn(i+764|0,i+760|0,N(c[i+84>>2]|0,c[e+136>>2]|0)|0,0,j,y,1073741824,0)|0}Xg(a);c[a+26384>>2]=0;c[a+29564>>2]=1;Nn(a);b=On(a)|0;a:do if((b|0)<0){Wf(c[n>>2]|0,16,145999,p);o=15}else{b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[(c[n>>2]|0)+676>>2]=d;c[a+29596>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29592>>2]=i;c[a+25664>>2]=(d|0)>8&1;c[a+27048>>2]=i;c[a+27044>>2]=d;Pn(a+16|0,d,i);Qn(a+152|0,c[e+1188>>2]|0);Rn(a+184|0,c[b>>2]|0);Sn(a+25736|0,c[(c[n>>2]|0)+16>>2]|0,c[b>>2]|0,c[j>>2]|0);Tn(a+8|0,c[b>>2]|0);if(!(c[(c[n>>2]|0)+696>>2]&2)){b=Un(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}Wf(c[n>>2]|0,16,146052,g);o=15;break a}e=a+25632|0;f=a+25628|0;g=a+25732|0;h=a+27016|0;i=a+26400|0;j=a+26404|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}q=c[f>>2]|0;b=q+(d*34768|0)|0;c[b>>2]=a;r=N(c[h>>2]|0,d<<4)|0;c[q+(d*34768|0)+21704>>2]=(c[g>>2]|0)+r;c[q+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(r<<1);c[q+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(r<<1);b=Un(a,b)|0;if((b|0)<0)break;else d=d+1|0}Wf(c[n>>2]|0,16,146052,k);o=15;break a}while(0);b=c[n>>2]|0;c[f>>2]=d;Wf(b,16,146026,f);b=-1094995529;o=15}while(0);if((o|0)==15){Xg(a);d=0}c[a+25692>>2]=d;l=p;return b|0}function Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=f+8|0;e=f;h=c[a+92>>2]|0;g=c[a+96>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=Bn(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;Wf(a,24,146555,e);c[a+188>>2]=0;c[a+192>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+188|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}l=f;return d|0}function Ln(a,b,e){a=a|0;b=b|0;e=e|0;a=ph(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function Mn(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0;x=g^e;k=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=WW(0,0,d|0,e|0)|0;j=k?d:j;k=k?e:y;m=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=WW(0,0,f|0,g|0)|0;l=m?f:l;m=m?g:y;n=NM(j,k,l,m)|0;o=y;if(!((n|0)==0&(o|0)==0)){d=ZW(j|0,k|0,n|0,o|0)|0;e=y;f=ZW(l|0,m|0,n|0,o|0)|0;g=y}w=(e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0;v=(g|0)>(i|0)|(g|0)==(i|0)&f>>>0>h>>>0;j=v|w;k=j?1:d;j=j?0:f;a:do if(!((f|0)==0&(g|0)==0|(v|w)^1)){w=0;v=1;while(1){m=ZW(d|0,e|0,f|0,g|0)|0;l=y;n=$W(m|0,l|0,f|0,g|0)|0;n=WW(d|0,e|0,n|0,y|0)|0;o=y;r=((k|0)<0)<<31>>31;p=$W(m|0,l|0,k|0,r|0)|0;s=((w|0)<0)<<31>>31;p=VW(p|0,y|0,w|0,s|0)|0;A=y;t=((j|0)<0)<<31>>31;q=$W(m|0,l|0,j|0,t|0)|0;u=((v|0)<0)<<31>>31;q=VW(q|0,y|0,v|0,u|0)|0;z=y;if((A|0)>(i|0)|(A|0)==(i|0)&p>>>0>h>>>0|((z|0)>(i|0)|(z|0)==(i|0)&q>>>0>h>>>0))break;if((n|0)==0&(o|0)==0){k=p;j=q;f=0;g=0;break a}else{e=g;d=f;v=j;w=k;k=p;j=q;f=n;g=o}}if(k){m=WW(h|0,i|0,w|0,s|0)|0;m=ZW(m|0,y|0,k|0,r|0)|0;l=y}if(j){i=WW(h|0,i|0,v|0,u|0)|0;i=ZW(i|0,y|0,j|0,t|0)|0;A=y;z=l>>>0>A>>>0|(l|0)==(A|0)&m>>>0>i>>>0;m=z?i:m;l=z?A:l}z=eX(j|0,t|0,1)|0;z=$W(z|0,y|0,m|0,l|0)|0;z=VW(z|0,y|0,v|0,u|0)|0;z=$W(z|0,y|0,f|0,g|0)|0;h=y;A=$W(d|0,e|0,j|0,t|0)|0;i=y;if(h>>>0>i>>>0|(h|0)==(i|0)&z>>>0>A>>>0){j=$W(m|0,l|0,j|0,t|0)|0;j=VW(j|0,y|0,v|0,u|0)|0;k=$W(m|0,l|0,k|0,r|0)|0;k=VW(k|0,y|0,w|0,s|0)|0}}else{f=0;g=0}while(0);c[a>>2]=(x|0)<0?0-k|0:k;c[b>>2]=j;return (f|0)==0&(g|0)==0&1|0}function Nn(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16){e=0;break}g=d[131533+e>>0]|0;a[b+26428+e>>0]=g<<2&12|g>>>2;g=d[146279+e>>0]|0;a[b+26572+e>>0]=g<<2&12|g>>>2;e=e+1|0}while(1){if((e|0)==64)break;g=d[131550+e>>0]|0;a[b+26444+e>>0]=g<<3&56|g>>>3;g=d[146296+e>>0]|0;a[b+26508+e>>0]=g<<3&56|g>>>3;g=d[146361+e>>0]|0;a[b+26588+e>>0]=g<<3&56|g>>>3;g=d[146426+e>>0]|0;a[b+26652+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26716|0;if(!(c[(c[b+28216>>2]|0)+16>>2]|0)){f=b+26428|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26732|0;f=b+26444|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26796|0;f=b+26508|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26860|0;f=b+26572|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26876|0;f=b+26588|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26940|0;f=b+26652|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{f=131533;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26732|0;f=131550;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26796|0;f=146296;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26860|0;f=146279;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26876|0;f=146361;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26940|0;f=146426;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0))}return}function On(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+96|0;if((l|0)>=(m|0))W(96);t=x+80|0;s=x+72|0;r=x+64|0;q=x+56|0;n=x+48|0;i=x+40|0;g=x+32|0;f=x+24|0;e=x+16|0;d=x+8|0;u=a+27016|0;h=c[u>>2]|0;v=a+27008|0;p=N((c[v>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=N((b|0)>1?b:1,h<<1)|0;b=jh(h,8)|0;c[a+25732>>2]=b;a:do if(!b){Wf(c[a+4>>2]|0,16,146076,x);w=29}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=Ng(p*48|0)|0;c[a+25972>>2]=k;o=(p|0)==0;if(!(o|(k|0)!=0)){Wf(c[a+4>>2]|0,16,146076,d);w=29;break}d=Ng((c[u>>2]|0)+p<<1)|0;k=a+28220|0;c[k>>2]=d;if((d|0)==0?(c[u>>2]|0)+p&2147483647|0:0){Wf(c[a+4>>2]|0,16,146076,e);w=29;break}d=p<<1;e=Ng(d)|0;c[a+26392>>2]=e;if(!((d|0)==0|(e|0)!=0)){Wf(c[a+4>>2]|0,16,146076,f);w=29;break}f=Ng(p)|0;c[a+26396>>2]=f;if(!(o|(f|0)!=0)){Wf(c[a+4>>2]|0,16,146076,g);w=29;break}g=jh(h,16)|0;d=a+26400|0;c[d>>2]=g;if(!g){Wf(c[a+4>>2]|0,16,146076,i);w=29;break}i=jh(h,16)|0;b=a+26404|0;c[b>>2]=i;if(!i){Wf(c[a+4>>2]|0,16,146076,n);w=29;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=p<<2;n=Ng(b)|0;c[a+26408>>2]=n;d=(b|0)==0;if(!(d|(n|0)!=0)){Wf(c[a+4>>2]|0,16,146076,q);w=29;break}q=Ng(p)|0;c[a+26388>>2]=q;if(!(o|(q|0)!=0)){Wf(c[a+4>>2]|0,16,146076,r);w=29;break}kX(c[k>>2]|0,-1,(c[u>>2]|0)+p<<1|0)|0;c[a+26372>>2]=(c[k>>2]|0)+(c[u>>2]<<1<<1)+2;r=Ng(b)|0;h=a+26360|0;c[h>>2]=r;if(!(d|(r|0)!=0)){Wf(c[a+4>>2]|0,16,146076,s);w=29;break}g=Ng(b)|0;c[a+26364>>2]=g;if(!(d|(g|0)!=0)){Wf(c[a+4>>2]|0,16,146076,t);w=29;break}f=a+27012|0;e=a+26368|0;d=0;while(1){if((d|0)<(c[v>>2]|0))b=0;else{b=0;break a}while(1){if((b|0)>=(c[f>>2]|0))break;a=(N(c[u>>2]|0,d)|0)+b|0;t=(N(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=t;c[g+(a<<2)>>2]=((a|0)%(c[u>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((w|0)==29){Xg(a);b=-12}l=x;return b|0}function Pn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?10:9;c[a+124>>2]=h?12:11;a:do switch(b|0){case 9:{c[a+84>>2]=13;c[a+88>>2]=14;c[a+92>>2]=15;c[a+96>>2]=16;c[a+100>>2]=4;c[a+104>>2]=5;e=(d|0)<2;c[a+108>>2]=e?7:6;c[a+112>>2]=8;c[a+116>>2]=17;c[a+120>>2]=e?14:13;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=9;c[a+36>>2]=10;c[a+40>>2]=11;c[a+44>>2]=8;c[a+48>>2]=9;c[a+52>>2]=10;c[a+56>>2]=12;c[a+60>>2]=e?14:13;c[a+64>>2]=e?16:15;c[a+68>>2]=11;c[a+72>>2]=e?13:12;e=e?15:14;break}case 10:{c[a+84>>2]=18;c[a+88>>2]=19;c[a+92>>2]=20;c[a+96>>2]=21;c[a+100>>2]=17;c[a+104>>2]=18;e=(d|0)<2;c[a+108>>2]=e?20:19;c[a+112>>2]=21;c[a+116>>2]=22;c[a+120>>2]=e?16:15;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=22;c[a+36>>2]=23;c[a+40>>2]=24;c[a+44>>2]=16;c[a+48>>2]=17;c[a+52>>2]=18;c[a+56>>2]=25;c[a+60>>2]=e?27:26;c[a+64>>2]=e?29:28;c[a+68>>2]=19;c[a+72>>2]=e?21:20;e=e?23:22;break}case 12:{c[a+84>>2]=23;c[a+88>>2]=24;c[a+92>>2]=25;c[a+96>>2]=26;c[a+100>>2]=30;c[a+104>>2]=31;e=(d|0)<2;c[a+108>>2]=e?33:32;c[a+112>>2]=34;c[a+116>>2]=27;c[a+120>>2]=e?18:17;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=35;c[a+36>>2]=36;c[a+40>>2]=37;c[a+44>>2]=24;c[a+48>>2]=25;c[a+52>>2]=26;c[a+56>>2]=38;c[a+60>>2]=e?40:39;c[a+64>>2]=e?42:41;c[a+68>>2]=27;c[a+72>>2]=e?29:28;e=e?31:30;break}case 14:{c[a+84>>2]=28;c[a+88>>2]=29;c[a+92>>2]=30;c[a+96>>2]=31;c[a+100>>2]=43;c[a+104>>2]=44;e=(d|0)<2;c[a+108>>2]=e?46:45;c[a+112>>2]=47;c[a+116>>2]=32;c[a+120>>2]=e?20:19;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=48;c[a+36>>2]=49;c[a+40>>2]=50;c[a+44>>2]=32;c[a+48>>2]=33;c[a+52>>2]=34;c[a+56>>2]=51;c[a+60>>2]=e?53:52;c[a+64>>2]=e?55:54;c[a+68>>2]=35;c[a+72>>2]=e?37:36;e=e?39:38;break}default:if((b|0)<9){c[a+84>>2]=33;c[a+88>>2]=34;c[a+92>>2]=35;c[a+96>>2]=36;c[a+100>>2]=56;c[a+104>>2]=57;e=(d|0)<2;c[a+108>>2]=e?59:58;c[a+112>>2]=60;c[a+116>>2]=37;c[a+120>>2]=e?22:21;c[a>>2]=21;c[a+4>>2]=22;c[a+8>>2]=23;c[a+12>>2]=24;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=61;c[a+36>>2]=62;c[a+40>>2]=63;c[a+44>>2]=40;c[a+48>>2]=41;c[a+52>>2]=42;c[a+56>>2]=64;c[a+60>>2]=e?66:65;c[a+64>>2]=e?68:67;c[a+68>>2]=43;c[a+72>>2]=e?45:44;e=e?47:46;break a}else{c[f>>2]=146188;c[f+4>>2]=146201;c[f+8>>2]=150;Wf(0,0,159637,f);Ub()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=8;l=g;return}function Qn(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?26:25;c[a+4>>2]=b?28:27;c[a+8>>2]=b?30:29;c[a+12>>2]=b?32:31;c[a+16>>2]=b?34:33;c[a+20>>2]=b?36:35;c[a+24>>2]=b?38:37;c[a+28>>2]=b?40:39;return}function Rn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;switch(b|0){case 9:{b=102;d=106;e=110;f=114;g=103;h=107;i=111;j=115;k=104;l=108;m=112;n=116;o=105;p=109;q=113;r=117;s=134;t=138;u=142;v=146;w=135;x=139;y=143;z=147;A=136;B=140;C=144;D=148;E=137;F=141;G=145;H=149;I=118;J=122;K=126;L=130;M=119;N=123;O=127;P=131;Q=120;R=124;S=128;T=132;U=121;V=125;W=129;X=133;Y=38;Z=42;_=46;$=50;aa=39;ba=43;ca=47;da=51;ea=40;fa=44;ga=48;ha=52;ia=41;ja=45;ka=49;la=53;ma=86;na=90;oa=94;pa=98;qa=87;ra=91;sa=95;ta=99;ua=88;va=92;wa=96;xa=100;ya=89;za=93;Aa=97;Ba=101;Ca=70;Da=74;Ea=78;Fa=82;Ga=71;Ha=75;Ia=79;Ja=83;Ka=72;La=76;Ma=80;Na=84;Oa=73;Pa=77;Qa=81;Ra=85;Sa=54;Ta=58;Ua=62;Va=66;Wa=55;Xa=59;Ya=63;Za=67;_a=56;$a=60;ab=64;bb=68;cb=57;db=61;eb=65;fb=69;break}case 10:{b=326;d=330;e=334;f=338;g=327;h=331;i=335;j=339;k=328;l=332;m=336;n=340;o=329;p=333;q=337;r=341;s=358;t=362;u=366;v=370;w=359;x=363;y=367;z=371;A=360;B=364;C=368;D=372;E=361;F=365;G=369;H=373;I=342;J=346;K=350;L=354;M=343;N=347;O=351;P=355;Q=344;R=348;S=352;T=356;U=345;V=349;W=353;X=357;Y=262;Z=266;_=270;$=274;aa=263;ba=267;ca=271;da=275;ea=264;fa=268;ga=272;ha=276;ia=265;ja=269;ka=273;la=277;ma=310;na=314;oa=318;pa=322;qa=311;ra=315;sa=319;ta=323;ua=312;va=316;wa=320;xa=324;ya=313;za=317;Aa=321;Ba=325;Ca=294;Da=298;Ea=302;Fa=306;Ga=295;Ha=299;Ia=303;Ja=307;Ka=296;La=300;Ma=304;Na=308;Oa=297;Pa=301;Qa=305;Ra=309;Sa=278;Ta=282;Ua=286;Va=290;Wa=279;Xa=283;Ya=287;Za=291;_a=280;$a=284;ab=288;bb=292;cb=281;db=285;eb=289;fb=293;break}case 12:{b=438;d=442;e=446;f=450;g=439;h=443;i=447;j=451;k=440;l=444;m=448;n=452;o=441;p=445;q=449;r=453;s=470;t=474;u=478;v=482;w=471;x=475;y=479;z=483;A=472;B=476;C=480;D=484;E=473;F=477;G=481;H=485;I=454;J=458;K=462;L=466;M=455;N=459;O=463;P=467;Q=456;R=460;S=464;T=468;U=457;V=461;W=465;X=469;Y=374;Z=378;_=382;$=386;aa=375;ba=379;ca=383;da=387;ea=376;fa=380;ga=384;ha=388;ia=377;ja=381;ka=385;la=389;ma=422;na=426;oa=430;pa=434;qa=423;ra=427;sa=431;ta=435;ua=424;va=428;wa=432;xa=436;ya=425;za=429;Aa=433;Ba=437;Ca=406;Da=410;Ea=414;Fa=418;Ga=407;Ha=411;Ia=415;Ja=419;Ka=408;La=412;Ma=416;Na=420;Oa=409;Pa=413;Qa=417;Ra=421;Sa=390;Ta=394;Ua=398;Va=402;Wa=391;Xa=395;Ya=399;Za=403;_a=392;$a=396;ab=400;bb=404;cb=393;db=397;eb=401;fb=405;break}case 14:{b=550;d=554;e=558;f=562;g=551;h=555;i=559;j=563;k=552;l=556;m=560;n=564;o=553;p=557;q=561;r=565;s=582;t=586;u=590;v=594;w=583;x=587;y=591;z=595;A=584;B=588;C=592;D=596;E=585;F=589;G=593;H=597;I=566;J=570;K=574;L=578;M=567;N=571;O=575;P=579;Q=568;R=572;S=576;T=580;U=569;V=573;W=577;X=581;Y=486;Z=490;_=494;$=498;aa=487;ba=491;ca=495;da=499;ea=488;fa=492;ga=496;ha=500;ia=489;ja=493;ka=497;la=501;ma=534;na=538;oa=542;pa=546;qa=535;ra=539;sa=543;ta=547;ua=536;va=540;wa=544;xa=548;ya=537;za=541;Aa=545;Ba=549;Ca=518;Da=522;Ea=526;Fa=530;Ga=519;Ha=523;Ia=527;Ja=531;Ka=520;La=524;Ma=528;Na=532;Oa=521;Pa=525;Qa=529;Ra=533;Sa=502;Ta=506;Ua=510;Va=514;Wa=503;Xa=507;Ya=511;Za=515;_a=504;$a=508;ab=512;bb=516;cb=505;db=509;eb=513;fb=517;break}default:{b=214;d=218;e=222;f=226;g=215;h=219;i=223;j=227;k=216;l=220;m=224;n=228;o=217;p=221;q=225;r=229;s=246;t=250;u=254;v=258;w=247;x=251;y=255;z=259;A=248;B=252;C=256;D=260;E=249;F=253;G=257;H=261;I=230;J=234;K=238;L=242;M=231;N=235;O=239;P=243;Q=232;R=236;S=240;T=244;U=233;V=237;W=241;X=245;Y=150;Z=154;_=158;$=162;aa=151;ba=155;ca=159;da=163;ea=152;fa=156;ga=160;ha=164;ia=153;ja=157;ka=161;la=165;ma=198;na=202;oa=206;pa=210;qa=199;ra=203;sa=207;ta=211;ua=200;va=204;wa=208;xa=212;ya=201;za=205;Aa=209;Ba=213;Ca=182;Da=186;Ea=190;Fa=194;Ga=183;Ha=187;Ia=191;Ja=195;Ka=184;La=188;Ma=192;Na=196;Oa=185;Pa=189;Qa=193;Ra=197;Sa=166;Ta=170;Ua=174;Va=178;Wa=167;Xa=171;Ya=175;Za=179;_a=168;$a=172;ab=176;bb=180;cb=169;db=173;eb=177;fb=181}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function Sn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;switch(d|0){case 9:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=612;g=611}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=598;c[a+12>>2]=(b|0)==23?600:599;c[a+16>>2]=601;c[a+20>>2]=602;c[a+24>>2]=603;c[a+28>>2]=d?605:604;c[a+32>>2]=606;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=609;c[a+52>>2]=610;c[a+40>>2]=611;d=14;f=612;break}default:{c[d>>2]=607;d=10;f=616}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=617;i=10}}else{c[a>>2]=611;c[a+4>>2]=612;c[a+8>>2]=598;c[a+12>>2]=613;c[a+16>>2]=601;c[a+20>>2]=602;c[a+24>>2]=603;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=607;c[a+40>>2]=616;c[a+44>>2]=617;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=10}if((i|0)==10)c[a+(d<<2)>>2]=f;c[a+60>>2]=48;c[a+64>>2]=49;c[a+68>>2]=50;c[a+72>>2]=51;c[a+76>>2]=52;c[a+80>>2]=53;c[a+84>>2]=54;c[a+88>>2]=55;c[a+92>>2]=56;c[a+96>>2]=57;c[a+100>>2]=58;c[a+104>>2]=59;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?24:23;c[a+112>>2]=e?26:25;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?28:27}a:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break a}c[a+136>>2]=45;d=8;f=170;i=20;break}default:if(e){c[d>>2]=30;c[a+124>>2]=31;c[a+128>>2]=32;c[a+136>>2]=33;c[a+140>>2]=34;c[a+144>>2]=35;d=10;f=168;i=20;break a}else{c[d>>2]=36;c[a+124>>2]=37;c[a+128>>2]=38;c[a+136>>2]=39;c[a+140>>2]=40;c[a+144>>2]=41;d=10;f=169;i=20;break a}}while(0);if((i|0)==20)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?47:46;c[a+152>>2]=48;c[a+160>>2]=49;c[a+156>>2]=50;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=52;d=8;f=173;break}default:{d=3;f=174}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=53;c[a+172>>2]=54;c[a+176>>2]=55;c[a+188>>2]=620;c[a+192>>2]=621;c[a+196>>2]=622;c[a+200>>2]=623;c[a+204>>2]=69;c[a+208>>2]=70;f=129;g=128;h=e?63:62;d=e?61:60;break}case 10:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=635;g=634}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=624;c[a+12>>2]=(b|0)==23?600:625;c[a+16>>2]=626;c[a+20>>2]=627;c[a+24>>2]=628;c[a+28>>2]=d?605:629;c[a+32>>2]=630;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=632;c[a+52>>2]=633;c[a+40>>2]=634;d=14;f=635;break}default:{c[d>>2]=631;d=10;f=636}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=637;i=34}}else{c[a>>2]=634;c[a+4>>2]=635;c[a+8>>2]=624;c[a+12>>2]=613;c[a+16>>2]=626;c[a+20>>2]=627;c[a+24>>2]=628;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=631;c[a+40>>2]=636;c[a+44>>2]=637;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=34}if((i|0)==34)c[a+(d<<2)>>2]=f;c[a+60>>2]=64;c[a+64>>2]=65;c[a+68>>2]=66;c[a+72>>2]=67;c[a+76>>2]=68;c[a+80>>2]=69;c[a+84>>2]=70;c[a+88>>2]=71;c[a+92>>2]=72;c[a+96>>2]=73;c[a+100>>2]=74;c[a+104>>2]=75;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?57:56;c[a+112>>2]=e?59:58;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?61:60}b:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break b}c[a+136>>2]=74;d=8;f=177;i=44;break}default:if(e){c[d>>2]=62;c[a+124>>2]=63;c[a+128>>2]=64;c[a+136>>2]=65;c[a+140>>2]=66;c[a+144>>2]=67;d=10;f=175;i=44;break b}else{c[d>>2]=68;c[a+124>>2]=69;c[a+128>>2]=70;c[a+136>>2]=71;c[a+140>>2]=72;c[a+144>>2]=73;d=10;f=176;i=44;break b}}while(0);if((i|0)==44)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?76:75;c[a+152>>2]=77;c[a+160>>2]=78;c[a+156>>2]=79;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=80;d=8;f=178;break}default:{d=3;f=179}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=81;c[a+172>>2]=82;c[a+176>>2]=83;c[a+188>>2]=638;c[a+192>>2]=639;c[a+196>>2]=640;c[a+200>>2]=641;c[a+204>>2]=71;c[a+208>>2]=72;f=131;g=130;h=e?79:78;d=e?77:76;break}case 12:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=653;g=652}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=642;c[a+12>>2]=(b|0)==23?600:643;c[a+16>>2]=644;c[a+20>>2]=645;c[a+24>>2]=646;c[a+28>>2]=d?605:647;c[a+32>>2]=648;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=650;c[a+52>>2]=651;c[a+40>>2]=652;d=14;f=653;break}default:{c[d>>2]=649;d=10;f=654}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=655;i=58}}else{c[a>>2]=652;c[a+4>>2]=653;c[a+8>>2]=642;c[a+12>>2]=613;c[a+16>>2]=644;c[a+20>>2]=645;c[a+24>>2]=646;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=649;c[a+40>>2]=654;c[a+44>>2]=655;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=58}if((i|0)==58)c[a+(d<<2)>>2]=f;c[a+60>>2]=80;c[a+64>>2]=81;c[a+68>>2]=82;c[a+72>>2]=83;c[a+76>>2]=84;c[a+80>>2]=85;c[a+84>>2]=86;c[a+88>>2]=87;c[a+92>>2]=88;c[a+96>>2]=89;c[a+100>>2]=90;c[a+104>>2]=91;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?85:84;c[a+112>>2]=e?87:86;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?89:88}c:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break c}c[a+136>>2]=102;d=8;f=182;i=68;break}default:if(e){c[d>>2]=90;c[a+124>>2]=91;c[a+128>>2]=92;c[a+136>>2]=93;c[a+140>>2]=94;c[a+144>>2]=95;d=10;f=180;i=68;break c}else{c[d>>2]=96;c[a+124>>2]=97;c[a+128>>2]=98;c[a+136>>2]=99;c[a+140>>2]=100;c[a+144>>2]=101;d=10;f=181;i=68;break c}}while(0);if((i|0)==68)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?104:103;c[a+152>>2]=105;c[a+160>>2]=106;c[a+156>>2]=107;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=108;d=8;f=183;break}default:{d=3;f=184}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=109;c[a+172>>2]=110;c[a+176>>2]=111;c[a+188>>2]=656;c[a+192>>2]=657;c[a+196>>2]=658;c[a+200>>2]=659;c[a+204>>2]=73;c[a+208>>2]=74;f=133;g=132;h=e?95:94;d=e?93:92;break}case 14:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=671;g=670}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=660;c[a+12>>2]=(b|0)==23?600:661;c[a+16>>2]=662;c[a+20>>2]=663;c[a+24>>2]=664;c[a+28>>2]=d?605:665;c[a+32>>2]=666;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=668;c[a+52>>2]=669;c[a+40>>2]=670;d=14;f=671;break}default:{c[d>>2]=667;d=10;f=672}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=673;i=82}}else{c[a>>2]=670;c[a+4>>2]=671;c[a+8>>2]=660;c[a+12>>2]=613;c[a+16>>2]=662;c[a+20>>2]=663;c[a+24>>2]=664;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=667;c[a+40>>2]=672;c[a+44>>2]=673;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=82}if((i|0)==82)c[a+(d<<2)>>2]=f;c[a+60>>2]=96;c[a+64>>2]=97;c[a+68>>2]=98;c[a+72>>2]=99;c[a+76>>2]=100;c[a+80>>2]=101;c[a+84>>2]=102;c[a+88>>2]=103;c[a+92>>2]=104;c[a+96>>2]=105;c[a+100>>2]=106;c[a+104>>2]=107;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?113:112;c[a+112>>2]=e?115:114;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?117:116}d:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break d}c[a+136>>2]=130;d=8;f=187;i=92;break}default:if(e){c[d>>2]=118;c[a+124>>2]=119;c[a+128>>2]=120;c[a+136>>2]=121;c[a+140>>2]=122;c[a+144>>2]=123;d=10;f=185;i=92;break d}else{c[d>>2]=124;c[a+124>>2]=125;c[a+128>>2]=126;c[a+136>>2]=127;c[a+140>>2]=128;c[a+144>>2]=129;d=10;f=186;i=92;break d}}while(0);if((i|0)==92)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?132:131;c[a+152>>2]=133;c[a+160>>2]=134;c[a+156>>2]=135;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=136;d=8;f=188;break}default:{d=3;f=189}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=137;c[a+172>>2]=138;c[a+176>>2]=139;c[a+188>>2]=674;c[a+192>>2]=675;c[a+196>>2]=676;c[a+200>>2]=677;c[a+204>>2]=75;c[a+208>>2]=76;f=135;g=134;h=e?111:110;d=e?109:108;break}default:{if((d|0)>=9){c[f>>2]=146188;c[f+4>>2]=146166;c[f+8>>2]=590;Wf(0,0,159637,f);Ub()}if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=689;g=688}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=678;c[a+12>>2]=(b|0)==23?600:679;c[a+16>>2]=680;c[a+20>>2]=681;c[a+24>>2]=682;c[a+28>>2]=d?605:683;c[a+32>>2]=684;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=686;c[a+52>>2]=687;c[a+40>>2]=688;d=14;f=689;break}default:{c[d>>2]=685;d=10;f=690}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=691;i=108}}else{c[a>>2]=688;c[a+4>>2]=689;c[a+8>>2]=678;c[a+12>>2]=613;c[a+16>>2]=680;c[a+20>>2]=681;c[a+24>>2]=682;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=685;c[a+40>>2]=690;c[a+44>>2]=691;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=108}if((i|0)==108)c[a+(d<<2)>>2]=f;c[a+60>>2]=112;c[a+64>>2]=113;c[a+68>>2]=114;c[a+72>>2]=115;c[a+76>>2]=116;c[a+80>>2]=117;c[a+84>>2]=118;c[a+88>>2]=119;c[a+92>>2]=120;c[a+96>>2]=121;c[a+100>>2]=122;c[a+104>>2]=123;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?141:140;c[a+112>>2]=e?143:142;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?145:144}e:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break e}c[a+136>>2]=158;d=8;f=192;i=118;break}default:if(e){c[d>>2]=146;c[a+124>>2]=147;c[a+128>>2]=148;c[a+136>>2]=149;c[a+140>>2]=150;c[a+144>>2]=151;d=10;f=190;i=118;break e}else{c[d>>2]=152;c[a+124>>2]=153;c[a+128>>2]=154;c[a+136>>2]=155;c[a+140>>2]=156;c[a+144>>2]=157;d=10;f=191;i=118;break e}}while(0);if((i|0)==118)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?160:159;c[a+152>>2]=161;c[a+160>>2]=162;c[a+156>>2]=163;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=164;d=8;f=193;break}default:{d=3;f=194}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=165;c[a+172>>2]=166;c[a+176>>2]=167;c[a+188>>2]=692;c[a+192>>2]=693;c[a+196>>2]=694;c[a+200>>2]=695;c[a+204>>2]=77;c[a+208>>2]=78;f=137;g=136;h=e?127:126;d=e?125:124}}c[a+220>>2]=d;c[a+216>>2]=h;c[a+232>>2]=g;c[a+228>>2]=f;l=j;return}function Tn(a,b){a=a|0;b=b|0;c[a+4>>2]=699;c[a>>2]=(b|0)<9?2:1;return}function Un(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+32|0;if((l|0)>=(m|0))W(32);v=x+24|0;p=x+16|0;o=x+8|0;g=x;f=e+24|0;k=d+27008|0;r=c[k>>2]|0;t=d+27016|0;w=c[t>>2]|0;n=N(w,r)|0;u=d+27012|0;q=N(c[u>>2]<<1|1,r<<1|1)|0;r=N(w,r+1|0)|0;w=q+(r<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){s=d+4|0;c[f>>2]=c[s>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27020|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[u>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[t>>2];c[e+592>>2]=h<<1|1;j=Ng((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){Wf(c[s>>2]|0,16,146076,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[u>>2]|0;i=N(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;c[j+(i+f<<2)>>2]=(N(c[t>>2]|0,d)|0)+f;f=f+1|0}d=d+1|0}h=N(c[t>>2]|0,g+-1|0)|0;i=c[u>>2]|0;c[j+((N(i,g)|0)<<2)>>2]=h+i;j=Ng(n)|0;c[e+604>>2]=j;if(!((n|0)==0|(j|0)!=0)){Wf(c[s>>2]|0,16,146076,o);d=-12;break}o=cg(N((c[k>>2]|0)*17|0,c[t>>2]|0)|0)|0;c[e+608>>2]=o;if((o|0)==0?N((c[k>>2]|0)*17|0,c[t>>2]|0)|0:0){Wf(c[s>>2]|0,16,146076,p);d=-12;break}p=w<<1;f=Ng(p)|0;c[e+27784>>2]=f;if(!((p|0)==0|(f|0)!=0)){Wf(c[s>>2]|0,16,146076,v);d=-12;break}c[e+612>>2]=f+(c[u>>2]<<1<<1)+4;d=f+(q<<1)+(c[t>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(r<<1);d=0;while(1){if((d|0)>=(w|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{kX(f|0,0,808)|0;d=0}while(0);l=x;return d|0}function Vn(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q+8|0;j=q;o=a+25628|0;k=c[o>>2]|0;c[k+21788>>2]=h;c[k+21792>>2]=i;n=k+21796|0;c[n>>2]=(N(c[a+27016>>2]|0,i)|0)+h;e=k+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[k+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[k+23416+(e*40|0)>>2]|0)){Wf(c[a+4>>2]|0,48,146101,j);e=0}if((c[k+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[n>>2]<<2)|0;p=e*257&65535;b[d>>1]=p;b[d+2>>1]=p;d=N(e,16843009)|0;c[k+28284>>2]=d;c[k+28292>>2]=d;c[k+28300>>2]=d;c[k+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[k+28e3>>2]=g;c[k+28004>>2]=g;c[k+28008>>2]=g;c[k+28012>>2]=g;c[k+28032>>2]=g;c[k+28036>>2]=g;c[k+28040>>2]=g;c[k+28044>>2]=g;c[k+28064>>2]=g;c[k+28068>>2]=g;c[k+28072>>2]=g;c[k+28076>>2]=g;c[k+28096>>2]=g;c[k+28100>>2]=g;c[k+28104>>2]=g;c[k+28108>>2]=g;c[k+21828>>2]=0;c[k+21832>>2]=0;uk(a,c[o>>2]|0)}else Wf(c[a+4>>2]|0,48,146147,p);l=q;return}function Wn(a,b,c){a=a|0;b=b|0;c=c|0;return}function Xn(b,c,d,e,f,g,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(N(c,e)|0))|0;k=p+(N(c,d)|0)|0;h=b+p|0;l=0;while(1){if((l|0)>=(c|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((N(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if((c|0)>=(p|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Yn(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(N(c,e)|0))|0;j=p-q<<1;k=(N(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if((l|0)>=(c|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;iX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((N(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if((c|0)>=(q|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function _n(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=d[a+(0-e)>>0]|0;h=d[a+(1-e)>>0]|0;g=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;b=(i+2+(h<<1)+g|0)>>>2<<8|((d[a+~e>>0]|0)+2+(i<<1)+h|0)>>>2|(h+2+(g<<1)+f|0)>>>2<<16|(g+2+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=$W(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=$W(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function ao(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d[a+-1>>0]|0;i=d[a+(e+-1)>>0]|0;h=e<<1;g=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;c[a>>2]=N(((d[a+~e>>0]|0)+2+(j<<1)+i|0)>>>2,16843009)|0;c[a+e>>2]=N((j+2+(i<<1)+g|0)>>>2,16843009)|0;c[a+h>>2]=N((i+2+(g<<1)+f|0)>>>2,16843009)|0;c[a+b>>2]=N((g+2+f+(f<<1)|0)>>>2,16843009)|0;return}function bo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function co(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return}function eo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function fo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function go(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ho(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function io(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=(n+1+m|0)>>>1;c=(m+1+l|0)>>>1&255;i=e<<1;a[b+i>>0]=c;a[b+1>>0]=c;c=(l+1+k|0)>>>1&255;a[b+(i|1)>>0]=c;a[b+2>>0]=c;c=(k+1+j|0)>>>1&255;a[b+(i+2)>>0]=c;a[b+3>>0]=c;a[b+e>>0]=(n+2+(m<<1)+l|0)>>>2;m=(m+2+(l<<1)+k|0)>>>2&255;c=e*3|0;a[b+c>>0]=m;a[b+(e+1)>>0]=m;l=(l+2+(k<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+2+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function jo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ko(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function lo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=$W(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function mo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=129671+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function no(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;d=a+(d*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function oo(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;d=a+(d*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function po(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=$W(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function qo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;r=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;n=d[c>>0]|0;l=d[c+1>>0]|0;i=d[c+2>>0]|0;h=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;j=e<<1;q=d[b+(j+-1)>>0]|0;c=e*3|0;o=d[b+(c+-1)>>0]|0;m=d[b+((e<<2)+-1)>>0]|0;k=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+r+(d[b+-1>>0]|0)+q+(s+t<<1)|0)>>>3;s=(t+4+p+s+o+(q+r<<1)|0)>>>3&255;a[b+e>>0]=s;a[b+1>>0]=s;q=(r+4+n+q+m+(o+p<<1)|0)>>>3&255;a[b+j>>0]=q;a[b+(e+1)>>0]=q;a[b+2>>0]=q;o=(p+4+l+o+k+(m+n<<1)|0)>>>3&255;a[b+c>>0]=o;a[b+(j|1)>>0]=o;a[b+(e+2)>>0]=o;a[b+3>>0]=o;m=(n+4+i+m+g+(k+l<<1)|0)>>>3&255;a[b+(c+1)>>0]=m;a[b+(j+2)>>0]=m;a[b+(e+3)>>0]=m;e=(l+4+h+k+f+(g+i<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(j+3)>>0]=e;a[b+(c+3)>>0]=(i+2+h+g+f|0)>>>2;return}function ro(a,b,c){a=a|0;b=b|0;c=c|0;_u(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function so(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;t=q<<1;s=t+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+u<<1)|0)>>>3;a[b+1>>0]=(u+4+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;p=(q+4+o+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+4+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function to(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;d=a+(d*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function uo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;m=d[b+(3-e)>>0]|0;l=d[c>>0]|0;k=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;j=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+n+(d[b+-1>>0]|0)+j+(o+p<<1)|0)>>>3;o=(p+4+m+o+f+(j+n<<1)|0)>>>3&255;a[b+e>>0]=o;a[b+1>>0]=o;j=(n+4+l+(m<<1)+j+(f*3|0)|0)>>>3&255;a[b+i>>0]=j;a[b+(e+1)>>0]=j;a[b+2>>0]=j;j=f<<2;m=(m+4+k+(l<<1)+j|0)>>>3&255;a[b+c>>0]=m;a[b+(i|1)>>0]=m;a[b+(e+2)>>0]=m;a[b+3>>0]=m;l=(l+4+h+(k<<1)+j|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(i+2)>>0]=l;a[b+(e+3)>>0]=l;e=(k+4+g+(h<<1)+j|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function vo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;r=o<<1;q=r+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+s<<1)|0)>>>3;a[b+1>>0]=(s+4+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;j=(o+4+n+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+4+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+2+i+c|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function wo(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;_u(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function xo(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function yo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=$W((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=$W((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=$W((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=$W((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=$W((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=$W((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=$W((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=$W((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function zo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Ao(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Bo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Co(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Do(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Eo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Fo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Go(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=$W(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Ho(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function Jo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Ko(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Lo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Mo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function No(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Oo(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+p>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+o>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Po(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=129671+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function Qo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=$W(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=$W(k|0,l|0,65537,65537)|0;h=y;d=$W(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Ro(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=$W(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=$W(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function So(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function To(a,b){a=a|0;b=b|0;So(a,b);bo(a,0,b);return}function Uo(a,b){a=a|0;b=b|0;Qo(a,b);po(a,0,b);return}function Vo(a,b){a=a|0;b=b|0;Ro(a,b);a=a+(b<<2)|0;to(a,0,b);to(a+8|0,0,b);return}function Wo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=$W(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=$W(m|0,n|0,65537,65537)|0;q=y;m=$W(f|0,o|0,65537,65537)|0;n=y;k=$W(r|0,s|0,65537,65537)|0;l=y;i=$W(g|0,t|0,65537,65537)|0;j=y;g=$W(u|0,v|0,65537,65537)|0;h=y;d=$W(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Xo(a,b){a=a|0;b=b|0;Ro(a,b);Ro(a+(b<<3)|0,b);return}function Yo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Zo(a,b){a=a|0;b=b|0;Yo(a,b);bo(a,0,b);return}function _o(a,b){a=a|0;b=b|0;Wo(a,b);po(a,0,b);return}function $o(a,b){a=a|0;b=b|0;Xo(a,b);a=a+(b<<2)|0;to(a,0,b);to(a+8|0,0,b);return}function ap(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=0;f=0;while(1){if((f|0)==4)break;h=d[a+((N(f,b)|0)+-1)>>0]|0;g=f+4|0;e=e+h+(d[a+(f-b)>>0]|0)+(d[a+(g-b)>>0]|0)+(d[a+((N(g,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}return}function bp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function cp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function dp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function ep(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function fp(a,b){a=a|0;b=b|0;Xo(a,b);to(a,0,b);to(a+8|0,0,b);return}function gp(a,b){a=a|0;b=b|0;Ro(a,b);to(a,0,b);to(a+8|0,0,b);return}function hp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function ip(a,b){a=a|0;b=b|0;hp(a,b);hp(a+(b<<3)|0,b);return}function jp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function kp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function lp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function mp(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=129671+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function np(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function op(a,b){a=a|0;b=b|0;Zu(a,b);return}function pp(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function qp(a,b){a=a|0;b=b|0;Vu(a,b,0,1);return}function rp(a,b){a=a|0;b=b|0;Vu(a,b,1,0);return}function sp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function tp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function up(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function vp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function wp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function xp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}kX(d|0,0,256)|0;return}function yp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}kX(d|0,0,256)|0;return}function zp(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}kX(d|0,0,256)|0;l=s;return}function Ap(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}kX(d|0,0,256)|0;l=k;return}function Bp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;vp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Cp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}vp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;vp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Dp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;wp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ep(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}wp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;wp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Fp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=$W(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=$W(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Ip(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Jp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Kp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Lp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Mp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Np(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function Op(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=$W(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Pp(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;d=a+(d*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function Qp(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;d=a+(d*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function Rp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=$W(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Sp(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;d=a+(d*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function Tp(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Up(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=$W((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=$W((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=$W((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=$W((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=$W((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=$W((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=$W((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=$W((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Vp(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Wp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Xp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Yp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Zp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function _p(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function $p(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function aq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=$W(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function bq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function dq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function eq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function fq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function gq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function hq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function iq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+p>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+o>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function jq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=$W(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=$W(k|0,l|0,65537,65537)|0;h=y;d=$W(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function kq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=$W(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=$W(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function lq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function mq(a,b){a=a|0;b=b|0;lq(a,b);Hp(a,0,b);return}function nq(a,b){a=a|0;b=b|0;jq(a,b);Rp(a,0,b);return}function oq(a,b){a=a|0;b=b|0;kq(a,b);a=a+(b<<2)|0;Sp(a,0,b);Sp(a+8|0,0,b);return} -function uG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function vG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function wG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<1024?K:0-K>>31&1023;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<1024?H:0-H>>31&1023;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<1024?F:0-F>>31&1023;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;g=g+1|0;f=f+2|0;d=d+2|0}return}function xG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=xF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=xF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=xF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=xF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function yG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function zG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function AG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<4096?E:0-E>>31&4095;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;g=g+1|0;f=f+2|0;d=d+2|0}return}function BG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=xF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=xF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=xF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=xF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function CG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function DG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function EG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<16384?E:0-E>>31&16383;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;g=g+1|0;f=f+2|0;d=d+2|0}return}function FG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=xF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=xF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=xF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=xF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function GG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;J=b[h+(f<<1)>>1]|0;I=b[h>>1]|0;H=b[h+(g<<1)>>1]|0;G=b[h+(l<<1)>>1]|0;F=b[h+(m<<1)>>1]|0;E=b[h+(n<<1)>>1]|0;D=b[h+(o<<1)>>1]|0;c=b[h+(p<<1)>>1]|0;a=b[h+(q<<1)>>1]|0;B=b[h+(r<<1)>>1]|0;A=b[h+(s<<1)>>1]|0;C=b[h+(t<<1)>>1]|0;K=(b[h+(k<<1)>>1]|0)+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[j>>1]=K>>>0<512?K:0-K>>31&511;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[j+(d<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+512+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[j+(u<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+512+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>10;b[j+(v<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+512+a+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;b[j+(w<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+512+B+((c+D|0)*20|0)+(N(a+E|0,-5)|0)>>10;b[j+(x<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+512+A+((a+c|0)*20|0)+(N(B+D|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+512+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<512?c:0-c>>31&511;j=j+2|0;h=h+2|0;i=i+1|0}return}function HG(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;K=b[f+(l<<1)>>1]|0;J=b[f>>1]|0;I=b[f+(h<<1)>>1]|0;H=b[f+(m<<1)>>1]|0;G=b[f+(n<<1)>>1]|0;F=b[f+(o<<1)>>1]|0;E=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;L=(b[f+(i<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[k>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[k+g>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[k+v>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+512+B+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;a[k+w>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+512+c+((E+F|0)*20|0)+(N(B+G|0,-5)|0)>>10;a[k+x>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+512+C+((B+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;a[k+y>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+512+e+((c+B|0)*20|0)+(N(C+E|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+512+D+((C+c|0)*20|0)+(N(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function IG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;Q=b[h+(f<<1)>>1]|0;O=b[h>>1]|0;P=O+10230|0;L=b[h+(g<<1)>>1]|0;M=L+10230|0;J=b[h+(l<<1)>>1]|0;K=J+10230|0;H=b[h+(m<<1)>>1]|0;I=H+10230|0;F=b[h+(n<<1)>>1]|0;G=F+10230|0;D=b[h+(o<<1)>>1]|0;E=D+10230|0;c=(b[h+(p<<1)>>1]|0)+10230|0;a=(b[h+(q<<1)>>1]|0)+10230|0;B=(b[h+(r<<1)>>1]|0)+10230|0;A=(b[h+(s<<1)>>1]|0)+10230|0;C=b[h+(t<<1)>>1]|0;R=(b[h+(k<<1)>>1]|0)+10742+I+((M+P|0)*20|0)+(N(K+(Q+10230)|0,-5)|0)>>10;b[j>>1]=R>>>0<1024?R:0-R>>31&1023;P=Q+10742+G+((K+M|0)*20|0)+(N(I+P|0,-5)|0)>>10;b[j+(d<<1)>>1]=P>>>0<1024?P:0-P>>31&1023;M=O+10742+E+((I+K|0)*20|0)+(N(G+M|0,-5)|0)>>10;b[j+(u<<1)>>1]=M>>>0<1024?M:0-M>>31&1023;K=L+10742+c+((G+I|0)*20|0)+(N(E+K|0,-5)|0)>>10;b[j+(v<<1)>>1]=K>>>0<1024?K:0-K>>31&1023;I=J+10742+a+((E+G|0)*20|0)+(N(c+I|0,-5)|0)>>10;b[j+(w<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;G=H+10742+B+((c+E|0)*20|0)+(N(a+G|0,-5)|0)>>10;b[j+(x<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;E=F+10742+A+((a+c|0)*20|0)+(N(B+E|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+20972+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;j=j+2|0;h=h+2|0;i=i+1|0}return}function JG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;k=k+2|0;i=i+4|0;j=j+1|0}return}function KG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;k=k+2|0;i=i+4|0;j=j+1|0}return}function LG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;K=b[h+(f<<1)>>1]|0;J=b[h>>1]|0;I=b[h+(g<<1)>>1]|0;H=b[h+(l<<1)>>1]|0;G=b[h+(m<<1)>>1]|0;F=b[h+(n<<1)>>1]|0;E=b[h+(o<<1)>>1]|0;A=b[h+(p<<1)>>1]|0;B=b[h+(q<<1)>>1]|0;C=b[h+(r<<1)>>1]|0;a=b[h+(s<<1)>>1]|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=j+(d<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(u<<1)|0;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;I=I+512+A+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;H=H+512+B+((E+F|0)*20|0)+(N(A+G|0,-5)|0)>>10;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;G=G+512+C+((A+E|0)*20|0)+(N(B+F|0,-5)|0)>>10;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=F+512+a+((B+A|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+512+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<512?A:0-A>>31&511)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function MG(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;L=b[f+(l<<1)>>1]|0;K=b[f>>1]|0;J=b[f+(h<<1)>>1]|0;I=b[f+(m<<1)>>1]|0;H=b[f+(n<<1)>>1]|0;G=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;B=(b[f+(i<<1)>>1]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[B>>0]=((d[B>>0]|0)+1+((L>>>0>255?(L^-2147483648)>>31:L)&255)|0)>>>1;B=k+v|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[B>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;J=J+512+e+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;I=I+512+C+((F+G|0)*20|0)+(N(e+H|0,-5)|0)>>10;a[B>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;H=H+512+D+((e+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;a[B>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=G+512+c+((C+e|0)*20|0)+(N(D+F|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+512+E+((D+C|0)*20|0)+(N(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function NG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;R=b[h+(f<<1)>>1]|0;P=b[h>>1]|0;Q=P+10230|0;M=b[h+(g<<1)>>1]|0;O=M+10230|0;K=b[h+(l<<1)>>1]|0;L=K+10230|0;I=b[h+(m<<1)>>1]|0;J=I+10230|0;G=b[h+(n<<1)>>1]|0;H=G+10230|0;E=b[h+(o<<1)>>1]|0;F=E+10230|0;A=(b[h+(p<<1)>>1]|0)+10230|0;B=(b[h+(q<<1)>>1]|0)+10230|0;C=(b[h+(r<<1)>>1]|0)+10230|0;a=(b[h+(s<<1)>>1]|0)+10230|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+10742+J+((O+Q|0)*20|0)+(N(L+(R+10230)|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=j+(d<<1)|0;Q=R+10742+H+((L+O|0)*20|0)+(N(J+Q|0,-5)|0)>>10;b[c>>1]=((e[c>>1]|0)+1+(Q>>>0<1024?Q:0-Q>>31&1023)|0)>>>1;c=j+(u<<1)|0;O=P+10742+F+((J+L|0)*20|0)+(N(H+O|0,-5)|0)>>10;b[c>>1]=((O>>>0<1024?O:0-O>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;L=M+10742+A+((H+J|0)*20|0)+(N(F+L|0,-5)|0)>>10;b[c>>1]=((L>>>0<1024?L:0-L>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;J=K+10742+B+((F+H|0)*20|0)+(N(A+J|0,-5)|0)>>10;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;H=I+10742+C+((A+F|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=G+10742+a+((B+A|0)*20|0)+(N(C+F|0,-5)|0)>>10;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+20972+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<1024?A:0-A>>31&1023)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function OG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<4096?d:0-d>>31&4095)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<4096?B:0-B>>31&4095)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function PG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<16384?d:0-d>>31&16383)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<16384?B:0-B>>31&16383)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function QG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:0-a>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function RG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;K=d[c+t>>0]|0;J=d[c>>0]|0;I=d[c+f>>0]|0;H=d[c+u>>0]|0;G=d[c+v>>0]|0;F=d[c+w>>0]|0;E=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;y=(d[c+s>>0]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[y>>0]=((d[y>>0]|0)+1+((K>>>0>255?(K^-2147483648)>>31:K)&255)|0)>>>1;y=b+m|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[y>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;I=I+16+z+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;H=H+16+B+((E+F|0)*20|0)+(N(z+G|0,-5)|0)>>5;a[y>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;G=G+16+C+((z+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;a[y>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=F+16+A+((B+z|0)*20|0)+(N(C+E|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+16+D+((C+B|0)*20|0)+(N(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function SG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<1024?G:0-G>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:0-a>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function TG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:0-F>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:0-a>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function UG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:0-F>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:0-a>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function VG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function WG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=N((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function XG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function YG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function ZG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function _G(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=xF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=xF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function $G(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=CF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;h=a+4|0;i=b+4|0;c[h>>2]=CF(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;g=g+1|0;a=a+e|0;b=b+e|0}return}function aH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=xF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=xF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function bH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=xF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=xF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function cH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=xF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=xF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function dH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;mG(a,b,c,d);mG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;mG(a,b,c,d);mG(a+16|0,b+16|0,c,d);return}function eH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function fH(a,b,c){a=a|0;b=b|0;c=c|0;oG(a,b,c,32);oG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;oG(a,b+256|0,c,32);oG(a+16|0,b+272|0,c,32);return}function gH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;pG(a,b,c,d,e,32,16);pG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function hH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qG(a,b,c,d);qG(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;qG(a,b,c,d);qG(a+8|0,b+8|0,c,d);return}function iH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function jH(a,b,c){a=a|0;b=b|0;c=c|0;sG(a,b,c,16);sG(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;sG(a,b+128|0,c,16);sG(a+8|0,b+136|0,c,16);return}function kH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;tG(a,b,c,d,e,16,16);tG(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function lH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;uG(a,b,c,d);uG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;uG(a,b,c,d);uG(a+16|0,b+16|0,c,d);return}function mH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function nH(a,b,c){a=a|0;b=b|0;c=c|0;wG(a,b,c,32);wG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;wG(a,b+256|0,c,32);wG(a+16|0,b+272|0,c,32);return}function oH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;xG(a,b,c,d,e,32,16);xG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function pH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yG(a,b,c,d);yG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;yG(a,b,c,d);yG(a+16|0,b+16|0,c,d);return}function qH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function rH(a,b,c){a=a|0;b=b|0;c=c|0;AG(a,b,c,32);AG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;AG(a,b+256|0,c,32);AG(a+16|0,b+272|0,c,32);return}function sH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;BG(a,b,c,d,e,32,16);BG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function tH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;CG(a,b,c,d);CG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;CG(a,b,c,d);CG(a+16|0,b+16|0,c,d);return}function uH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function vH(a,b,c){a=a|0;b=b|0;c=c|0;EG(a,b,c,32);EG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;EG(a,b+256|0,c,32);EG(a+16|0,b+272|0,c,32);return}function wH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;FG(a,b,c,d,e,32,16);FG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function xH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;GG(a,b,c,d,32,e);f=b+16|0;GG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;GG(a,b,c,d,32,e);GG(a+16|0,f,c+16|0,d,32,e);return}function yH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;HG(a,b,c,d,16,e);f=b+16|0;HG(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;HG(a,b,c,d,16,e);HG(a+8|0,f,c+8|0,d,16,e);return}function zH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;IG(a,b,c,d,32,e);f=b+16|0;IG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;IG(a,b,c,d,32,e);IG(a+16|0,f,c+16|0,d,32,e);return}function AH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;JG(a,b,c,d,32,e);f=b+32|0;JG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;JG(a,b,c,d,32,e);JG(a+16|0,f,c+16|0,d,32,e);return}function BH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;KG(a,b,c,d,32,e);f=b+32|0;KG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;KG(a,b,c,d,32,e);KG(a+16|0,f,c+16|0,d,32,e);return}function CH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;LG(a,b,c,d,32,e);f=b+16|0;LG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;LG(a,b,c,d,32,e);LG(a+16|0,f,c+16|0,d,32,e);return}function DH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;MG(a,b,c,d,16,e);f=b+16|0;MG(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;MG(a,b,c,d,16,e);MG(a+8|0,f,c+8|0,d,16,e);return}function EH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;NG(a,b,c,d,32,e);f=b+16|0;NG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;NG(a,b,c,d,32,e);NG(a+16|0,f,c+16|0,d,32,e);return}function FH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;OG(a,b,c,d,32,e);f=b+32|0;OG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;OG(a,b,c,d,32,e);OG(a+16|0,f,c+16|0,d,32,e);return}function GH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;PG(a,b,c,d,32,e);f=b+32|0;PG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;PG(a,b,c,d,32,e);PG(a+16|0,f,c+16|0,d,32,e);return}function HH(a,b,c){a=a|0;b=b|0;c=c|0;QG(a,b,c,32);QG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;QG(a,b+256|0,c,32);QG(a+16|0,b+272|0,c,32);return}function IH(a,b,c){a=a|0;b=b|0;c=c|0;RG(a,b,c,16);RG(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;RG(a,b+128|0,c,16);RG(a+8|0,b+136|0,c,16);return}function JH(a,b,c){a=a|0;b=b|0;c=c|0;SG(a,b,c,32);SG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;SG(a,b+256|0,c,32);SG(a+16|0,b+272|0,c,32);return}function KH(a,b,c){a=a|0;b=b|0;c=c|0;TG(a,b,c,32);TG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;TG(a,b+256|0,c,32);TG(a+16|0,b+272|0,c,32);return}function LH(a,b,c){a=a|0;b=b|0;c=c|0;UG(a,b,c,32);UG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;UG(a,b+256|0,c,32);UG(a+16|0,b+272|0,c,32);return}function MH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;VG(a,b,c,d);VG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;VG(a,b,c,d);VG(a+16|0,b+16|0,c,d);return}function NH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WG(a,b,c,d);WG(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;WG(a,b,c,d);WG(a+8|0,b+8|0,c,d);return}function OH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;XG(a,b,c,d);XG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;XG(a,b,c,d);XG(a+16|0,b+16|0,c,d);return}function PH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;YG(a,b,c,d);YG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;YG(a,b,c,d);YG(a+16|0,b+16|0,c,d);return}function QH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZG(a,b,c,d);ZG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;ZG(a,b,c,d);ZG(a+16|0,b+16|0,c,d);return}function RH(a,b,c){a=a|0;b=b|0;c=c|0;_G(a,b,c,16);_G(a+16|0,b+16|0,c,16);return}function SH(a,b,c){a=a|0;b=b|0;c=c|0;$G(a,b,c,16);$G(a+8|0,b+8|0,c,16);return}function TH(a,b,c){a=a|0;b=b|0;c=c|0;aH(a,b,c,16);aH(a+16|0,b+16|0,c,16);return}function UH(a,b,c){a=a|0;b=b|0;c=c|0;bH(a,b,c,16);bH(a+16|0,b+16|0,c,16);return}function VH(a,b,c){a=a|0;b=b|0;c=c|0;cH(a,b,c,16);cH(a+16|0,b+16|0,c,16);return}function WH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:0-l>>31&511;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function XH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function YH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function ZH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=xF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function _H(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=N((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function $H(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function aI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(N(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(N(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function bI(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=c+(N(h,g)|0)|0;i=e+(h<<1)|0;b[a+(N(h,f)|0)>>1]=CF((d[j>>0]|d[j+1>>0]<<8)&65535,(d[i>>0]|d[i+1>>0]<<8)&65535)|0;h=h+1|0}return}function cI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:0-l>>31&1023;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function dI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function eI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function fI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=xF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function gI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:0-l>>31&4095;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function hI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function iI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function jI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=xF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function kI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:0-l>>31&16383;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function lI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function mI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function nI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=xF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function oI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=b[g>>1]|0;l=b[g+8>>1]|0;k=b[g+16>>1]|0;m=b[g+24>>1]|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[a>>1]=j>>>0<512?j:0-j>>31&511;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<512?n:0-n>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function pI(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=N((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function qI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=(b[g>>1]|0)+10230|0;l=(b[g+8>>1]|0)+10230|0;k=(b[g+16>>1]|0)+10230|0;m=(b[g+24>>1]|0)+10230|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(N(k+(f+10230)|0,-5)|0)>>10;b[a>>1]=j>>>0<1024?j:0-j>>31&1023;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<1024?n:0-n>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function rI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<4096?g:0-g>>31&4095;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function sI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<16384?g:0-g>>31&16383;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function tI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function uI(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function vI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function wI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function xI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function yI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=xF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function zI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;c[a+(N(h,f)|0)>>2]=CF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=h+1|0}return}function AI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=xF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function BI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=xF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function CI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=xF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function DI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function EI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function FI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function GI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function HI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function II(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=xF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function JI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;o=b+m|0;l=N(j,h)|0;n=e+l|0;k=N(j,f)|0;c[a+k>>2]=CF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;m=b+(m+4)|0;l=e+(l+4)|0;c[a+(k+4)>>2]=CF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;j=j+1|0}return}function KI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=xF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function LI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=xF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function MI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=xF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=xF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function NI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function OI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function PI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function QI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function RI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function SI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;II(a,b,c,d,e,32,16);II(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function TI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;JI(a,b,c,d,e,16,16);JI(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function UI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;KI(a,b,c,d,e,32,16);KI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function VI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;LI(a,b,c,d,e,32,16);LI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function WI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;MI(a,b,c,d,e,32,16);MI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function XI(a,b,c){a=a|0;b=b|0;c=c|0;NI(a,b,c,16);NI(a+16|0,b+16|0,c,16);return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;OI(a,b,c,16);OI(a+8|0,b+8|0,c,16);return}function ZI(a,b,c){a=a|0;b=b|0;c=c|0;PI(a,b,c,16);PI(a+16|0,b+16|0,c,16);return}function _I(a,b,c){a=a|0;b=b|0;c=c|0;QI(a,b,c,16);QI(a+16|0,b+16|0,c,16);return}function $I(a,b,c){a=a|0;b=b|0;c=c|0;RI(a,b,c,16);RI(a+16|0,b+16|0,c,16);return}function aJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(s,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(s,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(s,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(s,e[c+6>>1]|0)|0)+32|0)>>>6;b[a+8>>1]=((N(s,e[c+8>>1]|0)|0)+32|0)>>>6;b[a+10>>1]=((N(s,e[c+10>>1]|0)|0)+32|0)>>>6;b[a+12>>1]=((N(s,e[c+12>>1]|0)|0)+32|0)>>>6;b[a+14>>1]=((N(s,e[c+14>>1]|0)|0)+32|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=(q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+2>>1]|0)|0;b[a+2>>1]=(q+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+4>>1]|0)|0;b[a+4>>1]=(q+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+6>>1]|0)|0;b[a+6>>1]=(q+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+8>>1]|0)|0;b[a+8>>1]=(q+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+10>>1]|0)|0;b[a+10>>1]=(q+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+12>>1]|0)|0;b[a+12>>1]=(q+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+14>>1]|0)|0;b[a+14>>1]=(q+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,e[c>>1]|0)|0;u=c+2|0;x=N(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=N(q,e[t>>1]|0)|0;w=c+(h<<1)|0;b[a>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+4|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(d<<1)|0;b[a+2>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+6|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(i<<1)|0;b[a+4>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=c+8|0;x=N(p,e[v>>1]|0)|0;u=N(q,e[u>>1]|0)|0;y=c+(j<<1)|0;b[a+6>>1]=(w+32+x+u+(N(o,e[y>>1]|0)|0)|0)>>>6;v=N(s,e[v>>1]|0)|0;u=c+10|0;x=N(p,e[u>>1]|0)|0;y=N(q,e[y>>1]|0)|0;w=c+(k<<1)|0;b[a+8>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+12|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(l<<1)|0;b[a+10>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+14|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(m<<1)|0;b[a+12>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=N(p,e[c+16>>1]|0)|0;u=N(q,e[u>>1]|0)|0;b[a+14>>1]=(w+32+v+u+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function bJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(s,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(s,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(s,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(s,d[c+3>>0]|0)|0)+32|0)>>>6;a[b+4>>0]=((N(s,d[c+4>>0]|0)|0)+32|0)>>>6;a[b+5>>0]=((N(s,d[c+5>>0]|0)|0)+32|0)>>>6;a[b+6>>0]=((N(s,d[c+6>>0]|0)|0)+32|0)>>>6;a[b+7>>0]=((N(s,d[c+7>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=(r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6;r=N(s,d[c+1>>0]|0)|0;a[b+1>>0]=(r+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6;r=N(s,d[c+2>>0]|0)|0;a[b+2>>0]=(r+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6;r=N(s,d[c+3>>0]|0)|0;a[b+3>>0]=(r+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6;r=N(s,d[c+4>>0]|0)|0;a[b+4>>0]=(r+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6;r=N(s,d[c+5>>0]|0)|0;a[b+5>>0]=(r+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6;r=N(s,d[c+6>>0]|0)|0;a[b+6>>0]=(r+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6;r=N(s,d[c+7>>0]|0)|0;a[b+7>>0]=(r+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,d[c>>0]|0)|0;u=c+1|0;x=N(q,d[u>>0]|0)|0;t=c+e|0;y=N(r,d[t>>0]|0)|0;w=c+i|0;a[b>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+2|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+j|0;a[b+1>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+3|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+k|0;a[b+2>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=c+4|0;x=N(q,d[v>>0]|0)|0;u=N(r,d[u>>0]|0)|0;y=c+l|0;a[b+3>>0]=(w+32+x+u+(N(h,d[y>>0]|0)|0)|0)>>>6;v=N(s,d[v>>0]|0)|0;u=c+5|0;x=N(q,d[u>>0]|0)|0;y=N(r,d[y>>0]|0)|0;w=c+m|0;a[b+4>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+6|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+n|0;a[b+5>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+7|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+o|0;a[b+6>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=N(q,d[c+8>>0]|0)|0;u=N(r,d[u>>0]|0)|0;a[b+7>>0]=(w+32+v+u+(N(h,d[c+p>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=t}}while(0);return}function cJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(o,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(o,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(o,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(o,e[c+6>>1]|0)|0)+32|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=(m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+2>>1]|0)|0;b[a+2>>1]=(m+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+4>>1]|0)|0;b[a+4>>1]=(m+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+6>>1]|0)|0;b[a+6>>1]=(m+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,e[c>>1]|0)|0;q=c+2|0;t=N(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=N(m,e[p>>1]|0)|0;s=c+(h<<1)|0;b[a>>1]=(r+32+t+u+(N(k,e[s>>1]|0)|0)|0)>>>6;q=N(o,e[q>>1]|0)|0;u=c+4|0;t=N(l,e[u>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(d<<1)|0;b[a+2>>1]=(q+32+t+s+(N(k,e[r>>1]|0)|0)|0)>>>6;u=N(o,e[u>>1]|0)|0;s=c+6|0;t=N(l,e[s>>1]|0)|0;r=N(m,e[r>>1]|0)|0;q=c+(i<<1)|0;b[a+4>>1]=(u+32+t+r+(N(k,e[q>>1]|0)|0)|0)>>>6;s=N(o,e[s>>1]|0)|0;r=N(l,e[c+8>>1]|0)|0;q=N(m,e[q>>1]|0)|0;b[a+6>>1]=(s+32+r+q+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function dJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(o,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(o,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(o,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(o,d[c+3>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=(n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6;n=N(o,d[c+1>>0]|0)|0;a[b+1>>0]=(n+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6;n=N(o,d[c+2>>0]|0)|0;a[b+2>>0]=(n+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6;n=N(o,d[c+3>>0]|0)|0;a[b+3>>0]=(n+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,d[c>>0]|0)|0;q=c+1|0;t=N(m,d[q>>0]|0)|0;p=c+e|0;u=N(n,d[p>>0]|0)|0;s=c+i|0;a[b>>0]=(r+32+t+u+(N(h,d[s>>0]|0)|0)|0)>>>6;q=N(o,d[q>>0]|0)|0;u=c+2|0;t=N(m,d[u>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+j|0;a[b+1>>0]=(q+32+t+s+(N(h,d[r>>0]|0)|0)|0)>>>6;u=N(o,d[u>>0]|0)|0;s=c+3|0;t=N(m,d[s>>0]|0)|0;r=N(n,d[r>>0]|0)|0;q=c+k|0;a[b+2>>0]=(u+32+t+r+(N(h,d[q>>0]|0)|0)|0)>>>6;s=N(o,d[s>>0]|0)|0;r=N(m,d[c+4>>0]|0)|0;q=N(n,d[q>>0]|0)|0;a[b+3>>0]=(s+32+r+q+(N(h,d[c+l>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=p}}while(0);return}function eJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(m,e[c+2>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;k=N(m,e[c+2>>1]|0)|0;b[a+2>>1]=(k+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;q=c+2|0;r=N(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=N(k,e[n>>1]|0)|0;o=c+(h<<1)|0;b[a>>1]=(s+32+r+p+(N(i,e[o>>1]|0)|0)|0)>>>6;q=N(m,e[q>>1]|0)|0;p=N(j,e[c+4>>1]|0)|0;o=N(k,e[o>>1]|0)|0;b[a+2>>1]=(q+32+p+o+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function fJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(m,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(m,d[c+1>>0]|0)|0)+32|0)>>>6;b=b+e|0;c=c+e|0;g=g+1|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=(l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6;l=N(m,d[c+1>>0]|0)|0;a[b+1>>0]=(l+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;q=c+1|0;r=N(k,d[q>>0]|0)|0;n=c+e|0;p=N(l,d[n>>0]|0)|0;o=c+i|0;a[b>>0]=(s+32+r+p+(N(h,d[o>>0]|0)|0)|0)>>>6;q=N(m,d[q>>0]|0)|0;p=N(k,d[c+2>>0]|0)|0;o=N(l,d[o>>0]|0)|0;a[b+1>>0]=(q+32+p+o+(N(h,d[c+j>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=n}}while(0);return}function gJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=(p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function hJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(l,d[c>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=(k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=(p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=m}}while(0);return}function iJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+2|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+4|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+6|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+8|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+10|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+12|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+14|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;p=N(s,e[c+2>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;p=N(s,e[c+4>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;p=N(s,e[c+6>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+8|0;p=N(s,e[c+8>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+10|0;p=N(s,e[c+10>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+12|0;p=N(s,e[c+12>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+14|0;p=N(s,e[c+14>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,e[c>>1]|0)|0;v=c+2|0;z=N(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=N(q,e[t>>1]|0)|0;x=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((y+32+z+u+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+2|0;v=N(s,e[v>>1]|0)|0;z=c+4|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(d<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+4|0;z=N(s,e[z>>1]|0)|0;x=c+6|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(i<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+6|0;x=N(s,e[x>>1]|0)|0;w=c+8|0;y=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;z=c+(j<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+y+v+(N(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+8|0;w=N(s,e[w>>1]|0)|0;v=c+10|0;y=N(p,e[v>>1]|0)|0;z=N(q,e[z>>1]|0)|0;x=c+(k<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((w+32+y+z+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+10|0;v=N(s,e[v>>1]|0)|0;z=c+12|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(l<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+12|0;z=N(s,e[z>>1]|0)|0;x=c+14|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(m<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+14|0;x=N(s,e[x>>1]|0)|0;w=N(p,e[c+16>>1]|0)|0;v=N(q,e[v>>1]|0)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+w+v+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function jJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+1|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+2|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+3|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+4|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+5|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+6|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+7|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+1|0;q=N(s,d[c+1>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+2|0;q=N(s,d[c+2>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+3|0;q=N(s,d[c+3>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+4|0;q=N(s,d[c+4>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+5|0;q=N(s,d[c+5>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+6|0;q=N(s,d[c+6>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+7|0;q=N(s,d[c+7>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,d[c>>0]|0)|0;v=c+1|0;z=N(q,d[v>>0]|0)|0;t=c+e|0;u=N(r,d[t>>0]|0)|0;x=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((y+32+z+u+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+1|0;v=N(s,d[v>>0]|0)|0;z=c+2|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+j|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+2|0;z=N(s,d[z>>0]|0)|0;x=c+3|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+k|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+3|0;x=N(s,d[x>>0]|0)|0;w=c+4|0;y=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;z=c+l|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+y+v+(N(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+4|0;w=N(s,d[w>>0]|0)|0;v=c+5|0;y=N(q,d[v>>0]|0)|0;z=N(r,d[z>>0]|0)|0;x=c+m|0;a[u>>0]=((d[u>>0]|0)+1+((w+32+y+z+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+5|0;v=N(s,d[v>>0]|0)|0;z=c+6|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+n|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+6|0;z=N(s,d[z>>0]|0)|0;x=c+7|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+o|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+7|0;x=N(s,d[x>>0]|0)|0;w=N(q,d[c+8>>0]|0)|0;v=N(r,d[v>>0]|0)|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+w+v+(N(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=t}}while(0);return}function kJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+2|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+4|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+6|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+2|0;l=N(o,e[c+2>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+4|0;l=N(o,e[c+4>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+6|0;l=N(o,e[c+6>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,e[c>>1]|0)|0;r=c+2|0;v=N(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=N(m,e[p>>1]|0)|0;t=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((u+32+v+q+(N(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;r=N(o,e[r>>1]|0)|0;v=c+4|0;u=N(l,e[v>>1]|0)|0;t=N(m,e[t>>1]|0)|0;s=c+(d<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((r+32+u+t+(N(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;v=N(o,e[v>>1]|0)|0;t=c+6|0;u=N(l,e[t>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(i<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((v+32+u+s+(N(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;t=N(o,e[t>>1]|0)|0;s=N(l,e[c+8>>1]|0)|0;r=N(m,e[r>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((t+32+s+r+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function lJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+1|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+2|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+3|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+1|0;m=N(o,d[c+1>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+2|0;m=N(o,d[c+2>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+3|0;m=N(o,d[c+3>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,d[c>>0]|0)|0;r=c+1|0;v=N(m,d[r>>0]|0)|0;p=c+e|0;q=N(n,d[p>>0]|0)|0;t=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((u+32+v+q+(N(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+1|0;r=N(o,d[r>>0]|0)|0;v=c+2|0;u=N(m,d[v>>0]|0)|0;t=N(n,d[t>>0]|0)|0;s=c+j|0;a[q>>0]=((d[q>>0]|0)+1+((r+32+u+t+(N(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+2|0;v=N(o,d[v>>0]|0)|0;t=c+3|0;u=N(m,d[t>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+k|0;a[q>>0]=((d[q>>0]|0)+1+((v+32+u+s+(N(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+3|0;t=N(o,d[t>>0]|0)|0;s=N(m,d[c+4>>0]|0)|0;r=N(n,d[r>>0]|0)|0;a[q>>0]=((d[q>>0]|0)+1+((t+32+s+r+(N(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=p}}while(0);return}function mJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;k=a+2|0;b[k>>1]=((e[k>>1]|0)+1+(((N(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;k=a+2|0;j=N(m,e[c+2>>1]|0)|0;b[k>>1]=((e[k>>1]|0)+1+((j+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;r=c+2|0;q=N(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=N(k,e[n>>1]|0)|0;p=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((s+32+q+o+(N(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1;o=a+2|0;r=N(m,e[r>>1]|0)|0;q=N(j,e[c+4>>1]|0)|0;p=N(k,e[p>>1]|0)|0;b[o>>1]=((e[o>>1]|0)+1+((r+32+q+p+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function nJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;l=b+1|0;a[l>>0]=((d[l>>0]|0)+1+(((N(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;l=b+1|0;k=N(m,d[c+1>>0]|0)|0;a[l>>0]=((d[l>>0]|0)+1+((k+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;r=c+1|0;q=N(k,d[r>>0]|0)|0;n=c+e|0;o=N(l,d[n>>0]|0)|0;p=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((s+32+q+o+(N(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1;o=b+1|0;r=N(m,d[r>>0]|0)|0;q=N(k,d[c+2>>0]|0)|0;p=N(l,d[p>>0]|0)|0;a[o>>0]=((d[o>>0]|0)+1+((r+32+q+p+(N(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=n}}while(0);return}function oJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function pJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=m}}while(0);return}function qJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function rJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function sJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}kX(d|0,0,256)|0;return}function tJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function uJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:0-m>>31&511;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:0-o>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function vJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:0-r>>31&511;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:0-t>>31&511;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:0-v>>31&511;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:0-x>>31&511;g=g+1|0}kX(d|0,0,256)|0;return}function wJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function xJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return} -function yJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else wJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;uJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function zJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else xJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;vJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function AJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function BJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146228+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function CJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146228+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)wJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else uJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function DJ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146224+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function EJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function FJ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146222+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function GJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function HJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function IJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function JJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function KJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function LJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function MJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function NJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function OJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function PJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function QJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function RJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function SJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function TJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function UJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:0-u>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function VJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function WJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<1;q=g<<1;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;s=l-s|0;b[g>>1]=s>>>0<512?s:0-s>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function YJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function ZJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function _J(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function $J(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function bK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function cK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:0-m>>31&1023;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:0-o>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function dK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:0-r>>31&1023;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:0-t>>31&1023;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:0-v>>31&1023;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:0-x>>31&1023;g=g+1|0}kX(d|0,0,256)|0;return}function eK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function fK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function gK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else eK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;cK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function hK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else fK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;dK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function iK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)eK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else cK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function jK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)eK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else cK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146228+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)eK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else cK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function kK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146228+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)eK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else cK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function lK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146224+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function mK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function nK(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146222+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function oK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function pK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function qK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function rK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function sK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function tK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function uK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function vK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function wK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function xK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function yK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function zK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function AK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function BK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function CK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:0-u>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function DK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function EK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function FK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<2;q=g<<2;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;s=l-s|0;b[g>>1]=s>>>0<1024?s:0-s>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function GK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function HK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function IK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function JK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function KK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function LK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function MK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:0-m>>31&4095;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:0-o>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function NK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:0-r>>31&4095;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:0-t>>31&4095;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:0-v>>31&4095;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:0-x>>31&4095;g=g+1|0}kX(d|0,0,256)|0;return}function OK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function PK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function QK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else OK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;MK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function RK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else PK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;NK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function SK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)OK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else MK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function TK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)OK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else MK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146228+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)OK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else MK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function UK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146228+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)OK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else MK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function VK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146224+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function WK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function XK(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146222+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function YK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function ZK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function _K(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function $K(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function aL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function bL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function cL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function dL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function eL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function fL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function gL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function hL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function iL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function jL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function kL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:0-u>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function lL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function mL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function nL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<4;q=g<<4;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;s=l-s|0;b[g>>1]=s>>>0<4096?s:0-s>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function oL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function pL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function qL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function rL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function sL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function tL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function uL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:0-m>>31&16383;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:0-o>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function vL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:0-r>>31&16383;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:0-t>>31&16383;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:0-v>>31&16383;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:0-x>>31&16383;g=g+1|0}kX(d|0,0,256)|0;return}function wL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function xL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function yL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else wL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;uL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function zL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146228+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else xL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;vL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function AL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function BL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146228+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146228+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)wL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else uL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function CL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146228+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)wL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else uL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function DL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146224+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function EL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function FL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146222+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function GL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function HL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function IL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function JL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function KL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function LL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ML(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function NL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function OL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function PL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function QL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function RL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function SL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function TL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function UL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:0-u>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function VL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function WL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<6;q=g<<6;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;s=l-s|0;b[g>>1]=s>>>0<16384?s:0-s>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function YL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function ZL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function _L(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function $L(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function bM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function cM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function dM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}l=g<<1;m=g*3|0;n=g<<2;i=g*5|0;j=g*6|0;k=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+l)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+m)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+n)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+i)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+j)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+k)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function eM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;else e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function fM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;else e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function gM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[146228+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else eM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;cM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function hM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)>=16)break;switch(a[i+(d[146228+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else fM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;dM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return}function iM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146228+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)eM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else cM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function jM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=1;while(1){if((j|0)==3){j=1;break}k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146228+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)eM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else cM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if((k|0)>=(l|0))break;n=k+4|0;if(!(a[i+(d[146228+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)eM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else cM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function kM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[146228+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)eM(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else cM(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function lM(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=i;g=0;while(1){if((g|0)==4){g=0;break}s=g<<2;o=b[e+(s<<1)>>1]|0;p=s|1;k=b[e+(p<<1)>>1]|0;r=k+o|0;k=o-k|0;o=s|2;q=b[e+(o<<1)>>1]|0;j=s|3;t=b[e+(j<<1)>>1]|0;n=q-t|0;q=t+q|0;c[h+(s<<2)>>2]=q+r;c[h+(p<<2)>>2]=r-q;c[h+(o<<2)>>2]=k-n;c[h+(j<<2)>>2]=n+k;g=g+1|0}while(1){if((g|0)==4)break;t=d[146224+g>>0]|0;s=c[h+(g<<2)>>2]|0;p=c[h+(g+8<<2)>>2]|0;r=p+s|0;p=s-p|0;s=c[h+(g+4<<2)>>2]|0;o=c[h+(g+12<<2)>>2]|0;q=s-o|0;s=o+s|0;b[a+(t<<1)>>1]=((N(s+r|0,f)|0)+128|0)>>>8;b[a+(t+16<<1)>>1]=((N(q+p|0,f)|0)+128|0)>>>8;b[a+(t+64<<1)>>1]=((N(p-q|0,f)|0)+128|0)>>>8;b[a+(t+80<<1)>>1]=((N(r-s|0,f)|0)+128|0)>>>8;g=g+1|0}l=i;return}function mM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;b[a>>1]=(N(h+i|0,c)|0)>>>7;b[j>>1]=(N(e+f|0,c)|0)>>>7;b[g>>1]=(N(i-h|0,c)|0)>>>7;b[d>>1]=(N(f-e|0,c)|0)>>>7;return}function nM(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h;f=0;while(1){if((f|0)==4){f=0;break}j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}while(1){if((f|0)==2)break;k=d[146222+f>>0]|0;j=c[g+(f<<2)>>2]|0;o=c[g+(f+4<<2)>>2]|0;i=o+j|0;o=j-o|0;j=c[g+(f+2<<2)>>2]|0;p=c[g+(f+6<<2)>>2]|0;n=j-p|0;j=p+j|0;b[a+(k<<1)>>1]=((N(j+i|0,e)|0)+128|0)>>>8;b[a+(k+32<<1)>>1]=((N(n+o|0,e)|0)+128|0)>>>8;b[a+(k+64<<1)>>1]=((N(o-n|0,e)|0)+128|0)>>>8;b[a+(k+96<<1)>>1]=((N(i-j|0,e)|0)+128|0)>>>8;f=f+1|0}l=h;return}function oM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function pM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function qM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function rM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function sM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function tM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function uM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function vM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function wM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0-c|0;z=N(c,-2)|0;A=N(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function xM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function yM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function zM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=N(c,-3)|0;x=N(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=N(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;l=d[g>>0]|0;h=b+x|0;n=d[h>>0]|0;i=b+y|0;o=d[i>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[i>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){B=d[b+u>>0]|0;a[i>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[h>>0]=(l+2+n+o+p|0)>>>2;i=g;h=3;j=4;k=p;g=(l*3|0)+n+(B<<1)|0}else{h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}function AM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function BM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function CM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=N(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return} -function pq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=$W(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=$W(m|0,n|0,65537,65537)|0;q=y;m=$W(f|0,o|0,65537,65537)|0;n=y;k=$W(r|0,s|0,65537,65537)|0;l=y;i=$W(g|0,t|0,65537,65537)|0;j=y;g=$W(u|0,v|0,65537,65537)|0;h=y;d=$W(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function qq(a,b){a=a|0;b=b|0;kq(a,b);kq(a+(b<<3)|0,b);return}function rq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function sq(a,b){a=a|0;b=b|0;rq(a,b);Hp(a,0,b);return}function tq(a,b){a=a|0;b=b|0;pq(a,b);Rp(a,0,b);return}function uq(a,b){a=a|0;b=b|0;qq(a,b);a=a+(b<<2)|0;Sp(a,0,b);Sp(a+8|0,0,b);return}function vq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function wq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function xq(a,b){a=a|0;b=b|0;qq(a,b);Sp(a,0,b);Sp(a+8|0,0,b);return}function yq(a,b){a=a|0;b=b|0;kq(a,b);Sp(a,0,b);Sp(a+8|0,0,b);return}function zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function Aq(a,b){a=a|0;b=b|0;zq(a,b);zq(a+(b<<3)|0,b);return}function Bq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Dq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Eq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Fq(a,b){a=a|0;b=b|0;Yu(a,b);return}function Gq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Hq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Iq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Kq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Lq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Mq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}kX(d|0,0,256)|0;return}function Nq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}kX(d|0,0,256)|0;return}function Oq(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}kX(d|0,0,256)|0;l=s;return}function Pq(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}kX(d|0,0,256)|0;l=k;return}function Qq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Kq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Rq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Kq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Kq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Sq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Lq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Lq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Lq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Uq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Vq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=$W(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=$W(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Wq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Xq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Yq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Zq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function _q(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function $q(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ar(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=$W(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function cr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;d=a+(d*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function dr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;d=a+(d*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function er(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=$W(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function fr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;d=a+(d*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function gr(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function hr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=$W((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=$W((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=$W((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=$W((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=$W((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=$W((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=$W((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=$W((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function ir(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function jr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function kr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function lr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function mr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function nr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function or(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function pr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=$W(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function qr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function rr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function sr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function ur(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function vr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function wr(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function xr(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+p>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+o>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function yr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=$W(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=$W(k|0,l|0,65537,65537)|0;h=y;d=$W(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function zr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=$W(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=$W(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Ar(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Br(a,b){a=a|0;b=b|0;Ar(a,b);Wq(a,0,b);return}function Cr(a,b){a=a|0;b=b|0;yr(a,b);er(a,0,b);return}function Dr(a,b){a=a|0;b=b|0;zr(a,b);a=a+(b<<2)|0;fr(a,0,b);fr(a+8|0,0,b);return}function Er(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=$W(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=$W(m|0,n|0,65537,65537)|0;q=y;m=$W(f|0,o|0,65537,65537)|0;n=y;k=$W(r|0,s|0,65537,65537)|0;l=y;i=$W(g|0,t|0,65537,65537)|0;j=y;g=$W(u|0,v|0,65537,65537)|0;h=y;d=$W(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Fr(a,b){a=a|0;b=b|0;zr(a,b);zr(a+(b<<3)|0,b);return}function Gr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Hr(a,b){a=a|0;b=b|0;Gr(a,b);Wq(a,0,b);return}function Ir(a,b){a=a|0;b=b|0;Er(a,b);er(a,0,b);return}function Jr(a,b){a=a|0;b=b|0;Fr(a,b);a=a+(b<<2)|0;fr(a,0,b);fr(a+8|0,0,b);return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function Lr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function Mr(a,b){a=a|0;b=b|0;Fr(a,b);fr(a,0,b);fr(a+8|0,0,b);return}function Nr(a,b){a=a|0;b=b|0;zr(a,b);fr(a,0,b);fr(a+8|0,0,b);return}function Or(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function Pr(a,b){a=a|0;b=b|0;Or(a,b);Or(a+(b<<3)|0,b);return}function Qr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Sr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Tr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function Ur(a,b){a=a|0;b=b|0;Xu(a,b);return}function Vr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function Wr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Xr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Yr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function Zr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function _r(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function $r(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}kX(d|0,0,256)|0;return}function as(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}kX(d|0,0,256)|0;return}function bs(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}kX(d|0,0,256)|0;l=s;return}function cs(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}kX(d|0,0,256)|0;l=k;return}function ds(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Zr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function es(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Zr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Zr(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;_r(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function gs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}_r(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;_r(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function hs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function is(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=$W(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=$W(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=$W(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function js(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ks(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function ls(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function ms(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ns(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function os(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ps(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=$W(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function rs(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;d=a+(d*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;d=a+(d*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function ts(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=$W(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function us(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;d=a+(d*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function vs(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function ws(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=$W((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=$W((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=$W((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=$W((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=$W((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=$W((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=$W((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=$W((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function xs(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function ys(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function zs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function As(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Bs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Cs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Ds(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Es(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=$W(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Fs(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Gs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Js(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ks(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ls(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Ms(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+p>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+o>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Ns(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=$W(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=$W(k|0,l|0,65537,65537)|0;h=y;d=$W(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Os(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=$W(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=$W(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Ps(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Qs(a,b){a=a|0;b=b|0;Ps(a,b);js(a,0,b);return}function Rs(a,b){a=a|0;b=b|0;Ns(a,b);ts(a,0,b);return}function Ss(a,b){a=a|0;b=b|0;Os(a,b);a=a+(b<<2)|0;us(a,0,b);us(a+8|0,0,b);return}function Ts(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=$W(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=$W(m|0,n|0,65537,65537)|0;q=y;m=$W(f|0,o|0,65537,65537)|0;n=y;k=$W(r|0,s|0,65537,65537)|0;l=y;i=$W(g|0,t|0,65537,65537)|0;j=y;g=$W(u|0,v|0,65537,65537)|0;h=y;d=$W(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Us(a,b){a=a|0;b=b|0;Os(a,b);Os(a+(b<<3)|0,b);return}function Vs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=$W(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=$W(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Ws(a,b){a=a|0;b=b|0;Vs(a,b);js(a,0,b);return}function Xs(a,b){a=a|0;b=b|0;Ts(a,b);ts(a,0,b);return}function Ys(a,b){a=a|0;b=b|0;Us(a,b);a=a+(b<<2)|0;us(a,0,b);us(a+8|0,0,b);return}function Zs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function _s(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function $s(a,b){a=a|0;b=b|0;Us(a,b);us(a,0,b);us(a+8|0,0,b);return}function at(a,b){a=a|0;b=b|0;Os(a,b);us(a,0,b);us(a+8|0,0,b);return}function bt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function ct(a,b){a=a|0;b=b|0;bt(a,b);bt(a+(b<<3)|0,b);return}function dt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function ft(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=$W(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function gt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function ht(a,b){a=a|0;b=b|0;Wu(a,b);return}function it(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function jt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function kt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=$W(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function lt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function mt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function nt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ot(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}kX(d|0,0,256)|0;return}function pt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}kX(d|0,0,256)|0;return}function qt(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}kX(d|0,0,256)|0;l=s;return}function rt(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}kX(d|0,0,256)|0;l=k;return}function st(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;mt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function tt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}mt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;mt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ut(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;nt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function vt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}nt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;nt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function wt(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function xt(a,b,e){a=a|0;b=b|0;e=e|0;c[a>>2]=N(d[a+-1>>0]|0,16843009)|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;b=e<<1;c[a+b>>2]=N(d[a+(b+-1)>>0]|0,16843009)|0;e=e*3|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;return}function yt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function zt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[b+(1-e)>>0]|0;h=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+2+h+(l<<1)|0)>>>2;c=(l+2+k+(h<<1)|0)>>>2&255;a[b+e>>0]=c;a[b+1>>0]=c;c=(h+2+j+(k<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+2+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function At(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d[b+~e>>0]|0;h=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;k=d[b+-1>>0]|0;n=d[b+(e+-1)>>0]|0;j=e<<1;i=d[b+(j+-1)>>0]|0;l=e*3|0;a[b+l>>0]=(n+2+(d[b+(l+-1)>>0]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&255;a[b+(l+1)>>0]=i;a[b+j>>0]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&255;a[b+(l+2)>>0]=n;a[b+(j|1)>>0]=n;a[b+e>>0]=n;k=((m<<1)+2+h+k|0)>>>2&255;a[b+(l+3)>>0]=k;a[b+(j+2)>>0]=k;a[b+(e+1)>>0]=k;a[b>>0]=k;i=(i+(h<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+2+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function Bt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;o=(j+1+n|0)>>>1&255;a[b+(i|1)>>0]=o;a[b>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(i+2)>>0]=o;a[b+1>>0]=o;o=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=o;a[b+2>>0]=o;a[b+3>>0]=(l+1+k|0)>>>1;o=((j<<1)+2+n+h|0)>>>2&255;a[b+(c+1)>>0]=o;a[b+e>>0]=o;j=j+2|0;o=(j+(n<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+2+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Ct(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;o=(k+1+j|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=((k<<1)+2+n+j|0)>>>2&255;a[b+(e+3)>>0]=o;a[b+1>>0]=o;k=k+2|0;a[b+2>>0]=(k+(n<<1)+m|0)>>>2;a[b+3>>0]=(n+2+(m<<1)+l|0)>>>2;l=(j+1+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Dt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d[b+(0-e)>>0]|0;k=d[b+(1-e)>>0]|0;j=d[b+(2-e)>>0]|0;i=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;a[b>>0]=(l+1+k|0)>>>1;m=(k+1+j|0)>>>1&255;c=e<<1;a[b+c>>0]=m;a[b+1>>0]=m;m=(j+1+i|0)>>>1&255;a[b+(c|1)>>0]=m;a[b+2>>0]=m;m=(i+1+h|0)>>>1&255;a[b+(c+2)>>0]=m;a[b+3>>0]=m;a[b+(c+3)>>0]=(h+1+g|0)>>>1;a[b+e>>0]=(l+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(e+1)>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Et(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d[b+-1>>0]|0;j=d[b+(e+-1)>>0]|0;c=e<<1;i=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;a[b>>0]=(k+1+j|0)>>>1;a[b+1>>0]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&255;a[b+e>>0]=k;a[b+2>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=(i+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+2+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Ft(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Gt(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function Ht(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function It(a,b,e){a=a|0;b=b|0;e=e|0;b=N(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Jt(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function Kt(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=d[b+(0-g)>>0]|0;n=d[b+(1-g)>>0]|0;h=d[b+(2-g)>>0]|0;m=d[b+(3-g)>>0]|0;l=d[b+(4-g)>>0]|0;k=d[b+(5-g)>>0]|0;j=d[b+(6-g)>>0]|0;i=d[b+(7-g)>>0]|0;f=(j+2+(d[b+((f|0?8:7)-g)>>0]|0)+(i<<1)|0)>>>2;a[b>>0]=((d[b+((((e|0)!=0)<<31>>31)-g)>>0]|0)+2+(o<<1)+n|0)>>>2;a[b+1>>0]=(o+2+(n<<1)+h|0)>>>2;a[b+2>>0]=(n+2+(h<<1)+m|0)>>>2;a[b+3>>0]=(h+2+(m<<1)+l|0)>>>2;h=b+4|0;a[h>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+5>>0]=(l+2+(k<<1)+j|0)>>>2;a[b+6>>0]=(k+2+(j<<1)+i|0)>>>2;a[b+7>>0]=f;f=c[b>>2]|0;h=c[h>>2]|0;e=1;while(1){if((e|0)==8)break;o=b+(N(e,g)|0)|0;c[o>>2]=f;c[o+4>>2]=h;e=e+1|0}return}function Lt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;r=d[a+-1>>0]|0;p=d[a+(f+-1)>>0]|0;q=f<<1;n=d[a+(q+-1)>>0]|0;o=f*3|0;l=d[a+(o+-1)>>0]|0;m=f<<2;j=d[a+(m+-1)>>0]|0;k=f*5|0;h=d[a+(k+-1)>>0]|0;i=f*6|0;g=d[a+(i+-1)>>0]|0;b=f*7|0;e=d[a+(b+-1)>>0]|0;s=N((s+2+(r<<1)+p|0)>>>2,16843009)|0;c[a>>2]=s;c[a+4>>2]=s;r=N((r+2+(p<<1)+n|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=r;c[f+4>>2]=r;p=N((p+2+(n<<1)+l|0)>>>2,16843009)|0;f=a+q|0;c[f>>2]=p;c[f+4>>2]=p;n=N((n+2+(l<<1)+j|0)>>>2,16843009)|0;f=a+o|0;c[f>>2]=n;c[f+4>>2]=n;l=N((l+2+(j<<1)+h|0)>>>2,16843009)|0;f=a+m|0;c[f>>2]=l;c[f+4>>2]=l;j=N((j+2+(h<<1)+g|0)>>>2,16843009)|0;f=a+k|0;c[f>>2]=j;c[f+4>>2]=j;h=N((h+2+(g<<1)+e|0)>>>2,16843009)|0;f=a+i|0;c[f>>2]=h;c[f+4>>2]=h;e=N((g+2+(e*3|0)|0)>>>2,16843009)|0;f=a+b|0;c[f>>2]=e;c[f+4>>2]=e;return}function Mt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=((b|0)!=0)<<31>>31;w=d[a+((N(n,f)|0)+-1)>>0]|0;v=d[a+-1>>0]|0;u=d[a+(f+-1)>>0]|0;t=d[a+((f<<1)+-1)>>0]|0;s=d[a+((f*3|0)+-1)>>0]|0;r=d[a+((f<<2)+-1)>>0]|0;q=d[a+((f*5|0)+-1)>>0]|0;p=d[a+((f*6|0)+-1)>>0]|0;o=d[a+((f*7|0)+-1)>>0]|0;m=d[a+(0-f)>>0]|0;l=d[a+(1-f)>>0]|0;k=d[a+(2-f)>>0]|0;j=d[a+(3-f)>>0]|0;i=d[a+(4-f)>>0]|0;h=d[a+(5-f)>>0]|0;g=d[a+(6-f)>>0]|0;b=d[a+(7-f)>>0]|0;e=N(((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((d[a+(n-f)>>0]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(d[a+((e|0?8:7)-f)>>0]|0)+(b<<1)|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Nt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=d[b+(0-f)>>0]|0;q=d[b+(1-f)>>0]|0;t=d[b+(2-f)>>0]|0;r=(p+2+(q<<1)+t|0)>>>2;u=d[b+(3-f)>>0]|0;s=(q+2+(t<<1)+u|0)>>>2;v=d[b+(4-f)>>0]|0;t=(t+2+(u<<1)+v|0)>>>2;w=d[b+(5-f)>>0]|0;u=(u+2+(v<<1)+w|0)>>>2;o=d[b+(6-f)>>0]|0;v=(v+2+(w<<1)+o|0)>>>2;n=d[b+(7-f)>>0]|0;w=(w+2+(o<<1)+n|0)>>>2;m=(e|0)!=0;o=(o+2+(d[b+((m?8:7)-f)>>0]|0)+(n<<1)|0)>>>2;if(m){x=d[b+(8-f)>>0]|0;e=d[b+(9-f)>>0]|0;m=d[b+(10-f)>>0]|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+2+(l<<1)+k|0)>>>2;l=(e+2+(m<<1)+l|0)>>>2;m=(x+2+(e<<1)+m|0)>>>2;e=(n+2+(x<<1)+e|0)>>>2}else{g=n;h=n;i=n;j=n;k=n;l=n;m=n;e=n}a[b>>0]=((((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(p<<1)+q|0)>>>2)+2+(r<<1)+s|0)>>>2;r=(r+2+(s<<1)+t|0)>>>2&255;a[b+1>>0]=r;a[b+f>>0]=r;s=(s+2+(t<<1)+u|0)>>>2&255;a[b+2>>0]=s;a[b+(f+1)>>0]=s;r=f<<1;a[b+r>>0]=s;t=(t+2+(u<<1)+v|0)>>>2&255;a[b+3>>0]=t;a[b+(f+2)>>0]=t;a[b+(r|1)>>0]=t;s=f*3|0;a[b+s>>0]=t;u=(u+2+(v<<1)+w|0)>>>2&255;a[b+4>>0]=u;a[b+(f+3)>>0]=u;a[b+(r+2)>>0]=u;a[b+(s+1)>>0]=u;t=f<<2;a[b+t>>0]=u;v=(v+2+(w<<1)+o|0)>>>2&255;a[b+5>>0]=v;a[b+(f+4)>>0]=v;a[b+(r+3)>>0]=v;a[b+(s+2)>>0]=v;a[b+(t|1)>>0]=v;u=f*5|0;a[b+u>>0]=v;w=(w+2+(o<<1)+e|0)>>>2&255;a[b+6>>0]=w;a[b+(f+5)>>0]=w;a[b+(r+4)>>0]=w;a[b+(s+3)>>0]=w;a[b+(t|2)>>0]=w;a[b+(u+1)>>0]=w;v=f*6|0;a[b+v>>0]=w;w=(o+2+(e<<1)+m|0)>>>2&255;a[b+7>>0]=w;a[b+(f+6)>>0]=w;a[b+(r+5)>>0]=w;a[b+(s+4)>>0]=w;a[b+(t|3)>>0]=w;a[b+(u+2)>>0]=w;a[b+(v|1)>>0]=w;x=f*7|0;a[b+x>>0]=w;w=(e+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=w;a[b+(r+6)>>0]=w;a[b+(s+5)>>0]=w;a[b+(t+4)>>0]=w;a[b+(u+3)>>0]=w;a[b+(v+2)>>0]=w;a[b+(x+1)>>0]=w;w=(m+2+(l<<1)+k|0)>>>2&255;a[b+(r+7)>>0]=w;a[b+(s+6)>>0]=w;a[b+(t+5)>>0]=w;a[b+(u+4)>>0]=w;a[b+(v+3)>>0]=w;a[b+(x+2)>>0]=w;w=(l+2+(k<<1)+j|0)>>>2&255;a[b+(s+7)>>0]=w;a[b+(t+6)>>0]=w;a[b+(u+5)>>0]=w;a[b+(v+4)>>0]=w;a[b+(x+3)>>0]=w;w=(k+2+(j<<1)+i|0)>>>2&255;a[b+(t+7)>>0]=w;a[b+(u+6)>>0]=w;a[b+(v+5)>>0]=w;a[b+(x+4)>>0]=w;w=(j+2+(i<<1)+h|0)>>>2&255;a[b+(u+7)>>0]=w;a[b+(v+6)>>0]=w;a[b+(x+5)>>0]=w;w=(i+2+(h<<1)+g|0)>>>2&255;a[b+(v+7)>>0]=w;a[b+(x+6)>>0]=w;a[b+(x+7)>>0]=(h+2+(g*3|0)|0)>>>2;return}function Ot(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;t=((c|0)!=0)<<31>>31;C=d[b+(0-f)>>0]|0;k=d[b+(1-f)>>0]|0;s=((d[b+(t-f)>>0]|0)+2+(C<<1)+k|0)>>>2;i=d[b+(2-f)>>0]|0;C=C+2|0;m=(C+(k<<1)+i|0)>>>2;h=d[b+(3-f)>>0]|0;k=(k+2+(i<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;v=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+v|0)>>>2;q=d[b+(7-f)>>0]|0;c=(c+2+(v<<1)+q|0)>>>2;e=(v+2+(d[b+((e|0?8:7)-f)>>0]|0)+(q<<1)|0)>>>2;t=d[b+((N(t,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;v=d[b+(f+-1)>>0]|0;t=(t+2+(q<<1)+v|0)>>>2;j=f<<1;w=d[b+(j+-1)>>0]|0;o=(q+2+(v<<1)+w|0)>>>2;l=f*3|0;x=d[b+(l+-1)>>0]|0;v=(v+2+(w<<1)+x|0)>>>2;n=f<<2;y=d[b+(n+-1)>>0]|0;w=(w+2+(x<<1)+y|0)>>>2;p=f*5|0;z=d[b+(p+-1)>>0]|0;x=(x+2+(y<<1)+z|0)>>>2;r=f*6|0;B=d[b+(r+-1)>>0]|0;y=(y+2+(z<<1)+B|0)>>>2;u=f*7|0;A=d[b+(u+-1)>>0]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+u>>0]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=z;a[b+r>>0]=z;y=(w+2+(x<<1)+y|0)>>>2&255;a[b+(u+2)>>0]=y;a[b+(r|1)>>0]=y;a[b+p>>0]=y;x=(v+2+(w<<1)+x|0)>>>2&255;a[b+(u+3)>>0]=x;a[b+(r+2)>>0]=x;a[b+(p+1)>>0]=x;a[b+n>>0]=x;w=(o+2+(v<<1)+w|0)>>>2&255;a[b+(u+4)>>0]=w;a[b+(r+3)>>0]=w;a[b+(p+2)>>0]=w;a[b+(n|1)>>0]=w;a[b+l>>0]=w;v=(t+2+(o<<1)+v|0)>>>2&255;a[b+(u+5)>>0]=v;a[b+(r+4)>>0]=v;a[b+(p+3)>>0]=v;a[b+(n|2)>>0]=v;a[b+(l+1)>>0]=v;a[b+j>>0]=v;o=((t<<1)+2+o+q|0)>>>2&255;a[b+(u+6)>>0]=o;a[b+(r+5)>>0]=o;a[b+(p+4)>>0]=o;a[b+(n|3)>>0]=o;a[b+(l+2)>>0]=o;a[b+(j|1)>>0]=o;a[b+f>>0]=o;o=s+2|0;t=(o+t+(q<<1)|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(r+6)>>0]=t;a[b+(p+5)>>0]=t;a[b+(n+4)>>0]=t;a[b+(l+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;a[b>>0]=t;q=((s<<1)+2+m+q|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+6)>>0]=q;a[b+(n+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+(j+3)>>0]=q;a[b+(f+2)>>0]=q;a[b+1>>0]=q;o=(o+(m<<1)+k|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(n+6)>>0]=o;a[b+(l+5)>>0]=o;a[b+(j+4)>>0]=o;a[b+(f+3)>>0]=o;a[b+2>>0]=o;m=(m+2+(k<<1)+i|0)>>>2&255;a[b+(n+7)>>0]=m;a[b+(l+6)>>0]=m;a[b+(j+5)>>0]=m;a[b+(f+4)>>0]=m;a[b+3>>0]=m;k=(k+2+(i<<1)+h|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;a[b+4>>0]=k;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(j+7)>>0]=i;a[b+(f+6)>>0]=i;a[b+5>>0]=i;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(f+7)>>0]=h;a[b+6>>0]=h;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Pt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;n=d[b+(1-f)>>0]|0;u=((d[b+(s-f)>>0]|0)+2+(A<<1)+n|0)>>>2;k=d[b+(2-f)>>0]|0;A=A+2|0;q=(A+(n<<1)+k|0)>>>2;h=d[b+(3-f)>>0]|0;n=(n+2+(k<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;k=(k+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;r=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+r|0)>>>2;t=d[b+(7-f)>>0]|0;c=(c+2+(r<<1)+t|0)>>>2;e=(r+2+(d[b+((e|0?8:7)-f)>>0]|0)+(t<<1)|0)>>>2;s=d[b+((N(s,f)|0)+-1)>>0]|0;t=d[b+-1>>0]|0;r=d[b+(f+-1)>>0]|0;s=(s+2+(t<<1)+r|0)>>>2;i=f<<1;x=d[b+(i+-1)>>0]|0;v=(t+2+(r<<1)+x|0)>>>2;j=f*3|0;w=d[b+(j+-1)>>0]|0;r=(r+2+(x<<1)+w|0)>>>2;l=f<<2;z=d[b+(l+-1)>>0]|0;x=(x+2+(w<<1)+z|0)>>>2;m=f*5|0;B=d[b+(m+-1)>>0]|0;w=(w+2+(z<<1)+B|0)>>>2;o=f*6|0;y=d[b+(o+-1)>>0]|0;z=(z+2+(B<<1)+y|0)>>>2;p=f*7|0;y=(B+2+(y<<1)+(d[b+(p+-1)>>0]|0)|0)>>>2;t=(A+t+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+o>>0]=(x+2+(w<<1)+z|0)>>>2;a[b+p>>0]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(r<<1)+x|0)>>>2&255;a[b+(o|1)>>0]=y;a[b+l>>0]=y;w=(r+2+(x<<1)+w|0)>>>2&255;a[b+(p+1)>>0]=w;a[b+m>>0]=w;w=((s<<1)+2+v+t|0)>>>2&255;a[b+(o+2)>>0]=w;a[b+(l|1)>>0]=w;a[b+i>>0]=w;r=(s+2+(v<<1)+r|0)>>>2&255;a[b+(p+2)>>0]=r;a[b+(m+1)>>0]=r;a[b+j>>0]=r;r=u+2|0;s=(r+s+(t<<1)|0)>>>2&255;a[b+(p+3)>>0]=s;a[b+(m+2)>>0]=s;a[b+(j+1)>>0]=s;a[b+f>>0]=s;s=u+1|0;v=(s+t|0)>>>1&255;a[b+(o+3)>>0]=v;a[b+(l|2)>>0]=v;a[b+(i|1)>>0]=v;a[b>>0]=v;t=((u<<1)+2+q+t|0)>>>2&255;a[b+(p+4)>>0]=t;a[b+(m+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;s=(s+q|0)>>>1&255;a[b+(o+4)>>0]=s;a[b+(l|3)>>0]=s;a[b+(i+2)>>0]=s;a[b+1>>0]=s;r=(r+(q<<1)+n|0)>>>2&255;a[b+(p+5)>>0]=r;a[b+(m+4)>>0]=r;a[b+(j+3)>>0]=r;a[b+(f+2)>>0]=r;r=(q+1+n|0)>>>1&255;a[b+(o+5)>>0]=r;a[b+(l+4)>>0]=r;a[b+(i+3)>>0]=r;a[b+2>>0]=r;q=(q+2+(n<<1)+k|0)>>>2&255;a[b+(p+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(j+4)>>0]=q;a[b+(f+3)>>0]=q;q=(n+1+k|0)>>>1&255;a[b+(o+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(i+4)>>0]=q;a[b+3>>0]=q;n=(n+2+(k<<1)+h|0)>>>2&255;a[b+(p+7)>>0]=n;a[b+(m+6)>>0]=n;a[b+(j+5)>>0]=n;a[b+(f+4)>>0]=n;n=(k+1+h|0)>>>1&255;a[b+(o+7)>>0]=n;a[b+(l+6)>>0]=n;a[b+(i+5)>>0]=n;a[b+4>>0]=n;k=(k+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;k=(h+1+g|0)>>>1&255;a[b+(l+7)>>0]=k;a[b+(i+6)>>0]=k;a[b+5>>0]=k;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(j+7)>>0]=h;a[b+(f+6)>>0]=h;h=(g+1+c|0)>>>1&255;a[b+(i+7)>>0]=h;a[b+6>>0]=h;a[b+(f+7)>>0]=(g+2+(c<<1)+e|0)>>>2;a[b+7>>0]=(c+1+e|0)>>>1;return}function Qt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;i=d[b+(1-f)>>0]|0;n=((d[b+(o-f)>>0]|0)+2+(A<<1)+i|0)>>>2;h=d[b+(2-f)>>0]|0;A=A+2|0;j=(A+(i<<1)+h|0)>>>2;g=d[b+(3-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(4-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;m=d[b+(5-f)>>0]|0;g=(g+2+(c<<1)+m|0)>>>2;e=d[b+(6-f)>>0]|0;c=(c+2+(m<<1)+e|0)>>>2;e=(m+2+(e<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;o=d[b+((N(o,f)|0)+-1)>>0]|0;m=d[b+-1>>0]|0;k=d[b+(f+-1)>>0]|0;o=(o+2+(m<<1)+k|0)>>>2;l=f<<1;t=d[b+(l+-1)>>0]|0;q=(m+2+(k<<1)+t|0)>>>2;p=f*3|0;v=d[b+(p+-1)>>0]|0;k=(k+2+(t<<1)+v|0)>>>2;r=f<<2;x=d[b+(r+-1)>>0]|0;t=(t+2+(v<<1)+x|0)>>>2;s=f*5|0;y=d[b+(s+-1)>>0]|0;v=(v+2+(x<<1)+y|0)>>>2;u=f*6|0;B=d[b+(u+-1)>>0]|0;x=(x+2+(y<<1)+B|0)>>>2;w=f*7|0;z=d[b+(w+-1)>>0]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+w>>0]=(z+1+y|0)>>>1;a[b+(w+1)>>0]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&255;a[b+(w+2)>>0]=z;a[b+u>>0]=z;y=(v+2+(x<<1)+y|0)>>>2&255;a[b+(w+3)>>0]=y;a[b+(u|1)>>0]=y;y=(v+1+x|0)>>>1&255;a[b+(w+4)>>0]=y;a[b+(u+2)>>0]=y;a[b+s>>0]=y;x=(t+2+(v<<1)+x|0)>>>2&255;a[b+(w+5)>>0]=x;a[b+(u+3)>>0]=x;a[b+(s+1)>>0]=x;x=(t+1+v|0)>>>1&255;a[b+(w+6)>>0]=x;a[b+(u+4)>>0]=x;a[b+(s+2)>>0]=x;a[b+r>>0]=x;v=(k+2+(t<<1)+v|0)>>>2&255;a[b+(w+7)>>0]=v;a[b+(u+5)>>0]=v;a[b+(s+3)>>0]=v;a[b+(r|1)>>0]=v;v=(k+1+t|0)>>>1&255;a[b+(u+6)>>0]=v;a[b+(s+4)>>0]=v;a[b+(r|2)>>0]=v;a[b+p>>0]=v;t=(q+2+(k<<1)+t|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(s+5)>>0]=t;a[b+(r|3)>>0]=t;a[b+(p+1)>>0]=t;t=(q+1+k|0)>>>1&255;a[b+(s+6)>>0]=t;a[b+(r+4)>>0]=t;a[b+(p+2)>>0]=t;a[b+l>>0]=t;k=(o+2+(q<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=k;a[b+(r+5)>>0]=k;a[b+(p+3)>>0]=k;a[b+(l|1)>>0]=k;k=o+1|0;s=(k+q|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(l+2)>>0]=s;a[b+f>>0]=s;q=((o<<1)+2+q+m|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+5)>>0]=q;a[b+(l+3)>>0]=q;a[b+(f+1)>>0]=q;k=(k+m|0)>>>1&255;a[b+(p+6)>>0]=k;a[b+(l+4)>>0]=k;a[b+(f+2)>>0]=k;a[b>>0]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(l+5)>>0]=o;a[b+(f+3)>>0]=o;a[b+1>>0]=o;m=((n<<1)+2+j+m|0)>>>2&255;a[b+(l+6)>>0]=m;a[b+(f+4)>>0]=m;a[b+2>>0]=m;k=(k+(j<<1)+i|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(f+5)>>0]=k;a[b+3>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(f+6)>>0]=j;a[b+4>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(f+7)>>0]=i;a[b+5>>0]=i;a[b+6>>0]=(h+2+(g<<1)+c|0)>>>2;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Rt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=d[b+(0-f)>>0]|0;m=d[b+(1-f)>>0]|0;k=((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(l<<1)+m|0)>>>2;n=d[b+(2-f)>>0]|0;l=(l+2+(m<<1)+n|0)>>>2;o=d[b+(3-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(4-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;o=(o+2+(p<<1)+q|0)>>>2;j=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+j|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(j<<1)+c|0)>>>2;i=(e|0)!=0;j=(j+2+(d[b+((i?8:7)-f)>>0]|0)+(c<<1)|0)>>>2;if(i){s=d[b+(8-f)>>0]|0;r=d[b+(9-f)>>0]|0;i=d[b+(10-f)>>0]|0;h=d[b+(11-f)>>0]|0;g=d[b+(12-f)>>0]|0;e=(h+2+(g<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(r+2+(i<<1)+h|0)>>>2;i=(s+2+(r<<1)+i|0)>>>2;c=(c+2+(s<<1)+r|0)>>>2}else{e=c;g=c;h=c;i=c}a[b>>0]=(k+1+l|0)>>>1;a[b+f>>0]=(k+2+(l<<1)+m|0)>>>2;s=(l+1+m|0)>>>1&255;a[b+1>>0]=s;t=f<<1;a[b+t>>0]=s;s=(l+2+(m<<1)+n|0)>>>2&255;a[b+(f+1)>>0]=s;k=f*3|0;a[b+k>>0]=s;s=(m+1+n|0)>>>1&255;a[b+2>>0]=s;a[b+(t|1)>>0]=s;l=f<<2;a[b+l>>0]=s;s=(m+2+(n<<1)+o|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;m=f*5|0;a[b+m>>0]=s;s=(n+1+o|0)>>>1&255;a[b+3>>0]=s;a[b+(t+2)>>0]=s;a[b+(l|1)>>0]=s;r=f*6|0;a[b+r>>0]=s;n=(n+2+(o<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=n;a[b+(k+2)>>0]=n;a[b+(m+1)>>0]=n;s=f*7|0;a[b+s>>0]=n;n=(o+1+p|0)>>>1&255;a[b+4>>0]=n;a[b+(t+3)>>0]=n;a[b+(l|2)>>0]=n;a[b+(r|1)>>0]=n;o=(o+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=o;a[b+(k+3)>>0]=o;a[b+(m+2)>>0]=o;a[b+(s+1)>>0]=o;o=(p+1+q|0)>>>1&255;a[b+5>>0]=o;a[b+(t+4)>>0]=o;a[b+(l|3)>>0]=o;a[b+(r+2)>>0]=o;p=(p+2+(q<<1)+j|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(m+3)>>0]=p;a[b+(s+2)>>0]=p;p=(q+1+j|0)>>>1&255;a[b+6>>0]=p;a[b+(t+5)>>0]=p;a[b+(l+4)>>0]=p;a[b+(r+3)>>0]=p;q=(q+2+(j<<1)+c|0)>>>2&255;a[b+(f+6)>>0]=q;a[b+(k+5)>>0]=q;a[b+(m+4)>>0]=q;a[b+(s+3)>>0]=q;q=(j+1+c|0)>>>1&255;a[b+7>>0]=q;a[b+(t+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(r+4)>>0]=q;q=(j+2+(c<<1)+i|0)>>>2&255;a[b+(f+7)>>0]=q;a[b+(k+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(s+4)>>0]=q;f=(c+1+i|0)>>>1&255;a[b+(t+7)>>0]=f;a[b+(l+6)>>0]=f;a[b+(r+5)>>0]=f;f=(c+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(m+6)>>0]=f;a[b+(s+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(l+7)>>0]=f;a[b+(r+6)>>0]=f;f=(i+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=f;a[b+(s+6)>>0]=f;a[b+(r+7)>>0]=(h+1+g|0)>>>1;a[b+(s+7)>>0]=(h+2+(g<<1)+e|0)>>>2;return} -function yk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+208|0;if((l|0)>=(m|0))W(208);ia=qa+128|0;ba=qa+120|0;ea=qa+104|0;da=qa+88|0;t=qa+80|0;s=qa+72|0;r=qa+64|0;u=qa+56|0;p=qa+40|0;q=qa+24|0;o=qa+16|0;k=qa;ka=qa+192|0;V=qa+176|0;X=qa+144|0;na=f+28212|0;Y=c[(c[na>>2]|0)+64>>2]|0;ja=f+28216|0;ca=((c[(c[ja>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ma=c[f+25664>>2]|0;ga=g+21788|0;ha=g+21792|0;$=f+27016|0;pa=(N(c[$>>2]|0,c[ha>>2]|0)|0)+(c[ga>>2]|0)|0;oa=g+21796|0;c[oa>>2]=pa;n=g+840|0;if((c[n>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;if((h|0)==-1){h=zk(g+4|0)|0;c[j>>2]=h}i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26376>>2]|0?(c[ha>>2]&1|i|0)==0:0){pa=Ak(g+4|0)|0;c[g+21828>>2]=pa;c[g+21832>>2]=pa}Bk(f,g);h=0}else fa=9}else fa=9;a:do if((fa|0)==9){_=f+26376|0;if(c[_>>2]|0?(c[ha>>2]&1|0)==0:0){la=Ak(g+4|0)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}c[g+21648>>2]=0;la=g+4|0;i=Ck(la)|0;c[ka>>2]=i;b:do switch(c[n>>2]|0){case 3:if(i>>>0<23){aa=a[113990+(i<<2)+2>>0]|0;h=e[113990+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-23|0;c[ka>>2]=h;fa=21;break b}case 2:if(i>>>0<5){aa=a[113954+(i<<2)+2>>0]|0;h=e[113954+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-5|0;c[ka>>2]=h;fa=21;break b}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ka>>2]=h;fa=21}else{h=i;fa=21}}}while(0);do if((fa|0)==21)if(h>>>0>25){f=c[f+4>>2]|0;oa=(Wi(c[g+836>>2]|0)|0)<<24>>24;pa=c[ga>>2]|0;g=c[ha>>2]|0;c[k>>2]=h;c[k+4>>2]=oa;c[k+8>>2]=pa;c[k+12>>2]=g;Wf(f,16,134729,k);h=-1;break a}else{aa=d[113850+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113850+(h<<2)+2>>0];h=e[113850+(h<<2)>>1]|0;c[ka>>2]=h;i=0;break}while(0);Z=g+21828|0;if(c[Z>>2]|0){h=h|128;c[ka>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[ja>>2]|0;h=N(c[h+1184>>2]|0,e[114134+(c[h+12>>2]<<1)>>1]|0)|0;c[g+27780>>2]=Dk(la)|0;if((Ek(la)|0)<(h|0)){Wf(c[f+4>>2]|0,16,134772,o);h=-1094995529;break}else{Fk(la,h);a[(c[f+24340>>2]|0)+pa>>0]=0;k=(c[f+25972>>2]|0)+(pa*48|0)|0;n=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(n|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[ka>>2];h=0;break}}Gk(f,g,h);Hk(f,g,h);c:do if(!(h&7)){if(i<<24>>24==4){d:do if((c[n>>2]|0)==3){h=0;while(1){if((h|0)>=4)break;i=Lk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>12){fa=52;break}c[V+(h<<2)>>2]=d[114082+(k<<2)+2>>0];b[j>>1]=b[114082+((i&65535)<<2)>>1]|0;h=h+1|0}if((fa|0)==52){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[q>>2]=k;c[q+4>>2]=pa;c[q+8>>2]=f;Wf(g,16,134813,q);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))fa=56;else{Mk(f,g,ka);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;fa=56}}else{h=0;while(1){if((h|0)>=4){fa=56;break d}i=Lk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>3)break;c[V+(h<<2)>>2]=d[113974+(k<<2)+2>>0];b[j>>1]=b[113974+((i&65535)<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[p>>2]=k;c[p+4>>2]=pa;c[p+8>>2]=f;Wf(g,16,134853,p)}while(0);do if((fa|0)==56){U=g+23412|0;o=g+21832|0;n=0;e:while(1){h=c[U>>2]|0;if(n>>>0>=h>>>0)break;if(!(c[ka>>2]&512))k=c[g+23404+(n<<2)>>2]<>2];else k=1;j=4096<<(n<<1);i=0;while(1){if((i|0)>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){f:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break f}case 2:{h=(Ak(la)|0)^1;break f}default:{h=Lk(la)|0;if(h>>>0>>0)break f;else{fa=73;break e}}}while(0);c[X+(n<<4)+(i<<2)>>2]=h}i=i+1|0}n=n+1|0}if((fa|0)==73){g=c[f+4>>2]|0;c[u>>2]=h;Wf(g,16,134893,u);break}if(!Y)n=0;else{Y=(c[(c[ja>>2]|0)+72>>2]|0)==0;n=g+28552|0;n=(((Y?24117616:7340144)&c[n>>2]|0)==0?((Y?24117616:7340144)&c[n+4>>2]|0)==0:0)&1}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;while(1){if(O>>>0>=h>>>0)break;K=O<<1;H=4096<>1]&256)){Y=c[X+(O<<4)+(G<<2)>>2]&255;M=G<<2;i=d[146228+M>>0]|0;a[i+9+(g+28272+(O*40|0))>>0]=Y;a[i+8+(g+28272+(O*40|0))>>0]=Y;a[i+1+(g+28272+(O*40|0))>>0]=Y;a[g+28272+(O*40|0)+i>>0]=Y;h=e[h>>1]|0;if(!(H&h)){c[g+27952+(O*160|0)+(i<<2)+36>>2]=0;c[g+27952+(O*160|0)+(i<<2)+32>>2]=0;c[g+27952+(O*160|0)+(i<<2)+4>>2]=0;c[g+27952+(O*160|0)+(i<<2)>>2]=0;break}C=h&24|0?2:1;D=c[V+(G<<2)>>2]|0;E=(h&8|0)==0;F=(h&16|0)==0;z=(h&32|0)==0;y=0;while(1){if((y|0)>=(D|0))break g;h=a[146228+((N(y,C)|0)+M)>>0]|0;A=h&255;B=g+27952+(O*160|0)+(A<<2)|0;q=a[g+28272+(O*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(O*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;s=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(w<<2)|0;i=w+C|0;j=a[g+28272+(O*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[_>>2]|0)!=0))){if((a[I>>0]|0)==-2){fa=95;break}p=c[(c[P>>2]|0)+48>>2]|0;c[J>>2]=0;o=(c[Q>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=95;break}Y=c[$>>2]|0;h=Y+(c[R>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,Y)|0)+h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=b[Y+(o<<2)+2>>1]<<1;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!o){fa=95;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i&3)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=(b[Y+(o<<2)+2>>1]|0)/2|0;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else fa=95;while(0);do if((fa|0)==95){fa=0;if(j){k=A+-9|0;o=g+27952+(O*160|0)+(k<<2)|0;k=a[g+28272+(O*40|0)+k>>0]|0;break}else{o=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{i=Nk(i,b[v>>1]|0,b[o>>1]|0)|0;h=Nk(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(i){i=b[s>>1]|0;h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){i=b[v>>1]|0;h=b[g+27952+(O*160|0)+(w<<2)+2>>1]|0;break}else{i=b[o>>1]|0;h=b[o+2>>1]|0;break}}else{i=Nk(b[s>>1]|0,b[v>>1]|0,b[o>>1]|0)|0;h=Nk(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0}while(0);k=(Ok(la)|0)+i|0;i=(Ok(la)|0)+h|0;do if(E){if(!F){b[B+4>>1]=k;h=i&65535;j=1;fa=115;break}if(z)break;b[B+32>>1]=k;h=i&65535;j=8;fa=115}else{h=k&65535;b[B+36>>1]=h;b[B+32>>1]=h;b[B+4>>1]=h;h=i&65535;b[B+38>>1]=h;b[B+34>>1]=h;j=1;fa=115}while(0);if((fa|0)==115){fa=0;b[B+(j<<2)+2>>1]=h}b[B>>1]=k;b[g+27952+(O*160|0)+(A<<2)+2>>1]=i;y=y+1|0}}else{Y=d[146228+(G<<2)>>0]|0;a[g+28272+(O*40|0)+Y>>0]=a[Y+1+(g+28272+(O*40|0))>>0]|0}while(0);G=G+1|0}O=O+1|0;h=c[U>>2]|0}break c}while(0);h=-1;break a}if(h&256|0){Mk(f,g,ka);n=c[(c[ja>>2]|0)+72>>2]&Y;break}if(h&8|0){u=g+23412|0;v=c[ka>>2]|0;k=g+21832|0;j=0;h:while(1){h=c[u>>2]|0;if(j>>>0>=h>>>0){t=0;break}if(v&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];switch(i|0){case 1:{h=0;break}case 2:{h=(Ak(la)|0)^1;break}default:{h=Lk(la)|0;if(h>>>0>=i>>>0){fa=132;break h}}}$=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=$;c[g+28272+(j*40|0)+20>>2]=$;c[g+28272+(j*40|0)+28>>2]=$;c[g+28272+(j*40|0)+36>>2]=$}j=j+1|0}if((fa|0)==132){g=c[f+4>>2]|0;c[r>>2]=h;Wf(g,16,134893,r);h=-1;break a}while(1){if(t>>>0>=h>>>0){n=Y;break c}if(v&4096<<(t<<1)){i=a[g+28272+(t*40|0)+12>>0]|0;p=a[g+28272+(t*40|0)+4>>0]|0;q=a[g+28272+(t*40|0)+11>>0]|0;o=g+27952+(t*160|0)+44|0;r=g+27952+(t*160|0)+16|0;h=a[g+28272+(t*40|0)+8>>0]|0;if(h<<24>>24==-2){s=g+27952+(t*160|0)+12|0;n=a[g+28272+(t*40|0)+3>>0]|0}else{s=g+27952+(t*160|0)+32|0;n=h<<24>>24}j=p<<24>>24==i<<24>>24;k=q<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[o>>1]|0;if(q<<24>>24!=-2&(p<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(t*160|0)+46>>1]|0;break}else{i=Nk(i,b[r>>1]|0,b[s>>1]|0)|0;h=Nk(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0;break}}if(k){i=b[o>>1]|0;h=b[g+27952+(t*160|0)+46>>1]|0;break}if(j){i=b[r>>1]|0;h=b[g+27952+(t*160|0)+18>>1]|0;break}else{i=b[s>>1]|0;h=b[s+2>>1]|0;break}}else{i=Nk(b[o>>1]|0,b[r>>1]|0,b[s>>1]|0)|0;h=Nk(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0}while(0);$=(Ok(la)|0)+i|0;h=(Ok(la)|0)+h<<16|$&65535;c[g+27952+(t*160|0)+48>>2]=h;c[g+27952+(t*160|0)+52>>2]=h;c[g+27952+(t*160|0)+56>>2]=h;c[g+27952+(t*160|0)+60>>2]=h;c[g+27952+(t*160|0)+80>>2]=h;c[g+27952+(t*160|0)+84>>2]=h;c[g+27952+(t*160|0)+88>>2]=h;c[g+27952+(t*160|0)+92>>2]=h;c[g+27952+(t*160|0)+112>>2]=h;c[g+27952+(t*160|0)+116>>2]=h;c[g+27952+(t*160|0)+120>>2]=h;c[g+27952+(t*160|0)+124>>2]=h;c[g+27952+(t*160|0)+144>>2]=h;c[g+27952+(t*160|0)+148>>2]=h;c[g+27952+(t*160|0)+152>>2]=h;c[g+27952+(t*160|0)+156>>2]=h;h=c[u>>2]|0}t=t+1|0}}S=g+23412|0;T=c[ka>>2]|0;p=g+21832|0;if(!(h&16))o=0;else{o=0;i:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;j:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break j}case 2:{h=(Ak(la)|0)^1;break j}default:{h=Lk(la)|0;if(h>>>0>>0)break j;else{fa=161;break i}}}}while(0);X=(j<<4|12)+(g+28272+(o*40|0))|0;V=N(h,16843009)|0;c[X>>2]=V;c[X+8>>2]=V;j=j+1|0}o=o+1|0}if((fa|0)==161){g=c[f+4>>2]|0;c[s>>2]=h;Wf(g,16,134893,s);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+4|0;C=g+27952+(L*160|0)+16|0;D=g+27952+(L*160|0)+18|0;E=g+28272+(L*40|0)+11|0;F=g+27952+(L*160|0)+40|0;G=12288<>0]|0;s=r<<24>>24;do if(!z){if((a[B>>0]|0)!=r<<24>>24){fa=174;break}j=b[C>>1]|0;i=b[D>>1]|0}else{if((a[I>>0]|0)!=r<<24>>24){fa=174;break}j=b[J>>1]|0;i=b[K>>1]|0}while(0);do if((fa|0)==174){fa=0;i=a[146228+i>>0]|0;p=i&255;x=p+-8|0;u=a[g+28272+(L*40|0)+x>>0]|0;y=p+-1|0;v=a[g+28272+(L*40|0)+y>>0]|0;t=g+27952+(L*160|0)+(y<<2)|0;w=g+27952+(L*160|0)+(x<<2)|0;j=p+-4|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[E>>0]|0)==-2){fa=183;break}q=c[(c[M>>2]|0)+48>>2]|0;c[F>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=183;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=b[X+(o<<2)+2>>1]<<1;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=183;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=183;while(0);do if((fa|0)==183){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=u<<24>>24==r<<24>>24;j=v<<24>>24==r<<24>>24;i=(j&1)+(k&1)+((n|0)==(s|0)&1)|0;if(i>>>0>1){j=Nk(b[t>>1]|0,b[w>>1]|0,b[o>>1]|0)|0;i=Nk(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[t>>1]|0;if(v<<24>>24!=-2&(u<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}else{j=Nk(j,b[w>>1]|0,b[o>>1]|0)|0;i=Nk(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[t>>1]|0;i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}if(k){j=b[w>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(Ok(la)|0)+j|0;i=(Ok(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+8>>2]=i;c[g+27952+(L*160|0)+(h<<2)+12>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+40>>2]=i;c[g+27952+(L*160|0)+(h<<2)+44>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}k:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;l:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break l}case 2:{h=(Ak(la)|0)^1;break l}default:{h=Lk(la)|0;if(h>>>0>>0)break l;else{fa=208;break k}}}}while(0);X=(j<<1)+12+(g+28272+(o*40|0))|0;V=h*257&65535;b[X>>1]=V;b[X+8>>1]=V;b[X+16>>1]=V;b[X+24>>1]=V;j=j+1|0}o=o+1|0}if((fa|0)==208){g=c[f+4>>2]|0;c[t>>2]=h;Wf(g,16,134893,t);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+11|0;C=g+27952+(L*160|0)+44|0;D=g+27952+(L*160|0)+46|0;E=g+27952+(L*160|0)+40|0;F=12288<>0]|0;y=v<<24>>24;do if(!z)if((a[B>>0]|0)==v<<24>>24){j=b[C>>1]|0;i=b[D>>1]|0}else fa=223;else{i=a[H>>0]|0;if(i<<24>>24==-2){k=I;i=a[J>>0]|0}else k=K;if(i<<24>>24!=v<<24>>24){fa=223;break}j=b[k>>1]|0;i=b[k+2>>1]|0}while(0);do if((fa|0)==223){fa=0;i=a[146228+j>>0]|0;p=i&255;w=p+-8|0;s=a[g+28272+(L*40|0)+w>>0]|0;x=p+-1|0;t=a[g+28272+(L*40|0)+x>>0]|0;r=g+27952+(L*160|0)+(x<<2)|0;u=g+27952+(L*160|0)+(w<<2)|0;j=p+-6|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[B>>0]|0)==-2){fa=232;break}q=c[(c[M>>2]|0)+48>>2]|0;c[E>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=232;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=b[X+(o<<2)+2>>1]<<1;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=232;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=232;while(0);do if((fa|0)==232){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=s<<24>>24==v<<24>>24;j=t<<24>>24==v<<24>>24;i=(j&1)+(k&1)+((n|0)==(y|0)&1)|0;if(i>>>0>1){j=Nk(b[r>>1]|0,b[u>>1]|0,b[o>>1]|0)|0;i=Nk(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[r>>1]|0;if(t<<24>>24!=-2&(s<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=Nk(j,b[u>>1]|0,b[o>>1]|0)|0;i=Nk(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[r>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}if(k){j=b[u>>1]|0;i=b[g+27952+(L*160|0)+(w<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(Ok(la)|0)+j|0;i=(Ok(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+64>>2]=i;c[g+27952+(L*160|0)+(h<<2)+68>>2]=i;c[g+27952+(L*160|0)+(h<<2)+96>>2]=i;c[g+27952+(L*160|0)+(h<<2)+100>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}else{if(!(h&1)){_=g+21660|0;$=Kk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[_>>2]|0,0)|0;c[_>>2]=$;if(($|0)<0){h=-1;break a}}else{if((Y|0)!=0?(Ak(la)|0)!=0:0){c[ka>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if((i|0)>=16)break;n=d[146228+i>>0]|0;h=a[n+-1+(g+21664)>>0]|0;$=a[n+-8+(g+21664)>>0]|0;h=(h|0)>($|0)?$:h;h=(h|0)<0?2:h;if(!(Ak(la)|0)){$=Ik(la,3)|0;h=$+(($|0)>=(h|0)&1)|0}if(k){$=g+21664+n|0;_=h*257&65535;b[$>>1]=_;b[$+8>>1]=_}else a[g+21664+n>>0]=h;i=i+j|0}$=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[$>>2]=c[g+21700>>2];a[$+4>>0]=a[g+21695>>0]|0;a[$+5>>0]=a[g+21687>>0]|0;a[$+6>>0]=a[g+21679>>0]|0;if((Jk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<=-1){h=-1;break a}}if(ca){_=c[f+4>>2]|0;$=c[g+21760>>2]|0;h=c[g+21768>>2]|0;h=Kk(_,$,h,Lk(la)|0,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h;n=Y}while(0);h=c[ka>>2]|0;if(h&120|0){i=c[f+26368>>2]|0;j=(N(i<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;k=c[oa>>2]<<2;if(!(h&12288)){$=(c[f+24384>>2]|0)+k|0;b[$>>1]=-1;b[$+2>>1]=-1}else{$=(c[f+24352>>2]|0)+(j<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28008|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28040|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28064|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28096|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24384>>2]|0)+k|0;a[$>>0]=a[g+28284>>0]|0;a[$+1>>0]=a[g+28286>>0]|0;a[$+2>>0]=a[g+28300>>0]|0;a[$+3>>0]=a[g+28302>>0]|0}if(h&49152|0){$=(c[f+24356>>2]|0)+(j<<2)|0;Z=g+28160|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28168|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28192|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28200|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28224|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28232|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28256|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24388>>2]|0)+k|0;a[$>>0]=a[g+28324>>0]|0;a[$+1>>0]=a[g+28326>>0]|0;a[$+2>>0]=a[g+28340>>0]|0;a[$+3>>0]=a[g+28342>>0]|0}}h=c[ka>>2]|0;if(h&2)if(aa>>>0>15&(ca^1)){Wf(c[f+4>>2]|0,16,135551,ba);h=-1094995529;break}else y=aa;else{i=Ck(la)|0;do if(ca){if(i>>>0>47){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[da>>2]=i;c[da+4>>2]=f;c[da+8>>2]=g;Wf(h,16,134910,da);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=123584+i|0;break}else{i=123536+i|0;break}}else{if(i>>>0>15){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[ea>>2]=i;c[ea+4>>2]=f;c[ea+8>>2]=g;Wf(h,16,134910,ea);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=134955+i|0;break}else{i=134939+i|0;break}}while(0);y=d[i>>0]|0}w=(y&15|0)==0;if((h&7|0)==0&(((n|0)==0|w)^1)){h=(Ak(la)|0)<<24;h=c[ka>>2]|h;c[ka>>2]=h}t=f+26392|0;b[(c[t>>2]|0)+(pa<<1)>>1]=y;c[g+21856>>2]=y&65535;c[(c[f+24364>>2]|0)+(pa<<2)>>2]=h;if((y|0)==0?(c[ka>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else fa=274;m:do if((fa|0)==274){i=(c[(c[ja>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;n=Ok(la)|0;h=g+848|0;j=(c[h>>2]|0)+n|0;c[h>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[h>>2]=i;if(i>>>0>k>>>0){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[ia>>2]=n;c[ia+4>>2]=pa;c[ia+8>>2]=f;Wf(g,16,134971,ia);c[h>>2]=k;h=-1;break a}else j=i}i=c[na>>2]|0;s=g+852|0;c[s>>2]=d[i+548+j>>0];u=g+856|0;c[u>>2]=d[i+636+j>>0];i=c[ka>>2]|0;ia=(i&128|0)==0;v=(j|0)!=0;x=ia?(v?f+26428|0:f+26716|0):v?f+26572|0:f+26860|0;v=ia?(v?f+26508|0:f+26796|0):v?f+26652|0:f+26940|0;n:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;i=0;p=0;while(1){if((p|0)>=4)break;o:do if(1<=4)break o;k=n+o|0;if((Pk(f,g,la,g+28560+(k<<4<>2]|0)+173788+(r<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break a}n=n+1|0;i=d[(d[146228+k>>0]|0)+(g+27824)>>0]<=4)break;if((Pk(f,g,la,n,k+o|0,v+(k<<4)|0,(c[(c[na>>2]|0)+173812+(r<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break a}}ha=(d[146228+o>>0]|0)+(g+27824)|0;ia=(d[ha+8>>0]|0)+(d[ha+1>>0]|0)+(d[ha+9>>0]|0)+(d[ha>>0]|0)&255;a[ha>>0]=ia;i=(ia<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ia+9>>0]=0;a[ia+8>>0]=0;a[ia+1>>0]=0;a[ia>>0]=0}while(0);p=p+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31632|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Pk(f,g,la,i,48,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}n=x+1|0;k=0;while(1){if((k|0)>=4){i=15;break n}o=k<<2;i=0;while(1){if((i|0)>=4)break;ia=i+o|0;if((Pk(f,g,la,g+28560+(ia<<4<>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}k=k+1|0}}while(0);t=(c[t>>2]|0)+(pa<<1)|0;b[t>>1]=i<<12|e[t>>1];t=c[(c[ja>>2]|0)+12>>2]|0;if((t|0)!=3){p:do if(y&48|0){j=t<<2;i=0;while(1){if((i|0)>=2)break p;if((Pk(f,g,la,g+28560+((i<<8)+256<>2]|0)+12>>2]|0)==2?123636:123632,0,j)|0)<0){h=-1;break a}else i=i+1|0}}while(0);if(!(y&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}p=x+1|0;q=16<=2)break m;r=i+1|0;s=(c[(c[na>>2]|0)+173788+((c[ka>>2]&7|0?0:3)+r<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;n=(i<<4)+16|0;i=g+28560+(n<<4<=(t|0)){i=r;continue q}o=(j<<3)+n|0;k=0;while(1){if((k|0)>=4)break;if((Pk(f,g,la,i,o+k|0,p,s,15)|0)<=-1){h=-1;break a}k=k+1|0;i=i+(q<<1)|0}j=j+1|0}}}i=c[ka>>2]|0;r=c[s>>2]|0;r:do if(!(i&2)){q=i&7|0?1:4;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;s:do if(1<=4)break s;j=n+k|0;if((Pk(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146228+j>>0]|0)+(g+27824)>>0]<=4)break;if((Pk(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ia=(d[146228+n>>0]|0)+(g+27824)|0;ja=(d[ia+8>>0]|0)+(d[ia+1>>0]|0)+(d[ia+9>>0]|0)+(d[ia>>0]|0)&255;a[ia>>0]=ja;i=(ja<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ja+9>>0]=0;a[ja+8>>0]=0;a[ja+1>>0]=0;a[ja>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31696|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Pk(f,g,la,i,49,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break r;n=(j<<2)+16|0;i=0;while(1){if((i|0)>=4)break;ja=n+i|0;if((Pk(f,g,la,g+28560+(ja<<4<>2]|0)+173792>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}while(0);i=c[ka>>2]|0;r=c[u>>2]|0;if(i&2|0){i=g+31760|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Pk(f,g,la,i,50,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break m;n=(j<<2)+32|0;i=0;while(1){if((i|0)>=4)break;ka=n+i|0;if((Pk(f,g,la,g+28560+(ka<<4<>2]|0)+173796>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}q=i&7|0?2:5;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;t:do if(1<=4)break t;j=n+k|0;if((Pk(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146228+j>>0]|0)+(g+27824)>>0]<=4)break;if((Pk(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ja=(d[146228+n>>0]|0)+(g+27824)|0;ka=(d[ja+8>>0]|0)+(d[ja+1>>0]|0)+(d[ja+9>>0]|0)+(d[ja>>0]|0)&255;a[ja>>0]=ka;i=(ka<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ka+9>>0]=0;a[ka+8>>0]=0;a[ka+1>>0]=0;a[ka>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}while(0);a[(c[f+24340>>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function zk(a){a=a|0;var b=0,c=0,e=0;e=Zk(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116026+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Fk(a,b);return (_k(a,b+1|0)|0)+-1|0}function Ak(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function Bk(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;if((l|0)>=(m|0))W(16);x=B+4|0;z=B;y=f+21796|0;A=c[y>>2]|0;c[z>>2]=0;g=(c[e+25972>>2]|0)+(A*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));w=f+21828|0;if(!(c[w>>2]|0))g=0;else{c[z>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[z>>2]=g;if(c[f+21844>>2]|0){Gk(e,f,g);Hk(e,f,g)}Mk(e,f,z);j=c[z>>2]|2048;c[z>>2]=j;g=e+26368|0}else{j=g|14344;c[z>>2]=j;Gk(e,f,j);q=c[e+24384>>2]|0;r=c[e+24352>>2]|0;g=e+26368|0;s=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)h=0;else{v=183552;t=-1;n=16}else{h=c[f+21720>>2]|0;v=d[c[f+21748>>2]>>0]|0;i=a[q+((v&254)+(h<<2|1))>>0]|0;h=r+((N(s,v)|0)+3+(c[(c[e+26360>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=h>>16<<1;h=x;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=x;i=i<<1;break}}while(0);if(!(c[h>>2]|i))h=0;else{v=h;t=i;n=16}}do if((n|0)==16){k=c[f+21732>>2]|0;if(!(k&12288))if(!k){h=0;break}else{o=-1;p=183552}else{i=c[f+21712>>2]|0;h=a[q+(i<<2|2)>>0]|0;i=r+((c[(c[e+26360>>2]|0)+(i<<2)>>2]|0)+(s*3|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=p>>16<<1;h=h>>1;break}else{if(k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=((p>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[i>>2]|h)){h=0;break}else{o=h;p=i}}i=c[f+21736>>2]|0;do if(!(i&12288))if((i|0)==0?(u=c[f+21728>>2]|0,(u&12288|0)!=0):0){k=c[f+21708>>2]|0;n=c[f+21752>>2]|0;h=a[q+(k<<2|n&2|1)>>0]|0;k=r+(s+3+(n&s<<1)+(c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)<<2)|0;if(c[e+26376>>2]|0){i=(u&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}else{n=183552;h=-1}else{k=c[f+21716>>2]|0;h=a[q+(k<<2|2)>>0]|0;k=r+((c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)+(s*3|0)<<2)|0;if(c[e+26376>>2]|0){i=(i&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}while(0);k=(o|0)!=0;i=(t|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=Nk(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Nk(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0;break}if(!i){i=b[v+2>>1]|0;h=b[v>>1]|0;break}if(k){i=b[n+2>>1]|0;h=b[n>>1]|0;break}else{i=b[p+2>>1]|0;h=b[p>>1]|0;break}}else{h=Nk(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Nk(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0}while(0);h=i<<16|h&65535}while(0);c[f+28e3>>2]=h;c[f+28004>>2]=h;c[f+28008>>2]=h;c[f+28012>>2]=h;c[f+28032>>2]=h;c[f+28036>>2]=h;c[f+28040>>2]=h;c[f+28044>>2]=h;c[f+28064>>2]=h;c[f+28068>>2]=h;c[f+28072>>2]=h;c[f+28076>>2]=h;c[f+28096>>2]=h;c[f+28100>>2]=h;c[f+28104>>2]=h;c[f+28108>>2]=h}h=c[g>>2]|0;i=(N(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[y>>2]<<2;if(!(j&12288)){y=(c[e+24384>>2]|0)+g|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[e+24352>>2]|0)+(i<<2)|0;w=f+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24384>>2]|0)+g|0;a[y>>0]=a[f+28284>>0]|0;a[y+1>>0]=a[f+28286>>0]|0;a[y+2>>0]=a[f+28300>>0]|0;a[y+3>>0]=a[f+28302>>0]|0}if(j&49152|0){y=(c[e+24356>>2]|0)+(i<<2)|0;w=f+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24388>>2]|0)+g|0;a[y>>0]=a[f+28324>>0]|0;a[y+1>>0]=a[f+28326>>0]|0;a[y+2>>0]=a[f+28340>>0]|0;a[y+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(A<<2)>>2]=c[z>>2];a[(c[e+24340>>2]|0)+A>>0]=c[f+848>>2];b[(c[e+26372>>2]|0)+(A<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;l=B;return}function Ck(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(gX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116026+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){Wf(0,16,151385,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[121995+a>>0]|0);a=d[122507+a>>0]|0}while(0);l=h;return a|0}function Dk(a){a=a|0;var b=0;b=0-(Yk(a)|0)&7;if(b|0)Sk(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function Ek(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Yk(a)|0)|0}function Fk(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Gk(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=135387;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?135483:135451;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=135419;h=i}else d=135483;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Hk(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ka=l;l=l+16|0;if((l|0)>=(m|0))W(16);aa=ka+8|0;ba=ka;ha=c[f+21748>>2]|0;ja=c[f+21708>>2]|0;U=c[f+21712>>2]|0;V=c[f+21716>>2]|0;X=c[f+21720>>2]|0;c[aa>>2]=X;c[aa+4>>2]=c[f+21724>>2];Y=c[f+21728>>2]|0;Z=c[f+21732>>2]|0;_=c[f+21736>>2]|0;$=c[f+21740>>2]|0;c[ba>>2]=$;t=c[f+21744>>2]|0;c[ba+4>>2]=t;a:do if(!(g&2048)){b:do if(g&7|0){q=c[(c[e+28212>>2]|0)+56>>2]|0?7:-1;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;n=f+21756|0;c[n>>2]=65535;o=f+21764|0;c[o>>2]=61162;p=(q&Z|0)!=0;if(p){h=65535;k=60138}else{c[n>>2]=46079;c[h>>2]=13311;c[o>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==($&128|0)){if(!($&q)){h=h&57183;c[n>>2]=h;c[j>>2]=24415}}else{if(!i){if(!(($&q|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27016>>2]|0)+X<<2)>>2]&q|0)==0))break;h=h&57183;c[n>>2]=h;c[j>>2]=24415;break}if(!($&q)){h=h&57343;c[n>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(t&q)){h=h&65375;c[n>>2]=h;c[j>>2]=i}}while(0);if(!(q&Y))c[n>>2]=h&32767;if(!(q&_))c[o>>2]=k;if(g&1|0){if(!(Z&1)){kX(f+21668|0,(p?2:-1)|0,4)|0;k=f+21704|0;n=e+26364|0}else{k=f+21704|0;n=e+26364|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(U<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[ba+(j<<2)>>2]|0;if(!(h&1)){h=(h&q|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{T=(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[aa+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[T+(6-(d[ha+h>>0]|0))>>0]|0;h=a[T+(6-(d[ha+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);if(!Z){c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;r=e+25972|0;h=1077952576}else{r=e+25972|0;h=c[r>>2]|0;c[f+27828>>2]=c[h+(U*48|0)+12>>2];T=(c[e+25680>>2]|0)==0;c[f+27868>>2]=c[(T?28:20)+(h+(U*48|0))>>2];h=c[(T?44:36)+(h+(U*48|0))>>2]|0}c[f+27908>>2]=h;q=e+28216|0;p=0;while(1){if((p|0)==2)break a;if(!(c[ba+(p<<2)>>2]|0)){i=p<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;i=i|11;h=64}else{n=c[r>>2]|0;o=c[aa+(p<<2)>>2]|0;h=p<<1;j=ha+(h+8)|0;i=p<<4;a[(i|11)+(f+27824)>>0]=a[(d[j>>0]|0)+(n+(o*48|0))>>0]|0;k=ha+(h+9)|0;a[i+19+(f+27824)>>0]=a[(d[k>>0]|0)+(n+(o*48|0))>>0]|0;switch(c[(c[q>>2]|0)+12>>2]|0){case 3:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+32+(n+(o*48|0))>>0]|0;k=(d[k>>0]|0)+32|0;h=i+99|0;break}case 2:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+30+(n+(o*48|0))>>0]|0;h=(d[k>>0]|0)+30|0;j=99;s=39;break}default:{i=p<<3;a[i+51+(f+27824)>>0]=a[(d[ha+(h+12)>>0]|0)+(n+(o*48|0))>>0]|0;h=d[ha+(h+13)>>0]|0;j=91;s=39}}if((s|0)==39){s=0;k=h;h=j+i|0}i=h;h=a[n+(o*48|0)+k>>0]|0}a[f+27824+i>>0]=h;p=p+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)s=46}else s=46;c:do if((s|0)==46){z=c[e+26368>>2]|0;A=f+23412|0;B=Z|0?-1:-16843010;C=(g&80|0)==0;D=$|0?-1:-2;E=e+26360|0;F=X<<2|1;G=_|0?-1:-2;H=Y|0?-1:-2;I=f+21752|0;J=z<<1;K=z+3|0;L=ja<<2;M=(g&2304|0)==0;O=e+26376|0;P=f+21828|0;Q=(Y&128|0)!=0;R=(Z&128|0)==0;S=(_&128|0)==0;T=($&128|0)==0;u=(t&128|0)==0;v=z*3|0;w=V<<2|2;y=U<<2;x=y|2;y=y|3;t=0;while(1){if(t>>>0>=(c[A>>2]|0)>>>0)break c;o=f+28272+(t*40|0)+12|0;q=c[e+24384+(t<<2)>>2]|0;p=f+27952+(t*160|0)+48|0;r=c[e+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&g|0){if(!(s&Z)){n=f+27952+(t*160|0)+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28272+(t*40|0)+4>>2]=B}else{j=(c[(c[E>>2]|0)+(U<<2)>>2]|0)+v|0;i=r+(j<<2)|0;n=c[i+4>>2]|0;k=f+27952+(t*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=n;j=r+(j<<2)+8|0;k=c[j+4>>2]|0;n=f+27952+(t*160|0)+24|0;c[n>>2]=c[j>>2];c[n+4>>2]=k;n=a[q+x>>0]|0;a[f+28272+(t*40|0)+5>>0]=n;a[f+28272+(t*40|0)+4>>0]=n;n=a[q+y>>0]|0;a[f+28272+(t*40|0)+7>>0]=n;a[f+28272+(t*40|0)+6>>0]=n}d:do if(C){if(!($&s)){c[f+27952+(t*160|0)+44>>2]=0;h=D}else{c[f+27952+(t*160|0)+44>>2]=c[r+((c[(c[E>>2]|0)+(X<<2)>>2]|0)+3+(N(z,d[ha>>0]|0)|0)<<2)>>2];h=a[q+(F+(a[ha>>0]&-2&255))>>0]|0}a[f+28272+(t*40|0)+11>>0]=h}else{n=0;while(1){if((n|0)==2)break d;i=n<<1;j=n<<4;h=j+-1|0;k=c[ba+(n<<2)>>2]|0;if(!(k&s)){c[p+(h<<2)>>2]=0;j=j|7;c[p+(j<<2)>>2]=0;i=k|0?-1:-2;a[o+j>>0]=i}else{la=c[aa+(n<<2)>>2]|0;na=(c[(c[E>>2]|0)+(la<<2)>>2]|0)+3|0;la=la<<2|1;ma=ha+i|0;c[p+(h<<2)>>2]=c[r+((N(z,d[ma>>0]|0)|0)+na<<2)>>2];i=ha+(i|1)|0;k=j|7;c[p+(k<<2)>>2]=c[r+((N(z,d[i>>0]|0)|0)+na<<2)>>2];a[o+h>>0]=a[q+(la+(a[ma>>0]&-2&255))>>0]|0;i=a[q+(la+(a[i>>0]&-2&255))>>0]|0;h=k}a[o+h>>0]=i;n=n+1|0}}while(0);if(!(s&_)){c[f+27952+(t*160|0)+32>>2]=0;h=G}else{c[f+27952+(t*160|0)+32>>2]=c[r+((c[(c[E>>2]|0)+(V<<2)>>2]|0)+v<<2)>>2];h=a[q+w>>0]|0}k=f+28272+(t*40|0)+8|0;a[k>>0]=h;j=f+28272+(t*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(s&Y)){c[f+27952+(t*160|0)+12>>2]=0;h=H}else{h=c[I>>2]|0;c[f+27952+(t*160|0)+12>>2]=c[r+(K+(c[(c[E>>2]|0)+(ja<<2)>>2]|0)+(h&J)<<2)>>2];h=a[q+(L|h&2|1)>>0]|0}a[f+28272+(t*40|0)+3>>0]=h}if(M){a[f+28272+(t*40|0)+30>>0]=-2;a[f+28272+(t*40|0)+14>>0]=-2;c[f+27952+(t*160|0)+56>>2]=0;c[f+27952+(t*160|0)+120>>2]=0;if(!(c[O>>2]|0))break}else if(!(c[O>>2]|0))break;if(!(c[P>>2]|0)){if(Q?(fa=f+28272+(t*40|0)+3|0,ga=a[fa>>0]|0,ga<<24>>24>-1):0){a[fa>>0]=(ga&255)>>>1;na=f+27952+(t*160|0)+14|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+7|0;a[na>>0]=d[na>>0]<<1}do if(!R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+18|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+9|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+22|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+11|0;a[na>>0]=d[na>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=(h&255)>>>1;na=f+27952+(t*160|0)+26|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+13|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+30|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+15|0;a[na>>0]=d[na>>0]<<1}while(0);if(!S?(ia=a[k>>0]|0,ia<<24>>24>-1):0){a[k>>0]=(ia&255)>>>1;na=f+27952+(t*160|0)+34|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+17|0;a[na>>0]=d[na>>0]<<1}do if(!T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+46|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+23|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+78|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+39|0;a[na>>0]=d[na>>0]<<1}while(0);if(u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+110|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+55|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+142|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+71|0;a[na>>0]=d[na>>0]<<1;break}else{if(!Q?(ca=f+28272+(t*40|0)+3|0,da=a[ca>>0]|0,da<<24>>24>-1):0){a[ca>>0]=da<<24>>24<<1;na=f+27952+(t*160|0)+14|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+7|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+18|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+9|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+22|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+11|0;a[na>>0]=(d[na>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;na=f+27952+(t*160|0)+26|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+13|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+30|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+15|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(S?(ea=a[k>>0]|0,ea<<24>>24>-1):0){a[k>>0]=ea<<24>>24<<1;na=f+27952+(t*160|0)+34|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+17|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+46|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+23|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+78|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+39|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(!u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+110|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+55|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+142|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+71|0;a[na>>0]=(d[na>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[f+21840>>2]=($>>>24&1)+(Z>>>24&1);l=ka;return}function Ik(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function Jk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;a:do if(!(e&32768)){e=0;while(1){if((e|0)>=4){k=8;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[135257+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;Wf(d,16,135269,j);e=-1094995529}else k=8;while(0);b:do if((k|0)==8)if((f&34952|0)==34952)e=0;else{e=0;while(1){if((e|0)>=4){e=0;break b}if(!(c[102556+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[135320+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[n>>2]=i<<24>>24;Wf(d,16,135332,n);e=-1094995529}while(0);l=o;return e|0}function Kk(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[135151+e>>0]|0;if((e|1|0)==3){Wf(b,16,135155,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){Wf(b,16,135203,h);c=-1094995529;break}else{l=i;return ((e|0)==0|(f|0)==0?a[135252+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{Wf(b,16,135114,i);c=-1094995529}while(0);l=i;return c|0}function Lk(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[121995+a>>0]|0);return d[122507+a>>0]|0|0}function Mk(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))Vk(a,b,d);else Uk(a,b,d);return}function Nk(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Ok(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(gX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[121995+b>>0]|0);b=a[123019+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116026+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function Pk(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+112|0;if((l|0)>=(m|0))W(112);A=B+32|0;x=B+24|0;v=B+16|0;u=B;z=B+40|0;w=(n|0)<9;do if(!w)if((i|0)>47){t=c[182912+(c[102460+((Qk(f,(i<<4)+-768|0)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(gX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((gX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{t=c[182912+(c[102460+((Qk(f,i)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(gX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((gX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{q=(n|0)==4;y=q?c[45721]|0:c[45725]|0;o=g+8|0;t=c[o>>2]|0;p=(c[g>>2]|0)+(t>>>3)|0;p=(gX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(t&7);q=p>>>(q?24:19);p=b[y+(q<<2)>>1]|0;q=t+(b[y+(q<<2)+2>>1]|0)|0}while(0);c[o>>2]=q;y=p>>2;a[(d[146228+i>>0]|0)+(f+27824)>>0]=y;a:do if(y){if(y>>>0>n>>>0){o=c[e+4>>2]|0;A=c[f+21792>>2]|0;c[u>>2]=c[f+21788>>2];c[u+4>>2]=A;c[u+8>>2]=y;Wf(o,16,135006,u);o=-1;break}q=p&3;u=Rk(g,3)|0;Sk(g,q);c[z>>2]=1-(u>>>1&2);c[z+4>>2]=1-(u&2);c[z+8>>2]=1-(u<<1&2);b:do if((q|0)<(y|0)){r=(q|0)!=3;p=(y|0)>10&r;s=p&1;t=Rk(g,8)|0;u=a[258924+(s<<9)+(t<<1)>>0]|0;o=u<<24>>24;Sk(g,a[258924+(s<<9)+(t<<1)+1>>0]|0);if(u<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(Tk(g)|0)+8|0;do if((o|0)<14){if(p)o=(Ak(g)|0)+(o<<1)|0}else{if((o|0)==14)if(p){o=(Ak(g)|0)+28|0;break}else{o=(Ik(g,4)|0)+14|0;break}do if((o|0)>15)if((o|0)>28){Wf(c[e+4>>2]|0,16,135051,v);o=-1;break a}else{p=o+-3|0;o=(1<>1^0-o)+o|0}else{o=(r?o>>31|1:0)+o|0;p=(o+3|0)>>>0>6?2:1}c[z+(q<<2)>>2]=o;while(1){q=q+1|0;if((q|0)>=(y|0))break b;u=Rk(g,8)|0;v=a[258924+(p<<9)+(u<<1)>>0]|0;o=v<<24>>24;Sk(g,a[258924+(p<<9)+(u<<1)+1>>0]|0);if(v<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(Tk(g)|0)+8|0;if((o|0)>=15){r=15<28)break;v=o+-3|0;o=r+-4096+(1<>1^0-o)+o|0}c[z+(q<<2)>>2]=o;v=c[102528+(p<<2)>>2]|0;p=p+((v+o|0)>>>0>v<<1>>>0&1)|0}Wf(c[e+4>>2]|0,16,135051,x);o=-1094995529;break a}while(0);if((y|0)==(n|0))o=0;else{do if(w)if((n|0)==4){o=29;p=182976+(y<<4)+4|0;break}else{o=27;p=183040+(y<<4)+4|0;break}else{o=23;p=183168+(y<<4)+4|0}while(0);n=c[p>>2]|0;x=g+8|0;v=c[x>>2]|0;w=(c[g>>2]|0)+(v>>>3)|0;w=(gX(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(v&7)>>>o;o=b[n+(w<<2)>>1]|0;c[x>>2]=v+(b[n+(w<<2)+2>>1]|0)}q=j+(y+-1+o)|0;p=(i|0)>47;r=c[z>>2]|0;c:do if(!(c[e+25664>>2]|0))if(p){b[h+(d[q>>0]<<1)>>1]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183424+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(gX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45885]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(gX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((gX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;b[h+(d[k>>0]<<1)>>1]=c[z+(p<<2)>>2];o=o-s|0;q=k;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;b[h+(d[g>>0]<<1)>>1]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;b[h+(n<<1)>>1]=((N(c[k+(n<<2)>>2]|0,r)|0)+32|0)>>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183424+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(gX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45885]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(gX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((gX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;b[h+(j<<1)>>1]=((N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;o=o-s|0;q=i;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;b[h+(i<<1)>>1]=((N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;q=g;p=p+1|0}}else if(p){c[h+(d[q>>0]<<2)>>2]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183424+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(gX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45885]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(gX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((gX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;c[h+(d[k>>0]<<2)>>2]=c[z+(p<<2)>>2];q=k;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;c[h+(d[g>>0]<<2)>>2]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;c[h+(n<<2)>>2]=(N(c[k+(n<<2)>>2]|0,r)|0)+32>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183424+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(gX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45885]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(gX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((gX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;c[h+(j<<2)>>2]=(N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=i;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;c[h+(i<<2)>>2]=(N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=g;p=p+1|0}}while(0);if((o|0)<0){o=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[A>>2]=c[f+21788>>2];c[A+4>>2]=e;Wf(o,16,135073,A);o=-1}else o=0}else o=0;while(0);l=B;return o|0}function Qk(a,b){a=a|0;b=b|0;b=d[146228+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function Rk(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Sk(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Tk(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(gX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[116026+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function Uk(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=l;l=l+32|0;if((l|0)>=(m|0))W(32);E=V+16|0;D=V+8|0;y=V;A=c[f+26368>>2]|0;k=c[g+21796>>2]|0;C=g+21792|0;r=c[C>>2]|0;U=c[h>>2]|0;T=U&64;B=g+25336|0;Wk(f,B,(U>>>7&1)+r|0);U=(T|0)==0;i=61440;w=0;while(1){if((w|0)==2)break;o=a[g+28272+(w*40|0)+11>>0]|0;u=a[g+28272+(w*40|0)+4>>0]|0;j=a[g+28272+(w*40|0)+8>>0]|0;if(j<<24>>24==-2){s=a[g+28272+(w*40|0)+3>>0]|0;t=g+27952+(w*160|0)+12|0}else{s=j<<24>>24;t=g+27952+(w*160|0)+32|0}v=o>>>0>u>>>0?u:o;j=v>>>0>s>>>0?s:v;n=D+(w<<2)|0;c[n>>2]=j;if((j|0)>-1){p=g+27952+(w*160|0)+44|0;q=g+27952+(w*160|0)+16|0;n=(j|0)==(o|0);j=(j|0)==(u|0);do if(((j&1)+(s>>>0<=v>>>0&1)+(n&1)|0)>>>0<=1){if(n){j=c[p>>2]|0;break}if(j){j=c[q>>2]|0;break}else{j=c[t>>2]|0;break}}else{j=Xk(b[p>>1]|0,b[q>>1]|0,b[t>>1]|0)|0;j=(Xk(b[g+27952+(w*160|0)+46>>1]|0,b[g+27952+(w*160|0)+18>>1]|0,b[t+2>>1]|0)|0)<<16|j&65535}while(0);c[y+(w<<2)>>2]=j}else{j=~(12288<<(w<<1));c[y+(w<<2)>>2]=0;c[n>>2]=-1;if(U)c[h>>2]=c[h>>2]&j;i=i&j}w=w+1|0}j=c[D>>2]|0;if((j|0)<0?(x=D+4|0,(c[x>>2]|0)<0):0){c[x>>2]=0;c[D>>2]=0;if(U)c[h>>2]=c[h>>2]|61440;u=i|61440;w=0}else{u=i;w=j}i=c[y>>2]|0;j=c[y+4>>2]|0;do if(i|T|j){S=g+25372|0;t=c[(c[S>>2]|0)+48>>2]|0;q=c[t+(k<<2)>>2]|0;v=c[h>>2]|0;n=(v&128|0)!=0;do if(!(q&128))if(n){s=c[C>>2]&-2;p=c[f+27016>>2]|0;k=N(s,p)|0;k=k+(c[g+21788>>2]|0)|0;q=c[t+(k<<2)>>2]|0;c[E>>2]=q;n=c[t+(p+k<<2)>>2]|0;o=E+4|0;c[o>>2]=n;p=p<<2|2;r=A*6|0;if((q^n)&128){q=q&-129;c[E>>2]=q;n=n&-129;c[o>>2]=n}o=u|264;if(q&15|0?!((T|0)!=0|(n&15|0)==0):0){Q=r;r=s;t=o;n=272;break}Q=r;r=s;t=o;n=64}else{p=2;R=36}else{if(n){o=c[g+21852>>2]|0;p=2;q=o+r|0;n=c[f+27016>>2]|0}else{n=(c[C>>2]&-2)+(c[g+21848>>2]|0)|0;p=0;q=n;k=c[g+21788>>2]|0;o=c[f+27016>>2]|0}R=k+(N(n,o)|0)|0;k=R;r=q;q=c[t+(R<<2)>>2]|0;R=36}while(0);do if((R|0)==36){c[E+4>>2]=q;c[E>>2]=q;o=u|264;n=(T|0)!=0;if(n|(q&15|0)==0){if(!n?(z=q&48,z|0):0){Q=A;t=o;n=z|256;break}Q=A;t=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?o+56|0:o;n=64}else{Q=A;t=o;n=264}}while(0);c[h>>2]=v|n;Wk(f,B,r);s=c[S>>2]|0;o=c[(c[f+26360>>2]|0)+(k<<2)>>2]|0;n=(c[s+36>>2]|0)+(o<<2)|0;o=(c[s+40>>2]|0)+(o<<2)|0;r=k<<2;k=(c[s+68>>2]|0)+r|0;r=(c[s+72>>2]|0)+r|0;if(!p){M=(c[C>>2]&1|0)==0;O=Q<<1;P=M?n:n+(O<<2)|0;o=M?o:o+(O<<2)|0;O=M?k:k+2|0;r=M?r:r+2|0}else{P=n;O=k}k=c[h>>2]|0;if((q^k)&128|0){z=t&65535;A=(w&255)*257&65535;v=c[D+4>>2]|0;y=(v&255)*257&65535;x=(w|0)>0?i:0;v=(v|0)>0?j:0;k=0;w=0;while(1){if((w|0)==4)break;t=w&1;q=w>>1;s=(N(q,p)|0)+t|0;t=(0-t&3)+(N(q,Q)|0)|0;n=g+28552+(w<<1)|0;if(!(!U?(b[n>>1]&256)==0:0)){b[n>>1]=z;u=d[146228+(w<<2)>>0]|0;R=g+28272+u|0;b[R>>1]=A;b[R+8>>1]=A;R=g+28312+u|0;b[R>>1]=y;b[R+8>>1]=y;do if((c[E+(q<<2)>>2]&7|0)==0?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+s>>0]|0;if(!(n<<24>>24)){M=b[P+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[P+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}else{if(n<<24>>24>=0){n=j;q=i;break}if(a[r+s>>0]|0){n=j;q=i;break}M=b[o+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[o+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}n=v;q=x;k=k+1|0}else{n=j;q=i}while(0);R=g+27952+(u<<2)|0;c[R>>2]=q;c[R+4>>2]=q;c[R+32>>2]=q;c[R+36>>2]=q;R=g+28112+(u<<2)|0;c[R>>2]=n;c[R+4>>2]=n;c[R+32>>2]=n;c[R+36>>2]=n}w=w+1|0}if(k&3|T|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){n=N(w&255,16843009)|0;c[g+28284>>2]=n;c[g+28292>>2]=n;c[g+28300>>2]=n;c[g+28308>>2]=n;n=c[D+4>>2]|0;h=N(n&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((q&7|0)==0?(c[s+100>>2]|0)==0:0){k=a[O>>0]|0;if(!(k<<24>>24)){U=b[P>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[P+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[r>>0]|0)break;U=b[o>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[o+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;if((c[f+25704>>2]|0)>>>0<=33)break}j=(n|0)>0?j:0;i=(w|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}L=t&65535;M=(w&255)*257&65535;G=c[D+4>>2]|0;K=(G&255)*257&65535;J=(q&7|0)==0;H=(t&8|0)==0;I=Q*3|0;F=(w|0)==0;G=(G|0)==0;E=f+25704|0;k=0;f=0;while(1){if((f|0)==4)break;q=f&1;s=f>>1;C=g+28552+(f<<1)|0;if(!(!U?(b[C>>1]&256)==0:0))R=79;do if((R|0)==79){R=0;b[C>>1]=L;D=f<<2;B=d[146228+D>>0]|0;t=g+27952+(B<<2)|0;c[t>>2]=i;u=t+4|0;c[u>>2]=i;v=t+32|0;c[v>>2]=i;w=t+36|0;c[w>>2]=i;x=g+28112+(B<<2)|0;c[x>>2]=j;y=x+4|0;c[y>>2]=j;z=x+32|0;c[z>>2]=j;A=x+36|0;c[A>>2]=j;p=g+28272+B|0;b[p>>1]=M;b[p+8>>1]=M;B=g+28312+B|0;b[B>>1]=K;b[B+8>>1]=K;if(J?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+f>>0]|0;p=n<<24>>24==0;if(!p){if(n<<24>>24>=0)break;if(a[r+f>>0]|0)break;if((c[E>>2]|0)>>>0<=33)break}B=p?P:o;if(!H){n=(N(I,s)|0)+(0-q&3)|0;C=b[B+(n<<2)>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;C=b[B+(n<<2)+2>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;if(F){c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0}if(G){c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0}k=k+4|0;break}t=q<<1;s=s<<1;n=0;q=0;while(1){if((q|0)==4)break;p=(N((q>>1)+s|0,Q)|0)+(q&1|t)|0;z=b[B+(p<<2)>>1]|0;A=z<<16>>16;if(((z<<16>>16>-1?A:0-A|0)|0)<2?(z=b[B+(p<<2)+2>>1]|0,A=z<<16>>16,((z<<16>>16>-1?A:0-A|0)|0)<2):0){if(F)c[g+27952+(d[146228+(q+D)>>0]<<2)>>2]=0;if(G)c[g+28112+(d[146228+(q+D)>>0]<<2)>>2]=0;n=n+1|0}q=q+1|0}if(!(n&3))b[C>>1]=(e[C>>1]|0)+65480;k=n+k|0}}while(0);f=f+1|0}if(!(k&15|T))c[h>>2]=c[h>>2]&-41337|264}else{O=N(w&255,16843009)|0;c[g+28284>>2]=O;c[g+28292>>2]=O;c[g+28300>>2]=O;c[g+28308>>2]=O;O=N(c[D+4>>2]&255,16843009)|0;c[g+28324>>2]=O;c[g+28332>>2]=O;c[g+28340>>2]=O;c[g+28348>>2]=O;O=g+28e3|0;P=g+28032|0;Q=g+28064|0;R=g+28096|0;S=g+28160|0;T=g+28192|0;U=g+28224|0;g=g+28256|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);l=V;return}function Vk(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=l;l=l+16|0;if((l|0)>=(m|0))W(16);E=H;s=c[f+26368>>2]|0;i=c[g+21796>>2]|0;w=g+21792|0;o=c[w>>2]|0;u=c[h>>2]|0;x=u&64;t=g+25336|0;Wk(f,t,(u>>>7&1)+o|0);u=g+25372|0;r=c[(c[u>>2]|0)+48>>2]|0;k=c[r+(i<<2)>>2]|0;v=c[h>>2]|0;j=(v&128|0)!=0;do if(!(k&128))if(j){q=c[w>>2]&-2;n=c[f+27016>>2]|0;p=(N(n,q)|0)+(c[g+21788>>2]|0)|0;k=c[r+(p<<2)>>2]|0;c[E>>2]=k;i=c[r+(n+p<<2)>>2]|0;j=E+4|0;c[j>>2]=i;n=n<<2|2;o=s*6|0;if((k^i)&128){k=k&-129;c[E>>2]=k;i=i&-129;c[j>>2]=i}if(k&15|0?!((x|0)!=0|(i&15|0)==0):0){G=o;i=p;o=q;r=20744;j=61712;q=k;break}G=o;i=p;o=q;r=20744;j=61504;q=k}else{n=2;F=12}else{if(j){k=c[g+21852>>2]|0;n=2;o=k+o|0;j=c[f+27016>>2]|0}else{j=(c[w>>2]&-2)+(c[g+21848>>2]|0)|0;n=0;o=j;i=c[g+21788>>2]|0;k=c[f+27016>>2]|0}k=i+(N(j,k)|0)|0;i=k;k=c[r+(k<<2)>>2]|0;F=12}while(0);do if((F|0)==12){c[E+4>>2]=k;c[E>>2]=k;j=(x|0)!=0;if(j|(k&15|0)==0){if(!j?(p=k&48,p|0):0){G=s;r=20744;j=p|61696;q=k;break}G=s;r=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?20800:20744;j=61504;q=k}else{G=s;r=20744;j=20744;q=k}}while(0);c[h>>2]=v|j;Wk(f,t,o);p=c[u>>2]|0;k=c[(c[f+26360>>2]|0)+(i<<2)>>2]|0;j=(c[p+36>>2]|0)+(k<<2)|0;k=(c[p+40>>2]|0)+(k<<2)|0;o=i<<2;i=(c[p+68>>2]|0)+o|0;o=(c[p+72>>2]|0)+o|0;if(!n){B=(c[w>>2]&1|0)==0;C=G<<1;D=B?j:j+(C<<2)|0;C=B?k:k+(C<<2)|0;A=B?i:i+2|0;o=B?o:o+2|0}else{D=j;C=k;A=i}k=c[h>>2]|0;if((c[f+26376>>2]|0)==0|(k&128|0)==0){B=g+21868|0;j=g+22252|0;y=g+22444|0}else{y=c[w>>2]&1;B=g+21996+(y<<7)|0;j=g+22636+(y*384|0)|0;y=g+22636+(y*384|0)+192|0}z=q>>3&c[p+632>>2]<<4;i=k&128;a:do if((i|0)==(q&128|0)){if(k&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(q&7)){i=a[A>>0]|0;k=i<<24>>24>-1;if(!k){j=y;i=a[o>>0]|0}G=c[j+(z+(i<<24>>24)<<2)>>2]|0;E=c[B+(G<<2)>>2]|0;F=k?D:C;i=b[F>>1]|0;j=(N(E,i)|0)+128>>8;F=b[F+2>>1]|0;k=(N(E,F)|0)+128>>8;i=k-F<<16|j-i&65535;j=k<<16|j&65535;k=N(G,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}w=(x|0)==0;x=r&65535;h=(r&8|0)==0;f=G*3|0;v=(q&7|0)==0;u=0;while(1){if((u|0)==4)break a;q=u&1;r=u>>1;i=g+28552+(u<<1)|0;if(!(!w?!(b[i>>1]&256):0))F=43;b:do if((F|0)==43){F=0;b[i>>1]=x;t=u<<2;n=d[146228+t>>0]|0;E=g+28312+n|0;b[E>>1]=0;b[E+8>>1]=0;if(!v){E=g+28272+n|0;b[E>>1]=0;b[E+8>>1]=0;E=g+27952+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;E=g+28112+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;break}i=a[A+u>>0]|0;if(i<<24>>24>-1){s=D;k=j}else{s=C;i=a[o+u>>0]|0;k=y}k=c[k+(z+(i<<24>>24)<<2)>>2]|0;p=c[B+(k<<2)>>2]|0;E=g+28272+n|0;k=k*257&65535;b[E>>1]=k;b[E+8>>1]=k;if(!h){q=(N(f,r)|0)+(0-q&3)|0;t=b[s+(q<<2)>>1]|0;r=(N(p,t<<16>>16)|0)+128>>8;s=b[s+(q<<2)+2>>1]|0;q=(N(p,s<<16>>16)|0)+128>>8;E=g+27952+(n<<2)|0;p=q<<16|r&65535;c[E>>2]=p;c[E+4>>2]=p;c[E+32>>2]=p;c[E+36>>2]=p;E=g+28112+(n<<2)|0;t=q-(s&65535)<<16|r-(t&65535)&65535;c[E>>2]=t;c[E+4>>2]=t;c[E+32>>2]=t;c[E+36>>2]=t;break}n=q<<1;k=r<<1;i=0;while(1){if((i|0)==4)break b;I=(N((i>>1)+k|0,G)|0)+(i&1|n)|0;r=s+(I<<2)|0;E=d[146228+(i+t)>>0]|0;q=((N(p,b[r>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)>>1]=q;I=s+(I<<2)+2|0;J=((N(p,b[I>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)+2>>1]=J;c[g+28112+(E<<2)>>2]=J-(e[I>>1]|0)<<16|q-(e[r>>1]|0)&65535;i=i+1|0}}while(0);u=u+1|0}}else{h=i>>>6^2;v=(x|0)==0;u=r&65535;t=0;while(1){if((t|0)==4)break a;q=t&1;r=t>>1;i=g+28552+(t<<1)|0;if(!(!v?!(b[i>>1]&256):0)){b[i>>1]=u;s=d[146228+(t<<2)>>0]|0;J=g+28312+s|0;b[J>>1]=0;b[J+8>>1]=0;if(!(c[E+(r<<2)>>2]&7)){k=(N(r,n)|0)+q|0;i=a[A+k>>0]|0;if(i<<24>>24>-1){p=D;k=j}else{p=C;i=a[o+k>>0]|0;k=y}i=c[k+(z+(i<<24>>24)<<2)>>2]|0;J=c[B+(i<<2)>>2]|0;I=g+28272+s|0;i=i*257&65535;b[I>>1]=i;b[I+8>>1]=i;I=(0-q&3)+(N(r,G)|0)|0;i=(b[p+(I<<2)+2>>1]<>1]|0;F=(N(J,I<<16>>16)|0)+128>>8;J=(N(i,J)|0)+128>>8;x=g+27952+(s<<2)|0;w=J<<16|F&65535;c[x>>2]=w;c[x+4>>2]=w;c[x+32>>2]=w;c[x+36>>2]=w;i=F-(I&65535)&65535|J-i<<16}else{i=g+28272+s|0;b[i>>1]=0;b[i+8>>1]=0;i=g+27952+(s<<2)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+32>>2]=0;c[i+36>>2]=0;i=0}J=g+28112+(s<<2)|0;c[J>>2]=i;c[J+4>>2]=i;c[J+32>>2]=i;c[J+36>>2]=i}t=t+1|0}}while(0);l=H;return}function Wk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+696>>2]&1|0){a=c[a+27008>>2]<<4>>f;d=d<<4>>f;Yi(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function Xk(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Yk(a){a=a|0;return c[a+8>>2]|0}function Zk(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=_k(d,32)|0;l=b;return a|0}function _k(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Ik(a,b)|0;break}else{b=b+-16|0;c=(Ik(a,16)|0)<=(m|0))W(32);h=n;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=d[(ph(c[i+112>>2]|0)|0)+6>>0]|0;g=c[a+26380>>2]|0;p=(g|0)!=3;r=p&1;q=f<>2]|0)-f|0;e=(q|0)>(e|0)?e:q;if(!((p?(c[a+26384>>2]|0)!=0:0)?!(c[i+240>>2]&2|0):0))k=4;if((k|0)==4?(o=c[i+116>>2]|0,o|0):0){c[h>>2]=N(c[j+32>>2]|0,f)|0;b=N(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}Wd[o&63](i,j,h,f,g,e)}l=n;return}function al(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))bl(a);return}function bl(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function cl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ka=l;l=l+48|0;if((l|0)>=(m|0))W(48);_=ka+20|0;Y=ka;ja=ka+8|0;ca=g+21788|0;k=c[ca>>2]|0;aa=g+21792|0;q=c[aa>>2]|0;$=g+21796|0;n=c[$>>2]|0;da=c[(c[f+24364>>2]|0)+(n<<2)>>2]|0;p=f+25976|0;X=g+848|0;if(!(c[X>>2]|0))ha=(c[(c[f+28216>>2]|0)+16>>2]|0)!=0;else ha=0;i=f+24316|0;ia=f+25664|0;o=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;Z=c[ia>>2]|0;fa=c[o>>2]|0;V=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((N(fa,q)|0)+(k<>2]=V;Z=V+(N(c[ca>>2]<<2&12,fa)|0)+(64<>2]&1023](Z,fa,4);h=h+1|0}r=g+23412|0;a[(c[f+26388>>2]|0)+n>>0]=c[r>>2];Z=g+21828|0;h=c[o>>2]|0;a:do if(c[Z>>2]|0){o=h<<1;c[g+21784>>2]=o;c[g+21780>>2]=o;p=f+26168|0;b:do if(q&1|0){i=N(h,-15)|0;h=0;while(1){if((h|0)==3)break b;fa=ja+(h<<2)|0;c[fa>>2]=(c[fa>>2]|0)+i;h=h+1|0}}while(0);if(!(c[f+26376>>2]|0))fa=o;else{j=(da&8|0)==0;i=0;while(1){if(i>>>0>=(c[r>>2]|0)>>>0){fa=o;break a}c:do if(12288<<(i<<1)&da|0){if(j)h=0;else{V=g+28272+(i*40|0)+12|0;fa=N((a[V>>0]|0)+16^c[aa>>2]&1,16843009)|0;c[V>>2]=fa;c[g+28272+(i*40|0)+20>>2]=fa;c[g+28272+(i*40|0)+28>>2]=fa;c[g+28272+(i*40|0)+36>>2]=fa;break}while(1){if((h|0)>=16)break c;k=(d[146228+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){fa=(c[aa>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=fa;b[k+8>>1]=fa}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;fa=h}while(0);d:do if(!(da&4)){e:do if(da&7){V=g+868|0;i=c[V>>2]|0;f:do if(i|0){j=c[ja>>2]|0;k=c[ja+4>>2]|0;n=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=j+z|0;x=k+z|0;z=n+z|0;A=g+27796+(h<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i|0){n=(B|0)==0;do if(u){h=(8<>2]|0;T=c[T+4>>2]|0;i=s+(-7<>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(n){h=k;i=s+1|0;q=0;j=c[h>>2]|0;h=c[h+4>>2]|0;n=1;break}else{T=h+8|0;n=T;j=c[n>>2]|0;n=c[n+4>>2]|0;h=i+8|0;U=h;ea=c[U+4>>2]|0;i=T;c[i>>2]=c[U>>2];c[i+4>>2]=ea;c[h>>2]=j;c[h+4>>2]=n;h=k;n=1<>2]|0;h=c[h+4>>2]|0;ea=56;break}}else{h=k;j=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[k>>2]=c[ea>>2];c[k+4>>2]=q;k=i;c[k>>2]=j;c[k+4>>2]=h;k=v+(w*96|0)+8|0;h=k;i=s+n+8|0;q=1;j=c[h>>2]|0;h=c[h+4>>2]|0}o=i;T=c[o+4>>2]|0;U=k;c[U>>2]=c[o>>2];c[U+4>>2]=T;U=i;c[U>>2]=j;c[U+4>>2]=h;h=(8<>2]|0;U=c[U+4>>2]|0;o=9<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}h=(c[ca>>2]|0)+1|0;r=f+27012|0;if((h|0)<(c[r>>2]|0)?(ea=(c[A>>2]|0)+(h*96|0)|0,U=ea,T=c[U>>2]|0,U=c[U+4>>2]|0,C=s+(17<>2]|0,ea,c[ea>>2]=c[R>>2],c[ea+4>>2]=S,ea=C,c[ea>>2]=T,c[ea+4>>2]=U,q):0){S=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=C+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}if(u){h=(24<>2]|0;U=c[U+4>>2]|0;j=-7<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}i=(40<>2]|0;U=c[U+4>>2]|0;h=z+j|0;R=h;S=c[R+4>>2]|0;ea=i;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=h;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=i+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=h+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U;ea=68}else ea=69}else if(q)ea=68;else ea=69;if((ea|0)==68){i=(16<>2]|0;U=c[U+4>>2]|0;h=x+n|0;R=h;S=c[R+4>>2]|0;k=i;c[k>>2]=c[R>>2];c[k+4>>2]=S;k=h;c[k>>2]=T;c[k+4>>2]=U;h=h+8|0;i=i+8|0;k=1}else if((ea|0)==69){h=x+n|0;i=(16<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;c[h>>2]=S;c[h+4>>2]=T;h=(24<>2]|0;T=c[T+4>>2]|0;i=x+o|0;Q=i;R=c[Q+4>>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(k){h=h+8|0;T=h;S=c[T>>2]|0;T=c[T+4>>2]|0;i=i+8|0;R=i;Q=c[R+4>>2]|0;c[h>>2]=c[R>>2];c[h+4>>2]=Q;c[i>>2]=S;c[i+4>>2]=T;i=(32<>2]|0;T=c[T+4>>2]|0;h=z+n|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;h=h+8|0;i=i+8|0}else{h=z+n|0;i=(32<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;i=h;c[i>>2]=S;c[i+4>>2]=T;i=(40<>2]|0;T=c[T+4>>2]|0;h=z+o|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}h=(c[ca>>2]|0)+1|0;if((h|0)<(c[r>>2]|0)){i=16<>2]|0)+(h*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;j=17<>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}i=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;h=z+j|0;Q=h;R=c[Q+4>>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}}}}while(0);h=da&1;A=(h|0)==0;F=g+21660|0;B=f+132|0;C=f+28212|0;T=da&16777216;D=(T|0)==0;H=f+144|0;G=f+28216|0;I=g+21764|0;J=3-fa|0;K=3-((fa|0)/2|0)|0;L=0-fa|0;E=g+28560|0;M=f+108|0;O=f+100|0;U=f+140|0;P=f+25704|0;Q=g+21756|0;R=f+112|0;S=f+104|0;z=0;while(1){if((z|0)==3)break;x=c[ia>>2]|0;u=c[ja+(z<<2)>>2]|0;i=c[((z|0)==0?X:g+852+(z+-1<<2)|0)>>2]|0;v=z<<4;w=p+(v<<2)|0;g:do if(A){Sd[c[f+25888+(c[F>>2]<<2)>>2]&255](u,fa);if(a[(d[146228+(z+48)>>0]|0)+(g+27824)>>0]|0){if(!ha){Td[c[B>>2]&1023](g+28560+(z<<8<>2]|0)+173788+(z<<2)>>2]|0)+(i<<6)>>2]|0);break}o=g+28560+(z<<8<>0]|0;if(j)b[o+(n<<1)>>1]=b[g+31632+(z<<6)+(i<<1)>>1]|0;else c[o+(n<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!D){if(ha){n=c[U>>2]|0;k=n}else{k=c[S>>2]|0;n=c[R>>2]|0}q=z<<8;r=(x|0)==0;o=0;while(1){if((o|0)>=16)break g;s=u+(c[w+(o<<2)>>2]|0)|0;t=a[(d[146228+o>>0]|0)+(g+21664)>>0]|0;i=t<<24>>24;do if(ha?(t<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)if((c[P>>2]|0)>>>0<151){Td[c[f+25932+(i<<2)>>2]&1023](s,g+28560+((o<<4)+q<>2]&127](s,g+28560+((o<<4)+q<>2]<>2]<>0]|0)+(g+27824)>>0]|0;Ud[c[f+25796+(i<<2)>>2]&255](s,c[Q>>2]<>2]<>24){case 0:break h;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j)break i;Td[n&1023](s,g+28560+(i<>2]|0;k=n}else{k=c[O>>2]|0;n=c[M>>2]|0}q=z<<8;r=(x|0)==0;s=4<>2]|0)|0;i=a[(d[146228+o>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(ha?(i<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)Td[c[f+25924+(j<<2)>>2]&1023](t,g+28560+((o<<4)+q<>24==7){if(c[I>>2]&32768>>>o|0){i=t+s+L|0;break}if(r){c[_>>2]=N(d[t+J>>0]|0,16843009)|0;i=_;break}else{la=$W(e[t+(K<<1)>>1]|0,0,65537,65537)|0;i=Y;c[i>>2]=la;c[i+4>>2]=y;i=Y;break}}else i=0;while(0);Td[c[f+25736+(j<<2)>>2]&1023](t,i,fa);j:do switch(a[(d[146228+(o+v)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j){ea=124;break j}Td[n&1023](t,g+28560+(i<>2]|0;if(j){k=c[ja>>2]|0;n=c[ja+4>>2]|0;q=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(i){o=1;break}else{j=T;i=U;break e}else{o=(i^1)&1;break}}else o=1;while(0);if((j|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=k+z|0;x=n+z|0;z=q+z|0;A=g+27796+(o<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i){n=(B|0)==0;do if(u){i=(8<>2]|0;aa=c[aa+4>>2]|0;j=s+(-7<>2]|0;la=i;c[la>>2]=c[Z>>2];c[la+4>>2]=_;la=j;c[la>>2]=$;c[la+4>>2]=aa;if(n){i=k;j=s+1|0;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1;n=0;break}else{$=i+8|0;o=$;ea=c[o>>2]|0;o=c[o+4>>2]|0;i=j+8|0;aa=i;la=c[aa+4>>2]|0;j=$;c[j>>2]=c[aa>>2];c[j+4>>2]=la;c[i>>2]=ea;c[i+4>>2]=o;i=k;o=1<>2]|0;i=c[i+4>>2]|0;ea=151;break}}else{i=k;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1<>2]=k;c[j+4>>2]=i;i=v+(w*96|0)+8|0;j=s+o+8|0;k=c[i>>2]|0;i=c[i+4>>2]|0;n=1}ea=j;c[ea>>2]=k;c[ea+4>>2]=i;i=(8<>2]|0;ea=c[ea+4>>2]|0;q=9<>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ea;if(n){$=i+8|0;ea=$;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ea}i=(c[ca>>2]|0)+1|0;r=f+27012|0;if((i|0)<(c[r>>2]|0)?(la=(c[A>>2]|0)+(i*96|0)|0,ea=la,aa=c[ea>>2]|0,ea=c[ea+4>>2]|0,ba=s+(17<>2]|0,la,c[la>>2]=c[_>>2],c[la+4>>2]=$,la=ba,c[la>>2]=aa,c[la+4>>2]=ea,n):0){Z=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;ea=Z;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=ba+8|0;_=la;$=c[_+4>>2]|0;ba=Z;c[ba>>2]=c[_>>2];c[ba+4>>2]=$;c[la>>2]=aa;c[la+4>>2]=ea}if(u){i=(24<>2]|0;ea=c[ea+4>>2]|0;k=-7<>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=i+8|0;ea=aa;ba=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ea}j=(40<>2]|0;ea=c[ea+4>>2]|0;i=z+k|0;$=i;aa=c[$+4>>2]|0;la=j;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=j+8|0;la=aa;ba=c[la>>2]|0;la=c[la+4>>2]|0;ea=i+8|0;_=ea;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[ea>>2]=ba;c[ea+4>>2]=la;ea=163}else ea=164}else if(n)ea=163;else ea=164;if((ea|0)==163){j=(16<>2]|0;i=x+o|0;n=i;c[n>>2]=c[ba>>2];c[n+4>>2]=la;i=i+8|0;j=j+8|0;n=1}else if((ea|0)==164){i=x+o|0;j=(16<>2]|0;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;i=(24<>2]|0;ba=c[ba+4>>2]|0;j=x+q|0;_=j;$=c[_+4>>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ba;if(n){i=i+8|0;aa=i;ba=c[aa>>2]|0;aa=c[aa+4>>2]|0;j=j+8|0;$=j;la=c[$+4>>2]|0;c[i>>2]=c[$>>2];c[i+4>>2]=la;c[j>>2]=ba;c[j+4>>2]=aa;j=(32<>2]|0;i=z+o|0;la=i;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;i=i+8|0;j=j+8|0}else{i=z+o|0;j=(32<>2]|0;j=i;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(40<>2]|0;ba=c[ba+4>>2]|0;i=z+q|0;_=i;$=c[_+4>>2]|0;la=j;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}i=(c[ca>>2]|0)+1|0;if((i|0)<(c[r>>2]|0)){j=16<>2]|0)+(i*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;k=17<>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}j=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;i=z+k|0;_=i;$=c[_+4>>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;la=$;ca=c[la>>2]|0;la=c[la+4>>2]|0;j=i+8|0;aa=j;ba=c[aa+4>>2]|0;i=$;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;c[j>>2]=ca;c[j+4>>2]=la;j=T;i=U}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{nl(f,g,c[ja>>2]|0,c[ja+4>>2]|0,c[ja+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=da&16777216;H=f+144|0;i=f+140|0;G=f+28216|0;F=g+21660|0;E=g+28560|0;h=da&1}while(0);D=(h|0)==0;A=(da&2|0)==0;B=g+21856|0;z=(j|0)!=0;C=z?4:1;z=z?i:H;q=(j|0)==0;r=f+116|0;s=f+120|0;t=f+128|0;o=0;while(1){if((o|0)==3)break d;u=c[ia>>2]|0;v=c[ja+(o<<2)>>2]|0;w=o<<4;x=p+(w<<2)|0;k:do if(D){if(A){if(!(c[B>>2]&15))break;if(!ha)if(q){Vd[c[r>>2]&127](v,x,g+28560+(o<<8<>2]&127](v,x,g+28560+(o<<8<>2]|0;j=o<<8;h=0;while(1){if((h|0)>=16)break k;if(a[(d[146228+(h+w)>>0]|0)+(g+27824)>>0]|0)Td[i&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<>2]&127](v,x,g+28560+(o<<8<>2]|0)+4>>2]|0)==244?(ga=c[F>>2]|0,(ga+-1|0)>>>0<2):0){Ud[c[f+25960+(ga<<2)>>2]&255](v,x,g+28560+(o<<8<>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(n<<1)>>1]|0;else i=c[E+(n<<2)>>2]|0;if(i|0)ea=191}else ea=191;if((ea|0)==191){ea=0;Td[c[H>>2]&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+(n<>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ja+(i<<2)|0;n=i<<8;h=0;while(1){if((h|0)==16)break;o=(c[k>>2]|0)+(N(h,fa)|0)|0;p=(c[j>>2]|0)+n+(h<<4)|0;q=o+16|0;do{a[o>>0]=a[p>>0]|0;o=o+1|0;p=p+1|0}while((o|0)<(q|0));h=h+1|0}i=i+1|0}}o=c[(c[f+28216>>2]|0)+1184>>2]|0;el(_,c[g+27780>>2]|0,o*768|0);j=0;while(1){if((j|0)==3)break;k=ja+(j<<2)|0;i=0;while(1){if((i|0)==16)break;n=(c[k>>2]|0)+(N(i,fa)|0)|0;h=0;while(1){if((h|0)==16)break;b[n+(h<<1)>>1]=fl(_,o)|0;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);l=ka;return}function dl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;$=l;l=l+32|0;if((l|0)>=(m|0))W(32);_=$+8|0;D=$;I=g+21788|0;i=c[I>>2]|0;G=g+21792|0;k=c[G>>2]|0;F=g+21796|0;j=c[F>>2]|0;K=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;B=g+848|0;U=f+28216|0;h=c[U>>2]|0;if(!(c[B>>2]|0))R=(c[h+16>>2]|0)!=0;else R=0;v=16>>>(c[f+25680>>2]|0);V=(c[h+12>>2]|0)==2;S=c[f+24316>>2]|0;Y=f+25664|0;T=c[Y>>2]|0;E=i<>2]|0;n=(c[S>>2]|0)+((N(t,k)|0)+E<<4)|0;E=E<<3;h=g+21776|0;o=N(N(v,k)|0,c[h>>2]|0)|0;q=(c[S+4>>2]|0)+E+o|0;o=(c[S+8>>2]|0)+E+o|0;E=f+12|0;i=n+(N(i<<2&12,t)|0)+(64<>2]&1023](i,t,4);t=q+(N(c[I>>2]&7,c[h>>2]|0)|0)|0;Td[c[E>>2]&1023](t+(64<>2])|0,o-q|0,2);t=g+23412|0;a[(c[f+26388>>2]|0)+j>>0]=c[t>>2];E=g+21828|0;i=c[Z>>2]|0;a:do if(c[E>>2]|0){r=i<<1;c[g+21780>>2]=r;h=c[h>>2]|0;s=h<<1;c[g+21784>>2]=s;u=f+26168|0;if(!(k&1))p=n;else{Z=N(1-v|0,h)|0;p=n+(N(i,-15)|0)|0;q=q+Z|0;o=o+Z|0}if(!(c[f+26376>>2]|0)){O=r;Z=s;S=u;M=p;T=o}else{j=(K&8|0)==0;i=0;while(1){if(i>>>0>=(c[t>>2]|0)>>>0){O=r;Z=s;S=u;M=p;T=o;break a}b:do if(12288<<(i<<1)&K|0){if(j)h=0;else{T=g+28272+(i*40|0)+12|0;Z=N((a[T>>0]|0)+16^c[G>>2]&1,16843009)|0;c[T>>2]=Z;c[g+28272+(i*40|0)+20>>2]=Z;c[g+28272+(i*40|0)+28>>2]=Z;c[g+28272+(i*40|0)+36>>2]=Z;break}while(1){if((h|0)>=16)break b;k=(d[146228+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){Z=(c[G>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=Z;b[k+8>>1]=Z}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;Z=c[h>>2]|0;c[g+21784>>2]=Z;O=i;S=f+25976|0;M=n;T=o}while(0);c:do if(!(K&4)){J=(K&7|0)!=0;d:do if(J){C=g+868|0;i=c[C>>2]|0;e:do if(i|0){z=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[I>>2]|0}else{w=c[I>>2]|0;s=(w|0)>0;i=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}r=M+(0-(O+1+z))|0;x=0-(Z+1+z)|0;u=q+x|0;x=T+x|0;p=g+27796+(h<<2)|0;v=c[p>>2]|0;t=w+-1|0;n=v+(w*96|0)|0;if(i|0){j=(z|0)==0;do if(s){h=(8<>2]|0;k=c[k+4>>2]|0;i=r+(-7<>2]|0;o=h;c[o>>2]=c[ca>>2];c[o+4>>2]=ba;o=i;c[o>>2]=aa;c[o+4>>2]=k;if(j){h=n;i=r+1|0;j=0;k=c[h>>2]|0;h=c[h+4>>2]|0;break}else{ba=h+8|0;o=ba;j=c[o>>2]|0;o=c[o+4>>2]|0;h=i+8|0;ca=h;X=c[ca+4>>2]|0;i=ba;c[i>>2]=c[ca>>2];c[i+4>>2]=X;c[h>>2]=j;c[h+4>>2]=o;h=n;o=1<>2]|0;h=c[h+4>>2]|0;X=69;break}}else{h=n;k=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[n>>2]=c[ca>>2];c[n+4>>2]=k;n=i;c[n>>2]=j;c[n+4>>2]=h;n=v+(w*96|0)+8|0;h=n;i=r+o+8|0;j=1;k=c[h>>2]|0;h=c[h+4>>2]|0}o=i;aa=c[o+4>>2]|0;ba=n;c[ba>>2]=c[o>>2];c[ba+4>>2]=aa;ba=i;c[ba>>2]=k;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=r+(9<>2]|0;ca=h;c[ca>>2]=c[n>>2];c[ca+4>>2]=o;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){o=h+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;k=ca;n=c[k+4>>2]|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[p>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,A=r+(17<>2]|0,ca,c[ca>>2]=c[o>>2],c[ca+4>>2]=r,ca=A,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){o=(c[p>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=A+8|0;p=ca;r=c[p+4>>2]|0;A=o;c[A>>2]=c[p>>2];c[A+4>>2]=r;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[s>>2];c[ca+4>>2]=A;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=h+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;r=ca;s=c[r+4>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=s;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+k|0;t=h;A=c[t+4>>2]|0;ca=i;c[ca>>2]=c[t>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;t=j;A=c[t+4>>2]|0;c[aa>>2]=c[t>>2];c[aa+4>>2]=A;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=v+(w*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=u+1+z|0;u=h;A=c[u+4>>2]|0;ca=i;c[ca>>2]=c[u>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;t=ca;u=c[t+4>>2]|0;c[A>>2]=c[t>>2];c[A+4>>2]=u;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+1+z|0;z=h;A=c[z+4>>2]|0;ca=i;c[ca>>2]=c[z>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;x=ca;z=c[x+4>>2]|0;c[A>>2]=c[x>>2];c[A+4>>2]=z;c[ca>>2]=aa;c[ca+4>>2]=ba}}}while(0);z=g+21656|0;Sd[c[f+25844+(c[z>>2]<<2)>>2]&255](q,Z);Sd[c[f+25844+(c[z>>2]<<2)>>2]&255](T,Z);z=c[Y>>2]|0;h=c[B>>2]|0;f:do if(!(K&1)){Sd[c[f+25888+(c[g+21660>>2]<<2)>>2]&255](M,O);if(a[g+27824>>0]|0){if(!R){Td[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28212>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}n=g+28560|0;i=(z|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[135515+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[n+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(K&16777216|0){if(R){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}o=f+25704|0;p=g+21756|0;r=g+21764|0;s=(z|0)==0;t=g+28560|0;n=0;while(1){if((n|0)>=16)break f;u=M+(c[S+(n<<2)>>2]|0)|0;h=d[146228+n>>0]|0;ca=a[g+21664+h>>0]|0;i=ca<<24>>24;do if(R?(ca<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)if((c[o>>2]|0)>>>0<151){Td[c[f+25932+(i<<2)>>2]&1023](u,g+28560+(n<<4<>2]&127](u,g+28560+(n<<4<>2]<>2]<>0]|0;Ud[c[f+25796+(i<<2)>>2]&255](u,c[p>>2]<>2]<>24){case 0:break g;case 1:{h=n<<4;if(s)i=e[g+28560+(h<<1)>>1]|0;else i=c[t+(h<<2)>>2]|0;if(i){Td[k&1023](u,g+28560+(h<>2]|0;k=n}else{k=c[f+100>>2]|0;n=c[f+108>>2]|0}p=g+21764|0;r=(z|0)==0;s=3-O|0;t=3-((O|0)/2|0)|0;u=4<>2]|0)|0;i=d[146228+o>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(R?(h<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)Td[c[f+25924+(j<<2)>>2]&1023](x,g+28560+(o<<4<>24==7){if(c[p>>2]&32768>>>o|0){h=x+u+v|0;break}if(r){c[_>>2]=N(d[x+s>>0]|0,16843009)|0;h=_;break}else{ca=$W(e[x+(t<<1)>>1]|0,0,65537,65537)|0;h=D;c[h>>2]=ca;c[h+4>>2]=y;h=D;break}}else h=0;while(0);Td[c[f+25736+(j<<2)>>2]&1023](x,h,O);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=o<<4;if(r)i=e[g+28560+(h<<1)>>1]|0;else i=c[w+(h<<2)>>2]|0;if(!i)X=126;else Td[n&1023](x,g+28560+(h<>2]|0;if(i|0){x=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){r=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;v=c[I>>2]|0}else{v=c[I>>2]|0;r=(v|0)>0;h=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}p=M+(0-(O+1+x))|0;w=0-(Z+1+x)|0;t=q+w|0;w=T+w|0;o=g+27796+(j<<2)|0;u=c[o>>2]|0;s=v+-1|0;j=u+(v*96|0)|0;if(h|0){n=(x|0)==0;do if(r){h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(-7<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(n){h=j;k=p+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=0;break}else{X=h+8|0;k=X;h=c[k>>2]|0;k=c[k+4>>2]|0;i=i+8|0;ba=i;ca=c[ba+4>>2]|0;c[X>>2]=c[ba>>2];c[X+4>>2]=ca;c[i>>2]=h;c[i+4>>2]=k;i=j;k=1<>2]|0;i=c[i>>2]|0;X=152;break}}else{h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;k=1<>2]=i;c[j+4>>2]=h;h=u+(v*96|0)+8|0;k=p+k+8|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1}ba=k;c[ba>>2]=i;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(9<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){G=h+8|0;ba=G;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;E=ca;F=c[E+4>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=F;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[o>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,H=p+(17<>2]|0,ca,c[ca>>2]=c[F>>2],c[ca+4>>2]=G,ca=H,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){I=(c[o>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=H+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=h+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+k|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;H=j;I=c[H+4>>2]|0;c[aa>>2]=c[H>>2];c[aa+4>>2]=I;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=u+(v*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=t+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;n=f+16|0;o=f+32|0;if(V){gl(f,g,M,q,T,h,i,j,k,n,o);break}else{hl(f,g,M,q,T,h,i,j,k,n,o);break}}while(0);p=c[Y>>2]|0;h:do if(!(K&1)){if(!(K&2)){if(!(c[g+21856>>2]&15))break;h=K&16777216;if(!R)if(!h){Vd[c[f+116>>2]&127](M,S,g+28560|0,O,g+27824|0);break}else{Vd[c[f+120>>2]&127](M,S,g+28560|0,O,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if((h|0)>=16)break h;if(a[(d[146228+h>>0]|0)+(g+27824)>>0]|0)Td[j&1023](M+(c[S+(h<<2)>>2]|0)|0,g+28560+(h<<4<>2]&127](M,S,g+28560|0,O,g+27824|0);break}if((c[(c[U>>2]|0)+4>>2]|0)==244?(L=c[g+21660>>2]|0,(L+-1|0)>>>0<2):0){Ud[c[f+25960+(L<<2)>>2]&255](M,S,g+28560|0,O);break}j=(p|0)==0;k=g+28560|0;n=f+144|0;i=0;while(1){if((i|0)==16)break h;o=i<<4;if(!(a[(d[146228+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(o<<1)>>1]|0;else h=c[k+(o<<2)>>2]|0;if(h|0)X=183}else X=183;if((X|0)==183){X=0;Td[c[n>>2]&1023](M+(c[S+(i<<2)>>2]|0)|0,g+28560+(o<>2]&48|0){c[_>>2]=q;h=_+4|0;c[h>>2]=T;i:do if(R){if((J?(c[(c[U>>2]|0)+4>>2]|0)==244:0)?(P=g+21656|0,Q=c[P>>2]|0,(Q+-1|0)>>>0<2):0){Ud[c[f+25948+(Q<<2)>>2]&255](q,S+64|0,g+28560+(256<>2]<<1)|0,Z);Ud[c[f+25948+(c[P>>2]<<2)>>2]&255](c[h>>2]|0,S+128|0,g+28560+(512<>2]<<1)|0,Z);break}r=c[f+144>>2]|0;s=g+28560|0;q=1;while(1){if((q|0)==3)break i;j=q<<4;o=j|4;t=_+(q+-1<<2)|0;i=j;while(1){if((i|0)>=(o|0))break;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146228+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=211}else X=211;if((X|0)==211){X=0;Td[r&1023]((c[t>>2]|0)+(c[S+(i<<2)>>2]|0)|0,g+28560+(n<=(p|0))break j;j=i+4|0;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146228+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=221}else X=221;if((X|0)==221){X=0;Td[r&1023]((c[t>>2]|0)+(c[S+(j<<2)>>2]|0)|0,g+28560+(n<>2]|0;if(V){i=(c[g+856>>2]|0)+3|0;h=h+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)Sd[c[f+136>>2]&255](g+28560+(256<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)Sd[c[f+136>>2]&255](g+28560+(512<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);Vd[c[f+124>>2]&127](_,S,g+28560|0,Z,g+27824|0)}while(0)}}else{h=c[U>>2]|0;o=c[h+1184>>2]|0;if(!(c[Y>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=M+(N(h,O)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;n=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(n|0));h=h+1|0}if(!(c[(c[U>>2]|0)+12>>2]|0)){i=1<>2]|0)+256|0;j=i+(v<<3)|0;h=0;while(1){if((h|0)>=(v|0))break c;ca=N(h,Z)|0;ba=h<<3;aa=i+ba|0;Y=aa;Y=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;aa=aa+4|0;aa=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;_=q+ca|0;g=_;a[g>>0]=Y;a[g+1>>0]=Y>>8;a[g+2>>0]=Y>>16;a[g+3>>0]=Y>>24;_=_+4|0;a[_>>0]=aa;a[_+1>>0]=aa>>8;a[_+2>>0]=aa>>16;a[_+3>>0]=aa>>24;ba=j+ba|0;_=ba;_=d[_>>0]|d[_+1>>0]<<8|d[_+2>>0]<<16|d[_+3>>0]<<24;ba=ba+4|0;ba=d[ba>>0]|d[ba+1>>0]<<8|d[ba+2>>0]<<16|d[ba+3>>0]<<24;ca=T+ca|0;aa=ca;a[aa>>0]=_;a[aa+1>>0]=_>>8;a[aa+2>>0]=_>>16;a[aa+3>>0]=_>>24;ca=ca+4|0;a[ca>>0]=ba;a[ca+1>>0]=ba>>8;a[ca+2>>0]=ba>>16;a[ca+3>>0]=ba>>24;h=h+1|0}}}el(_,c[g+27780>>2]|0,N(o,e[114134+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=M+(N(i,O)|0)|0;h=0;while(1){if((h|0)==16)break;b[j+(h<<1)>>1]=fl(_,o)|0;h=h+1|0}i=i+1|0}k:do if(!(c[(c[U>>2]|0)+12>>2]|0)){j=1<=(v|0))break k;n=N(i,Z)|0;k=q+n|0;n=T+n|0;h=0;while(1){if((h|0)==8)break;b[n+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(v|0)){i=0;break}j=q+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=fl(_,o)|0;h=h+1|0}i=i+1|0}while(1){if((i|0)>=(v|0))break k;j=T+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=fl(_,o)|0;h=h+1|0}i=i+1|0}}while(0)}while(0);l=$;return}function el(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function fl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(gX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function gl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)il(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Td[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Td[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;ml(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);ml(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;ml(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);ml(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;ml(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);ml(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;ml(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);ml(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;ml(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else ml(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else ml(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Td[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Td[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function hl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)il(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Td[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Td[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;jl(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);jl(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;jl(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);jl(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;jl(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);jl(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;jl(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);jl(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;jl(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else jl(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else jl(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Td[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Td[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function il(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+208|0;if((l|0)>=(m|0))W(208);u=w+8|0;v=w;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;t=v;c[t>>2]=0;c[t+4>>2]=0;kX(u|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){kl(a,d,u,0,8,0,f&4096,f&16384,v);kl(a,d,u,8,8,8,f&8192,f&32768,v);break}if(f&32|0){kl(a,d,u,0,16,0,f&4096,f&16384,v);kl(a,d,u,4,16,0,f&8192,f&32768,v);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){s=f&4096;t=f&16384;kl(a,d,u,h,4,i,s,t,v);kl(a,d,u,h|2,4,i|4,s,t,v);break}j=f&4096;k=f&16384;if(!(f&32))f=0;else{kl(a,d,u,h,8,i,j,k,v);kl(a,d,u,h|1,8,i,j,k,v);break}while(1){if((f|0)==4)break b;kl(a,d,u,f+h|0,4,f<<1&4|i,j,k,v);f=f+1|0}}else kl(a,d,u,h,8,i,f&4096,f&16384,v);while(0);g=g+1|0}}else kl(a,d,u,0,16,0,f&4096,f&16384,v);while(0);s=a+27008|0;t=d+21832|0;r=a+26380|0;f=c[d+23412>>2]|0;c:while(1){f=f+-1|0;if((f|0)<=-1)break;p=v+(f<<2)|0;o=0;while(1){if((o|0)>=48)continue c;h=c[p>>2]|0;if(!h)continue c;g=b[u+(f*96|0)+(o<<1)>>1]|0;do if(g<<16>>16>-1){q=(c[d+23416+(f*1920|0)+(o*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(o*40|0)+36|0;j=c[i>>2]|0;x=c[j+636>>2]|0;n=c[s>>2]<<4>>x;k=g<<16>>16<>2];c[p>>2]=h+-1;a=(c[r>>2]|0)==3;g=(x|0)!=0;if(g&a){x=k>>1;a=x-(k&1^1)|0;q=n+-1|0;Yi(j+4|0,(a|0)<(n|0)?a:q,1);Yi((c[i>>2]|0)+4|0,(x|0)>(q|0)?q:x,0);break}h=j+4|0;if(!(g|a)){x=(k<<1)+q|0;Yi(h,(x|0)<(n|0)?x:n+-1|0,0);break}g=n+-1|0;g=(k|0)>(g|0)?g:k;if(a){Yi(h,g,0);break}else{Yi(h,g,q);break}}while(0);o=o+1|0}}l=w;return}function jl(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;M=f+880|0;x=c[M>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){V=d[146228+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+V>>0]|0)*384|0)+(a[f+28312+V>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=44;else{P=x;x=5}}else if((x|0)==1){y=f+21792|0;P=y;y=c[y>>2]|0;x=5}else x=44;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;K=c[u>>2]|0;J=c[u+4>>2]|0;O=c[e+25664>>2]|0;V=f+21780|0;s=c[V>>2]|0;S=k+((N(o<<1,s)|0)+(n<<1<>1;U=f+21784|0;x=c[U>>2]|0;Q=(N(x,o)|0)+(n<>2]<<3)+n|0;L=f+21828|0;n=c[L>>2]|0;y=(y>>n<<3)+o|0;if(!(z&A)){B=A&1;z=d[146228+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;k=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;v=z<<2&12|k&3;x=k>>2;y=z>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;u=m<<4;A=c[e+27008>>2]<<4>>n;n=k&7;M=(n|0)==0?0:-3;g=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(y|0)<(0-g|0))?(x+16|0)<=(M+u|0):0)?(y+16|0)<=(A+g|0):0){l=0;y=s}else{g=f+27792|0;l=2<>2]&3](c[g>>2]|0,t+(0-l)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+l+(y<<1)|0;l=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](S,t,y);if(!h)Td[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){z=(1-(c[f+23416+(B*1920|0)+(o*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(A>>1|0)}k=k>>3;v=k<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+v+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+v+x|0;v=f+27792|0;if(!l){y=z&7;Wd[q&63](R,u,t,T,n,y)}else{j=A>>1;h=m<<3;O=e+8|0;Zd[c[O>>2]&3](c[v>>2]|0,u,t,t,9,9,k,y,h,j);e=z&7;Wd[q&63](R,c[v>>2]|0,c[U>>2]|0,T,n,e);P=c[U>>2]|0;Zd[c[O>>2]&3](c[v>>2]|0,x,P,P,9,9,k,y,h,j);x=c[v>>2]|0;y=e}Wd[q&63](Q,x,c[U>>2]|0,T,n,y);Wd[D&63](S,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;Wd[C&63](R,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Wd[C&63](Q,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}H=c[f+27788>>2]|0;I=H+(16<>0]|0;w=a[f+28272+C>>0]|0;F=a[f+28312+C>>0]|0;o=t<<3;z=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;l=B+(b[f+27952+(C<<2)+2>>1]|0)|0;v=l<<2&12|z&3;x=z>>2;y=l>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;E=e+27012|0;m=c[E>>2]|0;u=m<<4;r=e+27008|0;A=c[r>>2]<<4>>n;n=z&7;D=(n|0)==0?0:-3;g=(l&7|0)==0?0:-3;if((!((x|0)<(0-D|0)|(y|0)<(0-g|0))?(x+16|0)<=(D+u|0):0)?(y+16|0)<=(A+g|0):0){k=0;y=s}else{g=f+27792|0;k=2<>2]&3](c[g>>2]|0,t+(0-k)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](S,t,y);D=(h|0)!=0;if(!D)Td[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+23416+(w*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;h=l>>3;k=h>>>31|k|(h+8|0)>=(A>>1|0)}y=z>>3;s=y<>3;u=c[U>>2]|0;x=N(u,t)|0;v=(c[f+23416+(w*40|0)+4>>2]|0)+s+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+s+x|0;s=f+27792|0;if(!k){y=l&7;Wd[q&63](R,v,u,T,n,y)}else{g=A>>1;m=m<<3;z=e+8|0;Zd[c[z>>2]&3](c[s>>2]|0,v,u,u,9,9,y,t,m,g);h=l&7;Wd[q&63](R,c[s>>2]|0,c[U>>2]|0,T,n,h);A=c[U>>2]|0;Zd[c[z>>2]&3](c[s>>2]|0,x,A,A,9,9,y,t,m,g);x=c[s>>2]|0;y=h}Wd[q&63](Q,x,c[U>>2]|0,T,n,y);A=o+(b[f+28112+(C<<2)>>1]|0)|0;l=B+(b[f+28112+(C<<2)+2>>1]|0)|0;z=l<<2&12|A&3;u=A>>2;v=l>>2;y=c[V>>2]|0;t=(N(v,y)|0)+(u<>2]|0)+t|0;n=c[E>>2]|0;x=n<<4;m=c[r>>2]<<4>>c[L>>2];o=A&7;g=(o|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(v|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(v+16|0)<=(m+h|0):0)k=0;else{k=2<>2]&3](c[s>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,x,m);y=c[V>>2]|0;t=(c[s>>2]|0)+k+(y<<1)|0;k=1}x=p+(z<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!D)Td[c[x>>2]&1023](G+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+25336+(F*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;j=l>>3;k=j>>>31|k|(j+8|0)>=(m>>1|0)}v=A>>3;j=v<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+25336+(F*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(F*40|0)+8>>2]|0)+j+x|0;if(!k){y=l&7;Wd[q&63](H,u,t,T,o,y)}else{j=m>>1;h=n<<3;g=e+8|0;Zd[c[g>>2]&3](c[s>>2]|0,u,t,t,9,9,v,y,h,j);e=l&7;Wd[q&63](H,c[s>>2]|0,c[U>>2]|0,T,o,e);O=c[U>>2]|0;Zd[c[g>>2]&3](c[s>>2]|0,x,O,O,9,9,v,y,h,j);x=c[s>>2]|0;y=e}Wd[q&63](I,x,c[U>>2]|0,T,o,y);if((c[M>>2]|0)==2){e=c[f+3216+(w*384|0)+(F<<3)+((c[P>>2]&1)<<2)>>2]|0;f=64-e|0;Xd[K&31](S,G,c[V>>2]|0,i,5,e,f,0);Xd[J&31](R,H,c[U>>2]|0,T,5,e,f,0);Xd[J&31](Q,I,c[U>>2]|0,T,5,e,f,0);break}else{Xd[K&31](S,G,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(F<<4)+8>>2]|0,(c[f+912+(F<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);i=f+892|0;Xd[J&31](R,H,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(F<<5)+16>>2]|0,(c[f+1680+(F<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Xd[J&31](Q,I,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(F<<5)+24>>2]|0,(c[f+1680+(F<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==44){J=c[e+25664>>2]|0;I=f+21780|0;y=c[I>>2]|0;H=k+((N(o<<1,y)|0)+(n<<1<>2]|0,o)|0)+(n<>2]<<3)+n|0;F=f+21792|0;G=f+21828|0;x=c[G>>2]|0;E=(c[F>>2]>>x<<3)+o|0;if(v){z=d[146228+g>>0]|0;n=a[f+28272+z>>0]|0;m=(D<<3)+(b[f+27952+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+27952+(z<<2)+2>>1]|0)|0;A=z<<2&12|m&3;u=m>>2;v=z>>2;t=(N(v,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;k=B<<4;o=c[e+27008>>2]<<4>>x;C=m&7;U=(C|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((u|0)<(0-U|0)|(v|0)<(0-V|0))?(u+16|0)<=(U+k|0):0)?(v+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,k,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(A<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!h)Td[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+23416+(n*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;V=z>>3;l=V>>>31|l|(V+8|0)>=(o>>1|0)}t=m>>3;y=t<>3;v=c[M>>2]|0;x=N(v,u)|0;k=(c[f+23416+(n*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(n*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Wd[q&63](K,k,v,y,C,t)}else{T=o>>1;S=B<<3;Q=e+8|0;Zd[c[Q>>2]&3](c[y>>2]|0,k,v,v,9,9,t,u,S,T);U=i>>1;V=z&7;Wd[q&63](K,c[y>>2]|0,c[M>>2]|0,U,C,V);R=c[M>>2]|0;Zd[c[Q>>2]&3](c[y>>2]|0,x,R,R,9,9,t,u,S,T);x=c[y>>2]|0;y=U;t=V}Wd[q&63](L,x,c[M>>2]|0,y,C,t);q=s;p=r}if(w|0){z=d[146228+g>>0]|0;m=a[f+28312+z>>0]|0;A=(D<<3)+(b[f+28112+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+28112+(z<<2)+2>>1]|0)|0;k=z<<2&12|A&3;x=A>>2;u=z>>2;y=c[I>>2]|0;t=(N(u,y)|0)+(x<>2]|0)+t|0;n=c[e+27012>>2]|0;v=n<<4;o=c[e+27008>>2]<<4>>c[G>>2];B=A&7;U=(B|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((x|0)<(0-U|0)|(u|0)<(0-V|0))?(x+16|0)<=(v+U|0):0)?(u+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,x+-2|0,u+-2|0,v,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!h)Td[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+25336+(m*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(o>>1|0)}k=A>>3;y=k<>3;u=c[M>>2]|0;x=N(u,t)|0;v=(c[f+25336+(m*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(m*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Wd[q&63](K,v,u,y,B,t)}else{j=o>>1;h=n<<3;V=e+8|0;Zd[c[V>>2]&3](c[y>>2]|0,v,u,u,9,9,k,t,h,j);f=i>>1;i=z&7;Wd[q&63](K,c[y>>2]|0,c[M>>2]|0,f,B,i);e=c[M>>2]|0;Zd[c[V>>2]&3](c[y>>2]|0,x,e,e,9,9,k,t,h,j);x=c[y>>2]|0;y=f;t=i}Wd[q&63](L,x,c[M>>2]|0,y,B,t)}}while(0);return}function kl(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[146228+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=ll(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[146228+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=ll(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function ll(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[146228+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+(g&3|0?3:0)|0;return ((g|0)>0?g:0)|0} -function _d(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))W(a|0);return b|0}function $d(){return l|0}function ae(a){a=a|0;l=a}function be(a,b){a=a|0;b=b|0;l=a;m=b}function ce(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function de(a){a=a|0;y=a}function ee(){return y|0}function fe(){jc();return 0}function ge(a){a=a|0;var b=0;ob(72,80,96,0,115066,13,115069,0,115069,0,114158,169565,22);pb(72,1,52960,115066,14,1);a=zV(8)|0;c[a>>2]=3;c[a+4>>2]=0;qb(72,114168,3,52964,115071,4,a|0,0);a=zV(8)|0;c[a>>2]=4;c[a+4>>2]=0;qb(72,114181,3,52976,115071,5,a|0,0);a=zV(8)|0;c[a>>2]=10;c[a+4>>2]=0;qb(72,114188,4,52988,115076,2,a|0,0);a=zV(8)|0;c[a>>2]=23;c[a+4>>2]=0;qb(72,114199,2,53004,115082,5,a|0,0);a=zV(8)|0;c[a>>2]=6;c[a+4>>2]=0;b=zV(8)|0;c[b>>2]=7;c[b+4>>2]=0;rb(72,114217,40,115086,5,a|0,40,115071,6,b|0);b=zV(8)|0;c[b>>2]=8;c[b+4>>2]=0;a=zV(8)|0;c[a>>2]=9;c[a+4>>2]=0;rb(72,114229,40,115086,5,b|0,40,115071,6,a|0);a=zV(8)|0;c[a>>2]=7;c[a+4>>2]=0;qb(72,114241,4,53012,115090,4,a|0,0);a=zV(8)|0;c[a>>2]=8;c[a+4>>2]=0;qb(72,114247,3,53028,115096,11,a|0,0);return}function he(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=A+32|0;t=A+16|0;u=A;w=c[e>>2]|0;x=Mb(114261)|0;c[t>>2]=Ib(w|0,x|0)|0;Fb(x|0);re(z,t);Fb(c[t>>2]|0);a:do if(!(a[b+52>>0]|0))switch(a[(SV(z,0)|0)>>0]|0){case 1:{NV(u,z,1,-1,z);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];s=t+12|0;c[s>>2]=0;y=t+11|0;x=(a[y>>0]|0)<0?c[t>>2]|0:t;v=a[x+3>>0]|0;u=a[x+2>>0]|0;w=a[x+1>>0]|0;x=a[x>>0]|0;c[s>>2]=4;se(b,(u&255)<<8|v&255|(w&255)<<16|(x&255)<<24,t);if((a[y>>0]|0)<0)AV(c[t>>2]|0);break a}case 2:{NV(u,z,1,-1,z);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];s=t+12|0;c[s>>2]=0;y=t+11|0;x=(a[y>>0]|0)<0?c[t>>2]|0:t;v=a[x+3>>0]|0;u=a[x+2>>0]|0;w=a[x+1>>0]|0;x=a[x>>0]|0;c[s>>2]=4;ye(b+56|0,(u&255)<<8|v&255|(w&255)<<16|(x&255)<<24,t)|0;if((a[y>>0]|0)<0)AV(c[t>>2]|0);break a}default:break a}else{j=b+24|0;switch(c[j>>2]|0){case 0:{h=b+36|0;e=a[z+11>>0]|0;f=e<<24>>24<0;TV(h,f?c[z>>2]|0:z,f?c[z+4>>2]|0:e&255)|0;e=a[h+11>>0]|0;f=e<<24>>24<0;if(f)g=c[b+40>>2]|0;else g=e&255;i=b+48|0;if((g-(c[i>>2]|0)|0)<=12)break a;c[j>>2]=1;c[i>>2]=13;if(f){e=c[b+40>>2]|0;f=c[h>>2]|0}else{e=e&255;f=h}b=e+-13|0;jX(f|0,f+13|0,b|0)|0;PV(h,b,0);c[i>>2]=0;break a}case 1:break;default:break a}v=b+36|0;k=a[z+11>>0]|0;n=k<<24>>24<0;TV(v,n?c[z>>2]|0:z,n?c[z+4>>2]|0:k&255)|0;k=v+11|0;n=b+40|0;w=b+48|0;o=u+11|0;p=u+4|0;q=t+12|0;r=t+11|0;s=b+56|0;while(1){h=a[k>>0]|0;i=h<<24>>24<0;if(i)e=c[n>>2]|0;else e=h&255;x=c[w>>2]|0;if((e-x|0)<=3)break;if(i)e=c[v>>2]|0;else e=v;g=x+1|0;j=a[e+x>>0]|0;c[w>>2]=g;g=e+g+3+-1|0;e=a[g>>0]|0;B=a[g+-1>>0]|0;g=a[g+-2>>0]|0;f=x+4|0;c[w>>2]=f;g=(B&255)<<8|e&255|(g&255)<<16;if(i)e=c[n>>2]|0;else e=h&255;if((e-f|0)>>>0<(g+11|0)>>>0){y=22;break}if(i)e=c[v>>2]|0;else e=v;e=e+f+3+-1|0;e=d[e+-1>>0]<<8|d[e>>0]|d[e+-2>>0]<<16;B=x+11|0;c[w>>2]=B;NV(u,v,B,g,v);B=a[o>>0]|0;c[w>>2]=(c[w>>2]|0)+(B<<24>>24<0?c[p>>2]|0:B&255);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];c[q>>2]=0;switch(j<<24>>24){case 8:{se(b,e,t);break}case 9:{ye(s,e,t)|0;break}default:{}}c[w>>2]=(c[w>>2]|0)+4;if((a[r>>0]|0)<0)AV(c[t>>2]|0)}if((y|0)==22)c[w>>2]=x;if(i){e=c[n>>2]|0;f=c[v>>2]|0}else{e=h&255;f=v}B=e-x|0;jX(f|0,f+x|0,B|0)|0;PV(v,B,0);c[w>>2]=0}while(0);if((a[z+11>>0]|0)>=0){l=A;return}AV(c[z>>2]|0);l=A;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=b+28|0;if(!(a[e>>0]|0)){l=i;return}He(b+56|0);f=b+36|0;g=f+11|0;if((a[g>>0]|0)<0){a[c[f>>2]>>0]=0;c[b+40>>2]=0}else{a[f>>0]=0;a[g>>0]=0}c[b+48>>2]=0;c[b+24>>2]=0;a[e>>0]=0;if(!d){l=i;return}b=c[c[b+8>>2]>>2]|0;if((a[182768]|0)==0?OW(182768)|0:0)c[45704]=Hb(1,52860)|0;Eb(c[45704]|0,b|0,114659,h|0);l=i;return}function je(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h+24|0;f=h+16|0;e=h;c[e>>2]=114707;c[e+4>>2]=b;c[e+8>>2]=d;bc(0,e|0);a=a+56|0;e=c[a>>2]|0;if(e|0){g=e;g=g+8|0;g=c[g>>2]|0;g=g>>1;l=h;return g|0}e=zV(22700)|0;c[e>>2]=N(b<<1,d)|0;c[e+4>>2]=0;d=e+22668|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;vf(e+12|0);wf(e+76|0);xf(e+9344|0);c[f>>2]=114758;bc(0,f|0);c[e+8>>2]=bT(c[e>>2]|0)|0;c[g>>2]=114743;c[g+4>>2]=e;bc(0,g|0);c[a>>2]=e;g=e;g=g+8|0;g=c[g>>2]|0;g=g>>1;l=h;return g|0}function ke(a){a=a|0;Je(a+56|0);return}function le(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+104>>2];c[a>>2]=Rb(52760,e|0)|0;l=d;return}function me(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Cb(c[b>>2]|0,52760,f|0);Pb(c[f>>2]|0);c[a+104>>2]=~~e;l=d;return}function ne(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+32>>2];c[a>>2]=Rb(52760,e|0)|0;l=d;return}function oe(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Cb(c[b>>2]|0,52760,f|0);Pb(c[f>>2]|0);c[a+32>>2]=~~e;l=d;return}function pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;f=k;g=b+8|0;h=c[g>>2]|0;if(!h){h=zV(4)|0;Jb(c[d>>2]|0);c[f>>2]=c[d>>2];c[h>>2]=Rb(40,f|0)|0;c[g>>2]=h}i=e&1;a[b+66>>0]=i;f=b+60|0;d=c[f>>2]|0;if(d|0){j=d;j=j+36|0;a[j>>0]=i;b=b+28|0;a[b>>0]=1;l=k;return}c[j>>2]=114791;c[j+4>>2]=e?114800:114805;bc(0,j|0);g=zV(76)|0;Le(g);c[f>>2]=g;f=b+68|0;d=c[f>>2]|0;if(!d){c[f>>2]=h;d=h}c[g+4>>2]=d;j=g;j=j+36|0;a[j>>0]=i;b=b+28|0;a[b>>0]=1;l=k;return}function qe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;n=o+8|0;f=a[e+11>>0]|0;if(f<<24>>24<0){h=c[e>>2]|0;g=c[e+4>>2]|0}else{h=e;g=f&255}i=h+g|0;f=i;j=h;a:do if((g|0)<4)h=i;else{while(1){g=g+-3|0;if(!g){h=i;break a}g=ZT(h,46,g)|0;if(!g){h=i;break a}if(!(KT(g,114947,4)|0))break;h=g+1|0;g=f-h|0;if((g|0)<4){h=i;break a}}h=g;f=g}while(0);a[d+52>>0]=(f-j|0)!=-1&(h|0)!=(i|0)&1;j=Gb(114952)|0;VV(n,262508,e);i=n+11|0;f=a[i>>0]|0;if(f<<24>>24<0){h=c[n+4>>2]|0;f=bT(h+4|0)|0;c[f>>2]=h;g=c[n>>2]|0}else{h=f&255;f=bT(h+4|0)|0;c[f>>2]=h;g=n}iX(f+4|0,g|0,h|0)|0;c[k>>2]=f;c[b>>2]=Lb(j|0,1,52824,k|0)|0;if((a[i>>0]|0)>=0){Fb(j|0);l=o;return}AV(c[n>>2]|0);Fb(j|0);l=o;return}function re(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;i=+Cb(c[d>>2]|0,16,e|0);e=c[e>>2]|0;g=~~i>>>0;f=g+4|0;g=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)FV(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Pb(e|0);l=h;return}else d=b}else{j=g+16&-16;d=zV(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}iX(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Pb(e|0);l=h;return}function se(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;j=b+56|0;d=c[j>>2]|0;k=e+11|0;if(!d){f=e+12|0;g=a[((a[k>>0]|0)<0?c[e>>2]|0:e)+(c[f>>2]|0)>>0]|0;d=g&255;i=(d&1)+1|0;d=d>>>2;switch(d&3){case 1:{h=11025;break}case 2:{h=22050;break}case 3:{h=44100;break}default:h=d&3}switch((g&255)>>>4&15){case 10:{d=c[b+32>>2]<<10;g=c[c[b+8>>2]>>2]|0;if((a[182752]|0)==0?OW(182752)|0:0)c[45702]=Hb(4,52828)|0;p=c[45702]|0;c[n>>2]=d;c[n+8>>2]=h;c[n+16>>2]=i;Eb(p|0,g|0,114435,n|0);break}case 11:{d=c[c[b+8>>2]>>2]|0;if((a[182760]|0)==0?OW(182760)|0:0)c[45703]=Hb(4,52844)|0;p=c[45703]|0;c[n>>2]=16e3;c[n+8>>2]=16e3;c[n+16>>2]=i;Eb(p|0,d|0,114435,n|0);break}case 2:{d=(c[b+32>>2]|0)*576|0;g=c[c[b+8>>2]>>2]|0;if((a[182752]|0)==0?OW(182752)|0:0)c[45702]=Hb(4,52828)|0;p=c[45702]|0;c[n>>2]=d;c[n+8>>2]=h;c[n+16>>2]=i;Eb(p|0,g|0,114435,n|0);break}default:{}}d=c[j>>2]|0;if(!d){l=o;return}else{h=e;i=e;g=d}}else{h=e;i=e;f=e+12|0;g=d}j=c[f>>2]|0;p=a[((a[k>>0]|0)<0?c[h>>2]|0:i)+j+1+-1>>0]|0;c[f>>2]=j+1;if((p&-16)<<24>>24!=32){l=o;return}d=c[g+8>>2]|0;f=g+4|0;d=ve(g,e,d+(c[f>>2]|0)|0,d+(c[g>>2]|0)|0)|0;if(!d){l=o;return}e=(c[f>>2]|0)+d|0;p=(e|0)==(c[g>>2]|0);c[f>>2]=p?0:e;if(!p){l=o;return}d=c[c[b+68>>2]>>2]|0;if((a[182768]|0)==0?OW(182768)|0:0)c[45704]=Hb(1,52860)|0;Eb(c[45704]|0,d|0,114445,n|0);l=o;return}function te(b){b=b|0;if((a[b+11>>0]|0)>=0)return;AV(c[b>>2]|0);return}function ue(a){a=a|0;Za(a|0)|0;rW()}function ve(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d+12|0;i=d+22668|0;j=i+11|0;h=a[j>>0]|0;if(h<<24>>24<0)n=c[d+22672>>2]|0;else n=h&255;h=e+11|0;q=a[h>>0]|0;k=e+4|0;l=e+12|0;PV(i,n-(c[l>>2]|0)+(q<<24>>24<0?c[k>>2]|0:q&255)|0,0);if((a[j>>0]|0)<0)m=c[i>>2]|0;else m=i;h=a[h>>0]|0;if(h<<24>>24<0){h=c[l>>2]|0;i=c[k>>2]|0;j=h;h=(c[e>>2]|0)+h|0}else{q=c[l>>2]|0;i=h&255;j=q;h=e+q|0}iX(m+n|0,h|0,i-j|0)|0;if((we(r)|0)==-1){r=0;return r|0}o=d+13448|0;p=d+13450|0;q=d+13452|0;n=d+18060|0;h=0;while(1){i=b[o>>1]|0;d=b[p>>1]|0;j=d&65535;h=(N((i&65535)<<1,j)|0)+h|0;e=j+-1|0;do if(d<<16>>16)if(i<<16>>16==2){m=j<<2;j=n;k=q;l=f;i=e;while(1){d=c[k>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l>>0]=d;a[l+1>>0]=d>>>8;d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l+2>>0]=d;a[l+3>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+4|0;l=l+4|0;i=i+-1|0}}f=f+m|0;break}else{l=j<<1;j=q;k=f;i=e;while(1){d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[k>>0]=d;a[k+1>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+2|0;i=i+-1|0}}f=f+l|0;break}while(0);if(f>>>0>=g>>>0){f=22;break}if((we(r)|0)==-1){f=22;break}}if((f|0)==22)return h|0;return 0}function we(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+272|0;if((l|0)>=(m|0))W(272);v=w+256|0;u=w;k=w+248|0;n=w+244|0;s=d+22656|0;p=s+11|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;t=d+22668|0;i=e+(c[t>>2]|0)|0;j=xe(d,i)|0;if((j|0)==-1){d=-1;l=w;return d|0}f=c[t>>2]|0;g=f+j|0;c[t>>2]=g;e=a[p>>0]|0;if(e<<24>>24<0)e=c[d+22660>>2]|0;else e=e&255;if((e|0)==(g|0)){c[t>>2]=f;d=-1;l=w;return d|0}e=d+9328|0;if((c[e>>2]|0)==0?(r=dT(1152,4)|0,c[e>>2]=r,(r|0)==0):0){c[d+60>>2]=49;g=d+92|0;e=d+68|0}else{e=d+68|0;f=(c[e>>2]|0)==0;g=d+92|0;h=c[g>>2]|0;if(((h&16|0)!=0?(o=d+28|0,r=c[o+4>>2]|0,q=u,c[q>>2]=c[o>>2],c[q+4>>2]=r,q=d+88|0,r=b[q>>1]|0,c[v>>2]=c[u>>2],c[v+4>>2]=c[u+4>>2],r=uf(v,(h&4096|0)==0?(f?136:256):f?72:136,r)|0,b[q>>1]=r,r<<16>>16!=(b[d+90>>1]|0)):0)?(c[d+108>>2]&1|0)==0:0)c[d+60>>2]=513}r=d+64|0;q=(c[e>>2]|0)==0?1:2;f=d+28|0;Df(f,q,c[g>>2]&4096,u,n,k)|0;c[g>>2]=c[g>>2]|c[k>>2];g=d+96|0;c[g>>2]=c[g>>2]|c[u+4>>2];g=rf(f)|0;f=i-g+j|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;pf(v,e+(c[t>>2]|0)|0);e=tf(v,32)|0;if((e&-1703936|0)==-1966080){if(!(e&65536))sf(v,16);j=tf(v,e>>>19&1|8)|0}else j=0;o=d+22672|0;k=o+11|0;e=a[k>>0]|0;if(e<<24>>24<0)e=c[d+22676>>2]|0;else e=e&255;n=d+22684|0;i=e-(c[n>>2]|0)|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;PV(v,f,0);h=v+11|0;iX(((a[h>>0]|0)<0?c[v>>2]|0:v)+(c[v+12>>2]|0)|0,g|0,f|0)|0;g=a[h>>0]|0;f=g<<24>>24<0;TV(o,f?c[v>>2]|0:v,f?c[v+4>>2]|0:g&255)|0;if((a[h>>0]|0)<0)AV(c[v>>2]|0);e=a[p>>0]|0;if(e<<24>>24<0){e=c[t>>2]|0;f=c[s>>2]|0;g=e;e=(c[d+22660>>2]|0)-e|0}else{p=c[t>>2]|0;f=s;g=p;e=(e&255)-p|0}jX(f|0,f+g|0,e|0)|0;PV(s,e,0);c[t>>2]=0;e=a[k>>0]|0;h=e<<24>>24<0;if(h)e=c[d+22676>>2]|0;else e=e&255;g=e-(c[n>>2]|0)|0;e=c[u>>2]|0;if(i>>>0>>0|g>>>0>>0)e=-1;else{f=i-e|0;c[n>>2]=f;if(h)e=c[o>>2]|0;else e=o;pf(v,e+f|0);Ef(v,r,u,q)|0;yf(d+9332|0,r);g=g-j-f+(c[n>>2]|0)|0;c[n>>2]=g;e=a[k>>0]|0;if(e<<24>>24<0){e=c[d+22676>>2]|0;f=c[o>>2]|0}else{e=e&255;f=o}e=e-g|0;jX(f|0,f+g|0,e|0)|0;PV(o,e,0);c[n>>2]=0;e=0}d=e;l=w;return d|0}function xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+64|0;pf(a+28|0,b);c[a+20>>2]=b;Kf(h,a)|0;d=a+100|0;switch(c[h>>2]|0){case 1:{b=384;break}case 3:{b=(c[a+92>>2]&4096|0)==0?1152:576;f=3;break}default:{b=1152;f=3}}g=a+84|0;Lf(d,0,b,c[g>>2]|0);d=a+80|0;e=c[d>>2]|0;if(!e){b=a+16|0;e=c[b>>2]|0;if(!((e|0)!=0?!(e>>>0>64e4&(c[h>>2]|0)==3):0))f=8;do if((f|0)==8)if((Mf(a,h)|0)==-1){h=-1;return h|0}else{e=c[b>>2]|0;break}while(0);c[d>>2]=e;f=a+92|0;b=c[f>>2]|1024;c[f>>2]=b}else b=c[a+92>>2]|0;d=b>>>7&1;switch(c[h>>2]|0){case 1:{h=(((e*12|0)>>>0)/((c[g>>2]|0)>>>0)|0)+d<<2;return h|0}case 3:{b=(b&4096|0)==0?144:72;break}default:b=144}h=N(e,b)|0;h=((h>>>0)/((c[g>>2]|0)>>>0)|0)+d|0;return h|0}function ye(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);q=r+16|0;i=r+8|0;n=r;o=r+28|0;p=r+24|0;c[o>>2]=d;k=b+4|0;f=c[k>>2]|0;if(!f){b=0;l=r;return b|0}g=((a[e+11>>0]|0)<0?c[e>>2]|0:e)+(c[e+12>>2]|0)|0;h=a[g>>0]|0;j=h&15;switch(h&15){case 7:case 12:break;default:{c[i>>2]=114455;c[i+4>>2]=h&255;bc(0,i|0);b=0;l=r;return b|0}}if((h&-16)<<24>>24==16&(a[g+1>>0]|0)==0){f=b+8|0;if(!(a[f>>0]|0)){b=1;l=r;return b|0}c[b+16>>2]=($b(0,0)|0)-d;b=c[k>>2]|0;Td[c[(c[b>>2]|0)+12>>2]&1023](b,e,j);a[f>>0]=0;b=1;l=r;return b|0}h=b+12|0;if(!(c[h>>2]|0)){b=0;l=r;return b|0}i=b+48|0;do if(c[i>>2]|0){g=$b(0,0)|0;g=g-(c[b+16>>2]|0)|0;if((((c[i>>2]|0)*1e3|0)+d|0)<=(g|0)){f=c[k>>2]|0;break}Ae(b+20|0,o,e);f=b+44|0;if(a[f>>0]|0){b=0;l=r;return b|0}a[f>>0]=1;c[p>>2]=Nb()|0;ze(p,114515,114520);f=c[c[h>>2]>>2]|0;if((a[182776]|0)==0?OW(182776)|0:0)c[45705]=Hb(2,52864)|0;e=c[45705]|0;Jb(c[p>>2]|0);c[n>>2]=c[p>>2];Eb(e|0,f|0,114541,n|0);n=(c[o>>2]|0)-g+((c[i>>2]|0)*1e3|0)|0;c[q>>2]=114553;c[q+4>>2]=n;bc(0,q|0);n=c[h>>2]|0;c[q>>2]=(c[o>>2]|0)-g+((c[i>>2]|0)*1e3|0);c[b+52>>2]=Ge(c[n>>2]|0,114588,q)|0;Fb(c[p>>2]|0);b=0;l=r;return b|0}while(0);Sd[c[(c[f>>2]|0)+16>>2]&255](f,e);b=1;l=r;return b|0}function ze(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Qb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function Ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=b+8|0;g=c[j>>2]|0;k=b+4|0;f=c[k>>2]|0;m=g-f|0;i=b+16|0;l=b+20|0;h=(c[l>>2]|0)+(c[i>>2]|0)|0;if((((m|0)==0?0:((m>>2)*204|0)+-1|0)|0)==(h|0)){Be(b);h=(c[i>>2]|0)+(c[l>>2]|0)|0;g=c[j>>2]|0;f=c[k>>2]|0}if((g|0)==(f|0))f=0;else{m=(h>>>0)/204|0;f=(c[f+(m<<2)>>2]|0)+((h-(m*204|0)|0)*20|0)|0}c[f>>2]=c[d>>2];k=f+4|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[f+16>>2]=c[e+12>>2];m=a[e+11>>0]|0;d=m<<24>>24<0;TV(k,d?c[e>>2]|0:e,d?c[e+4>>2]|0:m&255)|0;c[l>>2]=(c[l>>2]|0)+1;return}function Be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=t+4|0;g=t;b=a+16|0;d=c[b>>2]|0;if(d>>>0>203){c[b>>2]=d+-204;q=a+4|0;o=c[q>>2]|0;s=c[o>>2]|0;o=o+4|0;c[q>>2]=o;r=a+8|0;b=c[r>>2]|0;p=a+12|0;n=c[p>>2]|0;e=n;do if((b|0)==(n|0)){i=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-i|0;if(!d)b=f;else{jX(f|0,o|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Ya(8)|0;DV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{h=zV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;j=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-i|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[q>>2]=n;c[r>>2]=b;c[p>>2]=j;if(d){AV(d);b=c[r>>2]|0}}while(0);c[b>>2]=s;c[r>>2]=(c[r>>2]|0)+4;l=t;return}s=a+8|0;b=c[s>>2]|0;r=a+4|0;f=b-(c[r>>2]|0)>>2;q=a+12|0;d=c[q>>2]|0;e=d-(c[a>>2]|0)|0;if(f>>>0>=e>>2>>>0){b=(e|0)==0?1:e>>1;i=k+12|0;c[i>>2]=0;c[k+16>>2]=a+12;do if(b)if(b>>>0>1073741823){t=Ya(8)|0;DV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{d=zV(b<<2)|0;break}else d=0;while(0);c[k>>2]=d;p=d+(f<<2)|0;j=k+8|0;c[j>>2]=p;h=k+4|0;c[h>>2]=p;c[i>>2]=d+(b<<2);c[g>>2]=zV(4080)|0;Ee(k,g);b=c[s>>2]|0;d=c[r>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;Fe(k,b);d=c[r>>2]|0}while((b|0)!=(d|0));b=c[s>>2]|0}e=d;f=c[a>>2]|0;c[a>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=c[h>>2];c[h>>2]=e;c[s>>2]=c[j>>2];c[j>>2]=b;a=c[q>>2]|0;c[q>>2]=c[i>>2];c[i>>2]=a;if((d|0)!=(b|0))c[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(f|0)AV(f);l=t;return}if((d|0)!=(b|0)){c[k>>2]=zV(4080)|0;Ce(a,k);l=t;return}c[k>>2]=zV(4080)|0;De(a,k);o=c[r>>2]|0;p=c[o>>2]|0;o=o+4|0;c[r>>2]=o;b=c[s>>2]|0;n=c[q>>2]|0;e=n;do if((b|0)==(n|0)){j=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((j-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-j|0;if(!d)b=f;else{jX(f|0,o|0,d|0)|0;b=(c[r>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[s>>2]=a;c[r>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Ya(8)|0;DV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{h=zV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;i=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-j|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[r>>2]=n;c[s>>2]=b;c[q>>2]=i;if(d){AV(d);b=c[s>>2]|0}}while(0);c[b>>2]=p;c[s>>2]=(c[s>>2]|0)+4;l=t;return}function Ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{jX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Ya(8)|0;DV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{i=zV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){AV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function De(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{jX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Ya(8)|0;DV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{h=zV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){AV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{jX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Ya(8)|0;DV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{i=zV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){AV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{jX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Ya(8)|0;DV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{h=zV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){AV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Ge(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[182784]|0)==0?OW(182784)|0:0)c[45706]=Hb(2,52872)|0;j=c[45706]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Pb(c[g>>2]|0);l=h;return ~~i|0}function He(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;g=b+52|0;$b(1,c[g>>2]|0)|0;h=b+40|0;e=c[h>>2]|0;if(e|0){i=b+24|0;j=b+36|0;d=c[j>>2]|0;do{f=(d>>>0)/204|0;f=(c[(c[i>>2]|0)+(f<<2)>>2]|0)+((d-(f*204|0)|0)*20|0)+4|0;if((a[f+11>>0]|0)<0){AV(c[f>>2]|0);e=c[h>>2]|0;d=c[j>>2]|0}e=e+-1|0;c[h>>2]=e;d=d+1|0;c[j>>2]=d;if(d>>>0>407){AV(c[c[i>>2]>>2]|0);c[i>>2]=(c[i>>2]|0)+4;d=(c[j>>2]|0)+-204|0;c[j>>2]=d;e=c[h>>2]|0}}while((e|0)!=0)}c[k>>2]=114688;bc(0,k|0);a[b+44>>0]=0;c[g>>2]=0;d=c[b+4>>2]|0;if(!d){b=b+8|0;a[b>>0]=1;l=n;return}Rd[c[(c[d>>2]|0)+8>>2]&31](d);b=b+8|0;a[b>>0]=1;l=n;return}function Ie(b){b=b|0;var d=0;zf(b+64|0);d=b+22672|0;if((a[d+11>>0]|0)<0)AV(c[d>>2]|0);b=b+22656|0;if((a[b+11>>0]|0)>=0)return;AV(c[b>>2]|0);return}function Je(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;e=j+8|0;g=b+40|0;if(!(c[g>>2]|0)){a[b+44>>0]=0;c[e>>2]=Nb()|0;Ke(e,114515,114768);d=c[c[b+12>>2]>>2]|0;if((a[182776]|0)==0?OW(182776)|0:0)c[45705]=Hb(2,52864)|0;b=c[45705]|0;Jb(c[e>>2]|0);c[i>>2]=c[e>>2];Eb(b|0,d|0,114541,i|0);Fb(c[e>>2]|0);l=j;return}k=c[b+4>>2]|0;h=b+24|0;f=b+36|0;e=c[f>>2]|0;d=(e>>>0)/204|0;Sd[c[(c[k>>2]|0)+16>>2]&255](k,(c[(c[h>>2]|0)+(d<<2)>>2]|0)+((e-(d*204|0)|0)*20|0)+4|0);d=c[f>>2]|0;e=(d>>>0)/204|0;e=(c[(c[h>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)+4|0;if((a[e+11>>0]|0)<0){AV(c[e>>2]|0);d=c[f>>2]|0}e=(c[g>>2]|0)+-1|0;c[g>>2]=e;d=d+1|0;c[f>>2]=d;if(d>>>0>407){AV(c[c[h>>2]>>2]|0);c[h>>2]=(c[h>>2]|0)+4;d=(c[f>>2]|0)+-204|0;c[f>>2]=d;e=c[g>>2]|0}if(!e){a[b+44>>0]=0;l=j;return}e=(d>>>0)/204|0;d=c[(c[(c[h>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)>>2]|0;e=$b(0,0)|0;e=e-(c[b+16>>2]|0)|0;f=(c[b+48>>2]|0)*1e3|0;if((f+d|0)>(e|0)){k=c[b+12>>2]|0;c[i>>2]=d-e+f;c[b+52>>2]=Ge(c[k>>2]|0,114588,i)|0;l=j;return}else{Je(b);l=j;return}}function Ke(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Qb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function Le(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=52888;c[b+48>>2]=0;c[b+52>>2]=Eh()|0;c[b+56>>2]=MP()|0;b=b+60|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[e>>2]=114811;bc(0,e|0);l=d;return}function Me(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+8|0;e=g;c[b>>2]=52888;c[e>>2]=114881;bc(0,e|0);JS(c[b+44>>2]|0);ES(b+48|0);Fh(b+52|0);wg(b+56|0);e=b+60|0;if((a[e+11>>0]|0)<0)AV(c[e>>2]|0);c[b>>2]=52920;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)cT(d);c[f>>2]=114857;bc(0,f|0);l=g;return}function Ne(a){a=a|0;Me(a);AV(a);return}function Oe(b){b=b|0;var d=0,e=0;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)cT(d);d=b+60|0;e=d+11|0;if((a[e>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+64>>2]=0}else{a[d>>0]=0;a[e>>0]=0}c[b+72>>2]=0;JS(c[b+44>>2]|0);ES(b+48|0);return}function Pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;g=(e|0)==7;j=KR(g?27:173)|0;h=b+40|0;c[h>>2]=j;c[f>>2]=114896;c[f+4>>2]=e;c[f+8>>2]=j;bc(0,f|0);c[b+44>>2]=GS(c[(c[h>>2]|0)+12>>2]|0)|0;f=b+48|0;c[f>>2]=MR(c[h>>2]|0)|0;if(!g){l=i;return}j=d+11|0;g=d+12|0;e=c[g>>2]|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+e+9>>0]&3;c[g>>2]=e+5;e=b+60|0;j=a[j>>0]|0;k=j<<24>>24<0;TV(e,k?c[d>>2]|0:d,k?c[d+4>>2]|0:j&255)|0;g=c[g>>2]|0;c[b+72>>2]=g;d=e+11|0;if((a[d>>0]|0)<0)e=c[e>>2]|0;f=c[f>>2]|0;c[f+68>>2]=e+g;e=a[d>>0]|0;if(e<<24>>24<0)e=c[b+64>>2]|0;else e=e&255;c[f+72>>2]=e-g;US(f,c[h>>2]|0,0)|0;l=i;return}function Qe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d+12|0;e=(c[f>>2]|0)+5|0;c[f>>2]=e;f=a[d+11>>0]|0;g=f<<24>>24<0;Td[c[(c[b>>2]|0)+20>>2]&1023](b,g?(c[d>>2]|0)+e|0:d+e|0,(g?c[d+4>>2]|0:f&255)-e|0);return}function Re(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=t;s=b+48|0;f=b+56|0;q=c[f>>2]|0;if((IS(c[b+44>>2]|0,c[s>>2]|0,q+24|0,q+28|0,d,e,0,-2147483648,0,-2147483648,0,0)|0)<=-1){l=t;return}d=c[f>>2]|0;if(!(c[d+28>>2]|0)){l=t;return}if((tS(c[s>>2]|0,d)|0)<=-1){l=t;return}e=b+52|0;f=b+20|0;g=b+24|0;h=b+28|0;i=b+12|0;j=b+36|0;k=b+20|0;n=b+8|0;o=b+16|0;p=b+4|0;a:while(1){q=CS(c[s>>2]|0,c[e>>2]|0)|0;if((q|0)<-11)switch(q|0){case -541478725:{d=14;break a}default:{}}else switch(q|0){case -11:{d=14;break a}default:{}}d=c[e>>2]|0;c[f>>2]=c[d>>2];c[g>>2]=c[d+4>>2];c[h>>2]=c[d+8>>2];if(!(c[i>>2]|0))Xe(b,c[d+68>>2]|0,c[d+72>>2]|0);if(!(a[j>>0]|0))Ye(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0,c[n>>2]|0,c[i>>2]|0,c[o>>2]|0);d=c[c[p>>2]>>2]|0;if((a[182768]|0)==0?OW(182768)|0:0)c[45704]=Hb(1,52860)|0;Eb(c[45704]|0,d|0,114942,r|0);if((q|0)<=-1){d=14;break}}if((d|0)==14){l=t;return}}function Se(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[b>>2]=52920;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)cT(d);c[e>>2]=114857;bc(0,e|0);l=f;return}function Te(a){a=a|0;oc()}function Ue(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;cT(b);return}function Ve(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=d+12|0;g=c[k>>2]|0;c[j>>2]=114846;c[j+4>>2]=e;bc(0,j|0);switch(e|0){case 7:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+9>>0]&3;p=g+11|0;c[k>>2]=p;f=a[j>>0]|0;e=c[d>>2]|0;i=f<<24>>24<0?e:d;p=i+p+2+-1|0;o=a[p>>0]|0;p=a[p+-1>>0]|0;h=g+13|0;c[k>>2]=h;g=(p&255)<<8|o&255;if(g){Td[c[(c[b>>2]|0)+20>>2]&1023](b,i+h|0,g);h=(c[k>>2]|0)+g|0;c[k>>2]=h;f=a[j>>0]|0;e=c[d>>2]|0}p=h+1|0;c[k>>2]=p;g=f<<24>>24<0?e:d;p=g+p+2+-1|0;e=a[p>>0]|0;p=a[p+-1>>0]|0;f=h+3|0;c[k>>2]=f;e=(p&255)<<8|e&255;if(!e){l=n;return}Td[c[(c[b>>2]|0)+20>>2]&1023](b,g+f|0,e);l=n;return}case 12:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+27>>0]&3;i=g+31|0;c[k>>2]=i;p=(a[j>>0]|0)<0?c[d>>2]|0:d;i=p+i+2+-1|0;o=a[i>>0]|0;i=a[i+-1>>0]|0;h=g+33|0;c[k>>2]=h;o=(i&255)<<8|o&255;Td[c[(c[b>>2]|0)+20>>2]&1023](b,p+h|0,o);o=(c[k>>2]|0)+o|0;h=o+3|0;c[k>>2]=h;p=(a[j>>0]|0)<0?c[d>>2]|0:d;h=p+h+2+-1|0;i=a[h>>0]|0;h=a[h+-1>>0]|0;o=o+5|0;c[k>>2]=o;i=(h&255)<<8|i&255;Td[c[(c[b>>2]|0)+20>>2]&1023](b,p+o|0,i);i=(c[k>>2]|0)+i|0;o=i+3|0;c[k>>2]=o;j=(a[j>>0]|0)<0?c[d>>2]|0:d;o=j+o+2+-1|0;p=a[o>>0]|0;o=a[o+-1>>0]|0;d=i+5|0;c[k>>2]=d;Td[c[(c[b>>2]|0)+20>>2]&1023](b,j+d|0,(o&255)<<8|p&255);l=n;return}default:{l=n;return}}}function We(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=d+12|0;f=(c[m>>2]|0)+5|0;c[m>>2]=f;n=d+11|0;l=a[n>>0]|0;e=l<<24>>24<0;o=d+4|0;if(((e?c[o>>2]|0:l&255)-f|0)<=4)return;l=b+32|0;i=0;j=0;k=0;do{switch(c[l>>2]|0){case 3:{e=e?c[d>>2]|0:d;k=e+f+4+-1|0;g=4;h=k;i=a[k+-2>>0]|0;j=a[k+-3>>0]|0;k=a[k+-1>>0]|0;break}case 2:{e=e?c[d>>2]|0:d;k=e+f+3+-1|0;g=3;h=k;i=a[k+-2>>0]|0;k=a[k+-1>>0]|0;break}case 1:{e=e?c[d>>2]|0:d;k=e+f+2+-1|0;g=2;h=k;k=a[k+-1>>0]|0;break}default:{h=e?c[d>>2]|0:d;e=h;g=1;h=h+f+1+-1|0}}h=a[h>>0]|0;g=f+g|0;c[m>>2]=g;h=(k&255)<<8|(i&255)<<16|h&255|(j&255)<<24;Td[c[(c[b>>2]|0)+20>>2]&1023](b,e+g|0,h);f=(c[m>>2]|0)+h|0;c[m>>2]=f;h=a[n>>0]|0;e=h<<24>>24<0}while(((e?c[o>>2]|0:h&255)-f|0)>4);return}function Xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=114916;c[h+4>>2]=d;c[h+8>>2]=e;bc(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(N(e<<2,e)|0)+33554432|0;e=bT((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[182792]|0)==0?OW(182792)|0:0)c[45707]=Hb(4,52944)|0;b=c[45707]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,114929,h|0);l=i;return}else{e=b+20|0;c[b+8>>2]=e;e=e>>2;d=c[c[b+4>>2]>>2]|0;if((a[182792]|0)==0?OW(182792)|0:0)c[45707]=Hb(4,52944)|0;b=c[45707]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,114929,h|0);l=i;return}}function Ye(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;E=g<<2;F=f+(N(E,h)|0)|0;if(!h)return;A=(g|0)==0;D=(g+-1|0)>>>1;B=(D<<3)+8|0;C=g+1&-2;D=D+1|0;j=0;z=0;k=0;i=0;l=0;while(1){if(!A){x=B+j|0;y=D+i|0;w=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){I=(n*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;q=(G*1634|0)+I>>10;G=(N(m,-400)|0)+I+(N(G,-832)|0)>>10;I=(m*2066|0)+I>>10;m=(q|0)>0?q:0;n=(G|0)>0?G:0;H=(I|0)>0?I:0;m=((((I&255|0)==(I|0)?I:(H|0)<255?H:255)<<8)+16711680+((G&255|0)==(G|0)?G:(n|0)<255?n:255)<<8)+((q&255|0)==(q|0)?q:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+j>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;I=(G*1634|0)+p>>10;G=(N(m,-400)|0)+p+(N(G,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(j+E)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;G=t+-128|0;J=s+-128|0;I=m+(G*1634|0)>>10;G=(N(G,-832)|0)+(N(J,-400)|0)+m>>10;J=m+(J*2066|0)>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;n=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(n|0)<255?n:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+q>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){m=(p*1192|0)+-19072|0;H=t+-128|0;t=s+-128|0;J=m+(H*1634|0)>>10;H=(N(H,-832)|0)+(N(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;G=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(G|0)<255?G:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(q+E)>>2]=m;w=w+2|0;if(w>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=C+l|0;j=x;k=D+k|0;i=y}z=z+2|0;if(z>>>0>=h>>>0)break;else{j=j+E|0;l=l+g|0}}return}function Ze(a){a=a|0;return 72}function _e(a){a=a|0;if(!a)return;$e(a);AV(a);return}function $e(b){b=b|0;var d=0;d=c[b>>2]|0;if(d|0){Fb(c[d>>2]|0);AV(d)}d=c[b+4>>2]|0;if(d|0){Fb(c[d>>2]|0);AV(d)}d=c[b+8>>2]|0;if(d|0){Fb(c[d>>2]|0);AV(d)}af(b+56|0);d=b+36|0;if((a[d+11>>0]|0)<0)AV(c[d>>2]|0);d=b+12|0;if((a[d+11>>0]|0)>=0)return;AV(c[d>>2]|0);return}function af(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=i+16|0;e=i+8|0;d=i;c[d>>2]=114973;bc(0,d|0);$b(1,c[b+52>>2]|0)|0;d=c[b+4>>2]|0;if(d|0)Rd[c[(c[d>>2]|0)+4>>2]&31](d);g=c[b>>2]|0;if(g|0){c[e>>2]=114994;bc(0,e|0);cT(c[g+8>>2]|0);c[f>>2]=115017;bc(0,f|0);zf(g+76|0);d=g+22684|0;if((a[d+11>>0]|0)<0)AV(c[d>>2]|0);d=g+22668|0;if((a[d+11>>0]|0)<0)AV(c[d>>2]|0);AV(g)}h=b+20|0;cf(h);f=b+24|0;d=c[f>>2]|0;g=b+28|0;e=c[g>>2]|0;if((d|0)!=(e|0)){do{AV(c[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c[f>>2]|0;e=c[g>>2]|0;if((e|0)!=(d|0))c[g>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[h>>2]|0;if(!d){l=i;return}AV(d);l=i;return}function bf(a){a=a|0;var b=0,d=0,e=0,f=0;cf(a);d=a+4|0;b=c[d>>2]|0;f=a+8|0;e=c[f>>2]|0;if((b|0)!=(e|0)){do{AV(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[d>>2]|0;d=c[f>>2]|0;if((d|0)!=(b|0))c[f>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;AV(b);return}function cf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;e=c[l>>2]|0;m=b+16|0;g=c[m>>2]|0;d=(g>>>0)/204|0;h=e+(d<<2)|0;j=b+8|0;n=c[j>>2]|0;f=n;i=e;if((n|0)!=(e|0)){d=(c[h>>2]|0)+((g-(d*204|0)|0)*20|0)|0;b=b+20|0;n=(c[b>>2]|0)+g|0;g=(n>>>0)/204|0;g=(c[e+(g<<2)>>2]|0)+((n-(g*204|0)|0)*20|0)|0;if((g|0)==(d|0)){d=b;k=5}else{f=h;while(1){e=d+4|0;if((a[e+11>>0]|0)<0)AV(c[e>>2]|0);d=d+20|0;if((d-(c[f>>2]|0)|0)==4080){d=f+4|0;e=d;d=c[d>>2]|0}else e=f;if((g|0)==(d|0))break;else f=e}e=c[l>>2]|0;g=j;f=c[j>>2]|0;d=e}}else{d=b+20|0;k=5}if((k|0)==5){g=j;b=d;d=i}c[b>>2]=0;d=f-d>>2;if(d>>>0>2)do{AV(c[e>>2]|0);e=(c[l>>2]|0)+4|0;c[l>>2]=e;d=(c[g>>2]|0)-e>>2}while(d>>>0>2);switch(d|0){case 1:{d=102;break}case 2:{d=204;break}default:return}c[m>>2]=d;return}function df(){var b=0,d=0;b=zV(112)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;a[b+28>>0]=0;c[b+32>>2]=12;d=b+36|0;c[b+56>>2]=0;c[b+60>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;a[d+16>>0]=0;a[b+64>>0]=1;a[b+66>>0]=0;c[b+68>>2]=0;d=b+76|0;c[b+108>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;a[d+24>>0]=0;return b|0}function ef(a){a=a|0;return Jd[a&1]()|0}function ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Sd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function gf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;f=c[a+4>>2]|0;a=b+(f>>1)|0;if(!(f&1)){f=e;Sd[f&255](a,d);return}else{f=c[(c[a>>2]|0)+e>>2]|0;Sd[f&255](a,d);return}}function hf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)f=c[(c[a>>2]|0)+f>>2]|0;return Md[f&15](a,d,e)|0}function jf(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;a=b+(e>>1)|0;if(!(e&1)){e=d;Rd[e&31](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;Rd[e&31](a);return}}function kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)d=c[(c[a>>2]|0)+d>>2]|0;Sd[d&255](e,a);Jb(c[e>>2]|0);g=c[e>>2]|0;Fb(g|0);l=f;return g|0}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Sd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[a>>2]|0;i=c[a+4>>2]|0;a=b+(i>>1)|0;if(i&1)f=c[(c[a>>2]|0)+f>>2]|0;c[g>>2]=d;Td[f&1023](a,g,e);Fb(c[g>>2]|0);l=h;return}function nf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=k+12|0;j=k;f=c[b>>2]|0;b=c[b+4>>2]|0;g=d+(b>>1)|0;if(b&1)f=c[(c[g>>2]|0)+f>>2]|0;d=e+4|0;e=c[e>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(e>>>0>4294967279)FV(j);if(e>>>0<11){a[j+11>>0]=e;if(!e)b=j;else{b=j;i=9}}else{i=e+16&-16;b=zV(i)|0;c[j>>2]=b;c[j+8>>2]=i|-2147483648;c[j+4>>2]=e;i=9}if((i|0)==9)iX(b|0,d|0,e|0)|0;a[b+e>>0]=0;Td[f&1023](h,g,j);Jb(c[h>>2]|0);b=c[h>>2]|0;Fb(b|0);if((a[j+11>>0]|0)>=0){l=k;return b|0}AV(c[j>>2]|0);l=k;return b|0}function of(){ge(0);return}function pf(a,d){a=a|0;d=d|0;c[a>>2]=d;b[a+4>>1]=0;b[a+6>>1]=8;return}function qf(a,b){a=a|0;b=b|0;return (e[a+6>>1]|0)+8-(e[b+6>>1]|0)+((c[b>>2]|0)-((c[a>>2]|0)+1)<<3)|0}function rf(a){a=a|0;var d=0;d=c[a>>2]|0;return ((b[a+6>>1]|0)==8?d:d+1|0)|0}function sf(a,f){a=a|0;f=f|0;var g=0,h=0,i=0;g=(c[a>>2]|0)+(f>>>3)|0;c[a>>2]=g;i=a+6|0;h=(e[i>>1]|0)-(f&7)|0;f=h&65535;b[i>>1]=f;if((h&65535)>>>0>8){g=g+1|0;c[a>>2]=g;f=h+8&65535;b[i>>1]=f}if((f&65535)>=8)return;b[a+4>>1]=d[g>>0]|0;return}function tf(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=e+6|0;g=b[l>>1]|0;if(g<<16>>16==8){h=d[c[e>>2]>>0]|0;k=e+4|0;b[k>>1]=h}else{k=e+4|0;h=b[k>>1]|0}j=g&65535;g=(1<>>0<=f>>>0){h=f-j|0;i=(c[e>>2]|0)+1|0;c[e>>2]=i;b[l>>1]=8;if(h>>>0>7){j=f-j|0;do{f=i;i=i+1|0;c[e>>2]=i;g=g<<8|(d[f>>0]|0);h=h+-8|0}while(h>>>0>7);h=j&7}if(!h){l=g;return l|0}else{e=a[i>>0]|0;b[k>>1]=e&255;k=8-h|0;g=(e&255)>>>k|g<>>h}while(0);b[l>>1]=h;l=g;return l|0}function uf(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=h&65535;if(g>>>0>31){q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){if(n<<16>>16!=8){j=n&65535;i=(1<>1]|0);if((n&65535)>32){r=j+-32|0;j=r&65535;i=i>>>r;r=13}else r=7}else{i=a[c[f>>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);j=8;r=7}if((r|0)==7){r=0;k=32-j|0;m=c[f>>2]|0;l=m+1|0;c[f>>2]=l;b[q>>1]=8;if(k>>>0>7){j=(24-j|0)>>>3;do{s=l;l=l+1|0;c[f>>2]=l;i=i<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+j|0;k=0-n&7}else j=l;if(!k)j=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;i=(s&255)>>>r|i<>1]=j}s=h<<8^(e[113338+((i>>>24^h>>>8&255)<<1)>>1]|0);s=s<<8^(e[113338+(((s>>>8^i>>>16)&255)<<1)>>1]|0);s=s<<8^(e[113338+(((s^i)>>>8&255)<<1)>>1]|0);h=s<<8^(e[113338+(((s>>>8^i)&255)<<1)>>1]|0);o=o+-32|0;if(o>>>0<=31)break;else n=j}g=g&31}switch(g>>>3&536870911|0){case 3:{q=h<<8;p=h>>>8;o=f+6|0;n=b[o>>1]|0;if(n<<16>>16!=8){i=f+4|0;j=n&65535;h=(1<>1]|0);if((n&65535)>8){r=j+-8|0;i=r&65535;h=h>>>r;r=29}else r=23}else{h=a[c[f>>2]>>0]|0;i=f+4|0;b[i>>1]=h&255;h=(1<<(n&65535))+255&(h&255);j=8;r=23}if((r|0)==23){k=8-j|0;l=c[f>>2]|0;j=l+1|0;c[f>>2]=j;b[o>>1]=8;if(k>>>0>7){m=((k+-8|0)>>>3)+2|0;do{s=j;j=j+1|0;c[f>>2]=j;h=h<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=l+m|0;k=0-n&7}if(!k)i=8;else{s=a[j>>0]|0;b[i>>1]=s&255;r=8-k|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);r=31;break}case 2:{o=f+6|0;i=b[o>>1]|0;r=31;break}case 1:{o=f+6|0;i=b[o>>1]|0;r=43;break}default:{}}if((r|0)==31){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){r=k+-8|0;i=r&65535;h=h>>>r;r=41}else r=35}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=35}if((r|0)==35){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;l=0-i&7}if(!l)i=8;else{s=a[k>>0]|0;b[j>>1]=s&255;r=8-l|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);r=43}if((r|0)==43){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){i=k+-8|0;h=h>>>i;r=53}else r=47}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=47}if((r|0)==47){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;i=0-i&7}else i=l;if(i){s=a[k>>0]|0;b[j>>1]=s&255;r=8-i|0;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);g=g&7}if(!g){s=h;s=s&65535;return s|0}q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){o=o+-1|0;if(n<<16>>16!=8){g=n&65535;i=(1<>1]|0);if((n&65535)<=1){k=1-g|0;m=c[f>>2]|0;j=m+1|0;c[f>>2]=j;b[q>>1]=8;if(k>>>0>7){l=(-7-g|0)>>>3;g=i;do{s=j;j=j+1|0;c[f>>2]=j;g=g<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+l|0;k=1-n&7}else g=i;if(!k)i=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;g=(s&255)>>>r|g<>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);g=8;r=60}if((r|0)==60){g=g+-1|0;j=g&65535;g=i>>>g;r=67}if((r|0)==67){r=0;b[q>>1]=j;i=j}s=h<<1;h=((g^h>>>15)&1|0)==0?s:s^32773;if(!o)break;else n=i}s=h&65535;return s|0}function vf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;pf(a+28|0,0);pf(a+36|0,0);a=a+44|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;return}function wf(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+36|0;d=a;e=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f=182832;d=c[f+4>>2]|0;e=b;c[e>>2]=c[f>>2];c[e+4>>2]=d;c[a+44>>2]=0;c[a+9264>>2]=0;Of(a);return}function xf(a){a=a|0;Nf(a);a=a+4096|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function yf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=(c[d+4>>2]|0)==0?1:2;switch(c[d>>2]|0){case 1:{e=12;break}case 3:{e=(c[d+28>>2]&4096|0)==0?36:18;f=3;break}default:{e=36;f=3}}f=c[d+20>>2]|0;h=a+4100|0;c[h>>2]=f;b[a+4104>>1]=i;g=a+4106|0;b[g>>1]=e<<5;if(!(c[d+44>>2]&2))f=5;else{c[h>>2]=f>>>1;b[g>>1]=e<<4&32752;f=6}Ud[f&255](a,d,i,e);a=a+4096|0;c[a>>2]=(c[a>>2]|0)+e&15;return}function zf(a){a=a|0;var b=0;b=a+9264|0;a=c[b>>2]|0;if(!a)return;cT(a);c[b>>2]=0;return}function Af(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;if(!d)return;w=a+4096|0;n=(e|0)==0;m=0;s=a+1504|0;t=a+1472|0;while(1){if(!n){f=a+4108+(m*4608|0)|0;v=c[w>>2]|0;x=0;while(1){z=v&1;o=a+(m<<11)+(z<<9)|0;Cf(b+48+(m*4608|0)+(x<<7)|0,v>>>1,o,a+(m<<11)+1024+(z<<9)|0);k=v&-2;u=v+15&14|1;l=z^1;q=53304+(u<<2)|0;A=53304+(k<<2)|0;G=N(c[A>>2]|0,c[o>>2]|0)|0;g=N(c[q>>2]|0,c[a+(m<<11)+(l<<9)>>2]|0)|0;i=N(c[q+56>>2]|0,c[a+(m<<11)+(l<<9)+4>>2]|0)|0;h=N(c[q+48>>2]|0,c[a+(m<<11)+(l<<9)+8>>2]|0)|0;p=N(c[q+40>>2]|0,c[a+(m<<11)+(l<<9)+12>>2]|0)|0;j=N(c[q+32>>2]|0,c[a+(m<<11)+(l<<9)+16>>2]|0)|0;y=N(c[q+24>>2]|0,c[a+(m<<11)+(l<<9)+20>>2]|0)|0;r=N(c[q+16>>2]|0,c[a+(m<<11)+(l<<9)+24>>2]|0)|0;q=N(c[q+8>>2]|0,c[a+(m<<11)+(l<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(m<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(m<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(m<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(m<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(m<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(m<<11)+(z<<9)+24>>2]|0)|0;c[f>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(m<<11)+(z<<9)+28>>2]|0)|0)-(i+g+h+p+j+y+r+q)>>2;q=0-u|0;r=0-k|0;y=s+(l<<9)|0;j=53304;p=a+(m<<11)+1024+(l<<9)|0;h=f+4|0;g=f+60|0;i=1;while(1){f=o;o=o+32|0;if(!(i&1)){A=j+128+(u<<2)|0;z=p+4|0;I=p+8|0;J=p+12|0;K=p+16|0;L=p+20|0;M=p+24|0;O=p+28|0;W=j+128+(k<<2)|0;H=f+60|0;$=N(c[W+8>>2]|0,c[H>>2]|0)|0;U=N(c[A>>2]|0,c[p>>2]|0)|0;V=N(c[A+56>>2]|0,c[z>>2]|0)|0;T=N(c[A+48>>2]|0,c[I>>2]|0)|0;S=N(c[A+40>>2]|0,c[J>>2]|0)|0;R=N(c[A+32>>2]|0,c[K>>2]|0)|0;Q=N(c[A+24>>2]|0,c[L>>2]|0)|0;P=N(c[A+16>>2]|0,c[M>>2]|0)|0;A=N(c[A+8>>2]|0,c[O>>2]|0)|0;G=f+56|0;aa=N(c[W+16>>2]|0,c[G>>2]|0)|0;F=f+52|0;_=N(c[W+24>>2]|0,c[F>>2]|0)|0;E=f+48|0;Z=N(c[W+32>>2]|0,c[E>>2]|0)|0;D=f+44|0;Y=N(c[W+40>>2]|0,c[D>>2]|0)|0;C=f+40|0;X=N(c[W+48>>2]|0,c[C>>2]|0)|0;B=f+36|0;f=N(c[W+56>>2]|0,c[B>>2]|0)|0;c[h>>2]=aa+$+_+Z+Y+X+f+(N(c[W>>2]|0,c[o>>2]|0)|0)-(V+U+T+S+R+Q+P+A)>>2;A=j+128+(q<<2)|0;f=N(c[A+116>>2]|0,c[O>>2]|0)|0;f=(N(c[A+108>>2]|0,c[M>>2]|0)|0)+f|0;f=f+(N(c[A+100>>2]|0,c[L>>2]|0)|0)|0;f=f+(N(c[A+92>>2]|0,c[K>>2]|0)|0)|0;f=f+(N(c[A+84>>2]|0,c[J>>2]|0)|0)|0;f=f+(N(c[A+76>>2]|0,c[I>>2]|0)|0)|0;f=f+(N(c[A+68>>2]|0,c[z>>2]|0)|0)|0;A=f+(N(c[A+60>>2]|0,c[p>>2]|0)|0)|0;f=j+128+(r<<2)|0;A=A+(N(c[f+60>>2]|0,c[o>>2]|0)|0)|0;B=A+(N(c[f+68>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[f+76>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[f+84>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[f+92>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[f+100>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[f+108>>2]|0,c[G>>2]|0)|0)|0;c[g>>2]=G+(N(c[f+116>>2]|0,c[H>>2]|0)|0)>>2;f=h+4|0;g=g+-4|0}else f=h;i=i+1|0;if((i|0)==16)break;else{j=j+128|0;p=p+32|0;h=f}}aa=55352+(u<<2)|0;$=N(c[aa>>2]|0,c[y>>2]|0)|0;$=$+(N(c[aa+56>>2]|0,c[t+(l<<9)+36>>2]|0)|0)|0;$=$+(N(c[aa+48>>2]|0,c[t+(l<<9)+40>>2]|0)|0)|0;$=$+(N(c[aa+40>>2]|0,c[t+(l<<9)+44>>2]|0)|0)|0;$=$+(N(c[aa+32>>2]|0,c[t+(l<<9)+48>>2]|0)|0)|0;$=$+(N(c[aa+24>>2]|0,c[t+(l<<9)+52>>2]|0)|0)|0;$=$+(N(c[aa+16>>2]|0,c[t+(l<<9)+56>>2]|0)|0)|0;c[f>>2]=0-($+(N(c[aa+8>>2]|0,c[t+(l<<9)+60>>2]|0)|0))>>2;x=x+1|0;if((x|0)==(e|0))break;else{f=f+32|0;v=v+1&15}}}m=m+1|0;if((m|0)==(d|0))break;else{s=s+2048|0;t=t+2048|0}}return}function Bf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;if(!d)return;v=a+4096|0;j=(e|0)==0;i=0;o=a+1472|0;p=a+1504|0;while(1){if(!j){r=a+4108+(i*4608|0)|0;u=c[v>>2]|0;w=0;while(1){z=u&1;k=a+(i<<11)+(z<<9)|0;Cf(b+48+(i*4608|0)+(w<<7)|0,u>>>1,k,a+(i<<11)+1024+(z<<9)|0);g=u&-2;q=u+15&14|1;h=z^1;m=53304+(q<<2)|0;A=53304+(g<<2)|0;G=N(c[A>>2]|0,c[k>>2]|0)|0;t=N(c[m>>2]|0,c[a+(i<<11)+(h<<9)>>2]|0)|0;x=N(c[m+56>>2]|0,c[a+(i<<11)+(h<<9)+4>>2]|0)|0;s=N(c[m+48>>2]|0,c[a+(i<<11)+(h<<9)+8>>2]|0)|0;l=N(c[m+40>>2]|0,c[a+(i<<11)+(h<<9)+12>>2]|0)|0;f=N(c[m+32>>2]|0,c[a+(i<<11)+(h<<9)+16>>2]|0)|0;y=N(c[m+24>>2]|0,c[a+(i<<11)+(h<<9)+20>>2]|0)|0;n=N(c[m+16>>2]|0,c[a+(i<<11)+(h<<9)+24>>2]|0)|0;m=N(c[m+8>>2]|0,c[a+(i<<11)+(h<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(i<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(i<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(i<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(i<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(i<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(i<<11)+(z<<9)+24>>2]|0)|0;c[r>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(i<<11)+(z<<9)+28>>2]|0)|0)-(x+t+s+l+f+y+n+m)>>2;m=0-g|0;n=0-q|0;y=p+(h<<9)|0;f=53304;l=a+(i<<11)+1024+(h<<9)|0;s=r;t=r+124|0;x=1;while(1){s=s+4|0;H=f+128+(q<<2)|0;G=l+4|0;F=l+8|0;E=l+12|0;D=l+16|0;C=l+20|0;B=l+24|0;A=l+28|0;W=f+128+(g<<2)|0;z=k+60|0;aa=N(c[W+8>>2]|0,c[z>>2]|0)|0;U=N(c[H>>2]|0,c[l>>2]|0)|0;V=N(c[H+56>>2]|0,c[G>>2]|0)|0;T=N(c[H+48>>2]|0,c[F>>2]|0)|0;S=N(c[H+40>>2]|0,c[E>>2]|0)|0;R=N(c[H+32>>2]|0,c[D>>2]|0)|0;Q=N(c[H+24>>2]|0,c[C>>2]|0)|0;O=N(c[H+16>>2]|0,c[B>>2]|0)|0;H=N(c[H+8>>2]|0,c[A>>2]|0)|0;I=k+56|0;ba=N(c[W+16>>2]|0,c[I>>2]|0)|0;J=k+52|0;$=N(c[W+24>>2]|0,c[J>>2]|0)|0;K=k+48|0;_=N(c[W+32>>2]|0,c[K>>2]|0)|0;L=k+44|0;Z=N(c[W+40>>2]|0,c[L>>2]|0)|0;M=k+40|0;Y=N(c[W+48>>2]|0,c[M>>2]|0)|0;P=k+36|0;k=k+32|0;X=N(c[W+56>>2]|0,c[P>>2]|0)|0;c[s>>2]=ba+aa+$+_+Z+Y+X+(N(c[W>>2]|0,c[k>>2]|0)|0)-(V+U+T+S+R+Q+O+H)>>2;H=f+128+(m<<2)|0;O=N(c[H+60>>2]|0,c[k>>2]|0)|0;O=(N(c[H+68>>2]|0,c[P>>2]|0)|0)+O|0;M=O+(N(c[H+76>>2]|0,c[M>>2]|0)|0)|0;L=M+(N(c[H+84>>2]|0,c[L>>2]|0)|0)|0;K=L+(N(c[H+92>>2]|0,c[K>>2]|0)|0)|0;J=K+(N(c[H+100>>2]|0,c[J>>2]|0)|0)|0;I=J+(N(c[H+108>>2]|0,c[I>>2]|0)|0)|0;z=I+(N(c[H+116>>2]|0,c[z>>2]|0)|0)|0;H=f+128+(n<<2)|0;A=z+(N(c[H+116>>2]|0,c[A>>2]|0)|0)|0;B=A+(N(c[H+108>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[H+100>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[H+92>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[H+84>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[H+76>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[H+68>>2]|0,c[G>>2]|0)|0)|0;c[t>>2]=G+(N(c[H+60>>2]|0,c[l>>2]|0)|0)>>2;x=x+1|0;if((x|0)==16)break;else{f=f+128|0;l=l+32|0;t=t+-4|0}}ba=55352+(q<<2)|0;aa=N(c[ba>>2]|0,c[y>>2]|0)|0;aa=aa+(N(c[ba+56>>2]|0,c[o+(h<<9)+36>>2]|0)|0)|0;aa=aa+(N(c[ba+48>>2]|0,c[o+(h<<9)+40>>2]|0)|0)|0;aa=aa+(N(c[ba+40>>2]|0,c[o+(h<<9)+44>>2]|0)|0)|0;aa=aa+(N(c[ba+32>>2]|0,c[o+(h<<9)+48>>2]|0)|0)|0;aa=aa+(N(c[ba+24>>2]|0,c[o+(h<<9)+52>>2]|0)|0)|0;aa=aa+(N(c[ba+16>>2]|0,c[o+(h<<9)+56>>2]|0)|0)|0;c[r+64>>2]=0-(aa+(N(c[ba+8>>2]|0,c[o+(h<<9)+60>>2]|0)|0))>>2;w=w+1|0;if((w|0)==(e|0))break;else{r=r+128|0;u=u+1&15}}}i=i+1|0;if((i|0)==(d|0))break;else{o=o+2048|0;p=p+2048|0}}return}function Cf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;s=c[a>>2]|0;aa=c[a+124>>2]|0;Q=aa+s|0;aa=(s+2048-aa>>12)*4091|0;s=c[a+60>>2]|0;p=c[a+64>>2]|0;I=p+s|0;p=(s+2048-p>>12)*201|0;s=p+aa|0;p=(aa+2048-p>>12)*4076|0;aa=I+Q|0;I=(Q+2048-I>>12)*4076|0;Q=c[a+28>>2]|0;X=c[a+96>>2]|0;q=X+Q|0;X=(Q+2048-X>>12)*3035|0;Q=c[a+32>>2]|0;A=c[a+92>>2]|0;N=A+Q|0;A=(Q+2048-A>>12)*2751|0;Q=A+X|0;A=(X+2048-A>>12)*401|0;X=N+q|0;N=(q+2048-N>>12)*401|0;q=c[a+12>>2]|0;ba=c[a+112>>2]|0;m=ba+q|0;ba=(q+2048-ba>>12)*3857|0;q=c[a+48>>2]|0;n=c[a+76>>2]|0;G=n+q|0;n=(q+2048-n>>12)*1380|0;q=n+ba|0;n=(ba+2048-n>>12)*3166|0;ba=G+m|0;G=(m+2048-G>>12)*3166|0;m=c[a+16>>2]|0;T=c[a+108>>2]|0;r=T+m|0;T=(m+2048-T>>12)*3703|0;m=c[a+44>>2]|0;i=c[a+80>>2]|0;F=i+m|0;i=(m+2048-i>>12)*1751|0;m=i+T|0;i=(T+2048-i>>12)*2598|0;T=F+r|0;F=(r+2048-F>>12)*2598|0;r=c[a+4>>2]|0;$=c[a+120>>2]|0;k=$+r|0;$=(r+2048-$>>12)*4052|0;r=c[a+56>>2]|0;o=c[a+68>>2]|0;H=o+r|0;o=(r+2048-o>>12)*601|0;r=o+$|0;o=($+2048-o>>12)*3920|0;$=H+k|0;H=(k+2048-H>>12)*3920|0;k=c[a+24>>2]|0;R=c[a+100>>2]|0;Z=R+k|0;R=(k+2048-R>>12)*3290|0;k=c[a+36>>2]|0;g=c[a+88>>2]|0;D=g+k|0;g=(k+2048-g>>12)*2440|0;k=g+R|0;g=(R+2048-g>>12)*1189|0;R=D+Z|0;D=(Z+2048-D>>12)*1189|0;Z=c[a+8>>2]|0;_=c[a+116>>2]|0;l=_+Z|0;_=(Z+2048-_>>12)*3973|0;Z=c[a+52>>2]|0;x=c[a+72>>2]|0;Y=x+Z|0;x=(Z+2048-x>>12)*995|0;Z=x+_|0;x=(_+2048-x>>12)*3612|0;_=Y+l|0;Y=(l+2048-Y>>12)*3612|0;l=c[a+20>>2]|0;S=c[a+104>>2]|0;ca=S+l|0;S=(l+2048-S>>12)*3513|0;l=c[a+40>>2]|0;h=c[a+84>>2]|0;E=h+l|0;h=(l+2048-h>>12)*2106|0;l=h+S|0;h=(S+2048-h>>12)*1931|0;S=E+ca|0;E=(ca+2048-E>>12)*1931|0;ca=X+aa|0;X=(aa+2048-X>>12)*4017|0;aa=T+ba|0;T=(ba+2048-T>>12)*799|0;ba=R+$|0;R=($+2048-R>>12)*3406|0;$=S+_|0;S=(_+2048-S>>12)*2276|0;_=Q+s|0;Q=(s+2048-Q>>12)*4017|0;s=m+q|0;m=(q+2048-m>>12)*799|0;q=k+r|0;k=(r+2048-k>>12)*3406|0;r=l+Z|0;l=(Z+2048-l>>12)*2276|0;Z=N+I|0;N=(I+2048-N>>12)*4017|0;I=F+G|0;F=(G+2048-F>>12)*799|0;G=D+H|0;D=(H+2048-D>>12)*3406|0;H=E+Y|0;E=(Y+2048-E>>12)*2276|0;Y=A+p|0;A=(p+2048-A>>12)*4017|0;p=i+n|0;i=(n+2048-i>>12)*799|0;n=g+o|0;g=(o+2048-g>>12)*3406|0;o=h+x|0;h=(x+2048-h>>12)*2276|0;x=$+ba|0;w=aa+ca+2048|0;c[e+480+(b<<2)>>2]=w+x>>12;c[d+(b<<2)>>2]=((w-x>>12)*2896|0)+2048>>12;x=s+_|0;w=r+q|0;a=w+x|0;c[e+448+(b<<2)>>2]=a+2048>>12;M=I+Z|0;L=H+G|0;B=L+M|0;c[e+416+(b<<2)>>2]=B+2048>>12;z=p+Y|0;t=o+n|0;y=t+z|0;a=(y<<1)-a|0;c[e+384+(b<<2)>>2]=a+2048>>12;W=T+X|0;V=S+R|0;U=V+W|0;c[e+352+(b<<2)>>2]=U+2048>>12;P=m+Q|0;O=l+k|0;j=O+P|0;a=(j<<1)-a|0;c[e+320+(b<<2)>>2]=a+2048>>12;K=F+N|0;J=E+D|0;C=J+K|0;B=(C<<1)-B|0;c[e+288+(b<<2)>>2]=B+2048>>12;v=i+A|0;u=h+g|0;f=u+v|0;y=(f<<1)-y|0;a=(y<<1)-a|0;c[e+256+(b<<2)>>2]=a+2048>>12;aa=(ca+2048-aa>>12)*3784|0;$=(ba+2048-$>>12)*1567|0;ba=$+aa|0;c[e+224+(b<<2)>>2]=ba+2048>>12;c[d+256+(b<<2)>>2]=2048-ba+((aa+2048-$>>12)*5792|0)>>12;s=(_+2048-s>>12)*3784|0;r=(q+2048-r>>12)*1567|0;q=r+s|0;a=(q<<1)-a|0;c[e+192+(b<<2)>>2]=a+2048>>12;I=(Z+2048-I>>12)*3784|0;H=(G+2048-H>>12)*1567|0;G=H+I|0;B=(G<<1)-B|0;c[e+160+(b<<2)>>2]=B+2048>>12;p=(Y+2048-p>>12)*3784|0;o=(n+2048-o>>12)*1567|0;n=o+p|0;y=(n<<1)-y|0;a=(y<<1)-a|0;c[e+128+(b<<2)>>2]=a+2048>>12;T=(X+2048-T>>12)*3784|0;S=(R+2048-S>>12)*1567|0;R=S+T|0;U=(R<<1)-U|0;c[e+96+(b<<2)>>2]=U+2048>>12;U=((W+2048-V>>12)*5792|0)-U|0;c[d+128+(b<<2)>>2]=U+2048>>12;c[d+384+(b<<2)>>2]=2048-U+(((T+2048-S>>12)*5792|0)-R<<1)>>12;m=(Q+2048-m>>12)*3784|0;l=(k+2048-l>>12)*1567|0;k=l+m|0;j=(k<<1)-j|0;a=(j<<1)-a|0;c[e+64+(b<<2)>>2]=a+2048>>12;j=((P+2048-O>>12)*5792|0)-j|0;F=(N+2048-F>>12)*3784|0;E=(D+2048-E>>12)*1567|0;D=E+F|0;C=(D<<1)-C|0;B=(C<<1)-B|0;c[e+32+(b<<2)>>2]=B+2048>>12;B=((M+2048-L>>12)*5792|0)-B|0;c[d+64+(b<<2)>>2]=B+2048>>12;C=((K+2048-J>>12)*5792|0)-C|0;B=(C<<1)-B|0;c[d+192+(b<<2)>>2]=B+2048>>12;B=(((I+2048-H>>12)*5792|0)-G<<1)-B|0;c[d+320+(b<<2)>>2]=B+2048>>12;c[d+448+(b<<2)>>2]=((((F+2048-E>>12)*5792|0)-D<<1)-C<<1)+2048-B>>12;i=(A+2048-i>>12)*3784|0;h=(g+2048-h>>12)*1567|0;g=h+i|0;f=(g<<1)-f|0;y=(f<<1)-y|0;t=((z+2048-t>>12)*5792|0)-y|0;a=(y<<1)-a|0;c[e+(b<<2)>>2]=a+2048>>12;a=((x+2048-w>>12)*5792|0)-a|0;c[d+32+(b<<2)>>2]=a+2048>>12;a=(t<<1)-a|0;c[d+96+(b<<2)>>2]=a+2048>>12;a=(j<<1)-a|0;c[d+160+(b<<2)>>2]=a+2048>>12;f=((v+2048-u>>12)*5792|0)-f|0;e=(f<<1)-t|0;a=(e<<1)-a|0;c[d+224+(b<<2)>>2]=a+2048>>12;a=(((s+2048-r>>12)*5792|0)-q<<1)-a|0;c[d+288+(b<<2)>>2]=a+2048>>12;e=(((p+2048-o>>12)*5792|0)-n<<1)-e|0;a=(e<<1)-a|0;c[d+352+(b<<2)>>2]=a+2048>>12;a=((((m+2048-l>>12)*5792|0)-k<<1)-j<<1)-a|0;c[d+416+(b<<2)>>2]=a+2048>>12;c[d+480+(b<<2)>>2]=(((((i+2048-h>>12)*5792|0)-g<<1)-f<<1)-e<<1)+2048-a>>12;return}function Df(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;c[j>>2]=0;l=(h|0)!=0;t=(g|0)==1;c[k>>2]=l?(t?1:2):t?5:3;c[i>>2]=tf(f,l?8:9)|0;c[i+4>>2]=tf(f,c[k>>2]|0)|0;if(!l)if(!g)t=2;else{h=0;do{a[i+8+h>>0]=tf(f,4)|0;h=h+1|0}while((h|0)!=(g|0));t=2}else t=1;q=(g|0)==0;s=l?9:4;r=l?2:3;p=l^1;o=0;h=0;do{if(!q){n=0;do{l=i+10+(o*116|0)+(n*58|0)|0;b[l>>1]=tf(f,12)|0;m=i+10+(o*116|0)+(n*58|0)+2|0;b[m>>1]=tf(f,9)|0;b[i+10+(o*116|0)+(n*58|0)+4>>1]=tf(f,8)|0;b[i+10+(o*116|0)+(n*58|0)+6>>1]=tf(f,s)|0;c[j>>2]=(c[j>>2]|0)+(e[l>>1]|0);h=(h|0)==0&(e[m>>1]|0)>288?562:h;m=i+10+(o*116|0)+(n*58|0)+8|0;a[m>>0]=0;if(!(tf(f,1)|0)){a[i+10+(o*116|0)+(n*58|0)+9>>0]=0;a[i+10+(o*116|0)+(n*58|0)+10>>0]=tf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=tf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=tf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+16>>0]=tf(f,4)|0;a[i+10+(o*116|0)+(n*58|0)+17>>0]=tf(f,3)|0}else{u=tf(f,2)|0;k=u&255;l=i+10+(o*116|0)+(n*58|0)+9|0;a[l>>0]=k;h=(u&255|h|0)==0?563:h;if(k<<24>>24==2&p)h=((h|0)==0?(a[i+8+n>>0]|0)!=0:0)?564:h;k=i+10+(o*116|0)+(n*58|0)+16|0;a[k>>0]=7;a[i+10+(o*116|0)+(n*58|0)+17>>0]=36;if(!(tf(f,1)|0)){if((a[l>>0]|0)==2)a[k>>0]=8}else a[m>>0]=a[m>>0]|8;a[i+10+(o*116|0)+(n*58|0)+10>>0]=tf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=tf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=4;a[i+10+(o*116|0)+(n*58|0)+13>>0]=tf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+14>>0]=tf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+15>>0]=tf(f,3)|0}u=tf(f,r)|0;a[m>>0]=u|d[m>>0];n=n+1|0}while((n|0)!=(g|0))}o=o+1|0}while(o>>>0>>0);return h|0}function Ef(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0;Cb=l;l=l+7296|0;if((l|0)>=(m|0))W(7296);zb=Cb+2448|0;yb=Cb+2432|0;xb=Cb+2416|0;vb=Cb+2400|0;ub=Cb+2384|0;tb=Cb+2368|0;Ab=Cb+2352|0;wb=Cb+2336|0;sb=Cb+2320|0;rb=Cb+16|0;qb=Cb;jb=Cb+7224|0;pb=Cb+7216|0;Bb=Cb+2608|0;nb=Cb+2464|0;lb=g+28|0;hb=c[lb>>2]|0;mb=(hb&16384|0)==0;k=c[g+20>>2]<<((mb^1)&1);k=(k>>>15&1)+(mb?-8:-5)+(k>>>7&15)|0;hb=2-(hb>>>12&1)|0;if(!hb){Bb=0;l=Cb;return Bb|0}kb=(j|0)==0;ib=55480+(k*12|0)|0;mb=55480+(k*12|0)+8|0;fb=55480+(k*12|0)+4|0;Ga=i+184|0;db=g+8|0;Ha=rb+4|0;Sa=rb+8|0;Va=rb+12|0;Xa=rb+16|0;Ya=rb+20|0;Za=rb+24|0;_a=rb+28|0;$a=rb+32|0;ab=rb+36|0;Ia=rb+40|0;Ja=rb+44|0;Ka=rb+48|0;La=rb+52|0;Ma=rb+56|0;Na=rb+60|0;Oa=rb+64|0;Pa=rb+68|0;Qa=rb+72|0;Ra=rb+76|0;Ta=rb+80|0;Ua=rb+84|0;R=c[27018]|0;cb=g+4|0;T=jb+4|0;U=jb+8|0;eb=g+9264|0;V=rb+2|0;fa=rb+4|0;qa=rb+6|0;Aa=rb+8|0;Ba=rb+10|0;Ca=rb+12|0;Da=rb+14|0;Ea=rb+16|0;Fa=rb+18|0;X=rb+20|0;Y=rb+22|0;Z=rb+24|0;_=rb+26|0;$=rb+28|0;aa=rb+30|0;ba=rb+32|0;ca=rb+34|0;da=rb+36|0;ea=rb+38|0;ga=rb+40|0;ha=rb+42|0;ia=rb+44|0;ja=rb+46|0;ka=rb+48|0;la=rb+50|0;ma=rb+52|0;na=rb+54|0;oa=rb+56|0;pa=rb+58|0;ra=rb+60|0;sa=rb+62|0;ta=rb+64|0;ua=rb+66|0;va=rb+68|0;wa=rb+70|0;xa=rb+72|0;ya=rb+74|0;za=rb+76|0;S=Bb+2304|0;bb=0;a:while(1){P=i+10+(bb*116|0)|0;if(!kb){L=c[ib>>2]|0;O=(bb|0)==0;M=0;do{y=i+10+(bb*116|0)+(M*58|0)|0;k=pb+(M<<2)|0;c[k>>2]=L;z=i+10+(bb*116|0)+(M*58|0)+9|0;p=(a[z>>0]|0)==2;if(p){K=c[((a[i+10+(bb*116|0)+(M*58|0)+8>>0]&8)==0?fb:mb)>>2]|0;c[k>>2]=K;k=K}else k=L;if(!(c[lb>>2]&4096)){if(O)o=0;else o=d[i+8+M>>0]|0;K=f;q=c[K+4>>2]|0;r=rb;c[r>>2]=c[K>>2];c[r+4>>2]=q;r=e[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;q=d[115182+(r<<1)>>0]|0;r=d[115182+(r<<1)+1>>0]|0;if(p){n=18-((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)|0;o=n;p=0;while(1){o=o+-1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=tf(f,q)|0;if(!o)break;else p=p+1|0}a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=tf(f,r)|0;a[n+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[n+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;J=n|4;a[n+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+J>>0]=tf(f,r)|0;a[J+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[J+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[J+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[J+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[J+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[J+6+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;K=n|12;a[J+7+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+K>>0]=tf(f,r)|0;a[K+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[K+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[K+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[K+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;a[K+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=tf(f,r)|0;K=y+(n|36)|0;a[K>>0]=0;a[K+1>>0]=0;a[K+2>>0]=0}else{if(!(o&8)){a[i+10+(bb*116|0)+(M*58|0)+18>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=tf(f,q)|0;n=(tf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+18>>0]=a[i+10+(M*58|0)+18>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=a[i+10+(M*58|0)+19>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=a[i+10+(M*58|0)+20>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=a[i+10+(M*58|0)+21>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=a[i+10+(M*58|0)+22>>0]|0;n=a[i+10+(M*58|0)+23>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+23>>0]=n;if(!(o&4)){a[i+10+(bb*116|0)+(M*58|0)+24>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=tf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=tf(f,q)|0;n=(tf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+24>>0]=a[i+10+(M*58|0)+24>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=a[i+10+(M*58|0)+25>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=a[i+10+(M*58|0)+26>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=a[i+10+(M*58|0)+27>>0]|0;n=a[i+10+(M*58|0)+28>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+28>>0]=n;if(!(o&2)){a[i+10+(bb*116|0)+(M*58|0)+29>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=tf(f,r)|0;n=(tf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+29>>0]=a[i+10+(M*58|0)+29>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=a[i+10+(M*58|0)+30>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=a[i+10+(M*58|0)+31>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=a[i+10+(M*58|0)+32>>0]|0;n=a[i+10+(M*58|0)+33>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+33>>0]=n;if(!(o&1)){a[i+10+(bb*116|0)+(M*58|0)+34>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=tf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=tf(f,r)|0;n=(tf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+34>>0]=a[i+10+(M*58|0)+34>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=a[i+10+(M*58|0)+35>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=a[i+10+(M*58|0)+36>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=a[i+10+(M*58|0)+37>>0]|0;n=a[i+10+(M*58|0)+38>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+38>>0]=n;a[i+10+(bb*116|0)+(M*58|0)+39>>0]=0}n=qf(rb,f)|0}else{v=(M|0)==0?0:Ga;n=c[db>>2]|0;K=f;r=c[K+4>>2]|0;o=rb;c[o>>2]=c[K>>2];c[o+4>>2]=r;o=b[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;r=o&65535;if(p)w=((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)+1&255;else w=0;if((v|0)!=0&(n&1|0)!=0){n=r>>>1;do if((o&65535)>=360)if((o&65535)<488){t=n+-180|0;u=4;o=t>>>4&3;s=t>>>2&3;t=t&3;break}else{t=n+-244|0;s=(t>>>0)/3|0;u=5;o=s;s=t-(s*3|0)|0;t=0;break}else{K=(n>>>0)%36|0;t=(K>>>0)/6|0;u=3;o=(r>>>0)/72|0;s=t;t=K-(t*6|0)|0}while(0);p=115110+(u*12|0)+(w<<2)|0;r=(1<>0]|0))n=0;else{q=0;while(1){K=tf(f,o)|0;a[i+10+(bb*116|0)+(M*58|0)+18+q>>0]=K;n=q+1|0;a[v+18+q>>0]=(K|0)==(r|0)&1;if(n>>>0<(d[p>>0]|0)>>>0)q=n;else break}}r=(1<>0]|0){q=0;o=n;while(1){K=tf(f,s)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}r=(1<>0]|0){q=0;o=n;while(1){K=tf(f,t)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115110+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){K=tf(f,0)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==0&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)do{a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=0;a[v+18+n>>0]=0;n=n+1|0}while((n|0)!=39)}else{do if((o&65535)>=400)if((o&65535)<500){s=r+-400|0;u=1;q=(s>>>0)/20|0;s=(s>>>2>>>0)%5|0;t=o&3;r=0;break}else{t=r+-500|0;s=(t>>>0)/3|0;u=i+10+(bb*116|0)+(M*58|0)+8|0;a[u>>0]=a[u>>0]|4;u=2;q=s;s=t-(s*3|0)|0;t=0;r=0;break}else{u=0;q=(r>>>0)/80|0;s=(r>>>4>>>0)%5|0;t=r>>>2&3;r=r&3}while(0);o=115110+(u*12|0)+(w<<2)|0;if(!(a[o>>0]|0))n=0;else{p=0;while(1){n=p+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=tf(f,q)|0;if(n>>>0<(d[o>>0]|0)>>>0)p=n;else break}}p=115110+(u*12|0)+(w<<2)+1|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=tf(f,s)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115110+(u*12|0)+(w<<2)+2|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=tf(f,t)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115110+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=tf(f,r)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)kX(y+(n+18)|0,0,39-n|0)|0}n=qf(rb,f)|0}x=Bb+(M*2304|0)|0;o=(e[y>>1]|0)-n|0;if((o|0)<0){ob=566;break a}t=(e[i+10+(bb*116|0)+(M*58|0)+4>>1]|0)+-210|0;K=i+10+(bb*116|0)+(M*58|0)+8|0;p=d[K>>0]|0;u=(p>>>1&1)+1|0;do if((a[z>>0]|0)==2){if(!(p&8)){n=0;p=0}else{q=p<<29>>31;n=0;p=0;while(1){c[rb+(p<<2)>>2]=t-((q&d[115214+p>>0])+(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]|0)<>0]|0)|0;if(n>>>0<36)p=r;else{p=r;break}}}r=t-(d[i+10+(bb*116|0)+(M*58|0)+13>>0]<<3)|0;s=t-(d[i+10+(bb*116|0)+(M*58|0)+14>>0]<<3)|0;q=t-(d[i+10+(bb*116|0)+(M*58|0)+15>>0]<<3)|0;if(n>>>0<576)while(1){c[rb+(p<<2)>>2]=r-(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]<>2]=s-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>2]=q-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>0]|0)*3|0)+n|0;if(n>>>0>=576)break;else p=p+3|0}}else{c[rb>>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+18>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+19>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+20>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+21>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+22>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+23>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+24>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+25>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+26>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+27>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+28>>0]<>0]|0;if(!(p&4)){c[Ja>>2]=t-(n<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+30>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+31>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+32>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+33>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+34>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+35>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+36>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+37>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+38>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]=t-(n+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+30>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+31>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+32>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+33>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+34>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+35>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+36>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+37>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+38>>0]|0)+2<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]|0;q=c[q+4>>2]|0;u=qb;c[u>>2]=p;c[u+4>>2]=q;sf(f,o);q=dX(p|0,q|0,48)|0;q=(31-q&-8)+q|0;p=tf(qb,q)|0;u=d[i+10+(bb*116|0)+(M*58|0)+10>>0]|0;s=c[53048+(u<<3)>>2]|0;if(!s){Q=165;break a}t=Bb+(M*2304|0)+(d[k>>0]<<2)|0;y=k+1|0;n=o-q|0;r=c[rb>>2]|0;k=b[i+10+(bb*116|0)+(M*58|0)+2>>1]|0;if((o|0)>0&k<<16>>16!=0){J=i+10+(bb*116|0)+(M*58|0)+17|0;I=k&65535;B=r;v=Ha;z=e[53048+(u<<3)+4>>1]|0;w=(d[i+10+(bb*116|0)+(M*58|0)+16>>0]|0)+1|0;o=0;A=0;r=e[53048+(u<<3)+6>>1]|0;H=0;F=x;while(1){I=I+-1|0;if((F|0)==(t|0)){x=y+1|0;t=F+(d[y>>0]<<2)|0;k=w+-1|0;if(!k){if(!o)k=(d[J>>0]|0)+1|0;else k=0;o=o+1|0;r=d[i+10+(bb*116|0)+(M*58|0)+10+o>>0]|0;s=c[53048+(r<<3)>>2]|0;if(!s){Q=165;break a}else{u=e[53048+(r<<3)+4>>1]|0;r=e[53048+(r<<3)+6>>1]|0}}else u=z;y=c[v>>2]|0;G=y;v=v+4|0;z=u;E=k;D=o;u=(B|0)==(y|0)?A:0;y=x;C=r}else{G=B;E=w;D=o;u=A;C=r}k=31-q&-8;if((q|0)<21){p=tf(qb,k)|0|p<>>(q-C|0)&(1<>0]&1)){o=C;do{q=q-o|0;k=b[s+(k<<1)>>1]|0;o=(k&65535)>>>1&7;k=(p>>>(q-o|0)&(1<>>4&65535)|0}while(!(a[s+(k<<1)>>0]&1))}A=s+(k<<1)|0;o=b[A>>1]|0;q=q-((o&65535)>>>1&7)|0;o=(o&65535)>>>4;k=o&15;w=k&65535;b:do if(!z){if(!(k<<16>>16)){o=u;k=0}else{k=1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[ub>>3]=+(o|0)*3.725290298461914e-09;c[ub+8>>2]=k;iV(R,115236,ub)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else{o=u;k=c[jb+(w<<2)>>2]|0}B=q+-1|0;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8&15;w=B&65535;if(!(B<<16>>16)){x=p;k=0;u=o}else{k=1<>2]|0;o=B&134217727;k=(B>>>27)+k|0;do if((k|0)>=0)if((k|0)>4){h[vb>>3]=+(o|0)*3.725290298461914e-09;c[vb+8>>2]=k;iV(R,115236,vb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else k=c[jb+(w<<2)>>2]|0;u=q+-1|0;x=p;q=u;k=(1<>>0<(z+2|0)>>>0){p=tf(qb,16)|0|p<<16;n=n+-16|0;q=q+16|0}q=q-z|0;r=(G|0)%4|0;k=c[55588+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[sb>>3]=+(o|0)*3.725290298461914e-09;c[sb+8>>2]=k;iV(R,115236,sb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(!r){Q=118;break c}k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;Q=118;break}default:{k=1<>2]|0;Q=118;break c}u=k|u;r=(G|0)%4|0;k=c[55588+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[wb>>3]=+(o|0)*3.725290298461914e-09;c[wb+8>>2]=k;iV(R,115236,wb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;Q=118}}while(0);if((Q|0)==118){Q=0;B=q+-1|0;x=p;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8;w=B&15;d:do switch(B&15){case 0:{k=0;break b}case 15:{if(q>>>0<(z+1|0)>>>0){p=tf(qb,16)|0|x<<16;n=n+-16|0;q=q+16|0}else p=x;q=q-z|0;r=(G|0)%4|0;k=c[55588+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[Ab>>3]=+(o|0)*3.725290298461914e-09;c[Ab+8>>2]=k;iV(R,115236,Ab)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(!r)break d;k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;break}default:{k=1<>2]|0;break d}u=k|u;p=(G|0)%4|0;k=c[55588+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[tb>>3]=+(o|0)*3.725290298461914e-09;c[tb+8>>2]=k;iV(R,115236,tb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(p)k=N((c[88416+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;p=x}}while(0);B=q+-1|0;x=p;q=B;k=(1<>2]=k;k=H+2|0;o=q+n|0;if(!((I|0)!=0&(o|0)>0)){w=q;u=G;s=y;break}else{p=x;B=G;w=E;o=D;A=u;r=C;H=k;F=Bb+(M*2304|0)+(k<<2)|0}}}else{x=p;w=q;u=r;v=Ha;s=y;k=0}if((o|0)<0){ob=568;break a}B=c[53040+((a[K>>0]&1)<<2)>>2]|0;q=(u|0)/4|0;r=u-(q<<2)|0;p=q+2|0;do if((u|0)>=-11)if((u|0)>11){h[xb>>3]=.25;c[xb+8>>2]=p;iV(R,115236,xb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-q)+67108864>>p}while(0);if(r)p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0;if((o|0)>0&k>>>0<573){o=x;x=s;while(1){z=Bb+(M*2304|0)+(k<<2)|0;if((w|0)<10){A=tf(qb,16)|0|o<<16;n=n+-16|0;o=w+16|0}else{A=o;o=w}s=o+-4|0;q=B+((A>>>s&15)<<1)|0;r=a[q>>0]|0;if(!(r&1)){r=b[q>>1]|0;q=(r&65535)>>>1&7;r=B+((A>>>(s-q|0)&(1<>>4&65535)<<1)|0;q=r;r=a[r>>0]|0;o=s}y=o-((r&255)>>>1&7)|0;if((z|0)==(t|0)){w=x+1|0;t=t+(d[x>>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[yb>>3]=.25;c[yb+8>>2]=o;iV(R,115236,yb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);r=a[q>>0]|0;u=o;v=v+4|0;s=w}else s=x;x=(r&16)==0;K=y+-1|0;o=0-p|0;y=x?y:K;c[z>>2]=x?0:(1<>0]&32)==0;x=y+-1|0;y=K?y:x;c[z+4>>2]=K?0:(1<>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[zb>>3]=.25;c[zb+8>>2]=o;iV(R,115236,zb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);u=o;v=v+4|0;r=p;s=w;o=0-p|0}else r=p;K=(a[q>>0]&64)==0;J=y+-1|0;w=K?y:J;c[x>>2]=K?0:(1<>0]|0)<0;K=w+-1|0;w=J?K:w;c[x+4>>2]=J?((1<>>0<573&(o|0)>0))break;else{o=A;p=r;x=s}}}if((n|0)<=-65){Q=202;break a}k=(o|0)<0?k+-4|0:k;if((k|0)<576)kX(Bb+(M*2304|0)+(k<<2)|0,0,((((k|0)==575?576:575)-k|0)>>>1<<3)+8|0)|0;M=M+1|0}while(M>>>0>>0)}if((c[cb>>2]|0)==2?(gb=c[db>>2]|0,gb|0):0){w=c[pb>>2]|0;k=a[i+10+(bb*116|0)+9>>0]|0;if(k<<24>>24!=(a[i+10+(bb*116|0)+67>>0]|0)){Q=276;break}n=a[i+10+(bb*116|0)+66>>0]|0;if((n^a[i+10+(bb*116|0)+8>>0])&8){Q=276;break}O=gb&65535;b[rb>>1]=O;b[V>>1]=O;b[fa>>1]=O;b[qa>>1]=O;b[Aa>>1]=O;b[Ba>>1]=O;b[Ca>>1]=O;b[Da>>1]=O;b[Ea>>1]=O;b[Fa>>1]=O;b[X>>1]=O;b[Y>>1]=O;b[Z>>1]=O;b[_>>1]=O;b[$>>1]=O;b[aa>>1]=O;b[ba>>1]=O;b[ca>>1]=O;b[da>>1]=O;b[ea>>1]=O;b[ga>>1]=O;b[ha>>1]=O;b[ia>>1]=O;b[ja>>1]=O;b[ka>>1]=O;b[la>>1]=O;b[ma>>1]=O;b[na>>1]=O;b[oa>>1]=O;b[pa>>1]=O;b[ra>>1]=O;b[sa>>1]=O;b[ta>>1]=O;b[ua>>1]=O;b[va>>1]=O;b[wa>>1]=O;b[xa>>1]=O;b[ya>>1]=O;b[za>>1]=O;e:do if(gb&1|0){v=c[lb>>2]|0;c[lb>>2]=v|256;if(k<<24>>24==2){c[U>>2]=0;c[T>>2]=0;c[jb>>2]=0;if(n&8){q=0;n=0;r=S;k=0;do{Q=k;k=k+1|0;Q=a[w+Q>>0]|0;p=Q&255;f:do if(Q<<24>>24){o=0;do{if(c[r+(o<<2)>>2]|0){n=k;break f}o=o+1|0}while(o>>>0

>>0)}while(0);r=r+(p<<2)|0;q=q+p|0}while(q>>>0<36);if(q>>>0<576){o=r;Q=220}else Q=228}else{q=0;n=0;o=S;k=0;Q=220}if((Q|0)==220){Q=0;s=0;t=k;u=0;while(1){O=a[w+t>>0]|0;t=t+1|0;r=O&255;g:do if(!(O<<24>>24))p=s;else{p=0;while(1){if(c[o+(p<<2)>>2]|0)break;p=p+1|0;if(p>>>0>=r>>>0){p=s;break g}}c[jb+(u<<2)>>2]=t;p=t}while(0);q=q+r|0;if(q>>>0>=576)break;else{s=p;o=o+(r<<2)|0;u=((u+1|0)>>>0)%3|0}}if(!p)Q=228;else{n=k;q=p}}if((Q|0)==228){Q=0;q=0}if(n|0){o=gb&65534;p=0;do{b[rb+(p<<1)>>1]=o;p=p+1|0}while((p|0)!=(n|0))}if(k>>>0>>0){o=gb&65534;n=0;while(1){if(k>>>0<(c[jb+(n<<2)>>2]|0)>>>0)b[rb+(k<<1)>>1]=o;k=k+1|0;if((k|0)==(q|0))break;else n=((n+1|0)>>>0)%3|0}}}else{k=0;q=0;r=S;s=0;while(1){O=a[w+s>>0]|0;s=s+1|0;p=O&255;h:do if(!(O<<24>>24))o=k;else{n=0;while(1){if(c[r+(n<<2)>>2]|0){o=s;break h}n=n+1|0;if(n>>>0>=p>>>0){o=k;break}}}while(0);q=q+p|0;if(q>>>0>=576)break;else{k=o;r=r+(p<<2)|0}}if(o|0){k=gb&65534;n=0;do{b[rb+(n<<1)>>1]=k;n=n+1|0}while((n|0)!=(o|0))}}if(!(v&4096)){r=0;s=0;while(1){k=a[w+s>>0]|0;q=k&255;n=rb+(s<<1)|0;o=b[n>>1]|0;do if(o&1|0){P=a[i+10+(bb*116|0)+76+s>>0]|0;p=P&255;if((P&255)>6){b[n>>1]=o&65534;break}if(k<<24>>24){o=(c[88564+(p<<2)>>2]|0)+32768>>16;n=(c[88564+(6-p<<2)>>2]|0)+32768>>16;k=0;do{P=k+r|0;M=Bb+(P<<2)|0;O=(c[M>>2]|0)+2048>>12;c[M>>2]=N(O,o)|0;c[Bb+2304+(P<<2)>>2]=N(O,n)|0;k=k+1|0}while((k|0)!=(q|0))}}while(0);r=r+q|0;if(r>>>0>=576)break e;else s=s+1|0}}p=b[i+10+(bb*116|0)+64>>1]&1;r=0;s=0;while(1){o=a[w+s>>0]|0;q=o&255;k=rb+(s<<1)|0;n=b[k>>1]|0;i:do if(n&1|0){if(a[P+192+s>>0]|0){b[k>>1]=n&65534;break}k=a[i+10+(bb*116|0)+76+s>>0]|0;n=k&255;if(o<<24>>24){if(!(k<<24>>24)){k=0;while(1){O=k+r|0;c[Bb+2304+(O<<2)>>2]=c[Bb+(O<<2)>>2];k=k+1|0;if((k|0)==(q|0))break i}}o=(c[88444+(p*60|0)+((n+-1|0)>>>1<<2)>>2]|0)+32768>>16;if(!(n&1)){k=0;do{O=k+r|0;c[Bb+2304+(O<<2)>>2]=N((c[Bb+(O<<2)>>2]|0)+2048>>12,o)|0;k=k+1|0}while((k|0)!=(q|0))}else{k=0;do{O=k+r|0;L=Bb+(O<<2)|0;M=c[L>>2]|0;c[L>>2]=N(M+2048>>12,o)|0;c[Bb+2304+(O<<2)>>2]=M;k=k+1|0}while((k|0)!=(q|0))}}}while(0);r=r+q|0;if(r>>>0>=576)break;else s=s+1|0}}while(0);if(gb&2|0){c[lb>>2]=c[lb>>2]|512;o=0;p=0;while(1){P=a[w+p>>0]|0;k=P&255;if(P<<24>>24?(b[rb+(p<<1)>>1]|0)==2:0){n=0;do{P=n+o|0;L=Bb+(P<<2)|0;P=Bb+2304+(P<<2)|0;O=c[P>>2]|0;M=(c[L>>2]|0)+2048|0;c[L>>2]=(M+O>>12)*2896;c[P>>2]=(M-O>>12)*2896;n=n+1|0}while((n|0)!=(k|0))}o=o+k|0;if(o>>>0>=576)break;else p=p+1|0}}}if(!kb){A=bb*18|0;z=0;do{y=g+48+(z*4608|0)+(A<<7)|0;x=i+10+(bb*116|0)+(z*58|0)+9|0;w=Bb+(z*2304|0)|0;if((a[x>>0]|0)==2){k=c[pb+(z<<2)>>2]|0;v=(a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8)==0;if(v)u=0;else{o=0;while(1){n=k+1|0;o=o+(d[k>>0]|0)|0;if(o>>>0>=36){u=2;k=n;break}else k=n}};c[qb>>2]=0;c[qb+4>>2]=0;c[qb+8>>2]=0;c[jb>>2]=u;c[T>>2]=u;c[U>>2]=u;t=u*18|0;o=d[k>>0]|0;s=t;k=k+1|0;n=0;while(1){if(!o){r=d[k>>0]|0;k=k+1|0;n=((n+1|0)>>>0)%3|0}else r=o;O=c[Bb+(z*2304|0)+(s<<2)>>2]|0;p=jb+(n<<2)|0;o=c[p>>2]|0;q=qb+(n<<2)|0;P=c[q>>2]|0;Q=P+1|0;c[q>>2]=Q;c[rb+(o*72|0)+(n*24|0)+(P<<2)>>2]=O;if((Q|0)==6){c[q>>2]=0;c[p>>2]=o+1}s=s+1|0;if((s|0)==576)break;else o=r+-1|0}iX(Bb+(z*2304|0)+(t<<2)|0,rb+(u*72|0)|0,(N(u,-72)|0)+2304|0)|0;if(!v)Ff(w,36)}else Ff(w,576);k=a[x>>0]|0;n=a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8;if(k<<24>>24==2&n<<24>>24==0){If(w,nb);Hf(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);If(Bb+(z*2304|0)+72|0,nb);Hf(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}else{Q=n<<24>>24==0?k&255:0;Gf(w,nb,Q);Hf(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);Gf(Bb+(z*2304|0)+72|0,nb,Q);Hf(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}n=y+132|0;P=y+388|0;O=c[P>>2]|0;c[n>>2]=0-(c[n>>2]|0);n=y+644|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+900|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1156|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1412|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1668|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1924|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+2180|0;Q=c[n>>2]|0;c[P>>2]=0-O;c[n>>2]=0-Q;n=576;while(1){k=n;n=n+-1|0;if(c[Bb+(z*2304|0)+(n<<2)>>2]|0)break;if(n>>>0<=36){k=36;break}}v=32-(((576-k|0)>>>0)/18|0)|0;k=a[x>>0]|0;n=v>>>0>2;j:do if(k<<24>>24==2)if(n){k=36;n=2;while(1){If(Bb+(z*2304|0)+(k<<2)|0,nb);Hf(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break}else k=k+18|0}}else Q=312;else if(n){o=36;n=2;while(1){Gf(Bb+(z*2304|0)+(o<<2)|0,nb,k&255);Hf(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break j}k=a[x>>0]|0;o=o+18|0}}else Q=312;while(0);if((Q|0)==311?(Q=0,v>>>0<32):0)Q=312;if((Q|0)==312){Q=0;w=c[eb>>2]|0;do{P=w+(z*2304|0)+(v*72|0)|0;c[g+48+(z*4608|0)+(A<<7)+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+4|0;k=y+128+(v<<2)|0;c[k>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+8|0;c[y+256+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+12|0;r=y+384+(v<<2)|0;c[r>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+16|0;c[y+512+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+20|0;s=y+640+(v<<2)|0;c[s>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+24|0;c[y+768+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+28|0;t=y+896+(v<<2)|0;c[t>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+32|0;c[y+1024+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+36|0;u=y+1152+(v<<2)|0;c[u>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+40|0;c[y+1280+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+44|0;n=y+1408+(v<<2)|0;c[n>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+48|0;c[y+1536+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+52|0;o=y+1664+(v<<2)|0;c[o>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+56|0;c[y+1792+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+60|0;p=y+1920+(v<<2)|0;c[p>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+64|0;c[y+2048+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+68|0;q=y+2176+(v<<2)|0;c[q>>2]=c[P>>2];c[P>>2]=0;if(v&1|0){O=c[r>>2]|0;c[k>>2]=0-(c[k>>2]|0);P=c[s>>2]|0;c[r>>2]=0-O;O=c[t>>2]|0;c[s>>2]=0-P;P=c[u>>2]|0;c[t>>2]=0-O;O=c[n>>2]|0;c[u>>2]=0-P;P=c[o>>2]|0;c[n>>2]=0-O;O=c[p>>2]|0;c[o>>2]=0-P;P=c[q>>2]|0;c[p>>2]=0-O;c[q>>2]=0-P}v=v+1|0}while(v>>>0<32)}z=z+1|0}while((z|0)!=(j|0))}bb=bb+1|0;if(bb>>>0>=hb>>>0){k=0;Q=318;break}}if((Q|0)==165)ob=567;else if((Q|0)==202)Wa(115269,115101,1253,115311);else if((Q|0)==276){Bb=569;l=Cb;return Bb|0}else if((Q|0)==318){l=Cb;return k|0}Bb=ob;l=Cb;return Bb|0}function Ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+(b<<2)|0;if((b|0)<=18)return;b=a+72|0;do{g=b+-4|0;e=c[b>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-2107)|0)+(f*3512|0);c[b>>2]=(N(f,-2107)|0)+((e+2048>>12)*3512|0);e=b+-8|0;f=b+4|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-1932)|0)+(a*3612|0);c[f>>2]=(N(a,-1932)|0)+((g+2048>>12)*3612|0);f=b+-12|0;g=b+8|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048>>12;c[f>>2]=(N(2048-a>>12,-1284)|0)+(e*3890|0);c[g>>2]=(N(e,-1284)|0)+((a+2048>>12)*3890|0);g=b+-16|0;a=b+12|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-745)|0)+(f*4028|0);c[a>>2]=(N(f,-745)|0)+((e+2048>>12)*4028|0);a=b+-20|0;e=b+16|0;f=c[e>>2]|0;g=(c[a>>2]|0)+2048>>12;c[a>>2]=(N(2048-f>>12,-387)|0)+(g*4078|0);c[e>>2]=(N(g,-387)|0)+((f+2048>>12)*4078|0);e=b+-24|0;f=b+20|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-168)|0)+(a*4093|0);c[f>>2]=(N(a,-168)|0)+((g+2048>>12)*4093|0);f=b+-28|0;g=b+24|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048|0;c[f>>2]=(N(2048-a>>12,-58)|0)+(e&-4096);c[g>>2]=(N(e>>12,-58)|0)+(a+2048&-4096);g=b+-32|0;a=b+28|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048|0;c[g>>2]=(N(2048-e>>12,-15)|0)+(f&-4096);c[a>>2]=(N(f>>12,-15)|0)+(e+2048&-4096);b=b+72|0}while(b>>>0>>0);return}function Gf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;o=((c[a>>2]|0)+2048>>12)*8184|0;g=((c[a+4>>2]|0)+2048>>12)*8122|0;O=((c[a+8>>2]|0)+2048>>12)*7998|0;Z=((c[a+12>>2]|0)+2048>>12)*7813|0;X=((c[a+16>>2]|0)+2048>>12)*7568|0;V=((c[a+20>>2]|0)+2048>>12)*7266|0;ca=((c[a+24>>2]|0)+2048>>12)*6909|0;L=((c[a+28>>2]|0)+2048>>12)*6499|0;Q=((c[a+32>>2]|0)+2048>>12)*6040|0;ba=((c[a+36>>2]|0)+2048>>12)*5534|0;P=((c[a+40>>2]|0)+2048>>12)*4987|0;f=((c[a+44>>2]|0)+2048>>12)*4402|0;z=((c[a+48>>2]|0)+2048>>12)*3783|0;R=((c[a+52>>2]|0)+2048>>12)*3135|0;m=((c[a+56>>2]|0)+2048>>12)*2463|0;t=((c[a+60>>2]|0)+2048>>12)*1773|0;M=((c[a+64>>2]|0)+2048>>12)*1069|0;W=((c[a+68>>2]|0)+2048>>12)*357|0;S=W+o|0;Y=M+g|0;e=t+O|0;a=m+Z|0;u=R+X|0;l=z+V|0;J=f+ca|0;_=P+L|0;K=ba+Q|0;$=a+l|0;l=a-l|0;a=e+J|0;e=J-e|0;J=Y+_|0;aa=S+K|0;S=K-S|0;K=a+$+aa|0;U=e+2048|0;n=N(U+l>>12,-5266)|0;l=l+2048|0;T=(l-S>>12)*8068|0;U=N(S+U>>12,-2802)|0;Y=N(2048-_+Y>>12,-7094)|0;_=N(a+2048-aa>>12,-7698)|0;$=$+2048|0;aa=N($-aa>>12,-1423)|0;a=N($-a>>12,-6275)|0;$=J+u|0;J=(u<<1)-J|0;W=(o+2048-W>>12)*8161|0;M=(g+2048-M>>12)*7913|0;t=(O+2048-t>>12)*7424|0;m=(Z+2048-m>>12)*6710|0;R=X+2048-R>>12;z=(V+2048-z>>12)*4699|0;f=(ca+2048-f>>12)*3462|0;P=(L+2048-P>>12)*2120|0;ba=(Q+2048-ba>>12)*714|0;Q=m+z|0;z=m-z|0;m=t+f|0;t=f-t|0;f=M+P|0;L=W+ba|0;W=ba-W|0;ba=m+Q+L|0;ca=t+2048|0;V=N(ca+z>>12,-5266)|0;z=z+2048|0;X=(z-W>>12)*8068|0;ca=N(W+ca>>12,-2802)|0;M=N(2048-P+M>>12,-7094)|0;P=N(m+2048-L>>12,-7698)|0;Q=Q+2048|0;L=N(Q-L>>12,-1423)|0;m=N(Q-m>>12,-6275)|0;Q=f+(R*5793|0)|0;f=(R*11586|0)-f|0;R=ba+Q|0;Z=V-M-R+X|0;O=m-f+P-Z|0;W=(N(z-t+W>>12,-7094)|0)-O|0;P=P+f-L-W|0;X=M-ca+X-P|0;Q=ba-(Q<<1)-X|0;ca=V+M+ca-Q|0;M=(K+$|0)/2|0;R=((R|0)/2|0)-M|0;V=((n-Y+T|0)/2|0)-R|0;Z=((Z|0)/2|0)-V|0;ba=((a-J+_|0)/2|0)-Z|0;O=((O|0)/2|0)-ba|0;S=(N(l-e+S>>12,-3547)|0)-O|0;W=((W|0)/2|0)-S|0;_=((_+J-aa|0)/2|0)-W|0;P=((P|0)/2|0)-_|0;T=((Y-U+T|0)/2|0)-P|0;X=((X|0)/2|0)-T|0;$=((K-($<<1)|0)/2|0)-X|0;Q=((Q|0)/2|0)-$|0;U=((n+Y+U|0)/2|0)-Q|0;Y=((ca|0)/2|0)-U|0;aa=((a+J+aa|0)/2|0)-Y|0;ca=((m+f+L-ca|0)/2|0)-aa|0;c[b>>2]=P;L=b+4|0;c[L>>2]=T;f=b+8|0;c[f>>2]=X;m=b+12|0;c[m>>2]=$;J=b+16|0;c[J>>2]=Q;a=b+20|0;c[a>>2]=U;n=b+24|0;c[n>>2]=Y;K=b+28|0;c[K>>2]=aa;e=b+32|0;c[e>>2]=ca;l=b+36|0;c[l>>2]=0-ca;t=b+40|0;c[t>>2]=0-aa;z=b+44|0;c[z>>2]=0-Y;g=b+48|0;c[g>>2]=0-U;o=b+52|0;c[o>>2]=0-Q;u=b+56|0;c[u>>2]=0-$;h=b+60|0;c[h>>2]=0-X;p=b+64|0;c[p>>2]=0-T;v=b+68|0;c[v>>2]=0-P;da=0-_|0;i=b+72|0;c[i>>2]=da;H=0-W|0;q=b+76|0;c[q>>2]=H;E=0-S|0;w=b+80|0;c[w>>2]=E;B=0-O|0;j=b+84|0;c[j>>2]=B;G=0-ba|0;r=b+88|0;c[r>>2]=G;D=0-Z|0;x=b+92|0;c[x>>2]=D;A=0-V|0;k=b+96|0;c[k>>2]=A;I=0-R|0;s=b+100|0;c[s>>2]=I;F=0-M|0;y=b+104|0;c[y>>2]=F;C=b+108|0;c[C>>2]=F;F=b+112|0;c[F>>2]=I;I=b+116|0;c[I>>2]=A;A=b+120|0;c[A>>2]=D;D=b+124|0;c[D>>2]=G;G=b+128|0;c[G>>2]=B;B=b+132|0;c[B>>2]=E;E=b+136|0;c[E>>2]=H;H=b+140|0;c[H>>2]=da;switch(d|0){case 0:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;c[i>>2]=(2048-_>>12)*4092;c[q>>2]=(2048-W>>12)*4061;c[w>>2]=(2048-S>>12)*3999;c[j>>2]=(2048-O>>12)*3906;c[r>>2]=(2048-ba>>12)*3784;c[x>>2]=(2048-Z>>12)*3633;c[k>>2]=(2048-V>>12)*3455;c[s>>2]=((c[s>>2]|0)+2048>>12)*3250;c[y>>2]=((c[y>>2]|0)+2048>>12)*3020;c[C>>2]=((c[C>>2]|0)+2048>>12)*2767;c[F>>2]=((c[F>>2]|0)+2048>>12)*2493;c[I>>2]=((c[I>>2]|0)+2048>>12)*2201;c[A>>2]=((c[A>>2]|0)+2048>>12)*1891;c[D>>2]=((c[D>>2]|0)+2048>>12)*1567;c[G>>2]=((c[G>>2]|0)+2048>>12)*1232;c[B>>2]=((c[B>>2]|0)+2048>>12)*887;c[E>>2]=((c[E>>2]|0)+2048>>12)*535;c[H>>2]=((c[H>>2]|0)+2048>>12)*179;return}case 1:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;da=2048-V>>12;c[k>>2]=da*4061;b=2048-R>>12;c[s>>2]=b*3784;d=2048-M>>12;c[y>>2]=d*3250;c[C>>2]=d*2493;c[F>>2]=b*1567;c[I>>2]=da*535;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[A+16>>2]=0;c[A+20>>2]=0;return}case 3:{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[n>>2]=(Y+2048>>12)*535;c[K>>2]=(aa+2048>>12)*1567;c[e>>2]=(ca+2048>>12)*2493;c[l>>2]=(2048-ca>>12)*3250;c[t>>2]=(2048-aa>>12)*3784;c[z>>2]=(2048-Y>>12)*4061;da=2048-_>>12;c[i>>2]=da*4092;b=2048-W>>12;c[q>>2]=b*4061;d=2048-S>>12;c[w>>2]=d*3999;ca=2048-O>>12;c[j>>2]=ca*3906;ba=2048-ba>>12;c[r>>2]=ba*3784;aa=2048-Z>>12;c[x>>2]=aa*3633;$=2048-V>>12;c[k>>2]=$*3455;_=2048-R>>12;c[s>>2]=_*3250;Z=2048-M>>12;c[y>>2]=Z*3020;c[C>>2]=Z*2767;c[F>>2]=_*2493;c[I>>2]=$*2201;c[A>>2]=aa*1891;c[D>>2]=ba*1567;c[G>>2]=ca*1232;c[B>>2]=d*887;c[E>>2]=b*535;c[H>>2]=da*179;return}default:return}}function Hf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;c[d+(e<<2)>>2]=(c[b>>2]|0)+(c[a>>2]|0);c[b>>2]=c[a+72>>2];f=b+4|0;c[d+128+(e<<2)>>2]=(c[f>>2]|0)+(c[a+4>>2]|0);c[f>>2]=c[a+76>>2];f=b+8|0;c[d+256+(e<<2)>>2]=(c[f>>2]|0)+(c[a+8>>2]|0);c[f>>2]=c[a+80>>2];f=b+12|0;c[d+384+(e<<2)>>2]=(c[f>>2]|0)+(c[a+12>>2]|0);c[f>>2]=c[a+84>>2];f=b+16|0;c[d+512+(e<<2)>>2]=(c[f>>2]|0)+(c[a+16>>2]|0);c[f>>2]=c[a+88>>2];f=b+20|0;c[d+640+(e<<2)>>2]=(c[f>>2]|0)+(c[a+20>>2]|0);c[f>>2]=c[a+92>>2];f=b+24|0;c[d+768+(e<<2)>>2]=(c[f>>2]|0)+(c[a+24>>2]|0);c[f>>2]=c[a+96>>2];f=b+28|0;c[d+896+(e<<2)>>2]=(c[f>>2]|0)+(c[a+28>>2]|0);c[f>>2]=c[a+100>>2];f=b+32|0;c[d+1024+(e<<2)>>2]=(c[f>>2]|0)+(c[a+32>>2]|0);c[f>>2]=c[a+104>>2];f=b+36|0;c[d+1152+(e<<2)>>2]=(c[f>>2]|0)+(c[a+36>>2]|0);c[f>>2]=c[a+108>>2];f=b+40|0;c[d+1280+(e<<2)>>2]=(c[f>>2]|0)+(c[a+40>>2]|0);c[f>>2]=c[a+112>>2];f=b+44|0;c[d+1408+(e<<2)>>2]=(c[f>>2]|0)+(c[a+44>>2]|0);c[f>>2]=c[a+116>>2];f=b+48|0;c[d+1536+(e<<2)>>2]=(c[f>>2]|0)+(c[a+48>>2]|0);c[f>>2]=c[a+120>>2];f=b+52|0;c[d+1664+(e<<2)>>2]=(c[f>>2]|0)+(c[a+52>>2]|0);c[f>>2]=c[a+124>>2];f=b+56|0;c[d+1792+(e<<2)>>2]=(c[f>>2]|0)+(c[a+56>>2]|0);c[f>>2]=c[a+128>>2];f=b+60|0;c[d+1920+(e<<2)>>2]=(c[f>>2]|0)+(c[a+60>>2]|0);c[f>>2]=c[a+132>>2];f=b+64|0;c[d+2048+(e<<2)>>2]=(c[f>>2]|0)+(c[a+64>>2]|0);c[f>>2]=c[a+136>>2];b=b+68|0;c[d+2176+(e<<2)>>2]=(c[b>>2]|0)+(c[a+68>>2]|0);c[b>>2]=c[a+140>>2];return}function If(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);e=d;p=(c[a>>2]|0)+2048>>12;n=(c[a+4>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+8>>2]|0)+2048>>12;i=j+(p*2493|0)+(N(h,-535)|0)|0;g=(c[a+12>>2]|0)+2048>>12;k=(c[a+16>>2]|0)+2048>>12;f=N(k,-1567)|0;o=(c[a+20>>2]|0)+2048>>12;i=i+(g*4061|0)+f+(N(o,-3250)|0)|0;c[e>>2]=i;c[e+20>>2]=0-i;i=(n*1567|0)+(N(p,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(o,-2493)|0)|0;c[e+24>>2]=i;c[e+44>>2]=i;i=j+(p*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(o*3784|0)|0;c[e+4>>2]=i;c[e+16>>2]=0-i;n=N(n,-1567)|0;k=k*3784|0;i=n+(N(p,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(o*1567|0)|0;c[e+28>>2]=i;c[e+40>>2]=i;k=n+(p*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(o,-4061)|0)|0;c[e+8>>2]=k;c[e+12>>2]=0-k;o=j+(N(p,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(o,-535)|0)|0;c[e+32>>2]=o;c[e+36>>2]=o;o=(c[a+24>>2]|0)+2048>>12;f=(c[a+28>>2]|0)+2048>>12;g=N(f,-3784)|0;h=(c[a+32>>2]|0)+2048>>12;p=g+(o*2493|0)+(N(h,-535)|0)|0;j=(c[a+36>>2]|0)+2048>>12;k=(c[a+40>>2]|0)+2048>>12;n=N(k,-1567)|0;i=(c[a+44>>2]|0)+2048>>12;p=p+(j*4061|0)+n+(N(i,-3250)|0)|0;c[e+48>>2]=p;c[e+68>>2]=0-p;p=(f*1567|0)+(N(o,-3250)|0)+(h*4061|0)+(j*535|0)+(N(k,-3784)|0)+(N(i,-2493)|0)|0;c[e+72>>2]=p;c[e+92>>2]=p;p=g+(o*1567|0)+(h*3784|0)+(N(j,-1567)|0)+n+(i*3784|0)|0;c[e+52>>2]=p;c[e+64>>2]=0-p;f=N(f,-1567)|0;k=k*3784|0;p=f+(N(o,-3784)|0)+(h*1567|0)+(j*3784|0)+k+(i*1567|0)|0;c[e+76>>2]=p;c[e+88>>2]=p;k=f+(o*535|0)+(h*2493|0)+(N(j,-3250)|0)+k+(N(i,-4061)|0)|0;c[e+56>>2]=k;c[e+60>>2]=0-k;i=g+(N(o,-4061)|0)+(N(h,-3250)|0)+(N(j,-2493)|0)+n+(N(i,-535)|0)|0;c[e+80>>2]=i;c[e+84>>2]=i;i=(c[a+48>>2]|0)+2048>>12;n=(c[a+52>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+56>>2]|0)+2048>>12;o=j+(i*2493|0)+(N(h,-535)|0)|0;g=(c[a+60>>2]|0)+2048>>12;k=(c[a+64>>2]|0)+2048>>12;f=N(k,-1567)|0;a=(c[a+68>>2]|0)+2048>>12;o=o+(g*4061|0)+f+(N(a,-3250)|0)|0;c[e+96>>2]=o;c[e+116>>2]=0-o;o=(n*1567|0)+(N(i,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(a,-2493)|0)|0;c[e+120>>2]=o;c[e+140>>2]=o;o=j+(i*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(a*3784|0)|0;c[e+100>>2]=o;c[e+112>>2]=0-o;n=N(n,-1567)|0;k=k*3784|0;o=n+(N(i,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(a*1567|0)|0;c[e+124>>2]=o;c[e+136>>2]=o;k=n+(i*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(a,-4061)|0)|0;c[e+104>>2]=k;c[e+108>>2]=0-k;a=j+(N(i,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(a,-535)|0)|0;c[e+128>>2]=a;c[e+132>>2]=a;c[b>>2]=0;c[b+24>>2]=((c[e>>2]|0)+2048>>12)*535;c[b+48>>2]=(((c[e+48>>2]|0)+2048>>12)*535|0)+(((c[e+24>>2]|0)+2048>>12)*4061|0);c[b+72>>2]=(((c[e+96>>2]|0)+2048>>12)*535|0)+(((c[e+72>>2]|0)+2048>>12)*4061|0);c[b+96>>2]=((c[e+120>>2]|0)+2048>>12)*4061;c[b+120>>2]=0;c[b+4>>2]=0;c[b+28>>2]=((c[e+4>>2]|0)+2048>>12)*1567;c[b+52>>2]=(((c[e+52>>2]|0)+2048>>12)*1567|0)+(((c[e+28>>2]|0)+2048>>12)*3784|0);c[b+76>>2]=(((c[e+100>>2]|0)+2048>>12)*1567|0)+(((c[e+76>>2]|0)+2048>>12)*3784|0);c[b+100>>2]=((c[e+124>>2]|0)+2048>>12)*3784;c[b+124>>2]=0;c[b+8>>2]=0;c[b+32>>2]=((c[e+8>>2]|0)+2048>>12)*2493;c[b+56>>2]=(((c[e+56>>2]|0)+2048>>12)*2493|0)+(((c[e+32>>2]|0)+2048>>12)*3250|0);c[b+80>>2]=(((c[e+104>>2]|0)+2048>>12)*2493|0)+(((c[e+80>>2]|0)+2048>>12)*3250|0);c[b+104>>2]=((c[e+128>>2]|0)+2048>>12)*3250;c[b+128>>2]=0;c[b+12>>2]=0;c[b+36>>2]=((c[e+12>>2]|0)+2048>>12)*3250;c[b+60>>2]=(((c[e+60>>2]|0)+2048>>12)*3250|0)+(((c[e+36>>2]|0)+2048>>12)*2493|0);c[b+84>>2]=(((c[e+108>>2]|0)+2048>>12)*3250|0)+(((c[e+84>>2]|0)+2048>>12)*2493|0);c[b+108>>2]=((c[e+132>>2]|0)+2048>>12)*2493;c[b+132>>2]=0;c[b+16>>2]=0;c[b+40>>2]=((c[e+16>>2]|0)+2048>>12)*3784;c[b+64>>2]=(((c[e+64>>2]|0)+2048>>12)*3784|0)+(((c[e+40>>2]|0)+2048>>12)*1567|0);c[b+88>>2]=(((c[e+112>>2]|0)+2048>>12)*3784|0)+(((c[e+88>>2]|0)+2048>>12)*1567|0);c[b+112>>2]=((c[e+136>>2]|0)+2048>>12)*1567;c[b+136>>2]=0;c[b+20>>2]=0;c[b+44>>2]=((c[e+20>>2]|0)+2048>>12)*4061;c[b+68>>2]=(((c[e+68>>2]|0)+2048>>12)*4061|0)+(((c[e+44>>2]|0)+2048>>12)*535|0);c[b+92>>2]=(((c[e+116>>2]|0)+2048>>12)*4061|0)+(((c[e+92>>2]|0)+2048>>12)*535|0);c[b+116>>2]=((c[e+140>>2]|0)+2048>>12)*535;c[b+140>>2]=0;l=d;return}function Jf(b){b=b|0;var e=0,f=0,g=0,h=0;h=b+28|0;e=rf(h)|0;g=c[b+4>>2]|0;f=g+-1|0;a:do if(e>>>0>>0){b=e;while(1){e=b+1|0;if((a[b>>0]|0)==-1?(d[e>>0]|0)>223:0){e=b;break a}if(e>>>0>>0)b=e;else break}}while(0);if((g-e|0)<8){h=-1;return h|0}pf(h,e);h=0;return h|0}function Kf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=a+28|0;c[g>>2]=0;h=a+32|0;c[h>>2]=0;i=d+28|0;sf(i,11);if(!(tf(i,1)|0))c[g>>2]=c[g>>2]|16384;k=(tf(i,1)|0)==0;e=c[g>>2]|0;if(!k){if(e&16384|0){c[d+60>>2]=257;k=-1;l=j;return k|0}}else c[g>>2]=e|4096;k=tf(i,2)|0;c[a>>2]=4-k;if(!k){c[d+60>>2]=258;k=-1;l=j;return k|0}if(!(tf(i,1)|0)){c[g>>2]=c[g>>2]|16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];b[a+24>>1]=uf(f,16,-1)|0}e=tf(i,4)|0;if((e|0)==15){c[d+60>>2]=259;k=-1;l=j;return k|0}k=c[a>>2]|0;c[a+16>>2]=c[88592+(((c[g>>2]&4096|0)==0?k+-1|0:(k>>>1)+3|0)*60|0)+(e<<2)>>2];e=tf(i,2)|0;if((e|0)==3){c[d+60>>2]=260;k=-1;l=j;return k|0}e=c[88892+(e<<2)>>2]|0;d=a+20|0;c[d>>2]=e;f=c[g>>2]|0;if(f&4096|0?(c[d>>2]=e>>>1,f&16384|0):0)c[d>>2]=e>>>2;if(tf(i,1)|0)c[g>>2]=c[g>>2]|128;if(tf(i,1)|0)c[h>>2]=c[h>>2]|256;c[a+4>>2]=3-(tf(i,2)|0);c[a+8>>2]=tf(i,2)|0;if(tf(i,1)|0)c[g>>2]=c[g>>2]|32;if(tf(i,1)|0)c[g>>2]=c[g>>2]|64;c[a+12>>2]=tf(i,2)|0;if(!(c[g>>2]&16)){k=0;l=j;return k|0}b[a+26>>1]=tf(i,16)|0;k=0;l=j;return k|0}function Lf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;c[a>>2]=b;if(d>>>0>=e>>>0&(e|0)!=0){h=(d>>>0)/(e>>>0)|0;i=h+b|0;c[a>>2]=i;d=d-(N(h,e)|0)|0}else i=b;a:do if((e|0)>=16e3){if((e|0)<32e3){if((e|0)<22050){switch(e|0){case 16e3:break;default:{f=4;break a}}d=d*22050|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 22050:{d=d*16e3|0;b=a+4|0;c[b>>2]=d;break a}case 24e3:{d=d*14700|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}if((e|0)<48e3)if((e|0)<44100){switch(e|0){case 32e3:break;default:{f=4;break a}}d=d*11025|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 44100:break;default:{f=4;break a}}d=d*8e3|0;b=a+4|0;c[b>>2]=d;break}else if((e|0)<3528e5){switch(e|0){case 48e3:break;default:{f=4;break a}}d=d*7350|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 3528e5:break;default:{f=4;break a}}b=a+4|0;c[b>>2]=d;break}}else{if((e|0)<8e3){switch(e|0){case 1:case 0:break;case 1e3:{d=d*352800|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}c[a+4>>2]=0;return}if((e|0)<11025){switch(e|0){case 8e3:break;default:{f=4;break a}}d=d*44100|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 11025:{d=d*32e3|0;b=a+4|0;c[b>>2]=d;break a}case 12e3:{d=d*29400|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}while(0);if((f|0)==4){b=d;f=e;while(1){b=(b>>>0)%(f>>>0)|0;if(!b)break;else{h=f;f=b;b=h}}g=(d>>>0)/(f>>>0)|0;h=(e>>>0)/(f>>>0)|0;if(f>>>0>e>>>0)f=3528e5;else{d=3528e5;f=h;while(1){d=(d>>>0)%(f>>>0)|0;if(!d)break;else{e=f;f=d;d=e}}}d=3528e5/(f>>>0)|0;b=(h>>>0)/(f>>>0)|0;if(f>>>0>h>>>0)Wa(115992,116003,144,116011);do if(b>>>0>=d>>>0)if(b>>>0>>0){h=(g>>>0)/(b>>>0)|0;d=(((N(g-(N(h,b)|0)|0,d)|0)>>>0)/(b>>>0)|0)+(N(h,d)|0)|0;break}else{d=((N(d,g)|0)>>>0)/(b>>>0)|0;break}else{h=(d>>>0)/(b>>>0)|0;d=(((N(d-(N(h,b)|0)|0,g)|0)>>>0)/(b>>>0)|0)+(N(h,g)|0)|0}while(0);b=a+4|0;c[b>>2]=d}if(d>>>0<=352799999)return;h=(d>>>0)/3528e5|0;c[a>>2]=i+h;c[b>>2]=d-(N(h,3528e5)|0);return}function Mf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=v+48|0;i=v;t=a+28|0;s=t;r=c[s>>2]|0;s=c[s+4>>2]|0;o=c[b+28>>2]|0;d=o>>>7&1;o=(c[b>>2]|0)==3?((o&4096|0)==0?144:72):144;if(!(Jf(a)|0)){k=i+20|0;n=b+20|0;q=a+20|0;p=4-(d<<2)|0;h=d^1;d=0;do{e=j;f=a;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=i;f=b;g=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if(((Kf(i,j)|0)==0?(c[i>>2]|0)==(c[b>>2]|0):0)?(c[k>>2]|0)==(c[n>>2]|0):0){d=rf(t)|0;g=(c[b>>2]|0)==1;g=((N(c[n>>2]|0,(g?p:h)+(d-(c[q>>2]|0))|0)|0)>>>0)/((g?48:o)>>>0)|0;d=(g>>>0)/1e3|0;if(g>>>0>=8e3){u=8;break}}sf(t,8)}while((Jf(a)|0)==0);u=t;c[u>>2]=r;c[u+4>>2]=s;if(d>>>0>=8?!(d>>>0>640&(c[b>>2]|0)==3):0){c[a+16>>2]=d*1e3;u=0;l=v;return u|0}}else{u=t;c[u>>2]=r;c[u+4>>2]=s}c[a+60>>2]=257;u=-1;l=v;return u|0}function Nf(a){a=a|0;var b=0;kX(a|0,0,1024)|0;b=0;do{c[a+1536+(b<<5)>>2]=0;c[a+1024+(b<<5)>>2]=0;c[a+1536+(b<<5)+4>>2]=0;c[a+1024+(b<<5)+4>>2]=0;c[a+1536+(b<<5)+8>>2]=0;c[a+1024+(b<<5)+8>>2]=0;c[a+1536+(b<<5)+12>>2]=0;c[a+1024+(b<<5)+12>>2]=0;c[a+1536+(b<<5)+16>>2]=0;c[a+1024+(b<<5)+16>>2]=0;c[a+1536+(b<<5)+20>>2]=0;c[a+1024+(b<<5)+20>>2]=0;c[a+1536+(b<<5)+24>>2]=0;c[a+1024+(b<<5)+24>>2]=0;c[a+1536+(b<<5)+28>>2]=0;c[a+1024+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);kX(a+2048|0,0,1024)|0;b=0;do{c[a+3584+(b<<5)>>2]=0;c[a+3072+(b<<5)>>2]=0;c[a+3584+(b<<5)+4>>2]=0;c[a+3072+(b<<5)+4>>2]=0;c[a+3584+(b<<5)+8>>2]=0;c[a+3072+(b<<5)+8>>2]=0;c[a+3584+(b<<5)+12>>2]=0;c[a+3072+(b<<5)+12>>2]=0;c[a+3584+(b<<5)+16>>2]=0;c[a+3072+(b<<5)+16>>2]=0;c[a+3584+(b<<5)+20>>2]=0;c[a+3072+(b<<5)+20>>2]=0;c[a+3584+(b<<5)+24>>2]=0;c[a+3072+(b<<5)+24>>2]=0;c[a+3584+(b<<5)+28>>2]=0;c[a+3072+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);return}function Of(a){a=a|0;var b=0;kX(a+48|0,0,9216)|0;a=c[a+9264>>2]|0;if(!a)return;kX(a|0,0,2304)|0;b=0;do{c[a+2304+(b<<2)>>2]=0;c[a+2376+(b<<2)>>2]=0;c[a+2448+(b<<2)>>2]=0;c[a+2520+(b<<2)>>2]=0;c[a+2592+(b<<2)>>2]=0;c[a+2664+(b<<2)>>2]=0;c[a+2736+(b<<2)>>2]=0;c[a+2808+(b<<2)>>2]=0;c[a+2880+(b<<2)>>2]=0;c[a+2952+(b<<2)>>2]=0;c[a+3024+(b<<2)>>2]=0;c[a+3096+(b<<2)>>2]=0;c[a+3168+(b<<2)>>2]=0;c[a+3240+(b<<2)>>2]=0;c[a+3312+(b<<2)>>2]=0;c[a+3384+(b<<2)>>2]=0;c[a+3456+(b<<2)>>2]=0;c[a+3528+(b<<2)>>2]=0;c[a+3600+(b<<2)>>2]=0;c[a+3672+(b<<2)>>2]=0;c[a+3744+(b<<2)>>2]=0;c[a+3816+(b<<2)>>2]=0;c[a+3888+(b<<2)>>2]=0;c[a+3960+(b<<2)>>2]=0;c[a+4032+(b<<2)>>2]=0;c[a+4104+(b<<2)>>2]=0;c[a+4176+(b<<2)>>2]=0;c[a+4248+(b<<2)>>2]=0;c[a+4320+(b<<2)>>2]=0;c[a+4392+(b<<2)>>2]=0;c[a+4464+(b<<2)>>2]=0;c[a+4536+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=18);return}function Pf(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=1;return 0}function Qf(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=w+8|0;t=w;q=w+4|0;c[s>>2]=g;c[t>>2]=h;u=c[a>>2]|0;r=u+84|0;j=u+88|0;k=u+48|0;n=u+96|0;o=u+44|0;p=u+4|0;i=0;g=c[r>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g){if(!(c[n>>2]|0)){v=5;break}}else g=0;while(1){if((g|0)>=(h|0)){g=-100;break a}x=j;x=eX(c[x>>2]|0,c[x+4>>2]|0,8)|0;h=y;x=x|(d[(c[s>>2]|0)+g>>0]|0);z=j;c[z>>2]=x;c[z+4>>2]=h;h=Od[c[k>>2]&63](x,h,u,n,q)|0;if(h|0)break;g=g+1|0;h=c[t>>2]|0}if((h|0)<1){g=-100;break}z=j;c[z>>2]=0;c[z+4>>2]=0;g=g+1-(c[o>>2]|0)|0;c[r>>2]=h;if(c[q>>2]|0?((c[p>>2]|0)+g|0)>=1:0){i=1;break}g=h+g|0;c[r>>2]=g;i=1;h=c[t>>2]|0}if((v|0)==5)c[r>>2]=0;if((Uf(u,g,s,t)|0)>=0){c[e>>2]=c[s>>2];c[f>>2]=c[t>>2];h=c[u+100>>2]|0;if(h|0)c[b+16>>2]=h;if(i){if((c[b+16>>2]|0)!=86018){c[b+344>>2]=c[u+56>>2];c[b+348>>2]=c[u+52>>2];v=u+72|0;x=c[v+4>>2]|0;z=b+376|0;c[z>>2]=c[v>>2];c[z+4>>2]=x;c[a+304>>2]=c[u+64>>2];c[b+392>>2]=c[u+80>>2]}x=c[u+60>>2]|0;z=b+40|0;c[z>>2]=x;c[z+4>>2]=((x|0)<0)<<31>>31}}else{z=c[r>>2]|0;g=c[t>>2]|0;c[r>>2]=z-((z|0)>(g|0)?g:z);c[e>>2]=0;c[f>>2]=0}l=w;return g|0}function Rf(a){a=a|0;Sf(c[a>>2]|0);return}function Sf(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;Tf(c);return}function Tf(a){a=a|0;cT(a);return}function Uf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;i=r+8|0;j=r;p=b+24|0;k=b+28|0;q=b+4|0;h=c[p>>2]|0;while(1){if((h|0)<=0)break;o=c[b>>2]|0;s=c[k>>2]|0;c[k>>2]=s+1;s=a[o+s>>0]|0;h=c[q>>2]|0;c[q>>2]=h+1;a[o+h>>0]=s;h=(c[p>>2]|0)+-1|0;c[p>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[q>>2]|0;o=b+8|0;c[o>>2]=h;a:do if((e|0)==-100){e=Vf(c[b>>2]|0,b+12|0,(c[g>>2]|0)+64+h|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+64+(c[q>>2]|0);Wf(0,16,116538,j);e=-12;h=0}else{c[b>>2]=e;iX(e+(c[q>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[q>>2]|0)+(c[g>>2]|0)|0}c[q>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=116580;c[i+4>>2]=116604;c[i+8>>2]=356;Wf(0,0,159637,i);Ub()}h=h+e|0;c[k>>2]=h;c[g>>2]=h;h=c[q>>2]|0;if(h|0){i=e+64|0;h=Vf(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[n>>2]=i+(c[q>>2]|0);Wf(0,16,116538,n);c[q>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-64){iX(h+(c[q>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[q>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}q=(c[b>>2]|0)+((c[o>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[q>>0]|0);f=i;f=eX(c[f>>2]|0,c[f+4>>2]|0,8)|0;s=i;c[s>>2]=f|(d[q>>0]|0);c[s+4>>2]=y;c[p>>2]=(c[p>>2]|0)+1;e=e+1|0}}while(0);l=r;return e|0}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[b>>2]|0)>>>0>>0){f=2147483647+-32|0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;e=f>>>0>e>>>0?e:f;if(f>>>0>>0){e=0;a=0}else{a=bg(a,e)|0;e=(a|0)==0?0:e}c[b>>2]=e}return a|0}function Wf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;Xf(a,b,d,f);l=i;return}function Xf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(7)Yf(a,b,c,d);return}function Yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+5168|0;if((l|0)>=(m|0))W(5168);p=r+24|0;o=r+16|0;h=r;q=r+40|0;k=r+4136|0;n=r+32|0;i=(d|0)>-1;j=i?d&255:d;i=i?d>>>8&255:0;if((j|0)<=32){mX(182840)|0;Zf(b,j,e,f,q,88952,n);e=q+1024|0;s=c[e>>2]|0;f=q+2048|0;b=c[f>>2]|0;g=q+3072|0;d=c[g>>2]|0;c[h>>2]=c[q>>2];c[h+4>>2]=s;c[h+8>>2]=b;c[h+12>>2]=d;MU(k,1024,116624,h)|0;d=c[45717]|0;if(!d){b=(tV(2)|0)!=0;b=b?1:-1;c[45717]=b}else b=d;if((!((c[22238]|0)==0|0==0)?(s=(JT(k,257900)|0)!=0,!(s|(a[k>>0]|0)==0)):0)?(a[k+((DU(k)|0)+-1)>>0]|0)!=13:0){d=(c[45718]|0)+1|0;c[45718]=d;if((b|0)==1){s=c[27018]|0;c[o>>2]=d;iV(s,116633,o)|0}}else{d=c[45718]|0;if((d|0)>0){s=c[27018]|0;c[p>>2]=d;iV(s,116669,p)|0;c[45718]=0}NU(257900,k)|0;_f(c[q>>2]|0);$f(c[n>>2]|0,0,c[q>>2]|0);_f(c[e>>2]|0);$f(c[n+4>>2]|0,0,c[e>>2]|0);_f(c[f>>2]|0);s=j>>3;s=(s|0)>0?((s|0)<7?s:7):0;$f(s,i,c[f>>2]|0);_f(c[g>>2]|0);$f(s,i,c[g>>2]|0)}ag(q+3072|0,0)|0;nX(182840)|0}l=r;return}function Zf(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=y+24|0;v=y+16|0;u=y+8|0;s=y;if(!b)n=0;else n=c[b>>2]|0;eg(g,0,1);r=g+1024|0;eg(r,0,1);j=g+2048|0;eg(j,0,1);x=g+3072|0;eg(x,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((n|0)!=0&(c[h>>2]|0)!=0){o=c[n+20>>2]|0;do if(((o|0)!=0?(p=c[b+o>>2]|0,(p|0)!=0):0)?(q=c[p>>2]|0,(q|0)!=0):0){c[s>>2]=Kd[c[q+4>>2]&31](p)|0;c[s+4>>2]=p;fg(g,116860,s);if(k){c[i>>2]=gg(p)|0;w=11;break}else{c[v>>2]=Kd[c[n+4>>2]&31](b)|0;c[v+4>>2]=b;fg(r,116860,v);break}}else w=11;while(0);if((w|0)==11?(c[u>>2]=Kd[c[n+4>>2]&31](b)|0,c[u+4>>2]=b,fg(r,116860,u),k):0)c[i+4>>2]=gg(b)|0;if(0){c[t>>2]=hg(d)|0;fg(j,116871,t)}}ig(x,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[r>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[x>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[x>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}l=y;return}function _f(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function $f(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[22239]|0;if((f|0)<0){dg();f=c[22239]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[27018]|0;b=c[88960+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;iV(j,116705,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[27018]|0;c[i>>2]=(c[88960+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;iV(j,116721,i)|0;break}f=c[27018]|0;if((g|0)==256){b=c[88960+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;iV(f,116748,j)|0;break}else{UU(e,f)|0;break}}while(0);l=k;return}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){Sf(a);d=0}else d=0;else{if(!d){e=cg(f)|0;if(!e){d=-12;e=0}else{iX(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=bg(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function bg(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0>>0)a=0;else a=eT(a,((b|0)==0&1)+b|0)|0;return a|0}function cg(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=cg(1)|0;c[b>>2]=a;break}if(!(jT(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);l=d;return a|0}function dg(){var a=0,b=0,d=0;a=gc(116775)|0;do if((gc(116780)|0)==0?(gc(116789)|0)==0:0){if(a|0?tV(2)|0:0){b=1;break}b=(gc(116810)|0)!=0&1}else b=0;while(0);c[22239]=b;if(!(gc(116829)|0)){if(a|0?jV(a,116851)|0:0)d=9}else d=9;if((d|0)==9)c[22239]=b<<8;return}function eg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0>>0)jg(b,d+-1|0)|0;return}function fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=NT(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(jg(a,e)|0){j=7;break}}if((j|0)==7)kg(a,e);l=k;return}function gg(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Kd[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function hg(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=116916;break}case 7:{a=164658;break}case 6:{a=116908;break}case 5:{a=116903;break}case 4:{a=116895;break}case 3:{a=116889;break}case 2:{a=116883;break}case 1:{a=116877;break}default:a=262508}return a|0}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=k;h=a+8|0;i=a+4|0;while(1){f=c[h>>2]|0;e=c[i>>2]|0;f=f-(e>>>0>f>>>0?f:e)|0;if(!f)e=0;else e=(c[a>>2]|0)+e|0;c[g>>2]=c[d>>2];e=NT(e,f,b,g)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(jg(a,e)|0){j=7;break}}if((j|0)==7)kg(a,e);l=k;return}function jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(lg(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;h=i+1+(h>>>0>b>>>0?b:h)|0;b=d>>>0>e>>>1>>>0?e:d<<1;b=b>>>0>>0?(e>>>0>h>>>0?h:e):b;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;e=bg(d,b)|0;if(!e)b=-12;else{if(!d)iX(e|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=e;c[f>>2]=b;b=0}}else b=-1094995529;else b=-5;return b|0}function kg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function lg(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function mg(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=i+92|0;h=i+72|0;k=i;b=ng(a,b)|0;a=k;c[a>>2]=b;c[a+4>>2]=y;og(j,k+1|0);a=pg(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[116922+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}l=i;return a|0}function ng(a,b){a=a|0;b=b|0;a=gX(a|0)|0;b=gX(b|0)|0;y=a;return b|0} -function ik(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=c[f+21796>>2]|0;o=d+27016|0;m=c[o>>2]|0;h=u-(m<>2])|0;j=u+-1|0;n=d+26376|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=j+((k|0)==(l|0)?0:m)|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26372|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26368|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29940+((n&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((N(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29940+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((N(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25972|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26392|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28212>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function jk(f,g,h,i,j,k,n,o,p){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Sa=l;l=l+32|0;if((l|0)>=(m|0))W(32);Qa=Sa+16|0;Ma=Sa;Na=f+27016|0;Da=(N(c[Na>>2]|0,i)|0)+h|0;Ea=f+24364|0;Fa=c[(c[Ea>>2]|0)+(Da<<2)>>2]|0;Ga=(Fa>>>6&2^2)+2|0;Ha=f+28216|0;Ka=c[Ha>>2]|0;Ia=(c[Ka+12>>2]|0)!=0;Ka=(N(c[Ka+1184>>2]|0,-6)|0)+48|0;Ja=(c[g+872>>2]|0)+52+Ka|0;Ka=(c[g+876>>2]|0)+52+Ka|0;La=f+26376|0;Ca=g+21740|0;if((c[La>>2]|0)!=0?(Ba=c[Ca>>2]|0,!((Ba|0)==0|((Ba^Fa)&128|0)==0)):0){a:do if(!(Fa&7)){x=c[g+21828>>2]|0;t=i&1;h=f+28212|0;u=f+25972|0;v=f+26392|0;w=(x|0)!=0;s=0;while(1){if((s|0)==8){q=x;break a}r=w?s>>2:s&1;q=c[g+21720+(r<<2)>>2]|0;r=c[g+21740+(r<<2)>>2]|0;if(!(r&7)){if((r&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)q=d[(d[134419+(x<<4)+(t<<3)+s>>0]|0)+((c[u>>2]|0)+(q*48|0))>>0]|0;else q=((w?s&2:t)|0?32768:8192)&e[(c[v>>2]|0)+(q<<1)>>1];q=q|d[(s>>>1<<3)+12+(g+27824)>>0]|0?2:1}else q=4;b[Ma+(s<<1)>>1]=q;s=s+1|0}}else{h=Ma;c[h>>2]=262148;c[h+4>>2]=262148;h=Ma+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28212|0;q=c[g+21828>>2]|0}while(0);A=c[f+24340>>2]|0;Aa=a[A+Da>>0]|0;z=a[A+(c[g+21720>>2]|0)>>0]|0;A=a[A+(c[g+21724>>2]|0)>>0]|0;v=Aa+1|0;Ba=c[h>>2]|0;y=(d[Ba+548+Aa>>0]|0)+1|0;Aa=(d[Ba+636+Aa>>0]|0)+1|0;h=v+z>>1;w=(y+(d[Ba+548+z>>0]|0)|0)>>>1;z=(Aa+(d[Ba+636+z>>0]|0)|0)>>>1;v=v+A>>1;y=(y+(d[Ba+548+A>>0]|0)|0)>>>1;A=(Aa+(d[Ba+636+A>>0]|0)|0)>>>1;do if(!q){u=o<<1;r=h+Ja|0;s=d[133639+r>>0]|0;Ba=h+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](j,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](j,u,s,h,Qa);break}}while(0);r=j+o|0;x=Ma+2|0;s=v+Ja|0;t=d[133639+s>>0]|0;Ba=v+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);if(Ia){u=p<<1;r=w+Ja|0;s=d[133639+r>>0]|0;h=w+Ka|0;q=d[133483+h>>0]|0;h=r>>>0<68|h>>>0<68;if((c[(c[Ha>>2]|0)+12>>2]|0)==3){do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](k,u,s,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133639+s>>0]|0;Ba=y+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133639+r>>0]|0;Ba=z+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](n,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133639+s>>0]|0;Ba=A+Ka|0;q=d[133483+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,q,Qa);break}}else{do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](k,u,s,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133795+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(133795+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133639+s>>0]|0;Ba=y+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,u,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133639+r>>0]|0;Ba=z+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,u,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(133795+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133639+s>>0]|0;Ba=A+Ka|0;q=d[133483+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,u,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,u,t,q,Qa);break}}}}else{r=h+Ja|0;s=d[133639+r>>0]|0;Ba=h+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](j,o,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](j,o,s,h,Qa);break}}while(0);r=j+(o<<3)|0;x=Ma+8|0;s=v+Ja|0;t=d[133639+s>>0]|0;Ba=v+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,o,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,o,t,h,Qa);break}}while(0);if(Ia){h=c[(c[Ha>>2]|0)+12>>2]|0;if((h|0)==3){r=w+Ja|0;s=d[133639+r>>0]|0;Ba=w+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](k,p,s,h,Qa);break}}while(0);u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133639+s>>0]|0;Ba=y+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,p,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133639+r>>0]|0;Ba=z+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](n,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133795+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133795+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133639+s>>0]|0;Ba=A+Ka|0;q=d[133483+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](r,p,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,p,t,q,Qa);break}}r=(h|0)==2;s=w+Ja|0;t=d[133639+s>>0]|0;Ba=w+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](k,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](k,p,t,h,Qa);break}}while(0);if(r){u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133639+s>>0]|0;Ba=y+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133639+r>>0]|0;Ba=z+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133795+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133639+s>>0]|0;Ba=A+Ka|0;q=d[133483+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,q,Qa);break}}else{u=p<<2;r=k+u|0;s=y+Ja|0;t=d[133639+s>>0]|0;Ba=y+Ka|0;h=d[133483+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133639+r>>0]|0;Ba=z+Ka|0;h=d[133483+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133795+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133795+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133795+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133639+s>>0]|0;Ba=A+Ka|0;q=d[133483+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,q,Qa);break}}}}while(0);ga=1}else ga=0;ha=Da+-1|0;ia=g+21732|0;ja=Fa>>>3&7;ka=g+21856|0;la=Fa&16777216;ma=(Fa&7|0)==0;na=Ma+6|0;oa=Ma+4|0;pa=Ma+2|0;qa=f+24340|0;ra=f+25664|0;sa=g+852|0;ta=g+856|0;ua=Qa+1|0;va=Qa+2|0;wa=Qa+3|0;xa=f+52|0;ya=f+76|0;za=o<<2;Aa=f+48|0;Ba=f+72|0;I=(i&1|0)==0;J=Fa&128^128;K=o<<1;L=p<<1;M=f+28212|0;O=f+25972|0;P=f+26392|0;Q=g+27836|0;R=g+27837|0;S=Ma+2|0;T=Ma+4|0;U=Ma+6|0;V=g+27839|0;X=g+27838|0;Y=Ma+2|0;Z=Ma+4|0;_=Ma+6|0;$=Ma+6|0;aa=Ma+4|0;ba=Ma+2|0;ca=f+64|0;da=f+88|0;ea=f+60|0;fa=f+84|0;B=f+26380|0;C=g+21712|0;f=0;while(1){if((f|0)==2)break;i=(f|0)!=0;E=c[(c[Ha>>2]|0)+12>>2]|0;D=(E|0)==3;E=(E|0)==2;F=(f|0)==0;if(F)u=ha;else u=c[C>>2]|0;h=c[(F?Ca:ia)>>2]|0;H=a[134451+(f<<3)+ja>>0]|0;G=H&255;if(H<<24>>24==3)H=(c[ka>>2]&15|0)==0?1:4;else H=4;q=32>>>f|8;A=q&Fa;t=i^1;b:do if(!(ga&t|(h|0)==0)){r=c[La>>2]|0;if(!((h&J|0)==0|I&((f|0)==1&(r|0)!=0)^1)){w=Da-(c[Na>>2]<<1)|0;x=0;while(1){if((x|0)==2)break b;h=c[(c[Ea>>2]|0)+(w<<2)>>2]|0;c:do if(!((h|Fa)&7)){if((h&16777216|0)==0?1:(c[(c[M>>2]|0)+4>>2]|0)!=0){q=(c[O>>2]|0)+(w*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[Ma+(h<<1)>>1]=(a[q+h>>0]|a[h+12+(g+27824)>>0])<<24>>24?2:1;h=h+1|0}}h=b[(c[P>>2]|0)+(w<<1)>>1]|0;if(!(h&16384)){b[Ma>>1]=(a[Q>>0]|0)==0?1:2;if(!(a[R>>0]|0))q=1;else Ra=128}else{b[Ma>>1]=2;Ra=128}if((Ra|0)==128){Ra=0;q=2}b[S>>1]=q;if(h<<16>>16>=0){b[T>>1]=(a[X>>0]|0)==0?1:2;if(!(a[V>>0]|0))h=1;else Ra=132}else{b[T>>1]=2;Ra=132}if((Ra|0)==132){Ra=0;h=2}b[U>>1]=h}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611}while(0);r=c[qa>>2]|0;h=a[r+w>>0]|0;r=(a[r+Da>>0]|0)+1+(h<<24>>24)>>1;q=r+Ja|0;r=r+Ka|0;if(!(q>>>0<68|r>>>0<68)){h=d[133483+r>>0]|0;z=d[133639+q>>0]|0;y=j+(N(x,o)|0)|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(133795+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133795+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133795+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133795+(q<<2))>>0]|0;Vd[c[Aa>>2]&127](y,K,z,h,Qa);h=a[(c[qa>>2]|0)+w>>0]|0}z=c[M>>2]|0;u=h<<24>>24;h=(c[sa>>2]|0)+1+(d[z+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[z+636+u>>0]|0)>>1;do if(Ia){v=N(x,p)|0;r=k+v|0;s=h+Ja|0;t=d[133639+s>>0]|0;q=h+Ka|0;h=d[133483+q>>0]|0;q=s>>>0<68|q>>>0<68;if(D){if(!q){a[Qa>>0]=a[(b[Ma>>1]|0)+(133795+(s<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133795+(s<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133795+(s<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133795+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133483+h>>0]|0;y=d[133639+q>>0]|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(133795+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133795+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133795+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133795+(q<<2))>>0]|0;Vd[c[Aa>>2]&127](n+v|0,L,y,z,Qa);break}else{if(!q){a[Qa>>0]=(d[(b[Ma>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(133795+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133483+h>>0]|0;y=d[133639+q>>0]|0;a[Qa>>0]=(d[(b[Ma>>1]|0)+(133795+(q<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(133795+(q<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(133795+(q<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(133795+(q<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+v|0,L,y,z,Qa);break}}while(0);w=(c[Na>>2]|0)+w|0;x=x+1|0}}s=h|Fa;d:do if(!(s&7)){if(!((r|0)==0|t)?((h^Fa)&128|0)!=0:0){s=Ma;c[s>>2]=65537;c[s+4>>2]=65537;s=0}else if((A|0)==0|(h&q|0)==0)s=1;else{s=(lk(g,12,i?4:11,Ga)|0)&65535;b[$>>1]=s;b[aa>>1]=s;b[ba>>1]=s;b[Ma>>1]=s;s=0}t=i?8:1;r=0;while(1){if((r|0)==4)break;h=(F?r<<3:r)+12|0;q=h-t|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(s){h=(lk(g,h,q,Ga)|0)&65535;Ra=166}}else{h=2;Ra=166}if((Ra|0)==166){Ra=0;b[Ma+(r<<1)>>1]=h}r=r+1|0}z=b[Ma>>1]|0;h=b[ba>>1]|0;q=b[aa>>1]|0;r=b[$>>1]|0}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611;do if(s&128|0)if(!r)if(F&(c[B>>2]|0)!=3)break;else{z=3;h=3;q=3;r=3;break d}else if(F)break;else{z=3;h=3;q=3;r=3;break d}while(0);z=Ma;c[z>>2]=262148;c[z+4>>2]=262148;z=4;h=4;q=4;r=4}while(0);y=z<<16>>16;x=h<<16>>16;w=q<<16>>16;v=r<<16>>16;do if((x+w+y|0)!=(0-v|0)){s=c[qa>>2]|0;u=a[s+u>>0]|0;s=(a[s+Da>>0]|0)+1+u>>1;h=c[M>>2]|0;t=(c[sa>>2]|0)+1+(d[h+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[h+636+u>>0]|0)>>1;h=s+Ja|0;q=d[133639+h>>0]|0;s=s+Ka|0;r=d[133483+s>>0]|0;s=h>>>0<68|s>>>0<68;if(F){do if(!s)if(z<<16>>16>3){Ud[c[ca>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[133795+(h<<2)+y>>0]|0;a[ua>>0]=a[133795+(h<<2)+x>>0]|0;a[va>>0]=a[133795+(h<<2)+w>>0]|0;a[wa>>0]=a[133795+(h<<2)+v>>0]|0;Vd[c[xa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133639+r>>0]|0;q=t+Ka|0;h=d[133483+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Ud[c[ca>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[133795+(r<<2)+y>>0]|0;a[ua>>0]=a[133795+(r<<2)+x>>0]|0;a[va>>0]=a[133795+(r<<2)+w>>0]|0;a[wa>>0]=a[133795+(r<<2)+v>>0]|0;Vd[c[xa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133639+q>>0]|0;u=u+Ka|0;h=d[133483+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[ca>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[133795+(q<<2)+y>>0]|0;a[ua>>0]=a[133795+(q<<2)+x>>0]|0;a[va>>0]=a[133795+(q<<2)+w>>0]|0;a[wa>>0]=a[133795+(q<<2)+v>>0]|0;Vd[c[xa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Ud[c[da>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[133795+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[133795+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[133795+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[133795+(r<<2)+v>>0]|0)+1;Vd[c[ya>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133639+q>>0]|0;u=u+Ka|0;h=d[133483+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[da>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[133795+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[133795+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[133795+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[133795+(q<<2)+v>>0]|0)+1;Vd[c[ya>>2]&127](n,p,r,h,Qa);break}}}else{do if(!s)if(z<<16>>16>3){Ud[c[ea>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[133795+(h<<2)+y>>0]|0;a[ua>>0]=a[133795+(h<<2)+x>>0]|0;a[va>>0]=a[133795+(h<<2)+w>>0]|0;a[wa>>0]=a[133795+(h<<2)+v>>0]|0;Vd[c[Aa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133639+r>>0]|0;q=t+Ka|0;h=d[133483+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Ud[c[ea>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[133795+(r<<2)+y>>0]|0;a[ua>>0]=a[133795+(r<<2)+x>>0]|0;a[va>>0]=a[133795+(r<<2)+w>>0]|0;a[wa>>0]=a[133795+(r<<2)+v>>0]|0;Vd[c[Aa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133639+q>>0]|0;u=u+Ka|0;h=d[133483+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[ea>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[133795+(q<<2)+y>>0]|0;a[ua>>0]=a[133795+(q<<2)+x>>0]|0;a[va>>0]=a[133795+(q<<2)+w>>0]|0;a[wa>>0]=a[133795+(q<<2)+v>>0]|0;Vd[c[Aa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Ud[c[fa>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[133795+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[133795+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[133795+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[133795+(r<<2)+v>>0]|0)+1;Vd[c[Ba>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133639+q>>0]|0;u=u+Ka|0;h=d[133483+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[fa>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[133795+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[133795+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[133795+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[133795+(q<<2)+v>>0]|0)+1;Vd[c[Ba>>2]&127](n,p,r,h,Qa);break}}}}while(0)}while(0);z=F|E^1;y=(A|0)==0;x=i?8:1;w=1;while(1){if((w|0)>=(H|0))break;t=(la&w<<24|0)==0;do if(!(z&(t^1))){if(ma){if(!(w&G))if(y)r=1;else{r=(N(w,x)|0)+12|0;r=(lk(g,r,r-x|0,Ga)|0)&65535;b[na>>1]=r;b[oa>>1]=r;b[pa>>1]=r;b[Ma>>1]=r;r=0}else{r=Ma;c[r>>2]=0;c[r+4>>2]=0;r=0}s=0;while(1){if((s|0)==4)break;h=(F?w:s)+12+((F?s:w)<<3)|0;q=h-x|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(r){h=(lk(g,h,q,Ga)|0)&65535;Ra=230}}else{h=2;Ra=230}if((Ra|0)==230){Ra=0;b[Ma+(s<<1)>>1]=h}s=s+1|0}h=b[Ma>>1]|0;q=b[pa>>1]|0;r=b[oa>>1]|0;s=b[na>>1]|0;if(((q<<16>>16)+(h<<16>>16)+(r<<16>>16)|0)==(0-(s<<16>>16)|0))break;else v=s}else{h=Ma;c[h>>2]=196611;c[h+4>>2]=196611;h=3;q=3;r=3;v=3}s=a[(c[qa>>2]|0)+Da>>0]|0;if(F){u=w<<2;t=Ja+s|0;s=Ka+s|0;if(!(t>>>0<68|s>>>0<68)){i=d[133483+s>>0]|0;A=d[133639+t>>0]|0;s=j+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(t<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(t<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(t<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(t<<2))>>0]|0;Vd[c[xa>>2]&127](s,o,A,i,Qa)}if(!Ia)break;if(D){t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(s<<2))>>0]|0;Vd[c[xa>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(s<<2))>>0]|0;Vd[c[xa>>2]&127](u,p,A,i,Qa);break}if(w&1|0)break;u=w<<1;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[ya>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[ya>>2]&127](u,p,A,i,Qa);break}if(E){if(t?(Oa=Ja+s|0,Pa=Ka+s|0,!(Oa>>>0<68|Pa>>>0<68)):0){i=d[133483+Pa>>0]|0;A=d[133639+Oa>>0]|0;u=j+(N(za,w)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(Oa<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(Oa<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(Oa<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(Oa<<2))>>0]|0;Vd[c[Aa>>2]&127](u,o,A,i,Qa)}if(!Ia)break;u=N(w<<2,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+u|0,p,A,i,Qa);break}t=w<<2;u=Ja+s|0;s=Ka+s|0;if(!(u>>>0<68|s>>>0<68)){i=d[133483+s>>0]|0;A=d[133639+u>>0]|0;s=j+(N(t,o)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(u<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(u<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(u<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(u<<2))>>0]|0;Vd[c[Aa>>2]&127](s,o,A,i,Qa)}if(Ia){if(D){u=N(t,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(133795+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133795+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133795+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133795+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](n+u|0,p,A,i,Qa);break}if(!(w&1)){u=N(w<<1,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133483+t>>0]|0;A=d[133639+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133795+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133795+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+u|0,p,A,i,Qa)}}}}while(0);w=w+1|0}f=f+1|0}l=Sa;return}function kk(e,f,g,h,i,j,k,n,o){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;va=l;l=l+80|0;if((l|0)>=(m|0))W(80);ta=va+64|0;pa=va;q=c[e+96>>2]|0;do if((q|0)!=0?(p=c[e+28212>>2]|0,(c[p+724>>2]|0)==0):0){ga=c[e+25664>>2]|0;sa=c[e+28216>>2]|0;w=c[sa+12>>2]|0;ma=(w|0)!=0;oa=(w|0)==3;w=(w|0)==2;Y=c[f+21796>>2]|0;h=c[f+21740>>2]|0;ka=c[f+21732>>2]|0;sa=(N(c[sa+1184>>2]|0,-6)|0)+48|0;ra=(c[f+872>>2]|0)+52+sa|0;sa=(c[f+876>>2]|0)+52+sa|0;t=c[(c[e+24364>>2]|0)+(Y<<2)>>2]|0;la=c[e+24340>>2]|0;na=a[la+Y>>0]|0;Y=a[la+(Y+-1)>>0]|0;la=a[la+(c[f+21712>>2]|0)>>0]|0;qa=d[p+548+na>>0]|0;ja=na+1|0;v=ja+Y>>1;ja=ja+la>>1;g=qa+1|0;Y=(g+(d[p+548+Y>>0]|0)|0)>>>1;la=(g+(d[p+548+la>>0]|0)|0)>>>1;if(t&7|0){J=(c[e+26380>>2]|0)!=3?114142:114150;s=(h|0)!=0;if(s?(r=v+ra|0,u=v+sa|0,!(r>>>0<68|u>>>0<68)):0)Ud[c[e+64>>2]&255](i,n,d[133639+r>>0]|0,d[133483+u>>0]|0);f=(t&16777216|0)!=0;q=ra+na|0;r=133639+q|0;p=sa+na|0;h=133483+p|0;p=q>>>0<68|p>>>0<68;if(f){if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;kX(ta|0,a[133795+(q<<2)+3>>0]|0,4)|0;Vd[c[e+52>>2]&127](i+(8<>0]|0,pa=ja+sa|0,z=d[133483+pa>>0]|0,!(x>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](i,n,y,z);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(x<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(133795+(x<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(133795+(x<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(133795+(x<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,y,z,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;kX(ta|0,a[133795+(q<<2)+3>>0]|0,4)|0;Vd[c[e+48>>2]&127](i+(n<<3)|0,n,na,pa,ta)}}else{if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ha=a[133795+(q<<2)+3>>0]|0;ia=e+52|0;kX(ta|0,ha|0,4)|0;Vd[c[ia>>2]&127](i+(4<>2]&127](i+(8<>2]&127](i+(12<>0]|0,pa=ja+sa|0,C=d[133483+pa>>0]|0,!(A>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](i,n,B,C);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(A<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(133795+(A<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(133795+(A<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(133795+(A<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,B,C,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ia=a[133795+(q<<2)+3>>0]|0;ja=e+48|0;kX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n<<2)|0,n,na,pa,ta);kX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n<<3)|0,n,na,pa,ta);kX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n*12|0)|0,n,na,pa,ta)}}if(!ma)break;if(oa){if(s?(D=Y+ra|0,E=Y+sa|0,!(D>>>0<68|E>>>0<68)):0){o=d[133483+E>>0]|0;pa=d[133639+D>>0]|0;oa=e+64|0;Ud[c[oa>>2]&255](j,n,pa,o);Ud[c[oa>>2]&255](k,n,pa,o)}if(f){g=8<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;oa=a[133795+(f<<2)+3>>0]|0;pa=e+52|0;kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,n,qa,o,ta);kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,n,qa,o,ta)}do if(ka|0?(K=la+ra|0,L=d[133639+K>>0]|0,sa=la+sa|0,M=d[133483+sa>>0]|0,!(K>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Ud[c[sa>>2]&255](j,n,L,M);Ud[c[sa>>2]&255](k,n,L,M);break}else{na=a[(g<<16>>16)+(133795+(K<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(133795+(K<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(133795+(K<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(133795+(K<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Vd[c[sa>>2]&127](j,n,L,M,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Vd[c[sa>>2]&127](k,n,L,M,ta);break}}while(0);g=n<<3;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;o=a[133795+(f<<2)+3>>0]|0;e=e+48|0;kX(ta|0,o|0,4)|0;Vd[c[e>>2]&127](j+g|0,n,ra,sa,ta);kX(ta|0,o|0,4)|0;Vd[c[e>>2]&127](k+g|0,n,ra,sa,ta);break}else{g=4<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;i=a[133795+(f<<2)+3>>0]|0;oa=e+52|0;kX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](j+g|0,n,qa,o,ta);kX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+g|0,n,qa,o,ta);pa=8<>2]&127](j+pa|0,n,qa,o,ta);kX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+pa|0,n,qa,o,ta);pa=12<>2]&127](j+pa|0,n,qa,o,ta);kX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+pa|0,n,qa,o,ta)}do if(ka|0?(O=la+ra|0,P=d[133639+O>>0]|0,sa=la+sa|0,Q=d[133483+sa>>0]|0,!(O>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Ud[c[sa>>2]&255](j,n,P,Q);Ud[c[sa>>2]&255](k,n,P,Q);break}else{na=a[(g<<16>>16)+(133795+(O<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(133795+(O<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(133795+(O<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(133795+(O<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Vd[c[sa>>2]&127](j,n,P,Q,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Vd[c[sa>>2]&127](k,n,P,Q,ta);break}}while(0);g=n<<2;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;qa=a[133795+(f<<2)+3>>0]|0;o=e+48|0;kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+g|0,n,ra,sa,ta);kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+g|0,n,ra,sa,ta);e=n<<3;kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+e|0,n,ra,sa,ta);kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+e|0,n,ra,sa,ta);e=n*12|0;kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+e|0,n,ra,sa,ta);kX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+e|0,n,ra,sa,ta);break}}if(w){if(s?(F=Y+ra|0,G=Y+sa|0,!(F>>>0<68|G>>>0<68)):0){n=d[133483+G>>0]|0;pa=d[133639+F>>0]|0;oa=e+88|0;Ud[c[oa>>2]&255](j,o,pa,n);Ud[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[133795+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,o,qa,n,ta);kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(R=la+ra|0,S=d[133639+R>>0]|0,n=la+sa|0,T=d[133483+n>>0]|0,!(R>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Ud[c[n>>2]&255](j,o,S,T);Ud[c[n>>2]&255](k,o,S,T);break}else{na=(d[(g<<16>>16)+(133795+(R<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(133795+(R<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(133795+(R<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(133795+(R<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Vd[c[n>>2]&127](j,o,S,T,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Vd[c[n>>2]&127](k,o,S,T,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;qa=(d[133795+(f<<2)+3>>0]|0)+1&255;ra=e+72|0;kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+g|0,o,sa,n,ta);kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+g|0,o,sa,n,ta);e=o<<3;kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+e|0,o,sa,n,ta);kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+e|0,o,sa,n,ta);e=o*12|0;kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+e|0,o,sa,n,ta);kX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+e|0,o,sa,n,ta);break}else{if(s?(H=Y+ra|0,I=Y+sa|0,!(H>>>0<68|I>>>0<68)):0){n=d[133483+I>>0]|0;pa=d[133639+H>>0]|0;oa=e+88|0;Ud[c[oa>>2]&255](j,o,pa,n);Ud[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[133795+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,o,qa,n,ta);kX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(U=la+ra|0,V=d[133639+U>>0]|0,n=la+sa|0,X=d[133483+n>>0]|0,!(U>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Ud[c[n>>2]&255](j,o,V,X);Ud[c[n>>2]&255](k,o,V,X);break}else{na=(d[(g<<16>>16)+(133795+(U<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(133795+(U<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(133795+(U<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(133795+(U<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Vd[c[n>>2]&127](j,o,V,X,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Vd[c[n>>2]&127](k,o,V,X,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;ra=(d[133795+(f<<2)+3>>0]|0)+1&255;e=e+72|0;kX(ta|0,ra|0,4)|0;Vd[c[e>>2]&127](j+g|0,o,sa,n,ta);kX(ta|0,ra|0,4)|0;Vd[c[e>>2]&127](k+g|0,o,sa,n,ta);break}}r=(t&16777216|0)!=0;g=c[f+21856>>2]|0;if(r?!(oa|(g&7|0)!=7):0){q=pa;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+16|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+32|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+48|0;c[q>>2]=131074;c[q+4>>2]=131074;q=4}else{V=0-((t*5|0)>>>5&1)&3|t>>4;X=4-(0-(t>>>3&(g&15|0)==0)&3)|0;Zd[q&3](pa,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,X,(t>>24)+1|0,0-((h*5|0)>>>5&1&V>>>1)&3,V,(c[e+26380>>2]|0)!=3&1);q=X}if(h&7|0){X=pa;c[X>>2]=262148;c[X+4>>2]=262148}if(ka&7|0){V=(c[e+26380>>2]|0)!=3;X=pa+32|0;c[X>>2]=V?196611:262148;c[X+4>>2]=V?196611:262148}do if(h|0?(X=pa,V=c[X>>2]|0,s=V&65535,!((V|0)==0&(c[X+4>>2]|0)==0)):0){h=v+ra|0;p=d[133639+h>>0]|0;X=v+sa|0;g=d[133483+X>>0]|0;do if(!(h>>>0<68|X>>>0<68))if(s<<16>>16>3){Ud[c[e+64>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(s<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=Y+ra|0;f=d[133639+p>>0]|0;g=Y+sa|0;h=d[133483+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Ud[c[e+64>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](j,n,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Ud[c[e+64>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Ud[c[e+88>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+76>>2]&127](j,o,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Ud[c[e+88>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+76>>2]&127](k,o,f,h,ta);break}}}}while(0);do if((q|0)==1){if(ka|0?($=pa+32|0,qa=$,na=c[qa>>2]|0,J=na&65535,!((na|0)==0&(c[qa+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133639+h>>0]|0;qa=ja+sa|0;g=d[133483+qa>>0]|0;do if(!(h>>>0<68|qa>>>0<68))if(J<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(J<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133639+p>>0]|0;g=la+sa|0;h=d[133483+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}}else{if(r){r=pa+16|0;ia=r;f=c[ia>>2]|0;do if(!((f|0)==0&(c[ia+4>>2]|0)==0)){g=1<>>0<68|p>>>0<68)){ia=d[133483+p>>0]|0;ha=d[133639+h>>0]|0;a[ta>>0]=a[(f<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i+q|0,n,ha,ia,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ia=d[133483+h>>0]|0;ha=d[133639+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(133795+(g<<2))>>0]|0;_=pa+18|0;$=ta+1|0;a[$>>0]=a[(b[_>>1]|0)+(133795+(g<<2))>>0]|0;ca=pa+20|0;da=ta+2|0;a[da>>0]=a[(b[ca>>1]|0)+(133795+(g<<2))>>0]|0;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=a[(b[ea>>1]|0)+(133795+(g<<2))>>0]|0;ga=e+52|0;Vd[c[ga>>2]&127](j+q|0,n,ha,ia,ta);a[ta>>0]=a[(b[r>>1]|0)+(133795+(g<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(133795+(g<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(133795+(g<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(133795+(g<<2))>>0]|0;Vd[c[ga>>2]&127](k+q|0,n,ha,ia,ta);break}else{g=g<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ia=d[133483+p>>0]|0;ha=d[133639+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(133795+(h<<2))>>0]|0)+1;_=pa+18|0;$=ta+1|0;a[$>>0]=(d[(b[_>>1]|0)+(133795+(h<<2))>>0]|0)+1;ca=pa+20|0;da=ta+2|0;a[da>>0]=(d[(b[ca>>1]|0)+(133795+(h<<2))>>0]|0)+1;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=(d[(b[ea>>1]|0)+(133795+(h<<2))>>0]|0)+1;ga=e+76|0;Vd[c[ga>>2]&127](j+g|0,o,ha,ia,ta);a[ta>>0]=(d[(b[r>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[$>>0]=(d[(b[_>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[da>>0]=(d[(b[ca>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(133795+(h<<2))>>0]|0)+1;Vd[c[ga>>2]&127](k+g|0,o,ha,ia,ta);break}}while(0);do if(ka|0?(ba=pa+32|0,ka=ba,ia=c[ka>>2]|0,aa=ia&65535,!((ia|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133639+h>>0]|0;ka=ja+sa|0;g=d[133483+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(aa<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(aa<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133639+p>>0]|0;g=la+sa|0;h=d[133483+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);q=pa+48|0;la=q;h=c[la>>2]|0;if((h|0)==0&(c[la+4>>2]|0)==0)break;f=n<<3;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){na=d[133483+g>>0]|0;la=d[133639+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](i+f|0,n,la,na,ta)}if(!ma)break;if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133483+g>>0]|0;ra=d[133639+h>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(133795+(h<<2))>>0]|0;ma=pa+50|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0;i=pa+52|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(133795+(h<<2))>>0]|0;qa=pa+54|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0;e=e+48|0;Vd[c[e>>2]&127](j+f|0,n,ra,sa,ta);a[ta>>0]=a[(b[q>>1]|0)+(133795+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(133795+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e>>2]&127](k+f|0,n,ra,sa,ta);break}else{p=o<<2;h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;n=d[133483+g>>0]|0;sa=d[133639+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(133795+(h<<2))>>0]|0)+1;ma=pa+50|0;na=ta+1|0;a[na>>0]=(d[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0)+1;i=pa+52|0;oa=ta+2|0;a[oa>>0]=(d[(b[i>>1]|0)+(133795+(h<<2))>>0]|0)+1;qa=pa+54|0;ra=ta+3|0;a[ra>>0]=(d[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0)+1;e=e+72|0;Vd[c[e>>2]&127](j+p|0,o,sa,n,ta);a[ta>>0]=(d[(b[q>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[na>>0]=(d[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[oa>>0]=(d[(b[i>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0)+1;Vd[c[e>>2]&127](k+p|0,o,sa,n,ta);break}}g=pa+8|0;ba=g;h=c[ba>>2]|0;if(!((h|0)==0&(c[ba+4>>2]|0)==0)){p=4<>>0<68|q>>>0<68)){ba=d[133483+q>>0]|0;aa=d[133639+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133795+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+10>>1]|0)+(133795+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+12>>1]|0)+(133795+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+14>>1]|0)+(133795+(f<<2))>>0]|0;Vd[c[e+52>>2]&127](i+p|0,n,aa,ba,ta)}if(oa?(Z=ra+qa|0,_=sa+qa|0,!(Z>>>0<68|_>>>0<68)):0){ba=d[133483+_>>0]|0;aa=d[133639+Z>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(133795+(Z<<2))>>0]|0;T=pa+10|0;U=ta+1|0;a[U>>0]=a[(b[T>>1]|0)+(133795+(Z<<2))>>0]|0;V=pa+12|0;X=ta+2|0;a[X>>0]=a[(b[V>>1]|0)+(133795+(Z<<2))>>0]|0;Y=pa+14|0;_=ta+3|0;a[_>>0]=a[(b[Y>>1]|0)+(133795+(Z<<2))>>0]|0;$=e+52|0;Vd[c[$>>2]&127](j+p|0,n,aa,ba,ta);a[ta>>0]=a[(b[g>>1]|0)+(133795+(Z<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(133795+(Z<<2))>>0]|0;a[X>>0]=a[(b[V>>1]|0)+(133795+(Z<<2))>>0]|0;a[_>>0]=a[(b[Y>>1]|0)+(133795+(Z<<2))>>0]|0;Vd[c[$>>2]&127](k+p|0,n,aa,ba,ta)}}r=pa+16|0;ba=r;g=c[ba>>2]|0;do if(!((g|0)==0&(c[ba+4>>2]|0)==0)){h=1<>>0<68|f>>>0<68)){ba=d[133483+f>>0]|0;aa=d[133639+p>>0]|0;a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](i+q|0,n,aa,ba,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ba=d[133483+h>>0]|0;aa=d[133639+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(133795+(g<<2))>>0]|0;U=pa+18|0;V=ta+1|0;a[V>>0]=a[(b[U>>1]|0)+(133795+(g<<2))>>0]|0;X=pa+20|0;Y=ta+2|0;a[Y>>0]=a[(b[X>>1]|0)+(133795+(g<<2))>>0]|0;Z=pa+22|0;_=ta+3|0;a[_>>0]=a[(b[Z>>1]|0)+(133795+(g<<2))>>0]|0;$=e+52|0;Vd[c[$>>2]&127](j+q|0,n,aa,ba,ta);a[ta>>0]=a[(b[r>>1]|0)+(133795+(g<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(133795+(g<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(133795+(g<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(133795+(g<<2))>>0]|0;Vd[c[$>>2]&127](k+q|0,n,aa,ba,ta);break}else{g=h<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ba=d[133483+p>>0]|0;aa=d[133639+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(133795+(h<<2))>>0]|0)+1;U=pa+18|0;V=ta+1|0;a[V>>0]=(d[(b[U>>1]|0)+(133795+(h<<2))>>0]|0)+1;X=pa+20|0;Y=ta+2|0;a[Y>>0]=(d[(b[X>>1]|0)+(133795+(h<<2))>>0]|0)+1;Z=pa+22|0;_=ta+3|0;a[_>>0]=(d[(b[Z>>1]|0)+(133795+(h<<2))>>0]|0)+1;$=e+76|0;Vd[c[$>>2]&127](j+g|0,o,aa,ba,ta);a[ta>>0]=(d[(b[r>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[V>>0]=(d[(b[U>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[Y>>0]=(d[(b[X>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[_>>0]=(d[(b[Z>>1]|0)+(133795+(h<<2))>>0]|0)+1;Vd[c[$>>2]&127](k+g|0,o,aa,ba,ta);break}}while(0);f=pa+24|0;ba=f;q=c[ba>>2]|0;if(!((q|0)==0&(c[ba+4>>2]|0)==0)){g=12<>>0<68|p>>>0<68)){ga=d[133483+p>>0]|0;ba=d[133639+h>>0]|0;a[ta>>0]=a[(q<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+26>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+28>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+30>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i+g|0,n,ba,ga,ta)}if(oa?(ca=ra+qa|0,da=sa+qa|0,!(ca>>>0<68|da>>>0<68)):0){ga=d[133483+da>>0]|0;da=d[133639+ca>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(133795+(ca<<2))>>0]|0;X=pa+26|0;Y=ta+1|0;a[Y>>0]=a[(b[X>>1]|0)+(133795+(ca<<2))>>0]|0;Z=pa+28|0;_=ta+2|0;a[_>>0]=a[(b[Z>>1]|0)+(133795+(ca<<2))>>0]|0;$=pa+30|0;aa=ta+3|0;a[aa>>0]=a[(b[$>>1]|0)+(133795+(ca<<2))>>0]|0;ba=e+52|0;Vd[c[ba>>2]&127](j+g|0,n,da,ga,ta);a[ta>>0]=a[(b[f>>1]|0)+(133795+(ca<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(133795+(ca<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(133795+(ca<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(133795+(ca<<2))>>0]|0;Vd[c[ba>>2]&127](k+g|0,n,da,ga,ta)}}do if(ka|0?(fa=pa+32|0,ka=fa,ga=c[ka>>2]|0,ea=ga&65535,!((ga|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133639+h>>0]|0;ka=ja+sa|0;g=d[133483+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(ea<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(ea<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133639+p>>0]|0;g=la+sa|0;h=d[133483+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133795+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133795+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133795+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);g=pa+40|0;la=g;h=c[la>>2]|0;if(!((h|0)==0&(c[la+4>>2]|0)==0)){p=n<<2;f=ra+na|0;q=sa+na|0;if(!(f>>>0<68|q>>>0<68)){la=d[133483+q>>0]|0;ka=d[133639+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133795+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+42>>1]|0)+(133795+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+44>>1]|0)+(133795+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+46>>1]|0)+(133795+(f<<2))>>0]|0;Vd[c[e+48>>2]&127](i+p|0,n,ka,la,ta)}if(oa?(ha=ra+qa|0,ia=sa+qa|0,!(ha>>>0<68|ia>>>0<68)):0){la=d[133483+ia>>0]|0;ka=d[133639+ha>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(133795+(ha<<2))>>0]|0;ca=pa+42|0;da=ta+1|0;a[da>>0]=a[(b[ca>>1]|0)+(133795+(ha<<2))>>0]|0;ea=pa+44|0;fa=ta+2|0;a[fa>>0]=a[(b[ea>>1]|0)+(133795+(ha<<2))>>0]|0;ga=pa+46|0;ia=ta+3|0;a[ia>>0]=a[(b[ga>>1]|0)+(133795+(ha<<2))>>0]|0;ja=e+48|0;Vd[c[ja>>2]&127](j+p|0,n,ka,la,ta);a[ta>>0]=a[(b[g>>1]|0)+(133795+(ha<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(133795+(ha<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(133795+(ha<<2))>>0]|0;a[ia>>0]=a[(b[ga>>1]|0)+(133795+(ha<<2))>>0]|0;Vd[c[ja>>2]&127](k+p|0,n,ka,la,ta)}}q=pa+48|0;la=q;g=c[la>>2]|0;do if(!((g|0)==0&(c[la+4>>2]|0)==0)){f=n<<3;h=ra+na|0;p=sa+na|0;if(!(h>>>0<68|p>>>0<68)){la=d[133483+p>>0]|0;ka=d[133639+h>>0]|0;a[ta>>0]=a[(g<<16>>16)+(133795+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(133795+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i+f|0,n,ka,la,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;o=d[133483+h>>0]|0;ma=d[133639+g>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(133795+(g<<2))>>0]|0;fa=pa+50|0;ga=ta+1|0;a[ga>>0]=a[(b[fa>>1]|0)+(133795+(g<<2))>>0]|0;ha=pa+52|0;ia=ta+2|0;a[ia>>0]=a[(b[ha>>1]|0)+(133795+(g<<2))>>0]|0;ja=pa+54|0;ka=ta+3|0;a[ka>>0]=a[(b[ja>>1]|0)+(133795+(g<<2))>>0]|0;la=e+48|0;Vd[c[la>>2]&127](j+f|0,n,ma,o,ta);a[ta>>0]=a[(b[q>>1]|0)+(133795+(g<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(133795+(g<<2))>>0]|0;a[ia>>0]=a[(b[ha>>1]|0)+(133795+(g<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(133795+(g<<2))>>0]|0;Vd[c[la>>2]&127](k+f|0,n,ma,o,ta);break}else{g=o<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ma=d[133483+p>>0]|0;la=d[133639+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(133795+(h<<2))>>0]|0)+1;ea=pa+50|0;fa=ta+1|0;a[fa>>0]=(d[(b[ea>>1]|0)+(133795+(h<<2))>>0]|0)+1;ga=pa+52|0;ha=ta+2|0;a[ha>>0]=(d[(b[ga>>1]|0)+(133795+(h<<2))>>0]|0)+1;ia=pa+54|0;ja=ta+3|0;a[ja>>0]=(d[(b[ia>>1]|0)+(133795+(h<<2))>>0]|0)+1;ka=e+72|0;Vd[c[ka>>2]&127](j+g|0,o,la,ma,ta);a[ta>>0]=(d[(b[q>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[ha>>0]=(d[(b[ga>>1]|0)+(133795+(h<<2))>>0]|0)+1;a[ja>>0]=(d[(b[ia>>1]|0)+(133795+(h<<2))>>0]|0)+1;Vd[c[ka>>2]&127](k+g|0,o,la,ma,ta);break}}while(0);f=pa+56|0;o=f;h=c[o>>2]|0;if(!((h|0)==0&(c[o+4>>2]|0)==0)){q=n*12|0;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){o=d[133483+g>>0]|0;na=d[133639+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133795+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+58>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+60>>1]|0)+(133795+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+62>>1]|0)+(133795+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](i+q|0,n,na,o,ta)}if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133483+g>>0]|0;ra=d[133639+h>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(133795+(h<<2))>>0]|0;ma=pa+58|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0;i=pa+60|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(133795+(h<<2))>>0]|0;qa=pa+62|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0;e=e+48|0;Vd[c[e>>2]&127](j+q|0,n,ra,sa,ta);a[ta>>0]=a[(b[f>>1]|0)+(133795+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(133795+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(133795+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(133795+(h<<2))>>0]|0;Vd[c[e>>2]&127](k+q|0,n,ra,sa,ta)}}}while(0)}else ua=3;while(0);if((ua|0)==3)jk(e,f,g,h,i,j,k,n,o);l=va;return}function lk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function mk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;Ql(f,g,d*96|0);b=a+27792|0;Ql(b,a+27808|0,d*42|0);d=a+27796|0;h=h+27012|0;Rl(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;Rl(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{Sf(f);Sf(b);Sf(d);Sf(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function nk(a){a=a|0;var b=0;b=0-(ok(a)|0)&7;if(b|0)Pl(a,b);return}function ok(a){a=a|0;return c[a+8>>2]|0}function pk(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(ok(a)|0)|0}function qk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=f+e|0;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function rk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(N(c[(c[b+28216>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)>0?((b|0)<51?b:51):0;if((c[d+840>>2]|0)==1)f=142127;else f=135983+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(N(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function sk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29672>>2]|0)Ol((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function tk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+80|0;if((l|0)>=(m|0))W(80);ia=qa+40|0;da=qa+32|0;s=qa+24|0;t=qa+16|0;p=qa+8|0;u=qa;la=qa+72|0;aa=qa+56|0;ba=qa+52|0;X=qa+48|0;ka=f+28216|0;fa=c[ka>>2]|0;ma=f+28212|0;o=c[(c[ma>>2]|0)+64>>2]|0;k=fa+12|0;ea=((c[k>>2]|0)+-1|0)>>>0<2;na=c[f+25664>>2]|0;ga=g+21788|0;h=c[ga>>2]|0;ha=g+21792|0;i=c[ha>>2]|0;_=f+27016|0;pa=(N(c[_>>2]|0,i)|0)+h|0;oa=g+21796|0;c[oa>>2]=pa;ca=g+840|0;Z=f+26376|0;if((c[ca>>2]|0)!=1){if(!((c[Z>>2]|0)==0|(i&1|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=pl(f,g,h,i)|0;if(h){if((c[Z>>2]|0?(c[ha>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(pa<<2)>>2]=2048,oa=pl(f,g,c[ga>>2]|0,(c[ha>>2]|0)+1|0)|0,c[g+21652>>2]=oa,(oa|0)==0):0){oa=ql(f,g)|0;c[g+21828>>2]=oa;c[g+21832>>2]=oa}rl(f,g);b[(c[f+26392>>2]|0)+(pa<<1)>>1]=0;a[(c[f+26396>>2]|0)+pa>>0]=0;c[g+864>>2]=0;h=0}else ja=12}else ja=12;a:do if((ja|0)==12){if(c[Z>>2]|0?(c[ha>>2]&1|0)==0:0){$=ql(f,g)|0;c[g+21828>>2]=$;c[g+21832>>2]=$}c[g+21648>>2]=0;Y=g+21828|0;sl(f,g,0-(c[Y>>2]|0)|0);b:do switch(c[ca>>2]|0){case 3:{j=g+32856|0;c:do if(!(tl(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[la>>2]=0;h=0}else{if(!(tl(j,g+32934|0)|0)){h=(tl(j,g+32936|0)|0)+1|0;c[la>>2]=h;break}i=(tl(j,g+32935|0)|0)<<3;h=g+32936|0;i=((tl(j,h)|0)<<2)+i|0;i=i+((tl(j,h)|0)<<1)|0;i=i+(tl(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[la>>2]=h;break}switch(i|0){case 13:{h=ul(g,32,0)|0;c[la>>2]=h;ja=36;break b}case 14:{c[la>>2]=11;h=11;break c}case 15:{c[la>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(tl(j,h)|0)|0;c[la>>2]=h;break c}}}while(0);i=a[113990+(h<<2)+2>>0]|0;h=e[113990+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}case 2:{h=g+32856|0;if(tl(h,g+32918|0)|0){h=ul(g,17,0)|0;c[la>>2]=h;ja=36;break b}if(!(tl(h,g+32919|0)|0))h=(tl(h,g+32920|0)|0)*3|0;else h=2-(tl(h,g+32921|0)|0)|0;i=a[113954+(h<<2)+2>>0]|0;h=e[113954+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}default:{h=ul(g,3,1)|0;c[la>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[la>>2]=h;ja=36}else ja=36}}while(0);if((ja|0)==36){$=d[113850+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113850+(h<<2)+2>>0];h=e[113850+(h<<2)>>1]|0;c[la>>2]=h;i=0}if(c[Y>>2]|0){h=h|128;c[la>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){i=(N(c[fa+1184>>2]|0,e[114134+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=qk(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=-2065;a[(c[f+26396>>2]|0)+pa>>0]=0;a[(c[f+24340>>2]|0)+pa>>0]=0;j=(c[f+25972>>2]|0)+(pa*48|0)|0;k=j+48|0;do{a[j>>0]=16;j=j+1|0}while((j|0)<(k|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[la>>2];c[g+864>>2]=0;h=0;break}vl(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[ca>>2]|0)==3){h=0;while(1){if((h|0)==4)break;V=yl(g)|0;c[aa+(h<<2)>>2]=d[114082+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114082+((V&65535)<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){Mk(f,g,la);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;V=(d[146228+(h<<2)>>0]|0)+(g+28512)|0;U=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[V>>1]=U;b[V+8>>1]=U;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;V=zl(g)|0;c[aa+(h<<2)>>2]=d[113974+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[113974+((V&65535)<<2)>>1]|0;h=h+1|0}}while(0);V=g+23412|0;r=g+21832|0;q=0;f:while(1){h=c[V>>2]|0;if(q>>>0>=h>>>0){ja=80;break}n=4096<<(q<<1);p=g+23404+(q<<2)|0;k=0;while(1){if((k|0)>=4)break;h=e[g+28552+(k<<1)>>1]|0;if(!(h&256)){if(n&h){i=c[p>>2]<>2];if(i>>>0>1){j=k<<2;h=Al(g,q,j)|0;if(h>>>0>=i>>>0){ja=75;break f}}else{h=0;ja=76}}else{h=-1;ja=76}if((ja|0)==76){ja=0;j=k<<2}T=h&255;U=d[146228+j>>0]|0;a[U+9+(g+28272+(q*40|0))>>0]=T;a[U+8+(g+28272+(q*40|0))>>0]=T;a[U+1+(g+28272+(q*40|0))>>0]=T}k=k+1|0}q=q+1|0}do if((ja|0)==75){g=c[f+4>>2]|0;c[u>>2]=h;c[u+4>>2]=i;Wf(g,16,135531,u);h=-1}else if((ja|0)==80){if(!o)o=0;else{U=(c[(c[ka>>2]|0)+72>>2]|0)==0;o=g+28552|0;o=(((U?24117616:7340144)&c[o>>2]|0)==0?((U?24117616:7340144)&c[o+4>>2]|0)==0:0)&1}Q=f+24312|0;R=g+21740|0;S=g+21720|0;T=f+26360|0;U=f+26368|0;P=0;g:while(1){if(P>>>0>=h>>>0){ja=129;break}L=P<<1;I=4096<=4)break;O=H<<2;h=d[146228+O>>0]|0;a[g+28272+(P*40|0)+h>>0]=a[h+1+(g+28272+(P*40|0))>>0]|0;i=e[g+28552+(H<<1)>>1]|0;h:do if(!(i&256)){if(!(I&i)){c[g+27952+(P*160|0)+(h<<2)>>2]=0;c[g+27952+(P*160|0)+(h<<2)+4>>2]=0;c[g+27952+(P*160|0)+(h<<2)+32>>2]=0;c[g+27952+(P*160|0)+(h<<2)+36>>2]=0;ja=125;break}D=i&24|0?2:1;E=c[aa+(H<<2)>>2]|0;F=(i&8|0)==0;G=(i&16|0)==0;z=(i&32|0)==0;y=0;while(1){if((y|0)>=(E|0))break h;h=a[146228+((N(y,D)|0)+O)>>0]|0;A=h&255;B=g+27952+(P*160|0)+(A<<2)|0;C=g+28352+(P*80|0)+(A<<1)|0;q=a[g+28272+(P*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(P*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(P*40|0)+x>>0]|0;s=g+27952+(P*160|0)+(x<<2)|0;v=g+27952+(P*160|0)+(w<<2)|0;i=w+D|0;j=a[g+28272+(P*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[J>>0]|0)==-2){ja=99;break}p=c[(c[Q>>2]|0)+48>>2]|0;c[K>>2]=0;n=(c[R>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(n){ja=99;break}n=c[_>>2]|0;h=n+(c[S>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,n)|0)+h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=b[p+(n<<2)+2>>1]<<1;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!n){ja=99;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i&3)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=(b[p+(n<<2)+2>>1]|0)/2|0;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ja=99;while(0);do if((ja|0)==99){ja=0;if(j){k=A+-9|0;n=g+27952+(P*160|0)+(k<<2)|0;k=a[g+28272+(P*40|0)+k>>0]|0;break}else{n=g+27952+(P*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}else{h=Bl(h,b[v>>1]|0,b[n>>1]|0)|0;i=Bl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){h=b[s>>1]|0;i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}if(j){h=b[v>>1]|0;i=b[g+27952+(P*160|0)+(w<<2)+2>>1]|0;break}else{h=b[n>>1]|0;i=b[n+2>>1]|0;break}}else{h=Bl(b[s>>1]|0,b[v>>1]|0,b[n>>1]|0)|0;i=Bl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0}while(0);p=(d[g+28352+(P*80|0)+(w<<1)+1>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)+1>>0]|0)|0;w=Cl(g,40,(d[g+28352+(P*80|0)+(w<<1)>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)>>0]|0)|0,ba)|0;x=Cl(g,47,p,X)|0;p=w+h|0;n=x+i|0;if((w|0)==-2147483648|(x|0)==-2147483648){ja=123;break g}do if(F){if(!G){b[B+4>>1]=p;b[B+6>>1]=n;i=c[ba>>2]|0;a[C+2>>0]=i;h=c[X>>2]|0;j=h&255;k=1;ja=121;break}if(z){i=c[ba>>2]|0;h=c[X>>2]|0;break}else{b[B+32>>1]=p;b[B+34>>1]=n;i=c[ba>>2]|0;a[C+16>>0]=i;h=c[X>>2]|0;j=h&255;k=8;ja=121;break}}else{i=p&65535;b[B+36>>1]=i;b[B+32>>1]=i;b[B+4>>1]=i;i=n&65535;b[B+38>>1]=i;b[B+34>>1]=i;b[B+6>>1]=i;i=c[ba>>2]|0;h=i&255;a[C+18>>0]=h;a[C+16>>0]=h;a[C+2>>0]=h;h=c[X>>2]|0;j=h&255;a[C+19>>0]=j;a[C+17>>0]=j;k=1;ja=121}while(0);if((ja|0)==121){ja=0;a[C+(k<<1)+1>>0]=j}b[B>>1]=p;b[g+27952+(P*160|0)+(A<<2)+2>>1]=n;a[C>>0]=i;a[g+28352+(P*80|0)+(A<<1)+1>>0]=h;y=y+1|0}}else ja=125;while(0);if((ja|0)==125){ja=0;c[g+28352+(P*80|0)+(h<<1)>>2]=0;c[g+28352+(P*80|0)+(h<<1)+16>>2]=0}H=H+1|0}P=P+1|0;h=c[V>>2]|0}if((ja|0)==123){h=-1094995529;break}else if((ja|0)==129)break d}while(0);break a}if(h&256|0){Mk(f,g,la);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;o=c[fa+72>>2]&o;break}if(h&8|0){v=g+23412|0;k=c[la>>2]|0;n=g+21832|0;j=0;while(1){h=c[v>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];if(i>>>0>1){h=Al(g,j,0)|0;if(h>>>0>=i>>>0){ja=140;break}}else h=0;_=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=_;c[g+28272+(j*40|0)+20>>2]=_;c[g+28272+(j*40|0)+28>>2]=_;c[g+28272+(j*40|0)+36>>2]=_}j=j+1|0}if((ja|0)==140){g=c[f+4>>2]|0;c[p>>2]=h;c[p+4>>2]=i;Wf(g,16,135531,p);h=-1;break a}u=0;while(1){if(u>>>0>=h>>>0)break d;if(c[la>>2]&4096<<(u<<1)){i=a[g+28272+(u*40|0)+12>>0]|0;q=a[g+28272+(u*40|0)+4>>0]|0;r=a[g+28272+(u*40|0)+11>>0]|0;p=g+27952+(u*160|0)+44|0;s=g+27952+(u*160|0)+16|0;h=a[g+28272+(u*40|0)+8>>0]|0;if(h<<24>>24==-2){t=g+27952+(u*160|0)+12|0;n=a[g+28272+(u*40|0)+3>>0]|0}else{t=g+27952+(u*160|0)+32|0;n=h<<24>>24}j=q<<24>>24==i<<24>>24;k=r<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){k=b[p>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(u*160|0)+46>>1]|0;break}else{k=Bl(k,b[s>>1]|0,b[t>>1]|0)|0;h=Bl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0;break}}if(k){k=b[p>>1]|0;h=b[g+27952+(u*160|0)+46>>1]|0;break}if(j){k=b[s>>1]|0;h=b[g+27952+(u*160|0)+18>>1]|0;break}else{k=b[t>>1]|0;h=b[t+2>>1]|0;break}}else{k=Bl(b[p>>1]|0,b[s>>1]|0,b[t>>1]|0)|0;h=Bl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0}while(0);j=(d[g+28352+(u*80|0)+9>>0]|0)+(d[g+28352+(u*80|0)+23>>0]|0)|0;i=Cl(g,40,(d[g+28352+(u*80|0)+8>>0]|0)+(d[g+28352+(u*80|0)+22>>0]|0)|0,aa)|0;j=Cl(g,47,j,ba)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;_=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(u*80|0)+24>>2]=_;c[g+28352+(u*80|0)+28>>2]=_;c[g+28352+(u*80|0)+40>>2]=_;c[g+28352+(u*80|0)+44>>2]=_;c[g+28352+(u*80|0)+56>>2]=_;c[g+28352+(u*80|0)+60>>2]=_;c[g+28352+(u*80|0)+72>>2]=_;c[g+28352+(u*80|0)+76>>2]=_;h=j+h<<16|i+k&65535;c[g+27952+(u*160|0)+48>>2]=h;c[g+27952+(u*160|0)+52>>2]=h;c[g+27952+(u*160|0)+56>>2]=h;c[g+27952+(u*160|0)+60>>2]=h;c[g+27952+(u*160|0)+80>>2]=h;c[g+27952+(u*160|0)+84>>2]=h;c[g+27952+(u*160|0)+88>>2]=h;c[g+27952+(u*160|0)+92>>2]=h;c[g+27952+(u*160|0)+112>>2]=h;c[g+27952+(u*160|0)+116>>2]=h;c[g+27952+(u*160|0)+120>>2]=h;c[g+27952+(u*160|0)+124>>2]=h;c[g+27952+(u*160|0)+144>>2]=h;c[g+27952+(u*160|0)+148>>2]=h;c[g+27952+(u*160|0)+152>>2]=h;c[g+27952+(u*160|0)+156>>2]=h;h=c[v>>2]|0}u=u+1|0}h=-1094995529;break a}U=g+23412|0;q=c[la>>2]|0;r=g+21832|0;if(!(h&16))p=0;else{p=0;i:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Al(g,p,j<<3)|0;if(h>>>0>=i>>>0){ja=171;break i}}else h=0;h=N(h,16843009)|0}X=(j<<4|12)+(g+28272+(p*40|0))|0;c[X>>2]=h;c[X+8>>2]=h;j=j+1|0}p=p+1|0}if((ja|0)==171){g=c[f+4>>2]|0;c[t>>2]=h;c[t+4>>2]=i;Wf(g,16,135531,t);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;j:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+4|0;D=g+27952+(O*160|0)+16|0;E=g+27952+(O*160|0)+18|0;F=g+28272+(O*40|0)+11|0;G=g+27952+(O*160|0)+40|0;H=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+4>>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+20>>2]=0;V=g+27952+(O*160|0)+(X<<2)|0;X=g+27952+(O*160|0)+(X<<2)+32|0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[V+12>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0}else{z=A<<3;M=A<<4|12;r=a[g+28272+(O*40|0)+M>>0]|0;s=r<<24>>24;do if(!A){if((a[C>>0]|0)!=r<<24>>24){ja=183;break}k=b[D>>1]|0;j=b[E>>1]|0}else{if((a[J>>0]|0)!=r<<24>>24){ja=183;break}k=b[K>>1]|0;j=b[L>>1]|0}while(0);do if((ja|0)==183){ja=0;k=a[146228+z>>0]|0;p=k&255;y=p+-8|0;w=a[g+28272+(O*40|0)+y>>0]|0;x=p+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;t=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(y<<2)|0;h=p+-4|0;i=a[g+28272+(O*40|0)+h>>0]|0;n=i<<24>>24;i=i<<24>>24==-2;do if((p&7|0)==4&((k&255)>19&(i&(c[Z>>2]|0)!=0))){if((a[F>>0]|0)==-2){ja=192;break}q=c[(c[P>>2]|0)+48>>2]|0;c[G>>2]=0;j=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(j){ja=192;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=b[X+(p<<2)+2>>1]<<1;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ja=192;break}i=c[g+21720+(((k&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=192;while(0);do if((ja|0)==192){ja=0;if(i){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(h<<2)|0;break}}while(0);j=w<<24>>24==r<<24>>24;i=u<<24>>24==r<<24>>24;h=(i&1)+(j&1)+((n|0)==(s|0)&1)|0;if(h>>>0>1){k=Bl(b[t>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=Bl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[t>>1]|0;if(u<<24>>24!=-2&(w<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=Bl(k,b[v>>1]|0,b[p>>1]|0)|0;j=Bl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[t>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146228+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Cl(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Cl(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+4>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+20>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+8>>2]=X;c[g+27952+(O*160|0)+(M<<2)+12>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+40>>2]=X;c[g+27952+(O*160|0)+(M<<2)+44>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}k:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Al(g,p,j<<2)|0;if(h>>>0>=i>>>0){ja=220;break k}}else h=0;h=h*257&65535}X=(j<<1)+12+(g+28272+(p*40|0))|0;b[X>>1]=h;b[X+8>>1]=h;b[X+16>>1]=h;b[X+24>>1]=h;j=j+1|0}p=p+1|0}if((ja|0)==220){g=c[f+4>>2]|0;c[s>>2]=h;c[s+4>>2]=i;Wf(g,16,135531,s);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;l:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+11|0;D=g+27952+(O*160|0)+44|0;E=g+27952+(O*160|0)+46|0;F=g+27952+(O*160|0)+40|0;G=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+32>>2]=0;c[g+28352+(O*80|0)+(X<<1)+48>>2]=0;c[g+27952+(O*160|0)+(X<<2)>>2]=0;c[g+27952+(O*160|0)+(X<<2)+4>>2]=0;c[g+27952+(O*160|0)+(X<<2)+32>>2]=0;c[g+27952+(O*160|0)+(X<<2)+36>>2]=0;c[g+27952+(O*160|0)+(X<<2)+64>>2]=0;c[g+27952+(O*160|0)+(X<<2)+68>>2]=0;c[g+27952+(O*160|0)+(X<<2)+96>>2]=0;c[g+27952+(O*160|0)+(X<<2)+100>>2]=0}else{z=A<<2;M=(A<<1)+12|0;s=a[g+28272+(O*40|0)+M>>0]|0;w=s<<24>>24;do if(!A)if((a[C>>0]|0)==s<<24>>24){k=b[D>>1]|0;j=b[E>>1]|0}else ja=234;else{h=a[I>>0]|0;if(h<<24>>24==-2){i=J;h=a[K>>0]|0}else i=L;if(h<<24>>24!=s<<24>>24){ja=234;break}k=b[i>>1]|0;j=b[i+2>>1]|0}while(0);do if((ja|0)==234){ja=0;h=a[146228+z>>0]|0;p=h&255;x=p+-8|0;t=a[g+28272+(O*40|0)+x>>0]|0;y=p+-1|0;u=a[g+28272+(O*40|0)+y>>0]|0;r=g+27952+(O*160|0)+(y<<2)|0;v=g+27952+(O*160|0)+(x<<2)|0;i=p+-6|0;j=a[g+28272+(O*40|0)+i>>0]|0;n=j<<24>>24;j=j<<24>>24==-2;do if((p&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[C>>0]|0)==-2){ja=243;break}q=c[(c[P>>2]|0)+48>>2]|0;c[F>>2]=0;k=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(k){ja=243;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=b[X+(p<<2)+2>>1]<<1;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!k){ja=243;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=243;while(0);do if((ja|0)==243){ja=0;if(j){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==s<<24>>24;i=u<<24>>24==s<<24>>24;h=(i&1)+(j&1)+((n|0)==(w|0)&1)|0;if(h>>>0>1){k=Bl(b[r>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=Bl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[r>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=Bl(k,b[v>>1]|0,b[p>>1]|0)|0;j=Bl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[r>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146228+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Cl(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Cl(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+32>>2]=X;c[g+28352+(O*80|0)+(M<<1)+48>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+64>>2]=X;c[g+27952+(O*160|0)+(M<<2)+68>>2]=X;c[g+27952+(O*160|0)+(M<<2)+96>>2]=X;c[g+27952+(O*160|0)+(M<<2)+100>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}else{if(!(h&1)){aa=g+21660|0;ba=Kk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[aa>>2]|0,0)|0;c[aa>>2]=ba;if((ba|0)<0){h=-1;break a}}else{m:do if((o|0)!=0?(tl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[la>>2]=h|16777216;h=0;while(1){if((h|0)>=16)break m;ba=d[146228+h>>0]|0;aa=a[ba+-1+(g+21664)>>0]|0;_=a[ba+-8+(g+21664)>>0]|0;aa=(aa|0)>(_|0)?_:aa;ba=g+21664+ba|0;aa=(wl(g,(aa|0)<0?2:aa)|0)*257&65535;b[ba>>1]=aa;b[ba+8>>1]=aa;h=h+4|0}}else{h=0;ja=50}while(0);n:do if((ja|0)==50)while(1){ja=0;if((h|0)==16)break n;ja=d[146228+h>>0]|0;ba=a[ja+-1+(g+21664)>>0]|0;aa=a[ja+-8+(g+21664)>>0]|0;ba=(ba|0)>(aa|0)?aa:ba;a[g+21664+ja>>0]=wl(g,(ba|0)<0?2:ba)|0;h=h+1|0;ja=50}while(0);ba=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[ba>>2]=c[g+21700>>2];a[ba+4>>0]=a[g+21695>>0]|0;a[ba+5>>0]=a[g+21687>>0]|0;a[ba+6>>0]=a[g+21679>>0]|0;if((Jk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(ea){h=xl(f,g)|0;a[(c[f+26396>>2]|0)+pa>>0]=h;h=Kk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h}while(0);if(c[la>>2]&120|0){a[(c[f+26396>>2]|0)+pa>>0]=0;k=c[la>>2]|0;h=c[f+26368>>2]|0;i=(N(h<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;n=c[oa>>2]<<2;if(!(k&12288)){ba=(c[f+24384>>2]|0)+n|0;b[ba>>1]=-1;b[ba+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;aa=g+28e3|0;ba=c[aa+4>>2]|0;Z=j;c[Z>>2]=c[aa>>2];c[Z+4>>2]=ba;Z=g+28008|0;ba=c[Z+4>>2]|0;aa=j+8|0;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28032|0;ba=c[aa+4>>2]|0;Z=j+(h<<2)|0;_=Z;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28040|0;ba=c[_+4>>2]|0;Z=Z+8|0;c[Z>>2]=c[_>>2];c[Z+4>>2]=ba;Z=g+28064|0;ba=c[Z+4>>2]|0;_=j+(h<<1<<2)|0;aa=_;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28072|0;ba=c[aa+4>>2]|0;_=_+8|0;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28096|0;ba=c[_+4>>2]|0;j=j+(h*3<<2)|0;aa=j;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28104|0;ba=c[aa+4>>2]|0;j=j+8|0;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28424|0;aa=c[_+4>>2]|0;ba=j;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=j+6|0;b[ba+6>>1]=b[g+28382>>1]|0;b[ba+4>>1]=b[g+28398>>1]|0;b[ba+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}ba=(c[f+24384>>2]|0)+n|0;a[ba>>0]=a[g+28284>>0]|0;a[ba+1>>0]=a[g+28286>>0]|0;a[ba+2>>0]=a[g+28300>>0]|0;a[ba+3>>0]=a[g+28302>>0]|0}if(k&49152|0){aa=(c[f+24356>>2]|0)+(i<<2)|0;Z=g+28160|0;ba=c[Z+4>>2]|0;Y=aa;c[Y>>2]=c[Z>>2];c[Y+4>>2]=ba;Y=g+28168|0;ba=c[Y+4>>2]|0;Z=aa+8|0;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28192|0;ba=c[Z+4>>2]|0;Y=aa+(h<<2)|0;_=Y;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28200|0;ba=c[_+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[_>>2];c[Y+4>>2]=ba;Y=g+28224|0;ba=c[Y+4>>2]|0;_=aa+(h<<1<<2)|0;Z=_;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28232|0;ba=c[Z+4>>2]|0;_=_+8|0;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28256|0;ba=c[_+4>>2]|0;h=aa+(h*3<<2)|0;aa=h;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28264|0;ba=c[aa+4>>2]|0;h=h+8|0;c[h>>2]=c[aa>>2];c[h+4>>2]=ba;h=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28504|0;aa=c[_+4>>2]|0;ba=h;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=h+6|0;b[ba+6>>1]=b[g+28462>>1]|0;b[ba+4>>1]=b[g+28478>>1]|0;b[ba+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}ba=(c[f+24388>>2]|0)+n|0;a[ba>>0]=a[g+28324>>0]|0;a[ba+1>>0]=a[g+28326>>0]|0;a[ba+2>>0]=a[g+28340>>0]|0;a[ba+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[ca>>2]|0)!=3)){ca=(c[f+26408>>2]|0)+(c[oa>>2]<<2)|0;a[ca+1>>0]=(e[g+28554>>1]|0)>>>1;a[ca+2>>0]=(e[g+28556>>1]|0)>>>1;a[ca+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[la>>2]&2)){h=Dl(g)|0;if(ea)w=(El(g)|0)<<4|h;else w=h}else if($>>>0>15&(ea^1)){Wf(c[f+4>>2]|0,16,135551,da);h=-1094995529;break}else w=$;c[g+21856>>2]=w;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=w;u=(w&15|0)==0;if(!((o|0)==0|u)?(c[la>>2]&7|0)==0:0){ea=(tl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[la>>2]=c[la>>2]|ea}k=c[la>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ka>>2]|0)+12>>2]|0)!=3)){if((c[f+25704>>2]|0)>>>0>=151){h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){da=i<<4&64;ea=h<<4;a[ea+99+(g+27824)>>0]=da;a[ea+91+(g+27824)>>0]=da;a[ea+59+(g+27824)>>0]=da;a[ea+51+(g+27824)>>0]=da;a[ea+19+(g+27824)>>0]=da;a[(ea|11)+(g+27824)>>0]=da}h=h+1|0}ea=c[g+21732>>2]|0;h=(ea&4|0)==0?0:1077952576;if(!((ea|0)!=0&(ea&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}i=k&7;j=i|0?64:0;h=0;while(1){if((h|0)==2)break;ea=c[g+21740+(h<<2)>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=h<<4;a[ea+99+(g+27824)>>0]=j;a[ea+91+(g+27824)>>0]=j;a[ea+59+(g+27824)>>0]=j;a[ea+51+(g+27824)>>0]=j;a[ea+19+(g+27824)>>0]=j;a[(ea|11)+(g+27824)>>0]=j}h=h+1|0}ea=c[g+21732>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=(i|0)==0?0:1077952576;c[g+27828>>2]=ea;c[g+27868>>2]=ea;c[g+27908>>2]=ea}}while(0);c[(c[f+24364>>2]|0)+(pa<<2)>>2]=k;if((w|0)==0?(c[la>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ja=302;o:do if((ja|0)==302){x=g+32856|0;o=g+864|0;do if(tl(x,(c[o>>2]|0?61:60)+(g+32904)|0)|0){k=(c[fa+1184>>2]|0)*6|0;n=k+3|0;i=n<<1;h=62;j=1;while(1){if(!(tl(x,g+32904+h|0)|0)){ja=306;break}if((j|0)<(i|0)){h=63;j=j+1|0}else{ja=429;break}}if((ja|0)==306){s=j+1>>1;s=(j&1|0)==0?0-s|0:s;c[o>>2]=s;h=g+848|0;s=(c[h>>2]|0)+s|0;s=(s>>>0>n>>>0?((s|0)<0?k+4|0:-4-k|0):0)+s|0;c[h>>2]=s;ja=c[ma>>2]|0;c[g+852>>2]=d[ja+548+s>>0];c[g+856>>2]=d[ja+636+s>>0];break}else if((ja|0)==429){h=c[f+4>>2]|0;g=c[ha>>2]|0;c[ia>>2]=c[ga>>2];c[ia+4>>2]=g;Wf(h,16,135564,ia);h=-1;break a}}else{c[o>>2]=0;s=g+848|0;h=s;s=c[s>>2]|0}while(0);i=c[la>>2]|0;ja=(i&128|0)==0;t=(s|0)!=0;v=ja?(t?f+26428|0:f+26716|0):t?f+26572|0:f+26860|0;t=ja?(t?f+26444|0:f+26732|0):t?f+26588|0:f+26876|0;p:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break p;q:do if(!(1<>0]|0)+(g+27824)|0;b[ja>>1]=0;b[ja+8>>1]=0}else{if(!q){i=p<<2;j=g+28560+(p<<6<>2]|0)+173812+(r<<2)>>2]|0)+(s<<8)|0;do if((c[(c[ka>>2]|0)+12>>2]|0)==3){n=d[146228+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(Fl(x,((a[n+-8+(g+27824)>>0]|0?ja|2:ja)|1012)+(g+32904)|0)|0)break;ja=g+27824+n|0;b[ja>>1]=0;b[ja+8>>1]=0;break q}while(0);Hl(f,g,j,5,i,t,k,64);break}j=(c[(c[ma>>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=p<<2;i=0;while(1){if((i|0)==4)break q;n=i+k|0;o=d[146228+n>>0]|0;ja=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,(a[o+-8+(g+27824)>>0]|0?ja|2:ja)+93+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Hl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Fl(x,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else Gl(f,g,i,0,48,v,16);if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ma>>2]|0)+173788>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break p;n=d[146228+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,(a[n+-8+(g+27824)>>0]|0?ja|2:ja)+89+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Hl(f,g,g+28560+(i<<4<>2]|0)+12>>2]|0;if((j|0)!=3){i=(w&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;n=i+49|0;ja=1<>2]&ja|0)!=0&1;if(!(Fl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146228+n>>0]|0)+(g+27824)>>0]=0;else Gl(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=v+1|0;i=0;s:while(1){if((i|0)==2)break o;p=i+1|0;q=(c[(c[ma>>2]|0)+173788+((c[la>>2]&7|0?0:3)+p<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4){i=p;continue s}k=j+i|0;n=d[146228+k>>0]|0;ka=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,(a[n+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Hl(f,g,g+28560+(k<<4<>2]&ja|0)!=0&1;if(!(Fl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146228+n>>0]|0)+(g+27824)>>0]=0;else Il(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}w=16<>2]|0)+173788+((c[la>>2]&7|0?0:3)+v<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(u<<4<>0]|0;ka=(a[r+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,(a[r+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+r>>0]=0;else Hl(f,g,n,4,q,s,o,15);k=k+1|0;n=n+(w<<1)|0}i=i+(t<<1)|0;j=j+1|0}}}i=c[la>>2]|0;s=c[g+852>>2]|0;v:do if(!(i&2)){r=i&7|0?1:4;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break v;w:do if(!(1<>0]|0)+(g+27824)|0;b[ka>>1]=0;b[ka+8>>1]=0}else{if(!q){i=(p<<2)+16|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146228+i>>0]|0;ka=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[k+-8+(g+27824)>>0]|0?ka|2:ka)|1016)+(g+32904)|0)|0)){ka=g+27824+k|0;b[ka>>1]=0;b[ka+8>>1]=0;break}else{Hl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+16|0;i=0;while(1){if((i|0)==4)break w;n=k+i|0;o=d[146228+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|468)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Hl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Fl(x,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else Gl(f,g,i,6,49,v,16);if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ma>>2]|0)+173792>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break v;n=i+16|0;o=d[146228+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|464)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Hl(f,g,g+28560+(n<<4<>2]|0;s=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Fl(x,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else Gl(f,g,i,10,50,v,16);if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=(c[(c[ma>>2]|0)+173796>>2]|0)+(s<<6)|0;j=v+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;n=d[146228+k>>0]|0;ma=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[n+-8+(g+27824)>>0]|0?ma|2:ma)|476)+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Hl(f,g,g+28560+(k<<4<>0]|0)+(g+27824)|0;b[la>>1]=0;b[la+8>>1]=0}else{if(!q){i=(p<<2)+32|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146228+i>>0]|0;la=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[k+-8+(g+27824)>>0]|0?la|2:la)|1020)+(g+32904)|0)|0)){la=g+27824+k|0;b[la>>1]=0;b[la+8>>1]=0;break}else{Hl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+32|0;i=0;while(1){if((i|0)==4)break x;n=k+i|0;o=d[146228+n>>0]|0;la=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Fl(x,((a[o+-8+(g+27824)>>0]|0?la|2:la)|480)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Hl(f,g,g+28560+(n<<4<>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function uk(a,b){a=a|0;b=b|0;if((c[(c[a+28216>>2]|0)+12>>2]|0)==3)cl(a,b);else dl(a,b);return}function vk(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){al(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+26380|0;h=(c[i>>2]|0)!=3&1;k=c[b+21792>>2]>>h<<4;h=c[a+27008>>2]<<4>>h;g=c[a+26376>>2]|0;d=16<>2]|0)==0;d=(j|(k+d|0)<(h|0)?0:g)+d|0;g=k-(j?0:g)|0;if((!((h|0)<=(g|0)|(d+g|0)<0)?(f=h-g|0,e=(g|0)<0,f=((d|0)>(f|0)?f:d)+(e?g:0)|0,e=e?0:g,$k(a,b,e,f),(c[a+25684>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)Ai((c[a+24312>>2]|0)+4|0,e+-1+f|0,(c[i>>2]|0)==2&1);return}function xk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27016>>2]|0;g=(N(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26372>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return} -function _U(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=$U(a)|0;break}d=(QT(a)|0)==0;b=$U(a)|0;if(!d)RT(a)}else{if(!(c[27081]|0))b=0;else b=_U(c[27081]|0)|0;a=c[(YU()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=QT(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=$U(a)|0|b;if(d|0)RT(a);a=c[a+56>>2]|0}while((a|0)!=0);ZU()}while(0);return b|0}function $U(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Md[c[a+36>>2]&15](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Md[c[a+40>>2]&15](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=bV(a,b,f)|0;l=e;return d|0}function bV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=13;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=dV(e,b,d)|0;l=g;return h|0}function cV(a,b,c){a=a|0;b=b|0;c=c|0;return hV(a,b,c)|0}function dV(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=l;l=l+288|0;if((l|0)>=(m|0))W(288);I=O+8|0;J=O+17|0;K=O;L=O+16|0;if((c[b+76>>2]|0)>-1)N=QT(b)|0;else N=0;i=a[e>>0]|0;a:do if(i<<24>>24){A=b+4|0;B=b+100|0;C=b+108|0;D=b+8|0;E=J+10|0;F=J+33|0;G=J+46|0;H=J+94|0;z=I+4|0;n=e;v=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(vT(k&255)|0)){o=(a[n>>0]|0)==37;d:do if(o){k=n+1|0;p=a[k>>0]|0;e:do switch(p<<24>>24){case 37:break d;case 42:{x=0;k=n+2|0;break}default:{if(MT(p&255)|0?(a[n+2>>0]|0)==36:0){x=eV(f,(d[k>>0]|0)+-48|0)|0;k=n+3|0;break e}w=(c[f>>2]|0)+(4-1)&~(4-1);x=c[w>>2]|0;c[f>>2]=w+4}}while(0);if(!(MT(d[k>>0]|0)|0)){t=0;p=k}else{n=0;do{n=(n*10|0)+-48+(d[k>>0]|0)|0;k=k+1|0}while((MT(d[k>>0]|0)|0)!=0);t=n;p=k}o=a[p>>0]|0;r=p+1|0;if(o<<24>>24==109){k=(x|0)!=0&1;j=0;n=r;p=p+2|0;o=a[r>>0]|0;i=0}else{k=0;n=p;p=r}switch(o<<24>>24){case 104:{w=(a[p>>0]|0)==104;o=w?-2:-1;n=w?n+2|0:p;break}case 108:{w=(a[p>>0]|0)==108;o=w?3:1;n=w?n+2|0:p;break}case 106:{o=3;n=p;break}case 116:case 122:{o=1;n=p;break}case 76:{o=2;n=p;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:{o=0;break}default:{M=143;break b}}s=d[n>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:o;r=s&255;switch(r<<24>>24){case 99:{t=(t|0)>1?t:1;break}case 91:break;case 110:{fV(x,u,v,((v|0)<0)<<31>>31);o=v;break c}default:{sT(b,0);do{o=c[A>>2]|0;if(o>>>0<(c[B>>2]|0)>>>0){c[A>>2]=o+1;o=d[o>>0]|0}else o=uT(b)|0}while((vT(o)|0)!=0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}v=(c[C>>2]|0)+v+o-(c[D>>2]|0)|0}}sT(b,t);p=c[A>>2]|0;o=c[B>>2]|0;if(p>>>0>>0)c[A>>2]=p+1;else{if((uT(b)|0)<0){M=143;break b}o=c[B>>2]|0}if(o|0)c[A>>2]=(c[A>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){kX(J|0,-1,257)|0;a[J>>0]=0;if((s|0)==115){a[F>>0]=0;a[E>>0]=0;a[E+1>>0]=0;a[E+2>>0]=0;a[E+3>>0]=0;a[E+4>>0]=0}}else{s=n+1|0;r=(a[s>>0]|0)==94;o=r&1;n=r?n+2|0:s;kX(J|0,o|0,257)|0;a[J>>0]=0;switch(a[n>>0]|0){case 45:{r=(o^1)&255;a[G>>0]=r;n=n+1|0;break}case 93:{r=(o^1)&255;a[H>>0]=r;n=n+1|0;break}default:r=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{M=143;break b}case 93:break g;case 45:{p=n+1|0;o=a[p>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[J+n>>0]=r;o=a[p>>0]|0}while(n>>>0<(o&255)>>>0);n=p}else n=p;break}default:{}}while(0);a[J+((o&255)+1)>>0]=r;n=n+1|0}}while(0);o=w?t+1|0:31;s=(u|0)==1;u=(k|0)!=0;i:do if(s){if(u){i=bT(o<<2)|0;if(!i){j=0;i=0;M=143;break b}}else i=x;c[I>>2]=0;c[z>>2]=0;j=0;j:while(1){r=(i|0)==0;do{k:while(1){p=c[A>>2]|0;if(p>>>0<(c[B>>2]|0)>>>0){c[A>>2]=p+1;p=d[p>>0]|0}else p=uT(b)|0;if(!(a[J+(p+1)>>0]|0))break j;a[L>>0]=p;switch(KU(K,L,1,I)|0){case -1:{j=0;M=143;break b}case -2:break;default:break k}}if(!r){c[i+(j<<2)>>2]=c[K>>2];j=j+1|0}}while(!(u&(j|0)==(o|0)));o=o<<1|1;p=eT(i,o<<2)|0;if(!p){j=0;M=143;break b}else i=p}if(!(gV(I)|0)){j=0;M=143;break b}else{r=j;j=0;p=i}}else{if(u){j=bT(o)|0;if(!j){j=0;i=0;M=143;break b}i=0;while(1){r=i;do{i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0;if(!(a[J+(i+1)>>0]|0)){p=0;i=0;break i}p=r;r=r+1|0;a[j+p>>0]=i}while((r|0)!=(o|0));o=o<<1|1;p=eT(j,o)|0;if(!p){i=0;M=143;break b}else{i=r;j=p}}}if(!x)while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=0;j=0;p=0;i=0;break i}}j=0;while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=uT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=j;j=x;p=0;i=0;break i}a[x+j>>0]=i;j=j+1|0}}while(0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}o=o-(c[D>>2]|0)+(c[C>>2]|0)|0;if(!o)break b;if(!((o|0)==(t|0)|w^1))break b;do if(u)if(s){c[x>>2]=p;break}else{c[x>>2]=j;break}while(0);if(!w){if(p|0)c[p+(r<<2)>>2]=0;if(!j){j=0;break f}a[j+r>>0]=0}break}case 120:case 88:case 112:{o=16;M=131;break}case 111:{o=8;M=131;break}case 117:case 100:{o=10;M=131;break}case 105:{o=0;M=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{q=+tU(b,u,0);if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if(x)switch(u|0){case 0:{g[x>>2]=q;break f}case 1:{h[x>>3]=q;break f}case 2:{h[x>>3]=q;break f}default:break f}break}default:{}}while(0);do if((M|0)==131){M=0;o=tT(b,o,0,-1,-1)|0;if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){c[x>>2]=o;break}else{fV(x,u,o,y);break}}while(0);e=e+((x|0)!=0&1)|0;o=(c[C>>2]|0)+v+(c[A>>2]|0)-(c[D>>2]|0)|0;break c}while(0);n=n+(o&1)|0;sT(b,0);k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=uT(b)|0;if((k|0)!=(d[n>>0]|0)){M=23;break b}o=v+1|0}else{while(1){k=n+1|0;if(!(vT(d[k>>0]|0)|0))break;else n=k}sT(b,0);do{k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=uT(b)|0}while((vT(k)|0)!=0);if(!(c[B>>2]|0))k=c[A>>2]|0;else{k=(c[A>>2]|0)+-1|0;c[A>>2]=k}o=(c[C>>2]|0)+v+k-(c[D>>2]|0)|0}while(0);n=n+1|0;k=a[n>>0]|0;if(!(k<<24>>24))break a;else v=o}if((M|0)==23){if(c[B>>2]|0)c[A>>2]=(c[A>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{k=0;e=j;M=144}}else if((M|0)==143)if(!e){e=j;M=144}if((M|0)==144){j=e;e=-1}if(k){cT(j);cT(i)}}else e=0;while(0);if(N|0)RT(b);l=O;return e|0}function eV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function fV(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function gV(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function hV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=ZT(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;iX(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function iV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=OT(a,b,f)|0;l=e;return d|0}function jV(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=EU(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=kV(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=lV(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=mV(b,c)|0;break}else{b=nV(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function kV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function lV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function mV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function nV(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+1056|0;if((l|0)>=(m|0))W(1056);w=y+1024|0;x=y;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){r=0;do{if(!(a[b+r>>0]|0)){f=0;break a}v=f&255;u=w+(v>>>5<<2)|0;c[u>>2]=c[u>>2]|1<<(v&31);r=r+1|0;c[x+(v<<2)>>2]=r;f=a[e+r>>0]|0}while(f<<24>>24!=0);o=r>>>0>1;if(o){k=1;j=1;n=0;i=-1;p=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+p>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+n|0;break}else{h=k;f=j+1|0;g=n;break}else if((f&255)>(g&255)){h=p-i|0;f=1;g=p;break}else{h=1;f=1;g=n+1|0;i=n;break}while(0);p=f+g|0;if(p>>>0>=r>>>0)break;else{k=h;j=f;n=g}}if(o){o=1;n=1;p=0;g=-1;q=1;while(1){f=a[e+(n+g)>>0]|0;j=a[e+q>>0]|0;do if(f<<24>>24==j<<24>>24)if((n|0)==(o|0)){f=o;j=1;k=o+p|0;break}else{f=o;j=n+1|0;k=p;break}else if((f&255)<(j&255)){f=q-g|0;j=1;k=q;break}else{f=1;j=1;k=p+1|0;g=p;break}while(0);q=j+k|0;if(q>>>0>=r>>>0){v=r;j=25;break}else{o=f;n=j;p=k}}}else{v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){t=(g+1|0)>>>0>(i+1|0)>>>0;f=t?f:h;t=t?g:i;u=t+1|0;if(!(KT(e,e+f|0,u)|0)){o=v-f|0;s=o;n=f}else{o=v-t+-1|0;o=(t>>>0>o>>>0?t:o)+1|0;s=0;n=o;o=v-o|0}p=v|63;q=v+-1|0;r=(s|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0>>0){i=ZT(g,0,p)|0;if(i)if((i-h|0)>>>0>>0){f=0;break b}else break;else{i=g+p|0;break}}else i=g;while(0);g=d[f+q>>0]|0;c:do if(!(1<<(g&31)&c[w+(g>>>5<<2)>>2])){h=0;g=v}else{g=v-(c[x+(g<<2)>>2]|0)|0;if(g|0){h=0;g=r&(k|0)!=0&g>>>0>>0?o:g;break}j=u>>>0>k>>>0;g=j?u:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-t|0;break c}while(0);if(!j)break b;g=u;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=s;g=n;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);l=y;return f|0}function oV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function pV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(QT(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=WU(d,b)|0;RT(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=WU(d,b)|0}while(0);return e|0}function qV(a,b){a=a|0;b=b|0;return +(+rV(a,b,1))}function rV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;sT(h,0);e=+tU(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=(d|0)==0?a:a+d|0;l=i;return +e}function sV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(N(g,d)|0)|0;f=Ld[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function tV(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(nT(kb(54,d|0)|0)|0)==0&1;l=b;return a|0}function uV(){Xa(186252);return}function vV(){return 186236}function wV(){return 186244}function xV(){return 186248}function yV(){return 186252}function zV(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=bT(b)|0;if(a|0)break;a=RW()|0;if(!a){a=0;break}Qd[a&7]()}return a|0}function AV(a){a=a|0;cT(a);return}function BV(a,b){a=a|0;b=b|0;var d=0,e=0;e=DU(b)|0;d=zV(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=CV(d)|0;iX(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function CV(a){a=a|0;return a+12|0}function DV(a,b){a=a|0;b=b|0;c[a>>2]=108828;BV(a+4|0,b);return}function EV(a){a=a|0;return 1}function FV(a){a=a|0;Ub()}function GV(a){a=a|0;Ub()}function HV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(e>>>0>4294967279)FV(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=zV(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}IV(b,d,e)|0;a[f>>0]=0;JV(b+e|0,f);l=g;return}function IV(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)iX(a|0,b|0,c|0)|0;return a|0}function JV(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function KV(a){a=a|0;return DU(a)|0}function LV(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)kX(a|0,(MV(c)|0)&255|0,b|0)|0;return a|0}function MV(a){a=a|0;return a&255|0}function NV(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;g=h?c[d+4>>2]|0:g&255;if(g>>>0>>0)GV(b);else{g=g-e|0;HV(b,(h?c[d>>2]|0:d)+e|0,g>>>0>>0?g:f);return}}function OV(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;if((-18-d|0)>>>0>>0)FV(b);if((a[b+11>>0]|0)<0)o=c[b>>2]|0;else o=b;if(d>>>0<2147483623){k=e+d|0;n=d<<1;k=k>>>0>>0?n:k;k=k>>>0<11?11:k+16&-16}else k=-17;n=zV(k)|0;if(g|0)IV(n,o,g)|0;if(i|0)IV(n+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)IV(n+g+i|0,o+g+h|0,f)|0;if((d|0)!=10)AV(o);c[b>>2]=n;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[p>>0]=0;JV(n+i|0,p);l=q;return}function PV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;JV(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;JV(b+d|0,g);a[h>>0]=d;break}else QV(b,d-f|0,e)|0;while(0);l=j;return}function QV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0>>0){RV(b,g,h+d-g|0,h,h,0,0);f=a[j>>0]|0}if(f<<24>>24<0)g=c[b>>2]|0;else g=b;LV(g+h|0,d,e)|0;f=h+d|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;JV(g+f|0,i)}l=k;return b|0}function RV(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)FV(b);if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=zV(j)|0;if(g|0)IV(k,l,g)|0;e=f-h-g|0;if(e|0)IV(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)AV(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function SV(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;f=e<<24>>24<0;if(f)e=c[b+4>>2]|0;else e=e&255;if(e>>>0<=d>>>0)GV(b);if(f)b=c[b>>2]|0;return b+d|0}function TV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;j=b+11|0;f=a[j>>0]|0;h=f<<24>>24<0;if(h){g=(c[b+8>>2]&2147483647)+-1|0;f=c[b+4>>2]|0}else{g=10;f=f&255}if((g-f|0)>>>0>=e>>>0){if(e|0){if(h)g=c[b>>2]|0;else g=b;IV(g+f|0,d,e)|0;f=f+e|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;JV(g+f|0,i)}}else OV(b,g,f+e-g|0,f,f,0,e,d);l=k;return b|0}function UV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if(f>>>0>4294967279)FV(b);if(f>>>0<11)a[b+11>>0]=e;else{i=f+16&-16;f=zV(i)|0;c[b>>2]=f;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=f}IV(b,d,e)|0;a[g>>0]=0;JV(b+e|0,g);l=h;return}function VV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[b+(f<<2)>>2]=0;f=f+1|0}h=KV(d)|0;g=e+11|0;f=a[g>>0]|0;f=f<<24>>24<0?c[e+4>>2]|0:f&255;UV(b,d,h,f+h|0);TV(b,(a[g>>0]|0)<0?c[e>>2]|0:e,f)|0;return}function WV(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;a=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=a+32|0;d=a+24|0;i=a+16|0;g=a;e=a+36|0;a=XV()|0;if(a|0?(f=c[a>>2]|0,f|0):0){a=f+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=182209;YV(182159,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[f+44>>2]|0;else a=f+80|0;c[e>>2]=a;f=c[f>>2]|0;a=c[f+4>>2]|0;if(Md[c[(c[13138]|0)+16>>2]&15](52552,f,e)|0){i=c[e>>2]|0;i=Kd[c[(c[i>>2]|0)+8>>2]&31](i)|0;c[g>>2]=182209;c[g+4>>2]=a;c[g+8>>2]=i;YV(182073,g)}else{c[i>>2]=182209;c[i+4>>2]=a;YV(182118,i)}}YV(182197,h)}function XV(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Dc(186256,6)|0)){b=yc(c[46565]|0)|0;l=a;return b|0}else YV(182348,a);return 0}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=b;d=c[27018]|0;OT(d,a,e)|0;pV(10,d)|0;Ub()}function ZV(a){a=a|0;return}function _V(a){a=a|0;ZV(a);AV(a);return}function $V(a){a=a|0;return}function aW(a){a=a|0;return}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=h;if(!(fW(a,b,0)|0))if((b|0)!=0?(g=jW(b,52576,52560,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ud[c[(c[g>>2]|0)+28>>2]&255](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function cW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(fW(a,c[b+8>>2]|0,g)|0)iW(0,b,d,e,f);return}function dW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(fW(b,c[d+8>>2]|0,g)|0)){if(fW(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else hW(0,d,e,f);while(0);return}function eW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(fW(a,c[b+8>>2]|0,0)|0)gW(0,b,d,e);return}function fW(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function gW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function iW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function jW(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;if((l|0)>=(m|0))W(64);p=r;o=c[d>>2]|0;q=d+(c[o+-8>>2]|0)|0;o=c[o+-4>>2]|0;c[p>>2]=f;c[p+4>>2]=d;c[p+8>>2]=e;c[p+12>>2]=g;d=p+16|0;e=p+20|0;g=p+24|0;h=p+28|0;i=p+32|0;j=p+40|0;k=d;n=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(fW(o,f,0)|0){c[p+48>>2]=1;Wd[c[(c[o>>2]|0)+20>>2]&63](o,p,q,q,1,0);d=(c[g>>2]|0)==1?q:0}else{Vd[c[(c[o>>2]|0)+24>>2]&127](o,p,q,1,0);switch(c[p+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=r;return d|0}function kW(a){a=a|0;ZV(a);AV(a);return}function lW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(fW(a,c[b+8>>2]|0,g)|0)iW(0,b,d,e,f);else{a=c[a+8>>2]|0;Wd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e,f,g)}return}function mW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if(!(fW(b,c[d+8>>2]|0,g)|0)){if(!(fW(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Vd[c[(c[i>>2]|0)+24>>2]&127](i,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;j=d+53|0;a[j>>0]=0;b=c[b+8>>2]|0;Wd[c[(c[b>>2]|0)+20>>2]&63](b,d,e,e,1,g);if(a[j>>0]|0)if(!(a[f>>0]|0)){f=1;b=11}else b=15;else{f=0;b=11}do if((b|0)==11){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(f){b=15;break}else{f=4;break}}if(f)b=15;else f=4}while(0);if((b|0)==15)f=3;c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else hW(0,d,e,f);while(0);return}function nW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(fW(a,c[b+8>>2]|0,0)|0)gW(0,b,d,e);else{a=c[a+8>>2]|0;Ud[c[(c[a>>2]|0)+28>>2]&255](a,b,d,e)}return}function oW(a){a=a|0;return}function pW(){var a=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Ac(186260,25)|0)){l=a;return}else YV(182397,a)}function qW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);cT(a);if(!(Ec(c[46565]|0,0)|0)){l=b;return}else YV(182447,b)}function rW(){var a=0,b=0;a=XV()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)sW(c[b+12>>2]|0);sW(tW()|0)}function sW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);Qd[a&7]();YV(182500,b)}function tW(){var a=0;a=c[27184]|0;c[27184]=a+0;return a|0}function uW(a){a=a|0;return}function vW(a){a=a|0;c[a>>2]=108828;zW(a+4|0);return}function wW(a){a=a|0;vW(a);AV(a);return}function xW(a){a=a|0;return yW(a+4|0)|0}function yW(a){a=a|0;return c[a>>2]|0}function zW(a){a=a|0;var b=0,d=0;if(EV(a)|0?(b=AW(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)AV(b);return}function AW(a){a=a|0;return a+-12|0}function BW(a){a=a|0;vW(a);AV(a);return}function CW(a){a=a|0;ZV(a);AV(a);return}function DW(a,b,c){a=a|0;b=b|0;c=c|0;return fW(a,b,0)|0}function EW(a){a=a|0;ZV(a);AV(a);return}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=j;c[d>>2]=c[c[d>>2]>>2];if(!(GW(a,b,0)|0))if(((b|0)!=0?(e=jW(b,52576,52664,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(fW(c[a>>2]|0,c[b>>2]|0,0)|0)?!(fW(c[a>>2]|0,52696,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=jW(a,52576,52560,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=jW(f,52576,52560,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ud[c[(c[i>>2]|0)+28>>2]&255](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function GW(a,b,c){a=a|0;b=b|0;c=c|0;if(fW(a,b,0)|0)a=1;else a=fW(b,52704,0)|0;return a|0}function HW(a){a=a|0;ZV(a);AV(a);return}function IW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(fW(b,c[d+8>>2]|0,h)|0)iW(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;MW(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;MW(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function JW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(fW(b,c[d+8>>2]|0,g)|0)){if(!(fW(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;NW(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;NW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;NW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;NW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;MW(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else hW(0,d,e,f);while(0);return}function KW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(fW(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;LW(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{LW(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else gW(0,d,e,f);while(0);return}function LW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ud[c[(c[a>>2]|0)+28>>2]&255](a,b,d+f|0,(g&2|0)==0?2:e);return}function MW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Wd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function NW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Vd[c[(c[a>>2]|0)+24>>2]&127](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function OW(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function PW(a){a=a|0;return}function QW(a){a=a|0;return}function RW(){var a=0;a=c[46566]|0;c[46566]=a+0;return a|0}function SW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=c[d>>2];a=Md[c[(c[a>>2]|0)+16>>2]&15](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function TW(a){a=a|0;if(!a)a=0;else a=(jW(a,52576,52664,0)|0)!=0&1;return a|0}function UW(){}function VW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (y=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function WW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (y=d,a-c>>>0|0)|0}function XW(a){a=a|0;return (a?31-(Q(a^a-1)|0)|0:32)|0}function YW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (y=n,f)|0}else{if(!g){n=0;f=0;return (y=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (y=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (y=n,f)|0}g=h-1|0;if(g&h|0){i=(Q(h|0)|0)+33-(Q(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (y=o,p)|0}else{p=XW(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (y=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (y=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (y=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((XW(i|0)|0)>>>0);return (y=o,p)|0}g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (y=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=VW(m|0,l|0,-1,-1)|0;d=y;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;WW(k|0,d|0,e|0,n|0)|0;p=y;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=WW(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=y;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (y=o,p)|0}function ZW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=WW(j^a|0,i^b|0,j|0,i|0)|0;g=y;a=f^j;b=e^i;return WW((YW(h,g,WW(f^c|0,e^d|0,f|0,e|0)|0,y,0)|0)^a|0,y^b|0,a|0,b|0)|0}function _W(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=N(e,f)|0;d=a>>>16;a=(c>>>16)+(N(e,d)|0)|0;e=b>>>16;b=N(e,f)|0;return (y=(a>>>16)+(N(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function $W(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=_W(e,f)|0;a=y;return (y=(N(b,f)|0)+(N(d,e)|0)+a|a&0,c|0|0)|0}function aX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=WW(h^a|0,g^b|0,h|0,g|0)|0;b=y;YW(a,b,WW(k^d|0,j^e|0,k|0,j|0)|0,y,i)|0;e=WW(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=y;l=f;return (y=d,e)|0}function bX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return YW(a,b,c,d,0)|0}function cX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>c;return a>>>c|(b&(1<>c-32|0}function dX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>>c;return a>>>c|(b&(1<>>c-32|0}function eX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b<>>32-c;return a<>8&255|0}function gX(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function hX(a){a=+a;return a>=0.0?+z(a+.5):+M(a-.5)}function iX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return dc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function jX(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else iX(b,c,d)|0;return b|0}function kX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function lX(a){a=a|0;return 0}function mX(a){a=a|0;return 0}function nX(a){a=a|0;return 0}function oX(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){V()|0;eb(12);return -1}c[i>>2]=b;if((b|0)>(U()|0)?(T()|0)==0:0){c[i>>2]=d;eb(12);return -1}return d|0}function pX(a,b){a=a|0;b=+b;return +Gd[a&15](+b)}function qX(a,b,c){a=a|0;b=b|0;c=+c;return +Hd[a&0](b|0,+c)}function rX(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Id[a&0](b|0,+c,+d)}function sX(a){a=a|0;return Jd[a&1]()|0}function tX(a,b){a=a|0;b=b|0;return Kd[a&31](b|0)|0}function uX(a,b,c){a=a|0;b=b|0;c=c|0;return Ld[a&15](b|0,c|0)|0}function vX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Md[a&15](b|0,c|0,d|0)|0}function wX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Nd[a&3](b|0,c|0,d|0,e|0)|0}function xX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Od[a&63](b|0,c|0,d|0,e|0,f|0)|0}function yX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Pd[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function zX(a){a=a|0;Qd[a&7]()}function AX(a,b){a=a|0;b=b|0;Rd[a&31](b|0)}function BX(a,b,c){a=a|0;b=b|0;c=c|0;Sd[a&255](b|0,c|0)}function CX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Td[a&1023](b|0,c|0,d|0)}function DX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ud[a&255](b|0,c|0,d|0,e|0)}function EX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Vd[a&127](b|0,c|0,d|0,e|0,f|0)}function FX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Wd[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function GX(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Xd[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function HX(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Yd[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function IX(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Zd[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function JX(a){a=+a;X(0);return 0.0}function KX(a){a=+a;return +Fc(+a)}function LX(a){a=+a;return +Zb(+a)}function MX(a){a=+a;return +Hc(+a)}function NX(a){a=+a;return +Xb(+a)}function OX(a){a=+a;return +Wb(+a)}function PX(a){a=+a;return +Vb(+a)}function QX(a){a=+a;return +ec(+a)}function RX(a){a=+a;return +rc(+a)}function SX(a){a=+a;return +fc(+a)}function TX(a,b){a=a|0;b=+b;Y(1);return 0.0}function UX(a,b,c){a=a|0;b=+b;c=+c;Z(2);return 0.0}function VX(){_(3);return 0}function WX(a){a=a|0;$(4);return 0}function XX(a,b){a=a|0;b=b|0;aa(5);return 0}function YX(a,b,c){a=a|0;b=b|0;c=c|0;ba(6);return 0}function ZX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(7);return 0}function _X(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;da(8);return 0}function $X(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ea(9);return 0}function aY(){fa(10)}function bY(){$a()}function cY(a){a=a|0;ga(11)}function dY(a,b){a=a|0;b=b|0;ha(12)}function eY(a,b,c){a=a|0;b=b|0;c=c|0;ia(13)}function fY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ja(14)}function gY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(15)}function hY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;la(16)}function iY(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;ma(17)}function jY(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;na(18)}function kY(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;oa(19)} +function Qt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=d[b+((N(((c|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;p=d[b+(f+-1)>>0]|0;r=(r+2+(q<<1)+p|0)>>>2;l=f<<1;o=d[b+(l+-1)>>0]|0;q=(q+2+(p<<1)+o|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;p=(p+2+(o<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;o=(o+2+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;s=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+s|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(s<<1)+i|0)>>>2;i=(s+2+(i*3|0)|0)>>>2;a[b>>0]=(r+1+q|0)>>>1;a[b+1>>0]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&255;a[b+2>>0]=r;a[b+f>>0]=r;q=(q+2+(p<<1)+o|0)>>>2&255;a[b+3>>0]=q;a[b+(f+1)>>0]=q;q=(p+1+o|0)>>>1&255;a[b+4>>0]=q;a[b+(f+2)>>0]=q;a[b+l>>0]=q;p=(p+2+(o<<1)+n|0)>>>2&255;a[b+5>>0]=p;a[b+(f+3)>>0]=p;a[b+(l|1)>>0]=p;p=(o+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+2+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(i+1+k|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function Rt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;l=d[a+-1>>0]|0;k=d[a+(f+-1)>>0]|0;j=d[a+((f<<1)+-1)>>0]|0;i=d[a+((f*3|0)+-1)>>0]|0;h=d[a+((f<<2)+-1)>>0]|0;g=d[a+((f*5|0)+-1)>>0]|0;b=d[a+((f*6|0)+-1)>>0]|0;e=d[a+((f*7|0)+-1)>>0]|0;e=N(((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(b<<1)+e|0)>>>2)+((b+2+(e*3|0)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function St(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[a+(0-f)>>0]|0;m=d[a+(1-f)>>0]|0;l=d[a+(2-f)>>0]|0;k=d[a+(3-f)>>0]|0;j=d[a+(4-f)>>0]|0;i=d[a+(5-f)>>0]|0;h=d[a+(6-f)>>0]|0;g=d[a+(7-f)>>0]|0;e=N((((d[a+((((b|0)!=0)<<31>>31)-f)>>0]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(d[a+((e|0?8:7)-f)>>0]|0)+(g<<1)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Tt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function Ut(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function Wt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function Xt(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function Yt(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(N((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(N((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(N(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function Zt(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(N((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(N((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if((e|0)>=9)break;o=p+c|0;n=q+m|0;f=(N((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(N(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function _t(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;j=d[a+((N(e,b)|0)+-1)>>0]|0;j=f+j+(d[a+(e-b)>>0]|0)|0;k=e+4|0;e=e+1|0;f=j;g=g+(d[a+(k-b)>>0]|0)|0;h=h+(d[a+((N(k,b)|0)+-1)>>0]|0)|0}i=N(f+4>>3,16843009)|0;j=N(g+2>>2,16843009)|0;k=h+2>>2;f=h+4+g>>3;e=0;while(1){if((e|0)==4)break;h=a+(N(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=N(k,16843009)|0;f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(N(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function $t(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=f+(d[a+((N(e,b)|0)+-1)>>0]|0)|0;h=g+(d[a+((N(e+4|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=i;g=h}h=N(f+2>>2,16843009)|0;f=g+2>>2;e=0;while(1){if((e|0)==4)break;i=a+(N(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(N(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function au(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function bu(a,b){a=a|0;b=b|0;au(a,b);wt(a,0,b);return}function cu(a,b){a=a|0;b=b|0;_t(a,b);Gt(a,0,b);return}function du(a,b){a=a|0;b=b|0;$t(a,b);a=a+(b<<2)|0;Ht(a,0,b);Ht(a+4|0,0,b);return}function eu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;f=0;i=0;g=0;h=0;j=0;while(1){if((e|0)==4)break;k=d[a+((N(e,b)|0)+-1)>>0]|0;k=f+k+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=g+(d[a+((N(l,b)|0)+-1)>>0]|0)|0;n=h+(d[a+((N(e+8|0,b)|0)+-1)>>0]|0)|0;o=j+(d[a+((N(e+12|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=k;i=i+(d[a+(l-b)>>0]|0)|0;g=m;h=n;j=o}f=N(f+4>>3,16843009)|0;k=N(i+2>>2,16843009)|0;l=g+2>>2;g=g+4+i>>3;m=h+2>>2;h=h+4+i>>3;o=j+2>>2;n=j+4+i>>3;e=0;while(1){if((e|0)==4)break;j=a+(N(e,b)|0)|0;c[j>>2]=f;c[j+4>>2]=k;e=e+1|0}k=N(l,16843009)|0;i=N(g,16843009)|0;j=N(m,16843009)|0;g=N(h,16843009)|0;h=N(o,16843009)|0;f=N(n,16843009)|0;e=4;while(1){if((e|0)==8){e=8;break}o=a+(N(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}while(1){if((e|0)==12){e=12;break}o=a+(N(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}while(1){if((e|0)==16)break;o=a+(N(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function fu(a,b){a=a|0;b=b|0;$t(a,b);$t(a+(b<<3)|0,b);return}function gu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function hu(a,b){a=a|0;b=b|0;gu(a,b);wt(a,0,b);return}function iu(a,b){a=a|0;b=b|0;eu(a,b);Gt(a,0,b);return}function ju(a,b){a=a|0;b=b|0;fu(a,b);a=a+(b<<2)|0;Ht(a,0,b);Ht(a+4|0,0,b);return}function ku(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function lu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function mu(a,b){a=a|0;b=b|0;fu(a,b);Ht(a,0,b);Ht(a+4|0,0,b);return}function nu(a,b){a=a|0;b=b|0;$t(a,b);Ht(a,0,b);Ht(a+4|0,0,b);return}function ou(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function pu(a,b){a=a|0;b=b|0;ou(a,b);ou(a+(b<<3)|0,b);return}function qu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16){f=0;break}e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+16>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(N(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function su(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function tu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function uu(a,b){a=a|0;b=b|0;Tu(a,b,0,0);return}function vu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function wu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function xu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function yu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function zu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Au(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Bu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Cu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Du(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;v=d[c+(0-i)>>0]|0;u=d[c+(1-i)>>0]|0;j=d[c+(2-i)>>0]|0;r=d[c+(3-i)>>0]|0;q=d[c+(4-i)>>0]|0;p=d[c+(5-i)>>0]|0;o=d[c+(6-i)>>0]|0;n=d[c+(7-i)>>0]|0;k=(o+2+(d[c+((h|0?8:7)-i)>>0]|0)+(n<<1)|0)>>>2;a[s>>0]=((d[c+((((g|0)!=0)<<31>>31)-i)>>0]|0)+2+(v<<1)+u|0)>>>2;a[s+1>>0]=(v+2+(u<<1)+j|0)>>>2;a[s+2>>0]=(u+2+(j<<1)+r|0)>>>2;a[s+3>>0]=(j+2+(r<<1)+q|0)>>>2;a[s+4>>0]=(r+2+(q<<1)+p|0)>>>2;a[s+5>>0]=(q+2+(p<<1)+o|0)>>>2;a[s+6>>0]=(p+2+(o<<1)+n|0)>>>2;a[s+7>>0]=k;k=i<<1;n=i*3|0;o=i<<2;p=i*5|0;q=i*6|0;r=i*7|0;j=0;g=c;h=f;while(1){if((j|0)==8)break;v=(e[h>>1]|0)+(d[s+j>>0]|0)|0;a[g>>0]=v;v=v+(e[h+16>>1]|0)|0;a[g+i>>0]=v;v=v+(e[h+32>>1]|0)|0;a[g+k>>0]=v;v=v+(e[h+48>>1]|0)|0;a[g+n>>0]=v;v=v+(e[h+64>>1]|0)|0;a[g+o>>0]=v;v=v+(e[h+80>>1]|0)|0;a[g+p>>0]=v;v=v+(e[h+96>>1]|0)|0;a[g+q>>0]=v;a[g+r>>0]=v+(e[h+112>>1]|0);j=j+1|0;g=g+1|0;h=h+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));l=t;return}function Eu(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;t=d[c+((N(((g|0)!=0)<<31>>31,i)|0)+-1)>>0]|0;s=d[c+-1>>0]|0;r=d[c+(i+-1)>>0]|0;q=d[c+((i<<1)+-1)>>0]|0;p=d[c+((i*3|0)+-1)>>0]|0;o=d[c+((i<<2)+-1)>>0]|0;g=d[c+((i*5|0)+-1)>>0]|0;h=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(t+2+(s<<1)+r|0)>>>2;a[k+1>>0]=(s+2+(r<<1)+q|0)>>>2;a[k+2>>0]=(r+2+(q<<1)+p|0)>>>2;a[k+3>>0]=(q+2+(p<<1)+o|0)>>>2;a[k+4>>0]=(p+2+(o<<1)+g|0)>>>2;a[k+5>>0]=(o+2+(g<<1)+h|0)>>>2;a[k+6>>0]=(g+2+(h<<1)+j|0)>>>2;a[k+7>>0]=(h+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;t=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=t;t=t+(e[g+2>>1]|0)|0;a[h+1>>0]=t;t=t+(e[g+4>>1]|0)|0;a[h+2>>0]=t;t=t+(e[g+6>>1]|0)|0;a[h+3>>0]=t;t=t+(e[g+8>>1]|0)|0;a[h+4>>0]=t;t=t+(e[g+10>>1]|0)|0;a[h+5>>0]=t;t=t+(e[g+12>>1]|0)|0;a[h+6>>0]=t;a[h+7>>0]=t+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));l=n;return}function Fu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;zu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}zu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;zu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Hu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Au(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Iu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Au(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Au(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ju(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;zu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ku(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;kt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Lu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Xr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Mu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Iq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Nu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;tp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ou(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Au(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Pu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;lt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Yr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ru(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Jq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Su(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;up(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tu(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(N((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(N((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(N(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if((j|0)>0){g=i;h=-16}else break;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function Uu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Vu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Wu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Xu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:0-q>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function Yu(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;o=n<<1;a[b>>0]=(f+4+h+o+(p+g<<1)|0)>>>3;q=(n+1+m|0)>>>1&255;f=e<<1;a[b+f>>0]=q;a[b+1>>0]=q;q=(m+1+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(g+4+(h<<1)+i+p+o+m|0)>>>3;h=(n+2+(m<<1)+l|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=(m+2+(l<<1)+k|0)>>>2&255;a[b+(i+1)>>0]=h;a[b+(e+2)>>0]=h;h=(l+2+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=h;a[b+(e+3)>>0]=h;a[b+(i+3)>>0]=(k+2+(j<<1)+c|0)>>>2;return}function Zu(a,b,c){a=a|0;b=b|0;c=c|0;ZI(a,b,c);return}function _u(a,b,c){a=a|0;b=b|0;c=c|0;YI(a,b,c);return}function $u(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function av(a,b,c){a=a|0;b=b|0;c=c|0;WI(a,b,c);return}function bv(a,b,c){a=a|0;b=b|0;c=c|0;VI(a,b,c);return}function cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);UI(a,b,e,c,c);l=d;return}function dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;nH(e,b,32,c);TI(a,b,e,c,c);l=d;return}function ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;jH(e,b,32,c);SI(a,b,e,c,c);l=d;return}function fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;fH(e,b,16,c);RI(a,b,e,c,c);l=d;return}function gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;bH(e,b,32,c);QI(a,b,e,c,c);l=d;return}function hv(a,b,c){a=a|0;b=b|0;c=c|0;rH(a,b,c,c);return}function iv(a,b,c){a=a|0;b=b|0;c=c|0;nH(a,b,c,c);return}function jv(a,b,c){a=a|0;b=b|0;c=c|0;jH(a,b,c,c);return}function kv(a,b,c){a=a|0;b=b|0;c=c|0;fH(a,b,c,c);return}function lv(a,b,c){a=a|0;b=b|0;c=c|0;bH(a,b,c,c);return}function mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);UI(a,b+2|0,e,c,c);l=d;return}function nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;nH(e,b,32,c);TI(a,b+2|0,e,c,c);l=d;return}function ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;jH(e,b,32,c);SI(a,b+2|0,e,c,c);l=d;return}function pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;fH(e,b,16,c);RI(a,b+1|0,e,c,c);l=d;return}function qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;bH(e,b,32,c);QI(a,b+2|0,e,c,c);l=d;return}function rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;sH(g,b+(0-(c<<1))|0,c);tH(e,f,32);UI(a,f,e,c,32);l=d;return}function sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;oH(g,b+(0-(c<<1))|0,c);pH(e,f,32);TI(a,f,e,c,32);l=d;return}function tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;kH(g,b+(0-(c<<1))|0,c);lH(e,f,32);SI(a,f,e,c,32);l=d;return}function uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;gH(g,b+(0-(c<<1))|0,c);hH(e,f,16);RI(a,f,e,c,16);l=d;return}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;cH(g,b+(0-(c<<1))|0,c);dH(e,f,32);QI(a,f,e,c,32);l=d;return}function wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b,32,c);oH(g,b+(0-(c<<1))|0,c);pH(e,g+64|0,32);TI(a,f,e,c,32);l=d;return}function yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b,32,c);kH(g,b+(0-(c<<1))|0,c);lH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b,16,c);gH(g,b+(0-(c<<1))|0,c);hH(e,g+32|0,16);RI(a,f,e,c,16);l=d;return}function Av(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b,32,c);cH(g,b+(0-(c<<1))|0,c);dH(e,g+64|0,32);QI(a,f,e,c,32);l=d;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;rH(f,b,32,c);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;nH(f,b,32,c);yH(e,d,b,32,c);TI(a,f,e,c,32);l=d;return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;jH(f,b,32,c);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;fH(f,b,16,c);wH(e,d,b,16,c);RI(a,f,e,c,16);l=d;return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;bH(f,b,32,c);vH(e,d,b,32,c);QI(a,f,e,c,32);l=d;return}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b,32,c);oH(g,b+(0-(c<<1))+2|0,c);pH(e,g+64|0,32);TI(a,f,e,c,32);l=d;return}function Iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b,32,c);kH(g,b+(0-(c<<1))+2|0,c);lH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b,16,c);gH(g,b+(0-(c<<1))+1|0,c);hH(e,g+32|0,16);RI(a,f,e,c,16);l=d;return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b,32,c);cH(g,b+(0-(c<<1))+2|0,c);dH(e,g+64|0,32);QI(a,f,e,c,32);l=d;return}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;sH(e,b+(0-(c<<1))|0,c);tH(a,e+64|0,c);l=d;return}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;oH(e,b+(0-(c<<1))|0,c);pH(a,e+64|0,c);l=d;return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;kH(e,b+(0-(c<<1))|0,c);lH(a,e+64|0,c);l=d;return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;gH(e,b+(0-(c<<1))|0,c);hH(a,e+32|0,c);l=d;return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;cH(e,b+(0-(c<<1))|0,c);dH(a,e+64|0,c);l=d;return}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;sH(g,b+(0-(c<<1))|0,c);tH(f,g+64|0,32);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;oH(g,b+(0-(c<<1))|0,c);pH(f,g+64|0,32);yH(e,d,b,32,c);TI(a,f,e,c,32);l=d;return}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;kH(g,b+(0-(c<<1))|0,c);lH(f,g+64|0,32);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function Tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;gH(g,b+(0-(c<<1))|0,c);hH(f,g+32|0,16);wH(e,d,b,16,c);RI(a,f,e,c,16);l=d;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;cH(g,b+(0-(c<<1))|0,c);dH(f,g+64|0,32);vH(e,d,b,32,c);QI(a,f,e,c,32);l=d;return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);zH(a,d,b,c,c);l=d;return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);yH(a,d,b,c,c);l=d;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);xH(a,d,b,c,c);l=d;return}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);wH(a,d,b,c,c);l=d;return}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);vH(a,d,b,c,c);l=d;return}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;sH(g,b+(0-(c<<1))+2|0,c);tH(f,g+64|0,32);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;oH(g,b+(0-(c<<1))+2|0,c);pH(f,g+64|0,32);yH(e,d,b,32,c);TI(a,f,e,c,32);l=d;return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;kH(g,b+(0-(c<<1))+2|0,c);lH(f,g+64|0,32);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;gH(g,b+(0-(c<<1))+1|0,c);hH(f,g+32|0,16);wH(e,d,b,16,c);RI(a,f,e,c,16);l=d;return}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;cH(g,b+(0-(c<<1))+2|0,c);dH(f,g+64|0,32);vH(e,d,b,32,c);QI(a,f,e,c,32);l=d;return}function dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;sH(f,b+(0-(c<<1))|0,c);tH(e,f+64|0,32);UI(a,f+96|0,e,c,32);l=d;return}function ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;oH(f,b+(0-(c<<1))|0,c);pH(e,f+64|0,32);TI(a,f+96|0,e,c,32);l=d;return}function fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;kH(f,b+(0-(c<<1))|0,c);lH(e,f+64|0,32);SI(a,f+96|0,e,c,32);l=d;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;gH(f,b+(0-(c<<1))|0,c);hH(e,f+32|0,16);RI(a,f+48|0,e,c,16);l=d;return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;cH(f,b+(0-(c<<1))|0,c);dH(e,f+64|0,32);QI(a,f+96|0,e,c,32);l=d;return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b+c|0,32,c);oH(g,b+(0-(c<<1))|0,c);pH(e,g+64|0,32);TI(a,f,e,c,32);l=d;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b+c|0,32,c);kH(g,b+(0-(c<<1))|0,c);lH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b+c|0,16,c);gH(g,b+(0-(c<<1))|0,c);hH(e,g+32|0,16);RI(a,f,e,c,16);l=d;return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b+c|0,32,c);cH(g,b+(0-(c<<1))|0,c);dH(e,g+64|0,32);QI(a,f,e,c,32);l=d;return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;rH(f,b+c|0,32,c);zH(e,d,b,32,c);UI(a,f,e,c,32);l=d;return}function ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;nH(f,b+c|0,32,c);yH(e,d,b,32,c);TI(a,f,e,c,32);l=d;return}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;jH(f,b+c|0,32,c);xH(e,d,b,32,c);SI(a,f,e,c,32);l=d;return}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;fH(f,b+c|0,16,c);wH(e,d,b,16,c);RI(a,f,e,c,16);l=d;return}function rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;bH(f,b+c|0,32,c);vH(e,d,b,32,c);QI(a,f,e,c,32);l=d;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);UI(a,f,e,c,32);l=d;return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b+c|0,32,c);oH(g,b+(0-(c<<1))+2|0,c);pH(e,g+64|0,32);TI(a,f,e,c,32);l=d;return}function uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b+c|0,32,c);kH(g,b+(0-(c<<1))+2|0,c);lH(e,g+64|0,32);SI(a,f,e,c,32);l=d;return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b+c|0,16,c);gH(g,b+(0-(c<<1))+1|0,c);hH(e,g+32|0,16);RI(a,f,e,c,16);l=d;return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b+c|0,32,c);cH(g,b+(0-(c<<1))+2|0,c);dH(e,g+64|0,32);QI(a,f,e,c,32);l=d;return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;PI(a,b,c,8);return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;OI(a,b,c,8);return}function zw(a,b,c){a=a|0;b=b|0;c=c|0;NI(a,b,c,8);return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;MI(a,b,c,8);return}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;LI(a,b,c,8);return}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);KI(a,b,e,c,c,16,8);l=d;return}function Dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;wG(e,b,16,c);JI(a,b,e,c,c,16,8);l=d;return}function Ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;sG(e,b,16,c);II(a,b,e,c,c,16,8);l=d;return}function Fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;oG(e,b,8,c);HI(a,b,e,c,c,8,8);l=d;return}function Gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;kG(e,b,16,c);GI(a,b,e,c,c,16,8);l=d;return}function Hw(a,b,c){a=a|0;b=b|0;c=c|0;AG(a,b,c,c);return}function Iw(a,b,c){a=a|0;b=b|0;c=c|0;wG(a,b,c,c);return}function Jw(a,b,c){a=a|0;b=b|0;c=c|0;sG(a,b,c,c);return}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;oG(a,b,c,c);return}function Lw(a,b,c){a=a|0;b=b|0;c=c|0;kG(a,b,c,c);return}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);KI(a,b+2|0,e,c,c,16,8);l=d;return}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;wG(e,b,16,c);JI(a,b+2|0,e,c,c,16,8);l=d;return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;sG(e,b,16,c);II(a,b+2|0,e,c,c,16,8);l=d;return}function Pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;oG(e,b,8,c);HI(a,b+1|0,e,c,c,8,8);l=d;return}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;kG(e,b,16,c);GI(a,b+2|0,e,c,c,16,8);l=d;return}function Rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;BG(g,b+(0-(c<<1))|0,c);CG(e,f,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;xG(g,b+(0-(c<<1))|0,c);yG(e,f,16,16);JI(a,f,e,c,16,16,8);l=d;return}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;tG(g,b+(0-(c<<1))|0,c);uG(e,f,16,16);II(a,f,e,c,16,16,8);l=d;return}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;pG(g,b+(0-(c<<1))|0,c);qG(e,f,8,8);HI(a,f,e,c,8,8,8);l=d;return}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;lG(g,b+(0-(c<<1))|0,c);mG(e,f,16,16);GI(a,f,e,c,16,16,8);l=d;return}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b,16,c);xG(g,b+(0-(c<<1))|0,c);yG(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b,16,c);tG(g,b+(0-(c<<1))|0,c);uG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b,8,c);pG(g,b+(0-(c<<1))|0,c);qG(e,g+16|0,8,8);HI(a,f,e,c,8,8,8);l=d;return}function _w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b,16,c);lG(g,b+(0-(c<<1))|0,c);mG(e,g+32|0,16,16);GI(a,f,e,c,16,16,8);l=d;return}function $w(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;AG(f,b,16,c);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;wG(f,b,16,c);HG(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;sG(f,b,16,c);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;oG(f,b,8,c);FG(e,d,b,8,8,c);HI(a,f,e,c,8,8,8);l=d;return}function dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;kG(f,b,16,c);EG(e,d,b,16,16,c);GI(a,f,e,c,16,16,8);l=d;return}function ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b,16,c);xG(g,b+(0-(c<<1))+2|0,c);yG(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b,16,c);tG(g,b+(0-(c<<1))+2|0,c);uG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b,8,c);pG(g,b+(0-(c<<1))+1|0,c);qG(e,g+16|0,8,8);HI(a,f,e,c,8,8,8);l=d;return}function ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b,16,c);lG(g,b+(0-(c<<1))+2|0,c);mG(e,g+32|0,16,16);GI(a,f,e,c,16,16,8);l=d;return}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;BG(e,b+(0-(c<<1))|0,c);CG(a,e+32|0,c,16);l=d;return}function kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;xG(e,b+(0-(c<<1))|0,c);yG(a,e+32|0,c,16);l=d;return}function lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;tG(e,b+(0-(c<<1))|0,c);uG(a,e+32|0,c,16);l=d;return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;pG(e,b+(0-(c<<1))|0,c);qG(a,e+16|0,c,8);l=d;return}function nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;lG(e,b+(0-(c<<1))|0,c);mG(a,e+32|0,c,16);l=d;return}function ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;BG(g,b+(0-(c<<1))|0,c);CG(f,g+32|0,16,16);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;xG(g,b+(0-(c<<1))|0,c);yG(f,g+32|0,16,16);HG(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;tG(g,b+(0-(c<<1))|0,c);uG(f,g+32|0,16,16);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;pG(g,b+(0-(c<<1))|0,c);qG(f,g+16|0,8,8);FG(e,d,b,8,8,c);HI(a,f,e,c,8,8,8);l=d;return}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;lG(g,b+(0-(c<<1))|0,c);mG(f,g+32|0,16,16);EG(e,d,b,16,16,c);GI(a,f,e,c,16,16,8);l=d;return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);IG(a,d,b,c,16,c);l=d;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);HG(a,d,b,c,16,c);l=d;return}function vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);GG(a,d,b,c,16,c);l=d;return}function wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);FG(a,d,b,c,8,c);l=d;return}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);EG(a,d,b,c,16,c);l=d;return}function yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;BG(g,b+(0-(c<<1))+2|0,c);CG(f,g+32|0,16,16);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;xG(g,b+(0-(c<<1))+2|0,c);yG(f,g+32|0,16,16);HG(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;tG(g,b+(0-(c<<1))+2|0,c);uG(f,g+32|0,16,16);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;pG(g,b+(0-(c<<1))+1|0,c);qG(f,g+16|0,8,8);FG(e,d,b,8,8,c);HI(a,f,e,c,8,8,8);l=d;return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;lG(g,b+(0-(c<<1))+2|0,c);mG(f,g+32|0,16,16);EG(e,d,b,16,16,c);GI(a,f,e,c,16,16,8);l=d;return}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;BG(f,b+(0-(c<<1))|0,c);CG(e,f+32|0,16,16);KI(a,f+48|0,e,c,16,16,8);l=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;xG(f,b+(0-(c<<1))|0,c);yG(e,f+32|0,16,16);JI(a,f+48|0,e,c,16,16,8);l=d;return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;tG(f,b+(0-(c<<1))|0,c);uG(e,f+32|0,16,16);II(a,f+48|0,e,c,16,16,8);l=d;return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;pG(f,b+(0-(c<<1))|0,c);qG(e,f+16|0,8,8);HI(a,f+24|0,e,c,8,8,8);l=d;return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;lG(f,b+(0-(c<<1))|0,c);mG(e,f+32|0,16,16);GI(a,f+48|0,e,c,16,16,8);l=d;return}function Ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b+c|0,16,c);xG(g,b+(0-(c<<1))|0,c);yG(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b+c|0,16,c);tG(g,b+(0-(c<<1))|0,c);uG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b+c|0,8,c);pG(g,b+(0-(c<<1))|0,c);qG(e,g+16|0,8,8);HI(a,f,e,c,8,8,8);l=d;return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b+c|0,16,c);lG(g,b+(0-(c<<1))|0,c);mG(e,g+32|0,16,16);GI(a,f,e,c,16,16,8);l=d;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;AG(f,b+c|0,16,c);IG(e,d,b,16,16,c);KI(a,f,e,c,16,16,8);l=d;return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;wG(f,b+c|0,16,c);HG(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;sG(f,b+c|0,16,c);GG(e,d,b,16,16,c);II(a,f,e,c,16,16,8);l=d;return}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;oG(f,b+c|0,8,c);FG(e,d,b,8,8,c);HI(a,f,e,c,8,8,8);l=d;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;kG(f,b+c|0,16,c);EG(e,d,b,16,16,c);GI(a,f,e,c,16,16,8);l=d;return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);KI(a,f,e,c,16,16,8);l=d;return}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b+c|0,16,c);xG(g,b+(0-(c<<1))+2|0,c);yG(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function Ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b+c|0,16,c);tG(g,b+(0-(c<<1))+2|0,c);uG(e,g+32|0,16,16);II(a,f,e,c,16,16,8);l=d;return}function Vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b+c|0,8,c);pG(g,b+(0-(c<<1))+1|0,c);qG(e,g+16|0,8,8);HI(a,f,e,c,8,8,8);l=d;return}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b+c|0,16,c);lG(g,b+(0-(c<<1))+2|0,c);mG(e,g+32|0,16,16);GI(a,f,e,c,16,16,8);l=d;return}function Xx(a,b,c){a=a|0;b=b|0;c=c|0;FI(a,b,c);return}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;EI(a,b,c);return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function _x(a,b,c){a=a|0;b=b|0;c=c|0;CI(a,b,c);return}function $x(a,b,c){a=a|0;b=b|0;c=c|0;BI(a,b,c);return}function ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;JF(e,b,8,c);AI(a,b,e,c,c);l=d;return}function by(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FF(e,b,8,c);zI(a,b,e,c,c);l=d;return}function cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;BF(e,b,8,c);yI(a,b,e,c,c);l=d;return}function dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wF(e,b,4,c);xI(a,b,e,c,c);l=d;return}function ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;rF(e,b,8,c);wI(a,b,e,c,c);l=d;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;JF(a,b,c,c);return}function gy(a,b,c){a=a|0;b=b|0;c=c|0;FF(a,b,c,c);return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;BF(a,b,c,c);return}function iy(a,b,c){a=a|0;b=b|0;c=c|0;wF(a,b,c,c);return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;rF(a,b,c,c);return}function ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;JF(e,b,8,c);AI(a,b+2|0,e,c,c);l=d;return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FF(e,b,8,c);zI(a,b+2|0,e,c,c);l=d;return}function my(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;BF(e,b,8,c);yI(a,b+2|0,e,c,c);l=d;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wF(e,b,4,c);xI(a,b+1|0,e,c,c);l=d;return}function oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;rF(e,b,8,c);wI(a,b+2|0,e,c,c);l=d;return}function py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;KF(g,b+(0-(c<<1))|0,c);LF(e,f,8);AI(a,f,e,c,8);l=d;return}function qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;GF(g,b+(0-(c<<1))|0,c);HF(e,f,8);zI(a,f,e,c,8);l=d;return}function ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;CF(g,b+(0-(c<<1))|0,c);DF(e,f,8);yI(a,f,e,c,8);l=d;return}function sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;xF(g,b+(0-(c<<1))|0,c);yF(e,f,4);xI(a,f,e,c,4);l=d;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;sF(g,b+(0-(c<<1))|0,c);tF(e,f,8);wI(a,f,e,c,8);l=d;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b,8,c);KF(g,b+(0-(c<<1))|0,c);LF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b,8,c);GF(g,b+(0-(c<<1))|0,c);HF(e,g+16|0,8);zI(a,f,e,c,8);l=d;return}function wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b,8,c);CF(g,b+(0-(c<<1))|0,c);DF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b,4,c);xF(g,b+(0-(c<<1))|0,c);yF(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8);wI(a,f,e,c,8);l=d;return}function zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;JF(f,b,8,c);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;FF(f,b,8,c);QF(e,d,b,8,c);zI(a,f,e,c,8);l=d;return}function By(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;BF(f,b,8,c);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;wF(f,b,4,c);OF(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;rF(f,b,8,c);NF(e,d,b,8,c);wI(a,f,e,c,8);l=d;return}function Ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b,8,c);KF(g,b+(0-(c<<1))+2|0,c);LF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function Fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b,8,c);GF(g,b+(0-(c<<1))+2|0,c);HF(e,g+16|0,8);zI(a,f,e,c,8);l=d;return}function Gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b,8,c);CF(g,b+(0-(c<<1))+2|0,c);DF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b,4,c);xF(g,b+(0-(c<<1))+1|0,c);yF(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))+2|0,c);tF(e,g+16|0,8);wI(a,f,e,c,8);l=d;return}function Jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;KF(e,b+(0-(c<<1))|0,c);LF(a,e+16|0,c);l=d;return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;GF(e,b+(0-(c<<1))|0,c);HF(a,e+16|0,c);l=d;return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;CF(e,b+(0-(c<<1))|0,c);DF(a,e+16|0,c);l=d;return}function My(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;xF(e,b+(0-(c<<1))|0,c);yF(a,e+8|0,c);l=d;return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;sF(e,b+(0-(c<<1))|0,c);tF(a,e+16|0,c);l=d;return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;KF(g,b+(0-(c<<1))|0,c);LF(f,g+16|0,8);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;GF(g,b+(0-(c<<1))|0,c);HF(f,g+16|0,8);QF(e,d,b,8,c);zI(a,f,e,c,8);l=d;return}function Qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;CF(g,b+(0-(c<<1))|0,c);DF(f,g+16|0,8);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;xF(g,b+(0-(c<<1))|0,c);yF(f,g+8|0,4);OF(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;sF(g,b+(0-(c<<1))|0,c);tF(f,g+16|0,8);NF(e,d,b,8,c);wI(a,f,e,c,8);l=d;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);RF(a,d,b,c,c);l=d;return}function Uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);QF(a,d,b,c,c);l=d;return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);PF(a,d,b,c,c);l=d;return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);OF(a,d,b,c,c);l=d;return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);NF(a,d,b,c,c);l=d;return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;KF(g,b+(0-(c<<1))+2|0,c);LF(f,g+16|0,8);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;GF(g,b+(0-(c<<1))+2|0,c);HF(f,g+16|0,8);QF(e,d,b,8,c);zI(a,f,e,c,8);l=d;return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;CF(g,b+(0-(c<<1))+2|0,c);DF(f,g+16|0,8);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;xF(g,b+(0-(c<<1))+1|0,c);yF(f,g+8|0,4);OF(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;sF(g,b+(0-(c<<1))+2|0,c);tF(f,g+16|0,8);NF(e,d,b,8,c);wI(a,f,e,c,8);l=d;return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;KF(f,b+(0-(c<<1))|0,c);LF(e,f+16|0,8);AI(a,f+24|0,e,c,8);l=d;return}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;GF(f,b+(0-(c<<1))|0,c);HF(e,f+16|0,8);zI(a,f+24|0,e,c,8);l=d;return}function dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;CF(f,b+(0-(c<<1))|0,c);DF(e,f+16|0,8);yI(a,f+24|0,e,c,8);l=d;return}function ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;xF(f,b+(0-(c<<1))|0,c);yF(e,f+8|0,4);xI(a,f+12|0,e,c,4);l=d;return}function fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;sF(f,b+(0-(c<<1))|0,c);tF(e,f+16|0,8);wI(a,f+24|0,e,c,8);l=d;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b+c|0,8,c);KF(g,b+(0-(c<<1))|0,c);LF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b+c|0,8,c);GF(g,b+(0-(c<<1))|0,c);HF(e,g+16|0,8);zI(a,f,e,c,8);l=d;return}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b+c|0,8,c);CF(g,b+(0-(c<<1))|0,c);DF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b+c|0,4,c);xF(g,b+(0-(c<<1))|0,c);yF(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8);wI(a,f,e,c,8);l=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;JF(f,b+c|0,8,c);RF(e,d,b,8,c);AI(a,f,e,c,8);l=d;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;FF(f,b+c|0,8,c);QF(e,d,b,8,c);zI(a,f,e,c,8);l=d;return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;BF(f,b+c|0,8,c);PF(e,d,b,8,c);yI(a,f,e,c,8);l=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;wF(f,b+c|0,4,c);OF(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;rF(f,b+c|0,8,c);NF(e,d,b,8,c);wI(a,f,e,c,8);l=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b+c|0,8,c);KF(g,b+(0-(c<<1))+2|0,c);LF(e,g+16|0,8);AI(a,f,e,c,8);l=d;return}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b+c|0,8,c);GF(g,b+(0-(c<<1))+2|0,c);HF(e,g+16|0,8);zI(a,f,e,c,8);l=d;return}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b+c|0,8,c);CF(g,b+(0-(c<<1))+2|0,c);DF(e,g+16|0,8);yI(a,f,e,c,8);l=d;return}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b+c|0,4,c);xF(g,b+(0-(c<<1))+1|0,c);yF(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))+2|0,c);tF(e,g+16|0,8);wI(a,f,e,c,8);l=d;return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;vI(a,b,c);return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;uI(a,b,c);return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;tI(a,b,c);return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;sI(a,b,c);return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;rI(a,b,c);return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;iI(e,b,4,c);lI(a,b,e,c,c);l=d;return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;eI(e,b,4,c);hI(a,b,e,c,c);l=d;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;aI(e,b,4,c);dI(a,b,e,c,c);l=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;YH(e,b,2,c);$H(a,b,e,c,c);l=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;UH(e,b,4,c);XH(a,b,e,c,c);l=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;iI(a,b,c,c);return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;eI(a,b,c,c);return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;aI(a,b,c,c);return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;YH(a,b,c,c);return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;UH(a,b,c,c);return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;iI(e,b,4,c);lI(a,b+2|0,e,c,c);l=d;return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;eI(e,b,4,c);hI(a,b+2|0,e,c,c);l=d;return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;aI(e,b,4,c);dI(a,b+2|0,e,c,c);l=d;return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;YH(e,b,2,c);$H(a,b+1|0,e,c,c);l=d;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;UH(e,b,4,c);XH(a,b+2|0,e,c,c);l=d;return}function Pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;jI(g,b+(0-(c<<1))|0,c);kI(e,f,4);lI(a,f,e,c,4);l=d;return}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;fI(g,b+(0-(c<<1))|0,c);gI(e,f,4);hI(a,f,e,c,4);l=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;bI(g,b+(0-(c<<1))|0,c);cI(e,f,4);dI(a,f,e,c,4);l=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+4|0;e=d;f=g+4|0;ZH(g,b+(0-(c<<1))|0,c);_H(e,f,2);$H(a,f,e,c,2);l=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;VH(g,b+(0-(c<<1))|0,c);WH(e,f,4);XH(a,f,e,c,4);l=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b,4,c);jI(g,b+(0-(c<<1))|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;eI(f,b,4,c);fI(g,b+(0-(c<<1))|0,c);gI(e,g+8|0,4);hI(a,f,e,c,4);l=d;return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;aI(f,b,4,c);bI(g,b+(0-(c<<1))|0,c);cI(e,g+8|0,4);dI(a,f,e,c,4);l=d;return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;YH(f,b,2,c);ZH(g,b+(0-(c<<1))|0,c);_H(e,g+4|0,2);$H(a,f,e,c,2);l=d;return}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;UH(f,b,4,c);VH(g,b+(0-(c<<1))|0,c);WH(e,g+8|0,4);XH(a,f,e,c,4);l=d;return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;iI(f,b,4,c);qI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function _z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;eI(f,b,4,c);pI(e,d,b,4,c);hI(a,f,e,c,4);l=d;return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;aI(f,b,4,c);oI(e,d,b,4,c);dI(a,f,e,c,4);l=d;return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;YH(f,b,2,c);nI(e,d,b,2,c);$H(a,f,e,c,2);l=d;return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;UH(f,b,4,c);mI(e,d,b,4,c);XH(a,f,e,c,4);l=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b,4,c);jI(g,b+(0-(c<<1))+2|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;eI(f,b,4,c);fI(g,b+(0-(c<<1))+2|0,c);gI(e,g+8|0,4);hI(a,f,e,c,4);l=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;aI(f,b,4,c);bI(g,b+(0-(c<<1))+2|0,c);cI(e,g+8|0,4);dI(a,f,e,c,4);l=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;YH(f,b,2,c);ZH(g,b+(0-(c<<1))+1|0,c);_H(e,g+4|0,2);$H(a,f,e,c,2);l=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;UH(f,b,4,c);VH(g,b+(0-(c<<1))+2|0,c);WH(e,g+8|0,4);XH(a,f,e,c,4);l=d;return}function hA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;jI(e,b+(0-(c<<1))|0,c);kI(a,e+8|0,c);l=d;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;fI(e,b+(0-(c<<1))|0,c);gI(a,e+8|0,c);l=d;return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;bI(e,b+(0-(c<<1))|0,c);cI(a,e+8|0,c);l=d;return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;ZH(e,b+(0-(c<<1))|0,c);_H(a,e+4|0,c);l=d;return}function lA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;VH(e,b+(0-(c<<1))|0,c);WH(a,e+8|0,c);l=d;return}function mA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;jI(g,b+(0-(c<<1))|0,c);kI(f,g+8|0,4);qI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;fI(g,b+(0-(c<<1))|0,c);gI(f,g+8|0,4);pI(e,d,b,4,c);hI(a,f,e,c,4);l=d;return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;bI(g,b+(0-(c<<1))|0,c);cI(f,g+8|0,4);oI(e,d,b,4,c);dI(a,f,e,c,4);l=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;ZH(g,b+(0-(c<<1))|0,c);_H(f,g+4|0,2);nI(e,d,b,2,c);$H(a,f,e,c,2);l=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;VH(g,b+(0-(c<<1))|0,c);WH(f,g+8|0,4);mI(e,d,b,4,c);XH(a,f,e,c,4);l=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);qI(a,d,b,c,c);l=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);pI(a,d,b,c,c);l=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);oI(a,d,b,c,c);l=d;return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);nI(a,d,b,c,c);l=d;return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);mI(a,d,b,c,c);l=d;return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;jI(g,b+(0-(c<<1))+2|0,c);kI(f,g+8|0,4);qI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;fI(g,b+(0-(c<<1))+2|0,c);gI(f,g+8|0,4);pI(e,d,b,4,c);hI(a,f,e,c,4);l=d;return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;bI(g,b+(0-(c<<1))+2|0,c);cI(f,g+8|0,4);oI(e,d,b,4,c);dI(a,f,e,c,4);l=d;return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;ZH(g,b+(0-(c<<1))+1|0,c);_H(f,g+4|0,2);nI(e,d,b,2,c);$H(a,f,e,c,2);l=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;VH(g,b+(0-(c<<1))+2|0,c);WH(f,g+8|0,4);mI(e,d,b,4,c);XH(a,f,e,c,4);l=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;jI(f,b+(0-(c<<1))|0,c);kI(e,f+8|0,4);lI(a,f+12|0,e,c,4);l=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;fI(f,b+(0-(c<<1))|0,c);gI(e,f+8|0,4);hI(a,f+12|0,e,c,4);l=d;return}function DA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;bI(f,b+(0-(c<<1))|0,c);cI(e,f+8|0,4);dI(a,f+12|0,e,c,4);l=d;return}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=d+4|0;e=d;ZH(f,b+(0-(c<<1))|0,c);_H(e,f+4|0,2);$H(a,f+6|0,e,c,2);l=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;VH(f,b+(0-(c<<1))|0,c);WH(e,f+8|0,4);XH(a,f+12|0,e,c,4);l=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b+c|0,4,c);jI(g,b+(0-(c<<1))|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;eI(f,b+c|0,4,c);fI(g,b+(0-(c<<1))|0,c);gI(e,g+8|0,4);hI(a,f,e,c,4);l=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;aI(f,b+c|0,4,c);bI(g,b+(0-(c<<1))|0,c);cI(e,g+8|0,4);dI(a,f,e,c,4);l=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;YH(f,b+c|0,2,c);ZH(g,b+(0-(c<<1))|0,c);_H(e,g+4|0,2);$H(a,f,e,c,2);l=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;UH(f,b+c|0,4,c);VH(g,b+(0-(c<<1))|0,c);WH(e,g+8|0,4);XH(a,f,e,c,4);l=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;iI(f,b+c|0,4,c);qI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;eI(f,b+c|0,4,c);pI(e,d,b,4,c);hI(a,f,e,c,4);l=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;aI(f,b+c|0,4,c);oI(e,d,b,4,c);dI(a,f,e,c,4);l=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;YH(f,b+c|0,2,c);nI(e,d,b,2,c);$H(a,f,e,c,2);l=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;UH(f,b+c|0,4,c);mI(e,d,b,4,c);XH(a,f,e,c,4);l=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b+c|0,4,c);jI(g,b+(0-(c<<1))+2|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;eI(f,b+c|0,4,c);fI(g,b+(0-(c<<1))+2|0,c);gI(e,g+8|0,4);hI(a,f,e,c,4);l=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;aI(f,b+c|0,4,c);bI(g,b+(0-(c<<1))+2|0,c);cI(e,g+8|0,4);dI(a,f,e,c,4);l=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;YH(f,b+c|0,2,c);ZH(g,b+(0-(c<<1))+1|0,c);_H(e,g+4|0,2);$H(a,f,e,c,2);l=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;UH(f,b+c|0,4,c);VH(g,b+(0-(c<<1))+2|0,c);WH(e,g+8|0,4);XH(a,f,e,c,4);l=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;TH(a,b,c);return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;SH(a,b,c);return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;RH(a,b,c);return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;QH(a,b,c);return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;PH(a,b,c);return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);uH(a,b,e,c,c);l=d;return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;nH(e,b,32,c);qH(a,b,e,c,c);l=d;return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;jH(e,b,32,c);mH(a,b,e,c,c);l=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;fH(e,b,16,c);iH(a,b,e,c,c);l=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;bH(e,b,32,c);eH(a,b,e,c,c);l=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;OH(a,b,c,c);return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;NH(a,b,c,c);return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;MH(a,b,c,c);return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;LH(a,b,c,c);return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;KH(a,b,c,c);return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);uH(a,b+2|0,e,c,c);l=d;return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;nH(e,b,32,c);qH(a,b+2|0,e,c,c);l=d;return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;jH(e,b,32,c);mH(a,b+2|0,e,c,c);l=d;return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;fH(e,b,16,c);iH(a,b+1|0,e,c,c);l=d;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;bH(e,b,32,c);eH(a,b+2|0,e,c,c);l=d;return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;sH(g,b+(0-(c<<1))|0,c);tH(e,f,32);uH(a,f,e,c,32);l=d;return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;oH(g,b+(0-(c<<1))|0,c);pH(e,f,32);qH(a,f,e,c,32);l=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;kH(g,b+(0-(c<<1))|0,c);lH(e,f,32);mH(a,f,e,c,32);l=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;gH(g,b+(0-(c<<1))|0,c);hH(e,f,16);iH(a,f,e,c,16);l=d;return}function rB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;cH(g,b+(0-(c<<1))|0,c);dH(e,f,32);eH(a,f,e,c,32);l=d;return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b,32,c);oH(g,b+(0-(c<<1))|0,c);pH(e,g+64|0,32);qH(a,f,e,c,32);l=d;return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b,32,c);kH(g,b+(0-(c<<1))|0,c);lH(e,g+64|0,32);mH(a,f,e,c,32);l=d;return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b,16,c);gH(g,b+(0-(c<<1))|0,c);hH(e,g+32|0,16);iH(a,f,e,c,16);l=d;return}function wB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b,32,c);cH(g,b+(0-(c<<1))|0,c);dH(e,g+64|0,32);eH(a,f,e,c,32);l=d;return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;rH(f,b,32,c);zH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function yB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;nH(f,b,32,c);yH(e,d,b,32,c);qH(a,f,e,c,32);l=d;return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;jH(f,b,32,c);xH(e,d,b,32,c);mH(a,f,e,c,32);l=d;return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;fH(f,b,16,c);wH(e,d,b,16,c);iH(a,f,e,c,16);l=d;return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;bH(f,b,32,c);vH(e,d,b,32,c);eH(a,f,e,c,32);l=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b,32,c);oH(g,b+(0-(c<<1))+2|0,c);pH(e,g+64|0,32);qH(a,f,e,c,32);l=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b,32,c);kH(g,b+(0-(c<<1))+2|0,c);lH(e,g+64|0,32);mH(a,f,e,c,32);l=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b,16,c);gH(g,b+(0-(c<<1))+1|0,c);hH(e,g+32|0,16);iH(a,f,e,c,16);l=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b,32,c);cH(g,b+(0-(c<<1))+2|0,c);dH(e,g+64|0,32);eH(a,f,e,c,32);l=d;return}function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;sH(e,b+(0-(c<<1))|0,c);JH(a,e+64|0,c);l=d;return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;oH(e,b+(0-(c<<1))|0,c);IH(a,e+64|0,c);l=d;return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;kH(e,b+(0-(c<<1))|0,c);HH(a,e+64|0,c);l=d;return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;gH(e,b+(0-(c<<1))|0,c);GH(a,e+32|0,c);l=d;return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;cH(e,b+(0-(c<<1))|0,c);FH(a,e+64|0,c);l=d;return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;sH(g,b+(0-(c<<1))|0,c);tH(f,g+64|0,32);zH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;oH(g,b+(0-(c<<1))|0,c);pH(f,g+64|0,32);yH(e,d,b,32,c);qH(a,f,e,c,32);l=d;return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;kH(g,b+(0-(c<<1))|0,c);lH(f,g+64|0,32);xH(e,d,b,32,c);mH(a,f,e,c,32);l=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;gH(g,b+(0-(c<<1))|0,c);hH(f,g+32|0,16);wH(e,d,b,16,c);iH(a,f,e,c,16);l=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;cH(g,b+(0-(c<<1))|0,c);dH(f,g+64|0,32);vH(e,d,b,32,c);eH(a,f,e,c,32);l=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);EH(a,d,b,c,c);l=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);DH(a,d,b,c,c);l=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);CH(a,d,b,c,c);l=d;return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);BH(a,d,b,c,c);l=d;return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);AH(a,d,b,c,c);l=d;return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;sH(g,b+(0-(c<<1))+2|0,c);tH(f,g+64|0,32);zH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;oH(g,b+(0-(c<<1))+2|0,c);pH(f,g+64|0,32);yH(e,d,b,32,c);qH(a,f,e,c,32);l=d;return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;kH(g,b+(0-(c<<1))+2|0,c);lH(f,g+64|0,32);xH(e,d,b,32,c);mH(a,f,e,c,32);l=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;gH(g,b+(0-(c<<1))+1|0,c);hH(f,g+32|0,16);wH(e,d,b,16,c);iH(a,f,e,c,16);l=d;return}function _B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;cH(g,b+(0-(c<<1))+2|0,c);dH(f,g+64|0,32);vH(e,d,b,32,c);eH(a,f,e,c,32);l=d;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;sH(f,b+(0-(c<<1))|0,c);tH(e,f+64|0,32);uH(a,f+96|0,e,c,32);l=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;oH(f,b+(0-(c<<1))|0,c);pH(e,f+64|0,32);qH(a,f+96|0,e,c,32);l=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;kH(f,b+(0-(c<<1))|0,c);lH(e,f+64|0,32);mH(a,f+96|0,e,c,32);l=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;gH(f,b+(0-(c<<1))|0,c);hH(e,f+32|0,16);iH(a,f+48|0,e,c,16);l=d;return}function dC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;cH(f,b+(0-(c<<1))|0,c);dH(e,f+64|0,32);eH(a,f+96|0,e,c,32);l=d;return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b+c|0,32,c);oH(g,b+(0-(c<<1))|0,c);pH(e,g+64|0,32);qH(a,f,e,c,32);l=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b+c|0,32,c);kH(g,b+(0-(c<<1))|0,c);lH(e,g+64|0,32);mH(a,f,e,c,32);l=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b+c|0,16,c);gH(g,b+(0-(c<<1))|0,c);hH(e,g+32|0,16);iH(a,f,e,c,16);l=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b+c|0,32,c);cH(g,b+(0-(c<<1))|0,c);dH(e,g+64|0,32);eH(a,f,e,c,32);l=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;rH(f,b+c|0,32,c);zH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;nH(f,b+c|0,32,c);yH(e,d,b,32,c);qH(a,f,e,c,32);l=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;jH(f,b+c|0,32,c);xH(e,d,b,32,c);mH(a,f,e,c,32);l=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;fH(f,b+c|0,16,c);wH(e,d,b,16,c);iH(a,f,e,c,16);l=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;bH(f,b+c|0,32,c);vH(e,d,b,32,c);eH(a,f,e,c,32);l=d;return}function oC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;nH(f,b+c|0,32,c);oH(g,b+(0-(c<<1))+2|0,c);pH(e,g+64|0,32);qH(a,f,e,c,32);l=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;jH(f,b+c|0,32,c);kH(g,b+(0-(c<<1))+2|0,c);lH(e,g+64|0,32);mH(a,f,e,c,32);l=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;fH(f,b+c|0,16,c);gH(g,b+(0-(c<<1))+1|0,c);hH(e,g+32|0,16);iH(a,f,e,c,16);l=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;bH(f,b+c|0,32,c);cH(g,b+(0-(c<<1))+2|0,c);dH(e,g+64|0,32);eH(a,f,e,c,32);l=d;return}function tC(a,b,c){a=a|0;b=b|0;c=c|0;aH(a,b,c,8);return}function uC(a,b,c){a=a|0;b=b|0;c=c|0;$G(a,b,c,8);return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;_G(a,b,c,8);return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;ZG(a,b,c,8);return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;YG(a,b,c,8);return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);DG(a,b,e,c,c,16,8);l=d;return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;wG(e,b,16,c);zG(a,b,e,c,c,16,8);l=d;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;sG(e,b,16,c);vG(a,b,e,c,c,16,8);l=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;oG(e,b,8,c);rG(a,b,e,c,c,8,8);l=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;kG(e,b,16,c);nG(a,b,e,c,c,16,8);l=d;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;XG(a,b,c,c);return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;WG(a,b,c,c);return}function FC(a,b,c){a=a|0;b=b|0;c=c|0;VG(a,b,c,c);return}function GC(a,b,c){a=a|0;b=b|0;c=c|0;UG(a,b,c,c);return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;TG(a,b,c,c);return}function IC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);DG(a,b+2|0,e,c,c,16,8);l=d;return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;wG(e,b,16,c);zG(a,b+2|0,e,c,c,16,8);l=d;return}function KC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;sG(e,b,16,c);vG(a,b+2|0,e,c,c,16,8);l=d;return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;oG(e,b,8,c);rG(a,b+1|0,e,c,c,8,8);l=d;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;kG(e,b,16,c);nG(a,b+2|0,e,c,c,16,8);l=d;return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;BG(g,b+(0-(c<<1))|0,c);CG(e,f,16,16);DG(a,f,e,c,16,16,8);l=d;return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;xG(g,b+(0-(c<<1))|0,c);yG(e,f,16,16);zG(a,f,e,c,16,16,8);l=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;tG(g,b+(0-(c<<1))|0,c);uG(e,f,16,16);vG(a,f,e,c,16,16,8);l=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;pG(g,b+(0-(c<<1))|0,c);qG(e,f,8,8);rG(a,f,e,c,8,8,8);l=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;lG(g,b+(0-(c<<1))|0,c);mG(e,f,16,16);nG(a,f,e,c,16,16,8);l=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function TC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b,16,c);xG(g,b+(0-(c<<1))|0,c);yG(e,g+32|0,16,16);zG(a,f,e,c,16,16,8);l=d;return}function UC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b,16,c);tG(g,b+(0-(c<<1))|0,c);uG(e,g+32|0,16,16);vG(a,f,e,c,16,16,8);l=d;return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b,8,c);pG(g,b+(0-(c<<1))|0,c);qG(e,g+16|0,8,8);rG(a,f,e,c,8,8,8);l=d;return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b,16,c);lG(g,b+(0-(c<<1))|0,c);mG(e,g+32|0,16,16);nG(a,f,e,c,16,16,8);l=d;return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;AG(f,b,16,c);IG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;wG(f,b,16,c);HG(e,d,b,16,16,c);zG(a,f,e,c,16,16,8);l=d;return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;sG(f,b,16,c);GG(e,d,b,16,16,c);vG(a,f,e,c,16,16,8);l=d;return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;oG(f,b,8,c);FG(e,d,b,8,8,c);rG(a,f,e,c,8,8,8);l=d;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;kG(f,b,16,c);EG(e,d,b,16,16,c);nG(a,f,e,c,16,16,8);l=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b,16,c);xG(g,b+(0-(c<<1))+2|0,c);yG(e,g+32|0,16,16);zG(a,f,e,c,16,16,8);l=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b,16,c);tG(g,b+(0-(c<<1))+2|0,c);uG(e,g+32|0,16,16);vG(a,f,e,c,16,16,8);l=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b,8,c);pG(g,b+(0-(c<<1))+1|0,c);qG(e,g+16|0,8,8);rG(a,f,e,c,8,8,8);l=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b,16,c);lG(g,b+(0-(c<<1))+2|0,c);mG(e,g+32|0,16,16);nG(a,f,e,c,16,16,8);l=d;return}function fD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;BG(e,b+(0-(c<<1))|0,c);SG(a,e+32|0,c,16);l=d;return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;xG(e,b+(0-(c<<1))|0,c);RG(a,e+32|0,c,16);l=d;return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;tG(e,b+(0-(c<<1))|0,c);QG(a,e+32|0,c,16);l=d;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;pG(e,b+(0-(c<<1))|0,c);PG(a,e+16|0,c,8);l=d;return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;lG(e,b+(0-(c<<1))|0,c);OG(a,e+32|0,c,16);l=d;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;BG(g,b+(0-(c<<1))|0,c);CG(f,g+32|0,16,16);IG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;xG(g,b+(0-(c<<1))|0,c);yG(f,g+32|0,16,16);HG(e,d,b,16,16,c);zG(a,f,e,c,16,16,8);l=d;return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;tG(g,b+(0-(c<<1))|0,c);uG(f,g+32|0,16,16);GG(e,d,b,16,16,c);vG(a,f,e,c,16,16,8);l=d;return}function nD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;pG(g,b+(0-(c<<1))|0,c);qG(f,g+16|0,8,8);FG(e,d,b,8,8,c);rG(a,f,e,c,8,8,8);l=d;return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;lG(g,b+(0-(c<<1))|0,c);mG(f,g+32|0,16,16);EG(e,d,b,16,16,c);nG(a,f,e,c,16,16,8);l=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);NG(a,d,b,c,16,c);l=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);MG(a,d,b,c,16,c);l=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);LG(a,d,b,c,16,c);l=d;return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);KG(a,d,b,c,8,c);l=d;return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);JG(a,d,b,c,16,c);l=d;return}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;BG(g,b+(0-(c<<1))+2|0,c);CG(f,g+32|0,16,16);IG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;xG(g,b+(0-(c<<1))+2|0,c);yG(f,g+32|0,16,16);HG(e,d,b,16,16,c);zG(a,f,e,c,16,16,8);l=d;return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;tG(g,b+(0-(c<<1))+2|0,c);uG(f,g+32|0,16,16);GG(e,d,b,16,16,c);vG(a,f,e,c,16,16,8);l=d;return}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;pG(g,b+(0-(c<<1))+1|0,c);qG(f,g+16|0,8,8);FG(e,d,b,8,8,c);rG(a,f,e,c,8,8,8);l=d;return}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;lG(g,b+(0-(c<<1))+2|0,c);mG(f,g+32|0,16,16);EG(e,d,b,16,16,c);nG(a,f,e,c,16,16,8);l=d;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;BG(f,b+(0-(c<<1))|0,c);CG(e,f+32|0,16,16);DG(a,f+48|0,e,c,16,16,8);l=d;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;xG(f,b+(0-(c<<1))|0,c);yG(e,f+32|0,16,16);zG(a,f+48|0,e,c,16,16,8);l=d;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;tG(f,b+(0-(c<<1))|0,c);uG(e,f+32|0,16,16);vG(a,f+48|0,e,c,16,16,8);l=d;return}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;pG(f,b+(0-(c<<1))|0,c);qG(e,f+16|0,8,8);rG(a,f+24|0,e,c,8,8,8);l=d;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;lG(f,b+(0-(c<<1))|0,c);mG(e,f+32|0,16,16);nG(a,f+48|0,e,c,16,16,8);l=d;return}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b+c|0,16,c);xG(g,b+(0-(c<<1))|0,c);yG(e,g+32|0,16,16);zG(a,f,e,c,16,16,8);l=d;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b+c|0,16,c);tG(g,b+(0-(c<<1))|0,c);uG(e,g+32|0,16,16);vG(a,f,e,c,16,16,8);l=d;return}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b+c|0,8,c);pG(g,b+(0-(c<<1))|0,c);qG(e,g+16|0,8,8);rG(a,f,e,c,8,8,8);l=d;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b+c|0,16,c);lG(g,b+(0-(c<<1))|0,c);mG(e,g+32|0,16,16);nG(a,f,e,c,16,16,8);l=d;return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;AG(f,b+c|0,16,c);IG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function KD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;wG(f,b+c|0,16,c);HG(e,d,b,16,16,c);zG(a,f,e,c,16,16,8);l=d;return}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;sG(f,b+c|0,16,c);GG(e,d,b,16,16,c);vG(a,f,e,c,16,16,8);l=d;return}function MD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;oG(f,b+c|0,8,c);FG(e,d,b,8,8,c);rG(a,f,e,c,8,8,8);l=d;return}function ND(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;kG(f,b+c|0,16,c);EG(e,d,b,16,16,c);nG(a,f,e,c,16,16,8);l=d;return}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function PD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;wG(f,b+c|0,16,c);xG(g,b+(0-(c<<1))+2|0,c);yG(e,g+32|0,16,16);zG(a,f,e,c,16,16,8);l=d;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;sG(f,b+c|0,16,c);tG(g,b+(0-(c<<1))+2|0,c);uG(e,g+32|0,16,16);vG(a,f,e,c,16,16,8);l=d;return}function RD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;oG(f,b+c|0,8,c);pG(g,b+(0-(c<<1))+1|0,c);qG(e,g+16|0,8,8);rG(a,f,e,c,8,8,8);l=d;return}function SD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;kG(f,b+c|0,16,c);lG(g,b+(0-(c<<1))+2|0,c);mG(e,g+32|0,16,16);nG(a,f,e,c,16,16,8);l=d;return}function TD(a,b,c){a=a|0;b=b|0;c=c|0;jG(a,b,c);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;iG(a,b,c);return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;hG(a,b,c);return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;gG(a,b,c);return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;fG(a,b,c);return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;JF(e,b,8,c);MF(a,b,e,c,c);l=d;return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FF(e,b,8,c);IF(a,b,e,c,c);l=d;return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;BF(e,b,8,c);EF(a,b,e,c,c);l=d;return}function $D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wF(e,b,4,c);zF(a,b,e,c,c);l=d;return}function aE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;rF(e,b,8,c);uF(a,b,e,c,c);l=d;return}function bE(a,b,c){a=a|0;b=b|0;c=c|0;eG(a,b,c,c);return}function cE(a,b,c){a=a|0;b=b|0;c=c|0;dG(a,b,c,c);return}function dE(a,b,c){a=a|0;b=b|0;c=c|0;cG(a,b,c,c);return}function eE(a,b,c){a=a|0;b=b|0;c=c|0;bG(a,b,c,c);return}function fE(a,b,c){a=a|0;b=b|0;c=c|0;aG(a,b,c,c);return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;JF(e,b,8,c);MF(a,b+2|0,e,c,c);l=d;return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FF(e,b,8,c);IF(a,b+2|0,e,c,c);l=d;return}function iE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;BF(e,b,8,c);EF(a,b+2|0,e,c,c);l=d;return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wF(e,b,4,c);zF(a,b+1|0,e,c,c);l=d;return}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;rF(e,b,8,c);uF(a,b+2|0,e,c,c);l=d;return}function lE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;KF(g,b+(0-(c<<1))|0,c);LF(e,f,8);MF(a,f,e,c,8);l=d;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;GF(g,b+(0-(c<<1))|0,c);HF(e,f,8);IF(a,f,e,c,8);l=d;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;CF(g,b+(0-(c<<1))|0,c);DF(e,f,8);EF(a,f,e,c,8);l=d;return}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;xF(g,b+(0-(c<<1))|0,c);yF(e,f,4);zF(a,f,e,c,4);l=d;return}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;sF(g,b+(0-(c<<1))|0,c);tF(e,f,8);uF(a,f,e,c,8);l=d;return}function qE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b,8,c);KF(g,b+(0-(c<<1))|0,c);LF(e,g+16|0,8);MF(a,f,e,c,8);l=d;return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b,8,c);GF(g,b+(0-(c<<1))|0,c);HF(e,g+16|0,8);IF(a,f,e,c,8);l=d;return}function sE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b,8,c);CF(g,b+(0-(c<<1))|0,c);DF(e,g+16|0,8);EF(a,f,e,c,8);l=d;return}function tE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b,4,c);xF(g,b+(0-(c<<1))|0,c);yF(e,g+8|0,4);zF(a,f,e,c,4);l=d;return}function uE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8);uF(a,f,e,c,8);l=d;return}function vE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;JF(f,b,8,c);RF(e,d,b,8,c);MF(a,f,e,c,8);l=d;return}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;FF(f,b,8,c);QF(e,d,b,8,c);IF(a,f,e,c,8);l=d;return}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;BF(f,b,8,c);PF(e,d,b,8,c);EF(a,f,e,c,8);l=d;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;wF(f,b,4,c);OF(e,d,b,4,c);zF(a,f,e,c,4);l=d;return}function zE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;rF(f,b,8,c);NF(e,d,b,8,c);uF(a,f,e,c,8);l=d;return}function AE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b,8,c);KF(g,b+(0-(c<<1))+2|0,c);LF(e,g+16|0,8);MF(a,f,e,c,8);l=d;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b,8,c);GF(g,b+(0-(c<<1))+2|0,c);HF(e,g+16|0,8);IF(a,f,e,c,8);l=d;return}function CE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b,8,c);CF(g,b+(0-(c<<1))+2|0,c);DF(e,g+16|0,8);EF(a,f,e,c,8);l=d;return}function DE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b,4,c);xF(g,b+(0-(c<<1))+1|0,c);yF(e,g+8|0,4);zF(a,f,e,c,4);l=d;return}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b,8,c);sF(g,b+(0-(c<<1))+2|0,c);tF(e,g+16|0,8);uF(a,f,e,c,8);l=d;return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;KF(e,b+(0-(c<<1))|0,c);$F(a,e+16|0,c);l=d;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;GF(e,b+(0-(c<<1))|0,c);_F(a,e+16|0,c);l=d;return}function HE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;CF(e,b+(0-(c<<1))|0,c);ZF(a,e+16|0,c);l=d;return}function IE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;xF(e,b+(0-(c<<1))|0,c);YF(a,e+8|0,c);l=d;return}function JE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;sF(e,b+(0-(c<<1))|0,c);XF(a,e+16|0,c);l=d;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;KF(g,b+(0-(c<<1))|0,c);LF(f,g+16|0,8);RF(e,d,b,8,c);MF(a,f,e,c,8);l=d;return}function LE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;GF(g,b+(0-(c<<1))|0,c);HF(f,g+16|0,8);QF(e,d,b,8,c);IF(a,f,e,c,8);l=d;return}function ME(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;CF(g,b+(0-(c<<1))|0,c);DF(f,g+16|0,8);PF(e,d,b,8,c);EF(a,f,e,c,8);l=d;return}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;xF(g,b+(0-(c<<1))|0,c);yF(f,g+8|0,4);OF(e,d,b,4,c);zF(a,f,e,c,4);l=d;return}function OE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;sF(g,b+(0-(c<<1))|0,c);tF(f,g+16|0,8);NF(e,d,b,8,c);uF(a,f,e,c,8);l=d;return}function PE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);WF(a,d,b,c,c);l=d;return}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);VF(a,d,b,c,c);l=d;return}function RE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);UF(a,d,b,c,c);l=d;return}function SE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);TF(a,d,b,c,c);l=d;return}function TE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);SF(a,d,b,c,c);l=d;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;KF(g,b+(0-(c<<1))+2|0,c);LF(f,g+16|0,8);RF(e,d,b,8,c);MF(a,f,e,c,8);l=d;return}function VE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;GF(g,b+(0-(c<<1))+2|0,c);HF(f,g+16|0,8);QF(e,d,b,8,c);IF(a,f,e,c,8);l=d;return}function WE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;CF(g,b+(0-(c<<1))+2|0,c);DF(f,g+16|0,8);PF(e,d,b,8,c);EF(a,f,e,c,8);l=d;return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;xF(g,b+(0-(c<<1))+1|0,c);yF(f,g+8|0,4);OF(e,d,b,4,c);zF(a,f,e,c,4);l=d;return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;sF(g,b+(0-(c<<1))+2|0,c);tF(f,g+16|0,8);NF(e,d,b,8,c);uF(a,f,e,c,8);l=d;return}function ZE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;KF(f,b+(0-(c<<1))|0,c);LF(e,f+16|0,8);MF(a,f+24|0,e,c,8);l=d;return}function _E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;GF(f,b+(0-(c<<1))|0,c);HF(e,f+16|0,8);IF(a,f+24|0,e,c,8);l=d;return}function $E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;CF(f,b+(0-(c<<1))|0,c);DF(e,f+16|0,8);EF(a,f+24|0,e,c,8);l=d;return}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;xF(f,b+(0-(c<<1))|0,c);yF(e,f+8|0,4);zF(a,f+12|0,e,c,4);l=d;return}function bF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;sF(f,b+(0-(c<<1))|0,c);tF(e,f+16|0,8);uF(a,f+24|0,e,c,8);l=d;return}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b+c|0,8,c);KF(g,b+(0-(c<<1))|0,c);LF(e,g+16|0,8);MF(a,f,e,c,8);l=d;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b+c|0,8,c);GF(g,b+(0-(c<<1))|0,c);HF(e,g+16|0,8);IF(a,f,e,c,8);l=d;return}function eF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b+c|0,8,c);CF(g,b+(0-(c<<1))|0,c);DF(e,g+16|0,8);EF(a,f,e,c,8);l=d;return}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b+c|0,4,c);xF(g,b+(0-(c<<1))|0,c);yF(e,g+8|0,4);zF(a,f,e,c,4);l=d;return}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))|0,c);tF(e,g+16|0,8);uF(a,f,e,c,8);l=d;return}function hF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;JF(f,b+c|0,8,c);RF(e,d,b,8,c);MF(a,f,e,c,8);l=d;return}function iF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;FF(f,b+c|0,8,c);QF(e,d,b,8,c);IF(a,f,e,c,8);l=d;return}function jF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;BF(f,b+c|0,8,c);PF(e,d,b,8,c);EF(a,f,e,c,8);l=d;return}function kF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;wF(f,b+c|0,4,c);OF(e,d,b,4,c);zF(a,f,e,c,4);l=d;return}function lF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;rF(f,b+c|0,8,c);NF(e,d,b,8,c);uF(a,f,e,c,8);l=d;return}function mF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;JF(f,b+c|0,8,c);KF(g,b+(0-(c<<1))+2|0,c);LF(e,g+16|0,8);MF(a,f,e,c,8);l=d;return}function nF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FF(f,b+c|0,8,c);GF(g,b+(0-(c<<1))+2|0,c);HF(e,g+16|0,8);IF(a,f,e,c,8);l=d;return}function oF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;BF(f,b+c|0,8,c);CF(g,b+(0-(c<<1))+2|0,c);DF(e,g+16|0,8);EF(a,f,e,c,8);l=d;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;wF(f,b+c|0,4,c);xF(g,b+(0-(c<<1))+1|0,c);yF(e,g+8|0,4);zF(a,f,e,c,4);l=d;return}function qF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;rF(f,b+c|0,8,c);sF(g,b+(0-(c<<1))+2|0,c);tF(e,g+16|0,8);uF(a,f,e,c,8);l=d;return}function rF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function sF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function tF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<512?p:0-p>>31&511;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<512?o:0-o>>31&511;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function uF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=vF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function vF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=bX(c^a|0,d^b|0,1)|0;d=UW(c|a|0,d|b|0,e&2147450879|0,y&2147450879|0)|0;return d|0}function wF(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function xF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function yF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(N(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(N(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(N(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function zF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;j=e+(h<<2)|0;i=a+(N(h,f)|0)|0;l=c[i>>2]|0;c[i>>2]=AF(l,AF(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;h=h+1|0}return}function AF(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function BF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function CF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function DF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:0-q>>31&1023;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<1024?p:0-p>>31&1023;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function EF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=vF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function FF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function GF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function HF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:0-q>>31&4095;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<4096?o:0-o>>31&4095;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function IF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=vF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function JF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function KF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function LF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:0-q>>31&16383;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<16384?o:0-o>>31&16383;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function MF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=vF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function NF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;p=b[g+-16>>1]|0;f=b[g>>1]|0;c=b[g+16>>1]|0;o=b[g+32>>1]|0;m=b[g+48>>1]|0;l=b[g+64>>1]|0;n=b[g+80>>1]|0;k=b[g+96>>1]|0;q=(b[g+-32>>1]|0)+512+m+((c+f|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+512+l+((o+c|0)*20|0)+(N(m+f|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<512?p:0-p>>31&511;f=f+512+n+((m+o|0)*20|0)+(N(l+c|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<512?f:0-f>>31&511;o=c+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<512?o:0-o>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function OF(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(N(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(N(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(N(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function PF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;r=b[g+-16>>1]|0;p=b[g>>1]|0;q=p+10230|0;c=b[g+16>>1]|0;f=c+10230|0;o=(b[g+32>>1]|0)+10230|0;m=(b[g+48>>1]|0)+10230|0;l=(b[g+64>>1]|0)+10230|0;n=(b[g+80>>1]|0)+10230|0;k=b[g+96>>1]|0;s=(b[g+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(N(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:0-s>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(N(m+q|0,-5)|0)>>10;b[a+(i<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(N(l+f|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<1024?f:0-f>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function QF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:0-r>>31&4095;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<4096?g:0-g>>31&4095;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function RF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:0-r>>31&16383;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<16384?g:0-g>>31&16383;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function SF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;q=b[g+-16>>1]|0;p=b[g>>1]|0;f=b[g+16>>1]|0;n=b[g+32>>1]|0;l=b[g+48>>1]|0;k=b[g+64>>1]|0;m=b[g+80>>1]|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+512+l+((f+p|0)*20|0)+(N(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:0-o>>31&511)|0)>>>1;o=a+(i<<1)|0;q=q+512+k+((n+f|0)*20|0)+(N(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;o=a+(d<<1)|0;p=p+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;o=a+(j<<1)|0;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function TF(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(N(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(N(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}function UF(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;s=b[g+-16>>1]|0;q=b[g>>1]|0;r=q+10230|0;f=b[g+16>>1]|0;p=f+10230|0;n=(b[g+32>>1]|0)+10230|0;l=(b[g+48>>1]|0)+10230|0;k=(b[g+64>>1]|0)+10230|0;m=(b[g+80>>1]|0)+10230|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(N(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:0-o>>31&1023)|0)>>>1;o=a+(i<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(N(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:0-r>>31&1023)|0)>>>1;o=a+(d<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(N(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;o=a+(j<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function VF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:0-r>>31&4095)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:0-g>>31&4095)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function WF(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:0-r>>31&16383)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:0-g>>31&16383)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function XF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:0-j>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function YF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function ZF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:0-q>>31&1023)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:0-j>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function _F(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:0-j>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function $F(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:0-j>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function aG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function bG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function cG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function dG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function eG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function fG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=vF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function gG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=AF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;f=f+1|0;a=a+e|0;b=b+e|0}return}function hG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=vF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function iG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=vF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function jG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=vF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function kG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function lG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function mG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<512?K:0-K>>31&511;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<512?c:0-c>>31&511;g=g+1|0;f=f+2|0;d=d+2|0}return}function nG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=vF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=vF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=vF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=vF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function oG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function pG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function qG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;J=d[c+t>>0]|0;I=d[c>>0]|0;H=d[c+f>>0]|0;G=d[c+u>>0]|0;F=d[c+v>>0]|0;E=d[c+w>>0]|0;D=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;K=(d[c+s>>0]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[b>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[b+e>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[b+m>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+16+y+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;a[b+n>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+16+A+((D+E|0)*20|0)+(N(y+F|0,-5)|0)>>5;a[b+o>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+16+B+((y+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;a[b+p>>0]=F>>>0>255?(F^-2147483648)>>31:F;E=E+16+z+((A+y|0)*20|0)+(N(B+D|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+16+C+((B+A|0)*20|0)+(N(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function rG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;p=b+m|0;l=N(j,h)|0;o=e+l|0;k=N(j,f)|0;n=a+k|0;q=c[n>>2]|0;c[n>>2]=AF(q,AF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;c[k>>2]=AF(n,AF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;j=j+1|0}return} +function BM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function CM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function DM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=0;while(1){if((h|0)==4)break;q=a[g+h>>0]|0;p=q<<24>>24;a:do if(q<<24>>24>=1){q=0-p|0;i=0;j=b;while(1){if((i|0)==1)break a;k=j+-1|0;l=d[k>>0]|0;m=d[j+-2>>0]|0;n=d[j>>0]|0;o=d[j+1>>0]|0;r=l-n|0;if(((((r|0)>-1?r:0-r|0)|0)<(e|0)?(r=m-l|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0)?(r=o-n|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0){r=m+4-o+(n-l<<2)>>3;r=(r|0)<(q|0)?q:(r|0)>(p|0)?p:r;o=r+l|0;a[k>>0]=o>>>0>255?(o^-2147483648)>>31:o;r=n-r|0;a[j>>0]=r>>>0>255?(r^-2147483648)>>31:r}i=i+1|0;j=j+c|0}}while(0);b=b+c|0;h=h+1|0}return}function EM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function FM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=0-c|0;n=N(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function GM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function HM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function IM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function JM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function KM(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function LM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){l=UW(0,0,b|0,c|0)|0;l=ZW(l&b|0,y&c|0,-862635923,36691299)|0;l=bX(l|0,y|0,58)|0;l=a[146529+l>>0]|0;g=l&255;j=UW(0,0,e|0,f|0)|0;j=ZW(j&e|0,y&f|0,-862635923,36691299)|0;j=bX(j|0,y|0,58)|0;j=a[146529+j>>0]|0;h=j&255;i=g>>>0>h>>>0;l=aX(b|0,c|0,l&255|0)|0;k=y;m=(k|0)>-1|(k|0)==-1&l>>>0>4294967295;b=UW(0,0,l|0,k|0)|0;k=m?k:y;f=aX(e|0,f|0,j&255|0)|0;e=y;j=(e|0)>-1|(e|0)==-1&f>>>0>4294967295;c=UW(0,0,f|0,e|0)|0;b=m?l:b;c=j?f:c;f=k;e=j?e:y;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;n=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;k=n?c:b;m=n?e:f;n=UW((n?b:c)|0,(n?f:e)|0,k|0,m|0)|0;j=y;l=UW(0,0,n|0,j|0)|0;l=ZW(n&l|0,j&y|0,-862635923,36691299)|0;l=bX(l|0,y|0,58)|0;l=aX(n|0,j|0,d[146529+l>>0]|0|0)|0;b=k;c=l;f=m;e=y}b=cX(b|0,f|0,(i?h:g)|0)|0;c=y}}else{c=f;b=e}y=c;return b|0}function MM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=h;f=c[(c[a+28>>2]|0)+20>>2]|0;do if(((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)?(c[a+120>>2]|0)!=9:0){e=f+300|0;if((c[e>>2]|0)!=1){Uf(a,16,146731,d);a=-1;break}d=f+184|0;kX(d|0)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;jX(a|0)|0;while(1){if((c[e>>2]|0)==1)break;wc(a|0,d|0)|0}a=c[f+328>>2]|0;lX(d|0)|0}else g=4;while(0);if((g|0)==4)a=OM(a,b)|0;l=h;return a|0}function NM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+880>>2]|0;a:do if((d|0)!=0?(i=c[(c[a+12>>2]|0)+124>>2]|0,(i|0)!=0):0){g=(c[d+4>>2]|0)+8|0;f=0;while(1){h=c[i+(f<<2)>>2]|0;if(!h){d=0;j=11;break a}b:do if(c[h+4>>2]&1|0?(c[g>>2]|0)==(c[h+8>>2]|0):0){e=0;while(1){d=c[b+(e<<2)>>2]|0;if((d|0)==-1)break b;if((c[h>>2]|0)==(d|0))break a;else e=e+1|0}}while(0);f=f+1|0}}else{d=0;j=11}while(0);c:do if((j|0)==11){while(1)if((c[b+(d<<2)>>2]|0)==-1)break;else{d=d+1|0;j=11}d=b+(d+-1<<2)|0;j=c[(nh(c[d>>2]|0)|0)+8>>2]|0;if((j&8|0)==0&0==0){d=c[d>>2]|0;break}g=a+12|0;f=0;d:while(1){h=b+(f<<2)|0;if((c[h>>2]|0)==-1){d=-1;break c}else e=0;while(1){i=RM(c[g>>2]|0,e)|0;if(!i)break d;d=c[i>>2]|0;if((d|0)==(c[h>>2]|0))break;else e=e+1|0}if(!(c[i+4>>2]&4))f=f+1|0;else break c}d=c[h>>2]|0}while(0);return d|0}function OM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+80|0;if((l|0)>=(m|0))W(80);v=B+72|0;u=B+64|0;t=B+56|0;s=B+48|0;r=B+40|0;y=B+32|0;x=B+24|0;w=B+16|0;d=B;z=B+76|0;f=0;while(1){e=f+1|0;if((c[b+(f<<2)>>2]|0)==-1)break;else f=e}if((f|0)<=0){c[d>>2]=146793;c[d+4>>2]=124617;c[d+8>>2]=1310;Uf(0,0,159675,d);Ub()}d=b+(f+-1<<2)|0;o=c[(nh(c[d>>2]|0)|0)+8>>2]|0;if((o&8|0)==0&0==0)c[a+768>>2]=c[d>>2];d=Jh(e,4)|0;c[z>>2]=d;if(!d)d=-1;else{gX(d|0,b|0,e<<2|0)|0;j=a+120|0;k=a+12|0;n=a+880|0;o=a+860|0;i=d;a:while(1){PM(a);d=Ld[c[j>>2]&15](a,i)|0;if((d|0)==-1){d=-1;break}h=nh(d)|0;if(!h){A=11;break}c[x>>2]=c[h>>2];Uf(a,48,146851,x);b=0;while(1){if((b|0)>=(f|0))break;if((c[i+(b<<2)>>2]|0)==(d|0))break;b=b+1|0}if((b|0)==(f|0)){A=17;break}e=c[(c[k>>2]|0)+124>>2]|0;if(!e)break;else b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break a;if((c[g>>2]|0)==(d|0))break;else b=b+1|0}b=c[g+4>>2]|0;if((b&2|0)!=0?(p=c[o>>2]|0,(p|0)!=0):0)if((c[(c[p+4>>2]|0)+36>>2]|0)==(d|0))A=31;else{c[r>>2]=c[h>>2];Uf(a,16,146946,r)}else A=25;do if((A|0)==25){A=0;if(b&1|0?(q=c[n>>2]|0,q|0):0){if((c[(c[q+4>>2]|0)+8>>2]|0)==(c[g+8>>2]|0)){A=31;break}c[s>>2]=c[h>>2];Uf(a,16,147034,s);break}if(!(b&12)){c[t>>2]=c[h>>2];Uf(a,16,147120,t)}else A=31}while(0);if((A|0)==31){A=0;if(!(c[g+12>>2]|0))break;c[u>>2]=c[h>>2];Uf(a,48,147173,u);if((QM(a,g)|0)>=0)break}c[v>>2]=c[h>>2];Uf(a,48,147217,v);b=0;while(1){if((b|0)>=(f|0)){d=b;break}if((c[i+(b<<2)>>2]|0)==(d|0)){d=b;break}b=b+1|0}while(1){b=d+1|0;if((b|0)>=(f|0))break;i=c[z>>2]|0;c[i+(d<<2)>>2]=c[i+(b<<2)>>2];d=b}f=f+-1|0;i=c[z>>2]|0}if((A|0)==11){Uf(a,16,146800,w);d=-1}else if((A|0)==17){c[y>>2]=c[h>>2];Uf(a,16,146886,y);d=0}Qf(z)}l=B;return d|0}function PM(a){a=a|0;var b=0,d=0,e=0;b=a+592|0;d=c[b>>2]|0;if(d|0?(e=c[d+52>>2]|0,e|0):0)Kd[e&31](a)|0;Qf((c[a+28>>2]|0)+60|0);c[b>>2]=0;zg(a+860|0);return}function QM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i+8|0;e=i;g=c[b+12>>2]|0;if((c[g+16>>2]&512|0)!=0?(c[a+568>>2]|0)>-2:0){c[e>>2]=c[g>>2];Uf(a,24,147274,e);d=-1163346256}else f=4;do if((f|0)==4){e=c[g+56>>2]|0;if(e|0?(f=Lg(e)|0,c[(c[a+28>>2]|0)+60>>2]=f,(f|0)==0):0){d=-12;break}f=a+592|0;c[f>>2]=g;e=c[g+48>>2]|0;if((e|0)!=0?(d=Kd[e&31](a)|0,(d|0)<0):0){c[h>>2]=oh(c[b>>2]|0)|0;Uf(a,16,147309,h);Qf((c[a+28>>2]|0)+60|0);c[f>>2]=0}else d=0}while(0);l=i;return d|0}function RM(a,b){a=a|0;b=b|0;var d=0;d=c[a+124>>2]|0;a:do if((b|0)<0|(d|0)==0)a=0;else{a=0;while(1){if((a|0)>(b|0))break;if(!(c[d+(a<<2)>>2]|0)){a=0;break a}else a=a+1|0}a=c[d+(b<<2)>>2]|0}while(0);return a|0}function SM(a){a=a|0;var b=0,c=0,e=0;e=mN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;nN(a,b);return (oN(a,b+1|0)|0)+-1|0}function TM(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122033+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122545+a>>0]|0|0}function UM(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116064+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Uf(0,16,151423,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122033+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122545+a>>0]|0}while(0);l=i;return a|0}function VM(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function WM(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function XM(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122033+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123057+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116064+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function YM(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(kN(d)|0){c[b>>2]=(jN(d)|0)+1;if((f|0)==3)e=(jN(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=c[j>>2]|0;if(g>>>0>i>>>0|(e+-1|0)>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e+-1;c[k+12>>2]=i;Uf(h,16,147940,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;n=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;n=9}while(0);if((n|0)==9){c[a>>2]=e;e=0}l=o;return e|0}function ZM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q+8|0;n=q;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(bN(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=cN(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){p=7;break a}if(i>>>0>2){p=9;break a}c[b+27256+(f<<8)+(e<<3)+4>>2]=dN(k)|0;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((p|0)==7){Uf(d,16,147873,n);e=-1094995529}else if((p|0)==9){c[o>>2]=i;Uf(d,16,147899,o);e=-1094995529}l=q;return e|0}function _M(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;if((l|0)>=(m|0))W(32);z=B+16|0;n=B+8|0;k=B;c[f>>2]=0;y=f+4|0;c[y>>2]=0;i=jN(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;Uf(h,16,147764,k);c[j>>2]=0;i=0}v=1<>2]|0))t=0;else{i=jN(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[n>>2]=i;Uf(h,16,147807,n);c[j>>2]=0;i=0}t=1<=2){A=35;break}p=f+16+(g<<2)|0;c[p>>2]=0;q=f+24+(g<<2)|0;c[q>>2]=0;r=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[r>>2]|0))break;if(kN(a)|0){j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=lN(a)|0;i=lN(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){A=38;break a}if((i<<24>>24|0)!=(i|0)){A=38;break a}if(!((i|0)==0&(j|0)==(v|0))){c[f>>2]=1;i=1;j=p;A=17}}else{c[f+32+(e<<4)+(g<<3)>>2]=v;i=0;j=f+32+(e<<4)+(g<<3)+4|0;A=17}if((A|0)==17){A=0;c[j>>2]=i}b:do if(c[u>>2]|0){if(!(kN(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=t;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}else i=0;while(1){if((i|0)>=2)break b;j=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[j>>2]=lN(a)|0;k=lN(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[b>>2]=k;n=c[j>>2]|0;if((n<<24>>24|0)!=(n|0)){A=26;break a}if((k<<24>>24|0)!=(k|0)){A=26;break a}if(!((k|0)==0&(n|0)==(t|0))){c[y>>2]=1;c[q>>2]=1}i=i+1|0}}while(0);c:do if(s?(n=c[f+32+(e<<4)+(g<<3)>>2]|0,x=e<<1,w=x+16|0,x=x+17|0,c[f+32+(x<<4)+(g<<3)>>2]=n,c[f+32+(w<<4)+(g<<3)>>2]=n,n=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(x<<4)+(g<<3)+4>>2]=n,c[f+32+(w<<4)+(g<<3)+4>>2]=n,c[u>>2]|0):0){i=0;while(1){if((i|0)==2)break c;n=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)>>2]=n;n=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)+4>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)+4>>2]=n;i=i+1|0}}while(0);e=e+1|0}if(o)g=g+1|0;else{A=35;break}}if((A|0)==26){c[j>>2]=t;c[b>>2]=0;A=38}else if((A|0)==35){if(!(c[f>>2]|0))i=(c[y>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((A|0)==38){Li(h,147852,z);i=-1094995529}l=B;return i|0}function $M(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+8|0;o=p;a:do if((c[d+44>>2]|0)!=5){k=bN(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if((d|0)>=66){f=21;break a}k=cN(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(dN(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=j&(c[g>>2]|0)+-1}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=cN(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[o>>2]=d;Uf(e,16,147704,o);d=-1;break}else if((f|0)==18){c[n>>2]=k;Uf(e,16,151013,n);d=-1;break}}else{d=0;f=21}}else{aN(b);if(!(bN(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}l=p;return d|0}function aN(a){a=a|0;iN(a);return}function bN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function cN(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122033+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122545+a>>0]|0|0}function dN(a){a=a|0;var b=0,c=0,e=0;e=eN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;fN(a,b);return (gN(a,b+1|0)|0)+-1|0}function eN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=gN(d,32)|0;l=b;return a|0}function fN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function gN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=hN(a,b)|0;break}else{b=b+-16|0;c=(hN(a,16)|0)<>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function iN(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function jN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116064+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Uf(0,16,151423,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122033+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122545+a>>0]|0}while(0);l=i;return a|0}function kN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function lN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122033+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123057+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116064+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function mN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=oN(d,32)|0;l=b;return a|0}function nN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function oN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=VM(a,b)|0;break}else{b=b+-16|0;c=(VM(a,16)|0)<>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;rN(a,b);return (sN(a,b+1|0)|0)+-1|0}function qN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=sN(d,32)|0;l=b;return a|0}function rN(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function sN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=tN(a,b)|0;break}else{b=b+-16|0;c=(tN(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function uN(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967231){if(!(JN(b,d,e+64|0)|0)){b=(c[b>>2]|0)+e|0;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{Qf(b);c[d>>2]=0}return}function vN(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;Uf(g,16,151061,k);h=-1094995529}}else h=-11;l=n;return h|0}function wN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((b+3|0)>>>0>>0){d=0;while(1){f=b+d|0;if((f+3|0)>>>0>=c>>>0)break;e=d+1|0;if(a[f>>0]|0){d=e;continue}if(a[b+e>>0]|0){d=e;continue}if((a[b+(d+2)>>0]|0)==1)break;else d=e}d=d+3|0}else d=c-b|0;return d|0}function xN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=$f(a,N(c,b)|0)|0;else a=0;return a|0}function yN(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=x;s=f+52|0;c[s>>2]=0;h=0;while(1){if((h+1|0)>=(d|0))break;if(!(a[b+h>>0]|0)){i=h+-1|0;if((h|0)>0)h=(a[b+i>>0]|0)==0?i:h;i=h+2|0;if(((i|0)<(d|0)?(a[b+(h+1)>>0]|0)==0:0)?(j=a[b+i>>0]|0,(j&255)<4):0){v=9;break}}h=h+2|0}a:do if((v|0)==9){switch(j<<24>>24){case 0:case 3:break a;default:{}}d=h}while(0);b:do if((g|0)!=0&(h|0)>=(d+-1|0)){c[f+20>>2]=b;c[f+8>>2]=b;c[f+16>>2]=d;c[f+4>>2]=d}else{i=(h|0)>(d|0)?d:h;r=e+8|0;q=(c[e>>2]|0)+(c[r>>2]|0)|0;c[f>>2]=q;gX(q|0,b|0,i|0)|0;o=f+60|0;p=f+56|0;h=i;while(1){j=i+2|0;if((j|0)>=(d|0)){v=30;break}e=b+j|0;g=a[e>>0]|0;if((g&255)<=3){j=a[b+i>>0]|0;if(!(j<<24>>24))if(g<<24>>24==0?1:(a[b+(i+1)>>0]|0)!=0)j=0;else{if(g<<24>>24!=3){w=h;u=i;break}n=h+1|0;a[q+h>>0]=0;h=h+2|0;a[q+n>>0]=0;i=i+3|0;j=c[o>>2]|0;if(!j)continue;k=c[s>>2]|0;g=k+1|0;c[s>>2]=g;e=c[p>>2]|0;if((e|0)<=(k|0)){j=e<<1;c[p>>2]=j;if((j|0)<=(k|0)){v=24;break}GN(o,j,4)|0;j=c[o>>2]|0;if(!j){v=27;break}g=c[s>>2]|0}c[j+(g+-1<<2)>>2]=n;continue}}else{a[q+h>>0]=a[b+i>>0]|0;a[q+(h+1)>>0]=a[b+(i+1)>>0]|0;h=h+2|0;i=j;j=a[e>>0]|0}a[q+h>>0]=j;h=h+1|0;i=i+1|0}c:do if((v|0)==24){c[t>>2]=148441;c[t+4>>2]=148491;c[t+8>>2]=114;Uf(0,0,159675,t);Ub()}else if((v|0)==27){c[p>>2]=0;d=-12;break b}else if((v|0)==30)while(1){if((i|0)>=(d|0)){w=h;u=i;break c}a[q+h>>0]=a[b+i>>0]|0;h=h+1|0;i=i+1|0;v=30}while(0);d=q+w|0;h=d+64|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));c[f+8>>2]=q;c[f+4>>2]=w;c[f+20>>2]=b;c[f+16>>2]=u;c[r>>2]=(c[r>>2]|0)+u;d=u}while(0);l=x;return d|0}function zN(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+8|0;h=c[b+4>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24)e=e+-1-(d[156818+((N(0-b&b,125613361)|0)>>>27)>>0]|0)|0}else e=-34}return e|0}function AN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function BN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;d=a+24|0;if((DN(d)|0)==0?(e=a+44|0,c[e>>2]=EN(d,6)|0,f=EN(d,6)|0,g=(EN(d,3)|0)+-1|0,c[a+48>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=FN(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;Uf(b,48,148193,h);a=(f|0)==0&1}else a=-1094995529;l=i;return a|0}function CN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=a+24|0;if(!(DN(d)|0)){g=a+64|0;c[g>>2]=EN(d,2)|0;d=EN(d,5)|0;c[a+44>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;Uf(b,48,148157,e);a=1}else a=-1094995529;l=f;return a|0}function DN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function EN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function FN(a){a=a|0;do switch(a|0){case 0:{a=148433;break}case 1:{a=148425;break}case 2:{a=148419;break}case 3:{a=148413;break}case 4:{a=148406;break}case 5:{a=148399;break}case 6:{a=148392;break}case 7:{a=148385;break}case 8:{a=148378;break}case 9:{a=148371;break}case 16:{a=148362;break}case 17:{a=148351;break}case 18:{a=148342;break}case 19:{a=148331;break}case 20:{a=148322;break}case 21:{a=148314;break}case 32:{a=148310;break}case 33:{a=148306;break}case 34:{a=148302;break}case 35:{a=148298;break}case 36:{a=148290;break}case 37:{a=148282;break}case 38:{a=148275;break}case 39:{a=148264;break}case 40:{a=148253;break}default:a=148251}while(0);return a|0}function GN(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=HN(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function HN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(!((IN(d,b,f)|0)==0?(e=$f(a,c[f>>2]|0)|0,(e|0)!=0):0)){Rf(a);e=0}l=g;return e|0}function IN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=N(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function JN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148516;c[h+4>>2]=148533;c[h+8>>2]=33;Uf(0,0,159675,h);Ub()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;Qf(b);h=Lg(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}l=i;return g|0}function KN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;if((l|0)>=(m|0))W(48);n=u+24|0;j=u+8|0;s=u+36|0;do if((g&8|0)==0&(LN(b,e,f,1,h)|0)<0){Uf(h,24,148647,u);if((e|0)<=21801){i=e*3|0;k=((i|0)/2|0)+64|0;g=Lg(k)|0;c[s>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=155203;c[j+4>>2]=155217;c[j+8>>2]=137;Uf(0,0,159675,j);Ub()}q=b+e|0;if((i|0)<=-130){c[n>>2]=155203;c[n+4>>2]=155217;c[n+8>>2]=147;Uf(0,0,159675,n);Ub()}p=g;o=g+k|0;g=p;i=b;e=0;a:while(1){k=o-g|0;n=(k|0)<1;while(1){j=q-i|0;if(!j)break a;b=i;if(j>>>0>2){if((j|0)<3)break;i=b+1|0;if(((d[i>>0]|0)<<8|(d[b>>0]|0)<<16|(d[b+2>>0]|0))>>>0<4)break}else i=b+1|0;if(!((e|0)!=0|n)){t=20;break}else e=1}if((t|0)==20){t=0;e=g;a[e>>0]=a[b>>0]|0;g=e+1|0;e=0;continue}if((e|0)==0?(r=g,(k|0)>2):0){a[r+2>>0]=3;a[r+1>>0]=0;a[r>>0]=0;g=r+3|0;e=0}else e=1;i=b+2|0}g=g-p|0;r=dX(g+65534&65535|0)|0;t=c[s>>2]|0;a[t>>0]=r;a[t+1>>0]=r>>8;LN(c[s>>2]|0,g,f,1,h)|0;Qf(s);g=0;break}}else g=-34}else g=0;while(0);l=u;return g|0}function LN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=k;j=k+8|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;a=Gi(j,a,b,f,e,2,27,1)|0;a:do if((a|0)<0)a=0;else{h=j+16|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*68|0)+44>>2]|0;switch(e|0){case 7:{a=Oi(b+(g*68|0)+24|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=Qi(b+(g*68|0)+24|0,f,d,c[b+(g*68|0)+12>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;Uf(f,40,155320,i)}}g=g+1|0}}while(0);mi(j);l=k;return a|0}function MN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29592>>2]=-1;c[b+29664>>2]=c[a+92>>2];c[b+29668>>2]=c[a+96>>2];c[b+26380>>2]=3;c[b+25700>>2]=c[a+564>>2];c[b+25696>>2]=c[a+60>>2];c[b+28248>>2]=65536;c[b+29572>>2]=-1;c[b+29576>>2]=0;c[b+28264>>2]=-1;c[b+29860>>2]=-1;c[b+29712>>2]=-1;c[b+28744>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28676+(d<<2)>>2]=-2147483648;d=d+1|0}Tg(b+29676|0);c[a+332>>2]=1;if(!(c[a+696>>2]&2))d=1;else d=c[a+688>>2]|0;e=b+25632|0;c[e>>2]=d;a=hh(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=Ch()|0;if((d|0)>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=Ch()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function NN(){var a=0,b=0,d=0;if(!(c[45898]|0)){c[45898]=1;c[45729]=186300;c[45731]=256;ON(182912,8,20,148848,1,1,148868,1,1,0,0,0,4)|0;c[45733]=187324;c[45735]=8192;ON(182928,13,36,148888,1,1,148924,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4){a=0;break}c[182944+(b<<4)+4>>2]=220092+(a<<2);d=c[104964+(b<<2)>>2]|0;c[182944+(b<<4)+12>>2]=d;ON(182944+(b<<4)|0,8,68,148960+(b*68|0)|0,1,1,149232+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}while(1){if((a|0)==3){a=0;break}d=a+1|0;c[183008+(d<<4)+4>>2]=225644+(a<<5);c[183008+(d<<4)+12>>2]=8;ON(183008+(d<<4)|0,3,4,149504+(a<<2)|0,1,1,149516+(a<<2)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==7){a=0;break}d=a+1|0;c[183072+(d<<4)+4>>2]=225740+(a<<7);c[183072+(d<<4)+12>>2]=32;ON(183072+(d<<4)|0,5,8,149528+(a<<3)|0,1,1,149584+(a<<3)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==15){a=0;break}d=a+1|0;c[183200+(d<<4)+4>>2]=226636+(a<<11);c[183200+(d<<4)+12>>2]=512;ON(183200+(d<<4)|0,9,16,149640+(a<<4)|0,1,1,149896+(a<<4)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==6)break;d=a+1|0;c[183456+(d<<4)+4>>2]=257356+(a<<5);c[183456+(d<<4)+12>>2]=8;ON(183456+(d<<4)|0,3,7,150152+(a<<4)|0,1,1,150264+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[45893]=257548;c[45895]=96;ON(183568,6,16,150248,1,1,150360,1,1,0,0,0,4)|0;PN()}return}function ON(f,g,h,i,j,k,n,o,p,q,r,s,t){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;V=l;l=l+12624|0;if((l|0)>=(m|0))W(12624);U=V+72|0;T=V+64|0;P=V+56|0;O=V+48|0;C=V+40|0;D=V+32|0;x=V+16|0;v=V;u=V+616|0;w=V+600|0;I=V+88|0;c[f>>2]=g;R=(t&4|0)!=0;do if(R)if((h+1|0)>>>0<1501){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+8>>2]=0;M=w;Q=6;break}else{c[v>>2]=150376;c[v+4>>2]=150435;c[v+8>>2]=282;Uf(0,0,159675,v);Ub()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;u=Jh(h+1|0,8)|0;if(!u)S=-12;else{M=f;Q=6}}while(0);do if((Q|0)==6){L=(q|0)!=0;if(L&(s|0)>2){c[x>>2]=150458;c[x+4>>2]=150435;c[x+8>>2]=298;Uf(0,0,159675,x);Ub()}J=g*3|0;K=(t&2|0)==0;B=0;v=0;while(1){if((B|0)>=(h|0)){Q=41;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=15;break}case 2:{w=b[w>>1]&255;Q=15;break}case 4:{w=c[w>>2]&255;Q=15;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==15){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if((A|0)>(g|0)){if((w&255)>32|(J|0)<(A|0)){Q=18;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=25;break}case 2:{x=e[x>>1]|0;Q=25;break}case 4:{x=c[x>>2]|0;Q=25;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==25){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}H=cX(1,0,w&255|0)|0;G=y;if(!((G|0)>0|(G|0)==0&H>>>0>x>>>0)){Q=27;break}if(K)w=x<<32-A;else w=(d[116320+(x>>>8&255)>>0]|0)<<16|(d[116320+(x&255)>>0]|0)<<24|(d[116320+(x>>>16&255)>>0]|0)<<8|(d[116320+(x>>>24)>>0]|0);c[z>>2]=w;a:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=38;break a}case 2:{w=b[w>>1]|0;Q=38;break a}case 4:{w=c[w>>2]&65535;Q=38;break a}default:break a}}else{w=B&65535;Q=38}while(0);if((Q|0)==38){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==18){c[D>>2]=A;Uf(0,16,150488,D);if(R){S=-1;break}Rf(u);S=-1;break}else if((Q|0)==27){c[C>>2]=x;c[C+4>>2]=B;Uf(0,16,150519,C);if(R){S=-1;break}Rf(u);S=-1;break}else if((Q|0)==41){c[I>>2]=u;c[I+4>>2]=u+(v<<3)+-8;w=1;b:while(1){if(!w)break;w=w+-1|0;H=c[I+(w<<3)+4>>2]|0;x=c[I+(w<<3)>>2]|0;while(1){if(x>>>0>=H>>>0)continue b;C=H+-8|0;if(x>>>0>=C>>>0)break;z=H+-16|0;B=x+8|0;F=H;G=x;D=x+(F-G>>4<<3)|0;do if((QN(x,H)|0)>0)if((QN(H,D)|0)>0){E=D;X=c[E>>2]|0;E=c[E+4>>2]|0;Z=x;Y=c[Z+4>>2]|0;A=D;c[A>>2]=c[Z>>2];c[A+4>>2]=Y;A=x;c[A>>2]=X;c[A+4>>2]=E;A=0;break}else{Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0;break}else if((QN(x,D)|0)>0){Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=D;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0}else A=1;while(0);if((QN(D,H)|0)>0){Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=D;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=D;c[A>>2]=Y;c[A+4>>2]=Z;A=0}if((x|0)==(z|0))continue b;Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=C;X=c[_+4>>2]|0;E=D;c[E>>2]=c[_>>2];c[E+4>>2]=X;E=C;c[E>>2]=Y;c[E+4>>2]=Z;E=B;c:while(1){if(E>>>0>z>>>0)break;else B=E;while(1){if(B>>>0>z>>>0)break;if((QN(B,C)|0)>=0)break;B=B+8|0}while(1){if(B>>>0>z>>>0){E=B;continue c}if((QN(z,C)|0)<=0)break;z=z+-8|0}_=z;Z=c[_>>2]|0;_=c[_+4>>2]|0;X=B;Y=c[X+4>>2]|0;E=z;c[E>>2]=c[X>>2];c[E+4>>2]=Y;E=B;c[E>>2]=Z;c[E+4>>2]=_;E=B+8|0;z=z+-8|0}Z=E;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;B=C;X=c[B+4>>2]|0;_=E;c[_>>2]=c[B>>2];c[_+4>>2]=X;_=C;c[_>>2]=Y;c[_+4>>2]=Z;if(A|0?(D|0)==(E|0)|(D|0)==(E+-8|0):0){A=x;while(1){if(A>>>0>=H>>>0)break;if((QN(A,A+8|0)|0)>=1)break;A=A+8|0}if((A|0)==(H|0))continue b}_=E;if((F-_|0)<(_-G|0)){A=H;B=E+8|0}else{A=z;B=x;z=H;x=E+8|0}c[I+(w<<3)>>2]=x;c[I+(w<<3)+4>>2]=z;H=A;x=B;w=w+1|0}if((QN(x,H)|0)<=0)continue;Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;G=x;X=c[G+4>>2]|0;_=H;c[_>>2]=c[G>>2];c[_+4>>2]=X;_=x;c[_>>2]=Y;c[_+4>>2]=Z}B=0;while(1){if((B|0)>=(h|0)){Q=109;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=83;break}case 2:{w=b[w>>1]&255;Q=83;break}case 4:{w=c[w>>2]&255;Q=83;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==83){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if(!(w<<24>>24==0|(A|0)>(g|0))){if((w&255)>32|(J|0)<(A|0)){Q=86;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=93;break}case 2:{x=e[x>>1]|0;Q=93;break}case 4:{x=c[x>>2]|0;Q=93;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==93){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}_=cX(1,0,w&255|0)|0;Z=y;if(!((Z|0)>0|(Z|0)==0&_>>>0>x>>>0)){Q=95;break}if(K)w=x<<32-A;else w=(d[116320+(x>>>8&255)>>0]|0)<<16|(d[116320+(x&255)>>0]|0)<<24|(d[116320+(x>>>16&255)>>0]|0)<<8|(d[116320+(x>>>24)>>0]|0);c[z>>2]=w;d:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=106;break d}case 2:{w=b[w>>1]|0;Q=106;break d}case 4:{w=c[w>>2]&65535;Q=106;break d}default:break d}}else{w=B&65535;Q=106}while(0);if((Q|0)==106){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==86){c[O>>2]=A;Uf(0,16,150488,O);if(R){S=-1;break}Rf(u);S=-1;break}else if((Q|0)==95){c[P>>2]=x;c[P+4>>2]=B;Uf(0,16,150519,P);if(R){S=-1;break}Rf(u);S=-1;break}else if((Q|0)==109){w=RN(M,g,v,u,t)|0;if(!R){Rf(u);if((w|0)>=0){S=0;break}Qf(M+4|0);S=w;break}u=c[M+8>>2]|0;v=c[M+12>>2]|0;if((u|0)!=(v|0)){c[T>>2]=u;c[T+4>>2]=v;Uf(0,16,150555,T)}if((w|0)>-1){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];S=0;break}else{c[U>>2]=159705;c[U+4>>2]=150435;c[U+8>>2]=341;Uf(0,0,159675,U);Ub()}}}}while(0);l=V;return S|0}function PN(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<>>7&16777215)>>0]|0)|0;f=8-e|0;b=f+1|0;c=b+g|0;do if((c|0)>=9)if(!e){a[258956+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[258956+(g<<9)+(h<<1)>>0]=f+100;b=b&255;break}else{b=(h&65280|0)==0;f=(f<>>((b?0:8)-g+(d[116064+(b?h:h>>>8)>>0]|0)|0))|0;b=f&1;a[258956+(g<<9)+(h<<1)>>0]=((f+2|0)>>>1^0-b)+b;b=c&255}while(0);a[258956+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function QN(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function RN(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D;z=D+4|0;A=1<>2]=(c[v>>2]|0)+(B<<2);w=32-f|0;x=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0)){j=0;break}u=h+(j<<3)|0;o=a[u>>0]|0;s=o&255;n=h+(j<<3)+4|0;p=c[n>>2]|0;t=b[h+(j<<3)+2>>1]|0;c:do if((s|0)>(f|0)){t=s-f|0;k=p>>>w;a[u>>0]=t;c[n>>2]=p<=(g|0))break;o=h+(s<<3)|0;p=(d[o>>0]|0)-f|0;if((p|0)<1)break;q=h+(s<<3)+4|0;r=c[q>>2]|0;if((r>>>w|0)!=(k|0))break;a[o>>0]=p;c[q>>2]=r<(p|0)?n:p;t=s}n=(n|0)>(f|0)?f:n;if(!x)k=(d[116320+(k>>>8&255)>>0]<<16|d[116320+(k&255)>>0]<<24|d[116320+(k>>>16&255)>>0]<<8|d[116320+(k>>>24)>>0])>>>w;b[(c[z>>2]|0)+(k<<2)+2>>1]=0-n;j=RN(e,n,s-j|0,u,i)|0;if((j|0)<0)break a;c[z>>2]=(c[v>>2]|0)+(B<<2);b[(c[z>>2]|0)+(k<<2)>>1]=j;j=t}else{r=1<>>w}else{q=1<>>8&255)>>0]<<16|d[116320+(p&255)>>0]<<24|d[116320+(p>>>16&255)>>0]<<8|d[116320+(p>>>24)>>0]}o=o&255;n=0;while(1){if((n|0)>=(r|0))break c;u=b[(c[z>>2]|0)+(k<<2)+2>>1]|0;if(!(u<<16>>16==0|(u<<16>>16|0)==(s|0))){C=11;break b}b[(c[z>>2]|0)+(k<<2)+2>>1]=o;b[(c[z>>2]|0)+(k<<2)>>1]=t;n=n+1|0;k=k+q|0}}while(0);j=j+1|0}if((C|0)==11){Uf(0,16,150573,y);j=-1094995529;break}while(1){if((j|0)>=(A|0)){j=B;break a}if(!(b[(c[z>>2]|0)+(j<<2)+2>>1]|0))b[(c[z>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);l=D;return j|0}function SN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)Ub();b=(1<>2])+b|0;c[f>>2]=b;h=a+4|0;b=HN(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;iX(b+(c[f>>2]<<2)+(-1<=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function UN(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1672|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1680>>2]=2147483647;Nn(a+1208|0,8,1);return 0}function VN(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=x+32|0;j=x+24|0;u=x+20|0;v=x+16|0;n=x+8|0;o=x;c[u>>2]=f;c[v>>2]=g;q=c[a>>2]|0;h=q+1644|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+72>>2]|0,i|0):0)qi(c[b+68>>2]|0,i,q+40|0,q+1636|0,q+1640|0,c[b+580>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=ZN(q,f,g,b)|0;if((Sf(q,g,u,v)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[v>>2]|0;break}if((g|0)<0&(g|0)!=-100){ZN(q,(c[q>>2]|0)+((c[q+8>>2]|0)+g)|0,0-g|0,b)|0;w=9}else w=9}else w=9;while(0);if((w|0)==9){_N(a,b,c[u>>2]|0,c[v>>2]|0);h=b+760|0;if(c[h>>2]|0){c[o>>2]=c[b+84>>2];c[o+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];$N(n,j,k);p=c[n>>2]|0;r=b+76|0;c[r>>2]=c[n+4>>2];c[r+4>>2]=p}h=c[q+1404>>2]|0;if((h|0)>-1){r=c[q+1432>>2]|0;k=h;p=c[q+1400>>2]|0}else{r=-2147483648;k=-2147483648;p=-2147483648}c[a+240>>2]=r;c[a+244>>2]=k;c[a+248>>2]=p;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((r|0)>-1?(s=c[b+80>>2]|0,t=c[b+772>>2]|0,s=ZW(t|0,((t|0)<0)<<31>>31|0,s|0,((s|0)<0)<<31>>31|0)|0,t=y,(t|0)>0|(t|0)==0&s>>>0>0):0){n=c[b+76>>2]|0;o=c[b+776>>2]|0;n=ZW(o|0,((o|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=q+1672|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{w=aO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;i=TW(w|0,y|0,h|0,i|0)|0;h=y;w=j;c[w>>2]=i;c[w+4>>2]=h;w=21}}else{k=aO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;k=UW(i|0,h|0,k|0,y|0)|0;b=y;f=q+1672|0;q=f;c[q>>2]=k;c[q+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))w=21}if((w|0)==21){j=a+40|0;w=j;if((c[w>>2]|0)==0?(c[w+4>>2]|0)==-2147483648:0){t=aO(p,((p|0)<0)<<31>>31,n,o,s,t)|0;t=TW(t|0,y|0,i|0,h|0)|0;w=j;c[w>>2]=t;c[w+4>>2]=y}}if((r|0)>0){w=f;c[w>>2]=i;c[w+4>>2]=h}}c[d>>2]=c[u>>2];c[e>>2]=c[v>>2]}l=x;return g|0}function WN(a){a=a|0;a=c[a>>2]|0;Qf(a);Tg(a+1388|0);li(a+40|0);return}function XN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[k>>2]=-1;j=d+e|0;b=0;e=d;i=0;a:while(1)b:while(1){h=(b|0)!=0;while(1){if(e>>>0>=j>>>0){b=0;break a}e=YN(e,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}f=g&31;switch(g&31){case 8:{i=1;continue a}case 7:{b=1;continue b}default:{}}if(h&((f|0)!=15&((f|4|0)!=13&(i|(f|0)!=6)))){n=8;break a}}}if((n|0)==8){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;n=8}else break}b=b-d|0}l=o;return b|0}function YN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;if(b>>>0>e>>>0){c[g>>2]=150798;c[g+4>>2]=127077;c[g+8>>2]=1892;Uf(0,0,159675,g);Ub()}a:do if(b>>>0>>0){h=0;while(1){if((h|0)>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}while(1){if(b>>>0>=e>>>0)break;g=a[b+-1>>0]|0;if((g&255)>1){b=b+3|0;continue}if(!(a[b+-2>>0]|0)){h=b+1|0;if(!((g&255)+-1|d[b+-3>>0])){b=h;break}else{b=h;continue}}else{b=b+2|0;continue}}e=b>>>0>e>>>0?e:b;j=e+-4|0;c[f>>2]=eX(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0}while(0);l=i;return e|0}function ZN(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=z+8|0;h=z;t=z+16|0;x=b+1636|0;y=b+16|0;j=c[y>>2]|0;j=j>>>0>13?7:j;s=b+1640|0;if(c[x>>2]|0)if(!(c[s>>2]|0)){Uf(g,16,151095,h);i=0}else i=0;else i=f;o=b+1340|0;p=b+1660|0;q=b+1664|0;r=b+1652|0;w=b+20|0;h=0;a:while(1){if((h|0)>=(f|0)){v=31;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Ld[c[o>>2]&15](e+h|0,i-h|0)|0)+h|0;n=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{n=i;j=j^5;break b}case 0:{n=i;j=j>>>1;break b}default:{n=i;j=7;break b}}k=a[e+h>>0]|0;if(j>>>0>=6){n=c[p>>2]|0;c[p>>2]=n+1;a[b+1652+n>>0]=k;k=c[p>>2]|0;if((k|0)>5){n=c[q>>2]|0;oO(t,r,k<<3)|0;c[p>>2]=0;k=gO(t)|0;c[q>>2]=k;if(c[w>>2]|0){if(k>>>0<=n>>>0){v=29;break a}}else c[w>>2]=1;n=i;j=7}else n=i}else{n=i;i=k;v=20}}else{j=c[s>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){v=12;break a}h=i;n=i+k|0;j=5;i=a[e+i>>0]|0;v=20}while(0);c:do if((v|0)==20){v=0;if(((i&31)+-6&255)<4){k=(c[w>>2]|0)==0;h=h+((k^1)&1)|0;if(k){j=7;break}else{i=n;f=j;v=32;break a}}switch(i&31){case 1:case 2:case 5:break;default:{j=7;break c}}j=j+8|0}while(0);h=h+1|0;i=n}if((v|0)==12){c[u>>2]=k;c[u+4>>2]=h;Uf(g,16,151132,u);v=33}else if((v|0)==29){f=j;v=32}else if((v|0)==31){c[y>>2]=j;f=(c[x>>2]|0)==0?-100:i;v=33}if((v|0)==32){c[y>>2]=7;c[w>>2]=0;l=z;return ((c[x>>2]|0)==0?h-(f&5)+(f>>>0>7?-5:0)|0:i)|0}else if((v|0)==33){l=z;return f|0}return 0}function _N(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+128|0;if((l|0)>=(m|0))W(128);w=L+24|0;B=L+16|0;y=L+8|0;x=L;K=L+112|0;u=L+44|0;v=L+40|0;H=L+32|0;J=c[b>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;h=u;i=h+68|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)p=(IT(150807,f,4)|0)==0;else p=0;z=b+32|0;c[z>>2]=1;A=b+224|0;c[A>>2]=0;G=b+312|0;c[G>>2]=0;F=J+1388|0;Tg(F);c[J+1572>>2]=-1;a:do if(g|0?(uN(K,K+4|0,g),c[K>>2]|0):0){c[v>>2]=0;C=u+24|0;o=u+8|0;q=u+4|0;E=u+64|0;D=u+44|0;r=J+40|0;s=u+12|0;t=J+1640|0;i=c[J+1636>>2]|0?0:g;h=0;b:while(1){while(1){if((h|0)>=(i|0)){I=8;break}h=cO(f,g,h,i)|0;if((h|0)>=(g|0)){I=103;break b}if((h|0)<(i|0)){I=12;break}}if((I|0)==8){I=0;c[v>>2]=h;h=bO(c[t>>2]|0,f,g,v,e)|0;if((h|0)<0){I=104;break}k=c[v>>2]|0;n=k+h|0;h=k}else if((I|0)==12){I=0;c[v>>2]=h;n=i}i=n-h|0;k=f+h|0;M=a[k>>0]|0;j=M&255;c:do switch(M&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=yN(k,i,K,u,1)|0;if((i|0)<0){I=104;break}h=h+i|0;c[v>>2]=h;if((dO(C,c[o>>2]|0,c[q>>2]|0)|0)<0)break;eO(C)|0;c[E>>2]=fO(C,2)|0;M=fO(C,5)|0;c[D>>2]=M;switch(M|0){case 5:{I=23;break b}case 1:{I=24;break b}case 7:{Oi(C,e,r,0)|0;i=n;continue b}case 8:{Qi(C,e,r,c[s>>2]|0)|0;i=n;continue b}case 6:{Mi(F,C,r,e)|0;i=n;continue b}default:{i=n;continue b}}}if((I|0)==23){c[A>>2]=1;c[J+1384>>2]=0;c[J+1380>>2]=0;c[J+1372>>2]=0;c[J+1368>>2]=0;I=24}else if((I|0)==103){c[v>>2]=h;I=104}d:do if((I|0)==24){gO(C)|0;c[z>>2]=d[123569+(((hO(C)|0)>>>0)%5|0)>>0];if((c[J+1428>>2]|0)>-1)c[A>>2]=1;h=iO(C)|0;if(h>>>0>255){c[x>>2]=h;Uf(e,16,150812,x);break}i=J+168+(h<<2)|0;if(!(c[i>>2]|0)){c[y>>2]=h;Uf(e,16,150836,y);break}M=J+1192|0;zg(M);j=J+1196|0;zg(j);q=J+1200|0;c[q>>2]=0;k=J+1204|0;c[k>>2]=0;h=Bh(c[i>>2]|0)|0;c[M>>2]=h;if(h|0){h=c[h+4>>2]|0;c[q>>2]=h;h=c[h>>2]|0;i=c[J+40+(h<<2)>>2]|0;if(!i){c[B>>2]=h;Uf(e,16,150868,B);break}h=Bh(i)|0;c[j>>2]=h;if(h|0){o=c[h+4>>2]|0;c[k>>2]=o;if(((c[o+48>>2]|0)<2?(c[(c[q>>2]|0)+20>>2]|0)>>>0<2:0)?(c[z>>2]|0)==1:0)c[A>>2]=1;n=J+1344|0;p=J+1364|0;c[p>>2]=fO(C,c[o+20>>2]|0)|0;h=c[o+56>>2]<<4;c[b+328>>2]=h;i=c[o+60>>2]<<4;c[b+332>>2]=i;M=h-(c[o+84>>2]|0)-(c[o+80>>2]|0)|0;j=b+320|0;c[j>>2]=M;B=i-(c[o+88>>2]|0)-(c[o+92>>2]|0)|0;k=b+324|0;c[k>>2]=B;if((B|0)<1|(M|0)<1){c[j>>2]=h;c[k>>2]=i}e:do switch(c[o+1184>>2]|0){case 9:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=68;break e}else{c[b+336>>2]=(h|0)==2?72:62;break e}}case 10:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=70;break e}else{c[b+336>>2]=(h|0)==2?66:64;break e}}case 8:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break e}else{c[b+336>>2]=(h|0)==2?4:0;break e}}default:c[b+336>>2]=-1}while(0);c[e+716>>2]=Fn(o)|0;c[e+720>>2]=c[o+8>>2];if((c[o+64>>2]|0)==0?(eO(C)|0)!=0:0)h=(eO(C)|0)+1|0;else h=3;k=J+1648|0;c[k>>2]=h;if((c[D>>2]|0)==5)gO(C)|0;i=o+24|0;h=c[i>>2]|0;if(!h){c[n>>2]=fO(C,c[o+28>>2]|0)|0;if((c[(c[q>>2]|0)+8>>2]|0)==1?(c[k>>2]|0)==3:0)c[J+1352>>2]=jO(C)|0;h=c[i>>2]|0}do if(((h|0)==1?(c[o+32>>2]|0)==0:0)?(c[J+1356>>2]=jO(C)|0,(c[(c[q>>2]|0)+8>>2]|0)==1):0){if((c[k>>2]|0)!=3)break;c[J+1360>>2]=jO(C)|0}while(0);j=H+4|0;c[j>>2]=2147483647;c[H>>2]=2147483647;if((lm(H,b+316|0,o,n,c[k>>2]|0,c[E>>2]|0)|0)>=0){do if((c[E>>2]|0)==0|(c[D>>2]|0)==5)I=70;else{h=kO(b,C,e)|0;if((h|0)<0)break d;if(!h){I=70;break}c[J+1384>>2]=0;h=0;i=1}while(0);if((I|0)==70){c[J+1384>>2]=c[p>>2];h=c[J+1376>>2]|0;i=0}c[J+1380>>2]=h;if(c[E>>2]|0){if(i){i=0;h=(c[k>>2]|0)==2?0:c[H>>2]|0}else{i=c[J+1348>>2]|0;h=c[n>>2]|0}c[J+1368>>2]=i;c[J+1372>>2]=h}i=(c[o+1160>>2]|0)==0;f:do if(i)I=85;else{if(!(c[F>>2]|0)){I=85;break}switch(c[J+1392>>2]|0){case 2:case 1:{h=0;break f}case 4:case 3:case 0:{h=1;break f}case 6:case 5:{h=2;break f}case 7:{h=3;break f}case 8:{h=5;break f}default:{h=(c[k>>2]|0)==3&1;break f}}}while(0);if((I|0)==85)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;g:do if((h|0)==3){c[G>>2]=3;do if(!i){if(!(c[F>>2]|0))break;switch(c[J+1392>>2]|0){case 5:case 3:{h=2;break}case 6:case 4:{h=3;break}default:h=1}c[b+308>>2]=h;break g}while(0);i=c[H>>2]|0;h=c[j>>2]|0;if((i|0)<(h|0)){c[b+308>>2]=2;break}else{c[b+308>>2]=(i|0)>(h|0)?3:1;break}}else{n=(h|0)==1?1:2;c[G>>2]=n;j=c[p>>2]|0;k=J+1680|0;h=J+1684|0;h:do if((j|0)==(c[k>>2]|0)){i=c[h>>2]|0;switch(i|0){case 3:case 0:{I=100;break h}default:{}}if((i|0)==(n|0)){I=100;break}c[b+308>>2]=(i|0)==1?2:3}else I=100;while(0);if((I|0)==100)c[b+308>>2]=0;c[h>>2]=n;c[k>>2]=j}while(0);Qf(K);break a}}}}else if((I|0)==104)if(p){Qf(K);break a}else{c[w>>2]=g;Uf(e,16,150900,w);break}while(0);Qf(K)}while(0);l=L;return}function $N(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=ZW(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=y;e=c[h>>2]|0;d=c[d+4>>2]|0;e=ZW(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;Kn(b,h,g,f,e,y,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function aO(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=An(a,b,c,d,e,f,5)|0;return f|0}function bO(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;Uf(g,16,151061,k);h=-1094995529}}else h=-11;l=n;return h|0}function cO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=-1;e=(YN(a+d|0,a+e+1|0,g)|0)-a+-1|0;l=f;return ((e|0)>(b|0)?b:e)|0}function dO(a,b,c){a=a|0;b=b|0;c=c|0;return oO(a,b,c>>>0>268435455?-8:c<<3)|0}function eO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function fO(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function gO(a){a=a|0;var b=0,c=0,e=0;e=lO(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;mO(a,b);return (nO(a,b+1|0)|0)+-1|0}function hO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[122033+a>>0]|0);return d[122545+a>>0]|0|0}function iO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116064+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){Uf(0,16,151423,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[122033+a>>0]|0);a=d[122545+a>>0]|0}while(0);l=h;return a|0}function jO(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(eX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[122033+b>>0]|0);b=a[123057+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116064+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function kO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+20816|0;if((l|0)>=(m|0))W(20816);t=u+16|0;k=u+8|0;j=u;q=u+40|0;i=u+32|0;r=u+24|0;s=c[a+32>>2]&3;p=c[a>>2]|0;g=p+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)iO(b)|0;n=(s|0)==3;if(n)eO(b)|0;o=p+1648|0;a:do if((YM(i,r,b,c[g>>2]|0,s,c[o>>2]|0,d)|0)>=0){if((s|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(eO(b)|0){h=r+(f<<2)|0;e=0;c:while(1){a=hO(b)|0;if(a>>>0<3){gO(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;Uf(d,16,150984,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;Uf(d,16,150945,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((s|0)==2&(c[a+28>>2]|0)!=0)f=22;else f=21}else{a=c[g>>2]|0;f=21}if((f|0)==21?n&(c[a+32>>2]|0)==1:0)f=22;if((f|0)==22)_M(b,c[p+1204>>2]|0,r,s,q,c[o>>2]|0,d)|0;if(eO(b)|0){a=0;d:while(1){if((a|0)>=66){f=33;break}e=hO(b)|0;if(e>>>0>6){f=26;break}switch(e|0){case 5:{a=1;break a}case 0:{f=33;break d}default:{}}if((e|2|0)==3)gO(b)|0;switch(e|0){case 2:case 3:case 4:case 6:{hO(b)|0;break}default:{}}a=a+1|0}if((f|0)==26){c[t>>2]=e;Uf(d,16,151013,t);a=-1094995529;break}else if((f|0)==33){a=0;break}}else a=0}else a=-1094995529;while(0);l=u;return a|0}function lO(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=nO(d,32)|0;l=b;return a|0}function mO(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function nO(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=fO(a,b)|0;break}else{b=b+-16|0;c=(fO(a,16)|0)<>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function pO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=p+4|0;n=p;c[k>>2]=f;c[n>>2]=g;j=c[a>>2]|0;h=c[b+68>>2]|0;if(h|0?(i=j+1708|0,(c[i>>2]|0)==0):0){uO(h,c[b+72>>2]|0,j+64|0,j+460|0,j+1700|0,j+1704|0,c[b+580>>2]|0,1,b)|0;c[i>>2]=1}do if(!(c[a+176>>2]&1)){h=vO(a,f,g)|0;if((Sf(j,h,k,n)|0)<0){c[d>>2]=0;c[e>>2]=0;h=c[n>>2]|0;break}else{f=c[k>>2]|0;i=c[n>>2]|0;o=8;break}}else{h=g;i=g;o=8}while(0);if((o|0)==8){wO(a,f,i,b);c[d>>2]=c[k>>2];c[e>>2]=c[n>>2]}l=p;return h|0}function qO(a){a=a|0;a=c[a>>2]|0;sO(a+64|0);mi(a+40|0);tO(a+460|0);Qf(a);return}function rO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p;k=d+e|0;c[n>>2]=-1;b=0;f=0;j=0;e=d;a:while(1)b:while(1){i=j&(f|0)!=0;c:while(1){h=(b|0)!=0;while(1){if(e>>>0>=k>>>0){b=0;break a}e=YN(e,k,n)|0;g=c[n>>2]|0;if((g&-256|0)!=256){b=0;break a}q=g>>>1;g=q&63;switch(q&63){case 32:{j=1;continue a}case 33:{f=1;continue b}case 34:{b=1;continue c}default:{}}if((g|0)!=35&(h|(g|0)!=39)&i){o=9;break a}}}}if((o|0)==9){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;o=9}else break}b=b-d|0}l=p;return b|0}function sO(a){a=a|0;var b=0;b=0;while(1){if((b|0)==16){b=0;break}zg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==16){b=0;break}zg(a+64+(b<<2)|0);b=b+1|0}while(1){if((b|0)==64)break;zg(a+128+(b<<2)|0);b=b+1|0}c[a+388>>2]=0;c[a+392>>2]=0;c[a+384>>2]=0;return}function tO(a){a=a|0;c[a+92>>2]=0;Qf(a+96|0);return}function uO(b,e,f,g,h,i,j,k,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+32|0;if((l|0)>=(m|0))W(32);y=z+24|0;x=z+16|0;o=z;if((e|0)<=-1){c[o>>2]=155203;c[o+4>>2]=155217;c[o+8>>2]=137;Uf(0,0,159675,o);Ub()}w=b+e|0;do if((e|0)>3){if(((a[b>>0]|0)==0?(a[b+1>>0]|0)==0:0)?(d[b+2>>0]|0)<=1:0){p=28;break}c[h>>2]=1;v=e>>>0<21?e:21;o=b+v|0;if((e-v|0)<1){v=1;o=w}else{v=(a[o>>0]&3)+1&255;o=o+1|0}b=o;if((w-o|0)<1){t=0;b=w}else{t=d[b>>0]|0;b=b+1|0}c[i>>2]=2;o=0;u=0;a:while(1){if((u|0)>=(t|0)){p=27;break}e=b;if((w-b|0)<1){s=0;b=w}else{s=a[e>>0]&63;b=e+1|0}if((w-b|0)<2){r=0;b=w}else{r=b;r=(dX(d[r>>0]|d[r+1>>0]<<8|0)|0)&65535;b=b+2|0}q=0;while(1){if((q|0)>=(r|0))break;e=b;p=w-b|0;if((p|0)<2)o=0;else{o=b;o=(dX(d[o>>0]|d[o+1>>0]<<8|0)|0)&65535}b=o+2|0;if(p>>>0>>0){p=22;break a}o=HP(e,b,f,g,c[h>>2]|0,c[i>>2]|0,j,k,n)|0;if((o|0)<0){p=24;break a}q=q+1|0;b=e+(p>>>0>b>>>0?b:p)|0}u=u+1|0}if((p|0)==22){Uf(n,16,155241,x);o=-1094995529;break}else if((p|0)==24){c[y>>2]=s;c[y+4>>2]=u;Uf(n,16,155278,y);break}else if((p|0)==27){c[i>>2]=v;break}}else p=28;while(0);if((p|0)==28){c[h>>2]=0;o=HP(b,e,f,g,0,c[i>>2]|0,j,k,n)|0}l=z;return o|0}function vO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=c[b>>2]|0;j=k+32|0;k=k+20|0;h=0;a:while(1){if((h|0)>=(f|0)){b=-100;break}b=j;g=c[b>>2]|0;b=c[b+4>>2]|0;n=cX(g|0,b|0,8)|0;i=e+h|0;m=j;c[m>>2]=n|d[i>>0];c[m+4>>2]=y;b:do if((g&-65536|0)==65536&(b&255|0)==0){b=bX(g|0,b|0,9)|0;g=b&63;switch(b&63){case 32:case 33:case 34:case 35:case 36:case 37:case 39:break;default:if(!((b&56|0)==48|(g+-41|0)>>>0<4)){if(!(g>>>0<10|(g+-16|0)>>>0<6))break b;if((a[i>>0]|0)>=0)break b;if(c[k>>2]|0){l=12;break a}c[k>>2]=1;break b}}if(c[k>>2]|0){l=12;break a}}while(0);h=h+1|0}if((l|0)==12){c[k>>2]=0;b=h+-5|0}return b|0}function wO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o;f=c[a>>2]|0;j=f+64|0;k=f+460|0;c[a+32>>2]=1;c[a+224>>2]=0;c[a+312>>2]=0;tO(k);i=f+40|0;a:do if((Gi(i,b,d,e,c[f+1700>>2]|0,c[f+1704>>2]|0,173,1)|0)>=0){d=f+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;f=c[i>>2]|0;g=f+(b*68|0)+24|0;h=c[f+(b*68|0)+44>>2]|0;switch(h|0){case 32:{xO(g,e,j)|0;break}case 33:{yO(g,e,j,1)|0;break}case 34:{zO(g,e,j)|0;break}case 40:case 39:{AO(g,e,k,j,h)|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 1:case 0:{if(BO(a,f+(b*68|0)|0,e)|0)break a;break}default:{}}b=b+1|0}Uf(e,16,151330,n)}while(0);l=o;return}function xO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+96|0;if((l|0)>=(m|0))W(96);x=D+80|0;v=D+72|0;s=D+64|0;q=D+56|0;p=D+48|0;o=D+40|0;n=D+32|0;k=D+24|0;j=D+16|0;i=D+8|0;B=D+84|0;z=th(4568)|0;c[B>>2]=z;C=z;a:do if(!z)f=-12;else{A=z+4|0;u=c[A>>2]|0;Uf(d,48,154837,D);f=c[b>>2]|0;g=(c[b+4>>2]|0)-f|0;if(g>>>0>4096){c[i>>2]=g;c[i+4>>2]=4096;Uf(d,24,154851,i);g=4096;f=c[b>>2]|0}c[u+4564>>2]=g;gX(u+468|0,f|0,g|0)|0;w=hP(b,4)|0;b:do if((w|0)<=15){if((hP(b,2)|0)!=3){Uf(d,16,154896,k);break}c[u+4>>2]=(hP(b,6)|0)+1;t=u+8|0;c[t>>2]=(hP(b,3)|0)+1;a[u>>0]=gP(b)|0;if((hP(b,16)|0)!=65535){Uf(d,16,154935,n);break}f=c[t>>2]|0;if((f|0)>7){c[o>>2]=f;Uf(d,16,154975,o);break}if((xP(b,d,u+12|0,f)|0)>=0){o=gP(b)|0;c[u+348>>2]=o;if(!o)f=(c[t>>2]|0)+-1|0;else f=0;j=d+580|0;while(1){if((f|0)>=(c[t>>2]|0))break;i=u+352+(f<<2)|0;c[i>>2]=(fP(b)|0)+1;g=u+380+(f<<2)|0;c[g>>2]=fP(b)|0;c[u+408+(f<<2)>>2]=(fP(b)|0)+-1;i=(c[i>>2]|0)+-1|0;if(i>>>0>15){r=18;break}g=c[g>>2]|0;if(g>>>0>i>>>0?(c[q>>2]=g,Uf(d,24,155063,q),c[j>>2]&8|0):0)break b;f=f+1|0}if((r|0)==18){c[p>>2]=i;Uf(d,16,155012,p);break}j=u+436|0;c[j>>2]=hP(b,6)|0;r=fP(b)|0;f=r+1|0;k=u+440|0;c[k>>2]=f;if(r>>>0<=1023?(o=TW(f|0,((f|0)<0)<<31>>31|0,-1,-1)|0,q=y,h=c[j>>2]|0,r=TW(h|0,((h|0)<0)<<31>>31|0,1,0)|0,q=ZW(r|0,y|0,o|0,q|0)|0,o=y,r=nP(b)|0,p=((r|0)<0)<<31>>31,!((o|0)>(p|0)|(o|0)==(p|0)&q>>>0>r>>>0)):0){i=1;while(1){if((i|0)<(f|0)){g=0;f=h}else break;while(1){if((g|0)>(f|0))break;BP(b,1);g=g+1|0;f=c[j>>2]|0}i=i+1|0;h=f;f=c[k>>2]|0}s=(gP(b)|0)&255;a[u+444>>0]=s;c:do if(s<<24>>24){c[u+448>>2]=tP(b,32)|0;c[u+452>>2]=tP(b,32)|0;s=(gP(b)|0)&255;a[u+456>>0]=s;if(s<<24>>24)c[u+460>>2]=(fP(b)|0)+1;f=fP(b)|0;h=u+464|0;c[h>>2]=f;if(f>>>0>(c[k>>2]|0)>>>0){c[v>>2]=f;Uf(d,16,155140,v);break b}else g=0;while(1){if((g|0)>=(f|0))break c;fP(b)|0;if(!g)f=1;else f=gP(b)|0;CP(b,f,c[t>>2]|0);g=g+1|0;f=c[h>>2]|0}}while(0);gP(b)|0;f=nP(b)|0;if((f|0)<0){c[x>>2]=0-f;Uf(d,16,155178,x);f=e+(w<<2)|0;if(c[f>>2]|0)break}else{f=e+(w<<2)|0;g=c[f>>2]|0;if((g|0)!=0?(IT(c[g+4>>2]|0,c[A>>2]|0,c[z+8>>2]|0)|0)==0:0){zg(B);f=0;break a}}GP(e,w);c[f>>2]=C;f=0;break a}Uf(d,16,155106,s)}}else{c[j>>2]=w;Uf(d,16,152601,j)}while(0);zg(B);f=-1094995529}while(0);l=D;return f|0}function yO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=r+16|0;h=r+8|0;n=r+44|0;i=r+40|0;o=th(17552)|0;c[n>>2]=o;p=o;do if(!o)f=-12;else{q=o+4|0;j=c[q>>2]|0;Uf(b,48,152386,r);f=c[a>>2]|0;g=(c[a+4>>2]|0)-f|0;if(g>>>0>4096){c[h>>2]=g;c[h+4>>2]=4096;Uf(b,24,152400,h);g=4096;f=c[a>>2]|0}c[j+17548>>2]=g;gX(j+13452|0,f|0,g|0)|0;f=vP(j,a,i,e,d,b)|0;if((f|0)<0){zg(n);break}h=c[i>>2]|0;if(c[b+576>>2]&4|0){g=c[j+13376>>2]|0;a=c[j+13380>>2]|0;e=g-(c[j+12>>2]|0)-(c[j+16>>2]|0)|0;i=a-(c[j+20>>2]|0)-(c[j+24>>2]|0)|0;j=oh(c[j+56>>2]|0)|0;c[k>>2]=h;c[k+4>>2]=g;c[k+8>>2]=a;c[k+12>>2]=e;c[k+16>>2]=i;c[k+20>>2]=j;Uf(b,48,152445,k)}f=d+64+(h<<2)|0;g=c[f>>2]|0;if(g|0?(IT(c[g+4>>2]|0,c[q>>2]|0,c[o+8>>2]|0)|0)==0:0){zg(n);f=0;break}wP(d,h);c[f>>2]=p;f=0}while(0);l=r;return f|0}function zO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+144|0;if((l|0)>=(m|0))W(144);I=K+120|0;G=K+112|0;E=K+104|0;D=K+96|0;B=K+88|0;z=K+80|0;w=K+72|0;v=K+64|0;t=K+56|0;s=K+48|0;r=K+40|0;o=K+32|0;n=K+24|0;k=K+16|0;j=K+8|0;h=K;J=K+128|0;x=K+124|0;g=Lg(5792)|0;c[x>>2]=g;a:do if(!g)f=-12;else{C=kh(g,5792,195,0,0)|0;c[J>>2]=C;H=C;if(!C){Qf(x);f=-12;break}Uf(d,48,151599,h);h=c[b>>2]|0;i=(c[b+4>>2]|0)-h|0;if(i>>>0>4096){c[j>>2]=i;c[j+4>>2]=4096;Uf(d,24,151613,j);i=4096;h=c[b>>2]|0}c[g+5788>>2]=i;gX(g+1692|0,h|0,i|0)|0;a[g+53>>0]=1;u=g+44|0;c[u>>2]=1;p=g+48|0;c[p>>2]=1;q=g+52|0;a[q>>0]=1;a[g+57>>0]=0;c[g+60>>2]=0;c[g+64>>2]=0;a[g+1629>>0]=2;C=fP(b)|0;b:do if(C>>>0<=63){i=fP(b)|0;c[g>>2]=i;if(i>>>0>15){c[n>>2]=i;Uf(d,16,151683,n);f=-1094995529;break}h=c[e+64+(i<<2)>>2]|0;if(!h){c[o>>2]=i;Uf(d,16,151708,o);f=-1094995529;break}A=c[h+4>>2]|0;a[g+41>>0]=gP(b)|0;a[g+39>>0]=gP(b)|0;c[g+1624>>2]=hP(b,3)|0;a[g+4>>0]=gP(b)|0;a[g+5>>0]=gP(b)|0;c[g+8>>2]=(fP(b)|0)+1;c[g+12>>2]=(fP(b)|0)+1;c[g+16>>2]=iP(b)|0;a[g+20>>0]=gP(b)|0;a[g+21>>0]=gP(b)|0;o=(gP(b)|0)&255;a[g+22>>0]=o;h=g+24|0;c[h>>2]=0;do if(o<<24>>24){i=fP(b)|0;c[h>>2]=i;if((i|0)>=0?i>>>0<=(c[A+13324>>2]|0)>>>0:0)break;c[r>>2]=i;Uf(d,16,151732,r);f=-1094995529;break b}while(0);h=iP(b)|0;c[g+28>>2]=h;if((h+12|0)>>>0>24){c[s>>2]=h;Uf(d,16,151770,s);f=-1094995529;break}h=iP(b)|0;c[g+32>>2]=h;if((h+12|0)>>>0>24){c[t>>2]=h;Uf(d,16,151805,t);f=-1094995529;break}a[g+36>>0]=gP(b)|0;a[g+37>>0]=gP(b)|0;a[g+38>>0]=gP(b)|0;a[g+40>>0]=gP(b)|0;t=g+42|0;a[t>>0]=gP(b)|0;a[g+43>>0]=gP(b)|0;do if(a[t>>0]|0){c[u>>2]=(fP(b)|0)+1;h=fP(b)|0;i=h+1|0;c[p>>2]=i;j=c[u>>2]|0;if((j|0)>=1?(j|0)<(c[A+13376>>2]|0):0){if((i|0)>=1?(i|0)<(c[A+13380>>2]|0):0){n=g+1648|0;c[n>>2]=Jh(j,4)|0;w=Jh(c[p>>2]|0,4)|0;c[g+1652>>2]=w;if((c[n>>2]|0)==0|(w|0)==0){f=-12;break b}w=(gP(b)|0)&255;a[q>>0]=w;do if(!(w<<24>>24)){g=0;j=0;k=0;while(1){i=(c[u>>2]|0)+-1|0;if((g|0)>=(i|0))break;w=(fP(b)|0)+1|0;c[(c[n>>2]|0)+(g<<2)>>2]=w;w=TW(j|0,k|0,w|0,0)|0;g=g+1|0;j=w;k=y}g=c[A+13384>>2]|0;h=((g|0)<0)<<31>>31;if(!(k>>>0>>0|(k|0)==(h|0)&j>>>0>>0)){Uf(d,16,151921,z);f=-1094995529;break b}g=UW(g|0,h|0,j|0,k|0)|0;c[(c[n>>2]|0)+(i<<2)>>2]=g;g=c[x>>2]|0;i=g+48|0;j=g+1652|0;h=0;n=0;o=0;while(1){k=(c[i>>2]|0)+-1|0;if((h|0)>=(k|0))break;z=(fP(b)|0)+1|0;c[(c[j>>2]|0)+(h<<2)>>2]=z;z=TW(n|0,o|0,z|0,0)|0;h=h+1|0;n=z;o=y}h=c[A+13388>>2]|0;i=((h|0)<0)<<31>>31;if(o>>>0>>0|(o|0)==(i|0)&n>>>0>>0){B=UW(h|0,i|0,n|0,o|0)|0;c[(c[j>>2]|0)+(k<<2)>>2]=B;break}else{Uf(d,16,151943,B);f=-1094995529;break b}}while(0);a[g+53>>0]=gP(b)|0;break}c[w>>2]=h;Uf(d,16,151882,w);f=-1094995529;break b}c[v>>2]=j+-1;Uf(d,16,151840,v);f=-1094995529;break b}while(0);a[g+54>>0]=gP(b)|0;B=(gP(b)|0)&255;a[g+55>>0]=B;do if(B<<24>>24?(a[g+56>>0]=gP(b)|0,B=(gP(b)|0)&255,a[g+57>>0]=B,B<<24>>24==0):0){h=iP(b)|0;i=iP(b)|0;if((h+6|0)>>>0>12){c[D>>2]=h;Uf(d,16,151966,D);f=-1094995529;break b}if((i+6|0)>>>0>12){c[E>>2]=i;Uf(d,16,152005,E);f=-1094995529;break b}else{c[g+60>>2]=h<<1;c[g+64>>2]=i<<1;break}}while(0);E=(gP(b)|0)&255;a[g+68>>0]=E;if(E<<24>>24?(jP(g+69|0),f=kP(b,d,g+69|0,A)|0,(f|0)<0):0)break;a[g+1617>>0]=gP(b)|0;f=fP(b)|0;if(f>>>0>(c[A+13336>>2]|0)>>>0){c[G>>2]=f;Uf(d,16,152042,G);f=-1094995529;break}c[g+1620>>2]=f+2;a[g+1628>>0]=gP(b)|0;if((gP(b)|0?(G=gP(b)|0,hP(b,7)|0,(G|0)!=0&(a[A+302>>0]|0)==4):0)?(F=lP(b,d,g,A)|0,(F|0)<0):0){f=F;break}f=mP(g,A)|0;if((f|0)>=0){g=nP(b)|0;if((g|0)<0){c[I>>2]=0-g;Uf(d,16,152093,I);break}else{oP(e,C);c[e+128+(C<<2)>>2]=H;f=0;break a}}}else{c[k>>2]=C;Uf(d,16,151658,k);f=-1094995529}while(0);zg(J)}while(0);l=K;return f|0}function AO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;while(1){f=HO(a,b,c,d,e)|0;if((f|0)<0)break;if(!(IO(a)|0)){f=1;break}}return f|0}function BO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;if((l|0)>=(m|0))W(32);w=A+24|0;u=A+16|0;j=A+8|0;i=A;y=c[b>>2]|0;v=e+24|0;q=y+628|0;a[q>>0]=CO(v)|0;x=c[y+548>>2]|0;c[b+312>>2]=x;c[b+308>>2]=x;x=e+44|0;if((c[x>>2]&-8|0)==16){c[b+224>>2]=1;a[y+1242>>0]=CO(v)|0}g=DO(v)|0;c[y+608>>2]=g;a:do if(g>>>0<=63?(h=c[y+192+(g<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;t=y+456|0;c[t>>2]=g;g=c[g>>2]|0;if(g>>>0<=15?(k=c[y+128+(g<<2)>>2]|0,k|0):0){s=y+452|0;h=c[s>>2]|0;g=c[k+4>>2]|0;if((h|0)==(g|0)){g=h;h=c[y+448>>2]|0}else{c[s>>2]=g;h=c[(c[y+64+(c[g>>2]<<2)>>2]|0)+4>>2]|0;c[y+448>>2]=h}j=c[g+13376>>2]|0;c[b+328>>2]=j;k=c[g+13380>>2]|0;c[b+332>>2]=k;c[b+320>>2]=j-(c[g+12>>2]|0)-(c[g+16>>2]|0);c[b+324>>2]=k-(c[g+20>>2]|0)-(c[g+24>>2]|0);c[b+336>>2]=c[g+56>>2];c[f+716>>2]=d[g+302>>0];c[f+720>>2]=d[g+335>>0];if(!(a[h+444>>0]|0)){if(c[g+240>>2]|0){o=g+244|0;p=g+248|0;z=16}}else{o=h+448|0;p=h+452|0;z=16}if((z|0)==16?(n=c[o>>2]|0,r=c[p>>2]|0,(n|0)!=0&(r|0)!=0):0)Kn(f+764|0,f+760|0,n,((n|0)<0)<<31>>31,r,((r|0)<0)<<31>>31,1073741824,0)|0;do if(!(a[q>>0]|0)){if(!(a[(c[t>>2]|0)+41>>0]|0))g=0;else g=(CO(v)|0)&255;k=y+629|0;a[k>>0]=g;h=c[s>>2]|0;i=c[h+13384>>2]|0;h=c[h+13388>>2]|0;g=(N(i<<1,h)|0)+-2|0;q=g>>>0>65535;g=q?g>>>16:g;q=q?16:0;r=(g&65280|0)==0;g=(r?q:q|8)+(d[116064+(r?g:g>>>8)>>0]|0)|0;if(!g){j=0;g=i}else{j=EO(v,g)|0;g=c[s>>2]|0;h=c[g+13388>>2]|0;g=c[g+13384>>2]|0}c[y+612>>2]=j;if(j>>>0<(N(h,g)|0)>>>0)if(!(a[k>>0]|0)){g=0;break}else{g=0;break a}else{c[u>>2]=j;Uf(f,16,151362,u);g=-1094995529;break a}}else{a[y+629>>0]=0;g=0}while(0);while(1){if((g|0)>=(c[(c[t>>2]|0)+1624>>2]|0))break;FO(v);g=g+1|0}g=DO(v)|0;c[y+620>>2]=g;if(g>>>0>=3){c[w>>2]=g;Uf(f,16,151398,w);g=-1094995529;break}c[b+32>>2]=(g|0)==0?3:(g|0)==1?2:1;if(a[(c[t>>2]|0)+39>>0]|0)a[y+630>>0]=CO(v)|0;if(a[(c[s>>2]|0)+8>>0]|0)a[y+631>>0]=EO(v,2)|0;if(((c[x>>2]|0)+-19|0)>>>0<2)g=0;else{g=EO(v,c[(c[s>>2]|0)+60>>2]|0)|0;c[y+624>>2]=g;g=GO(c[s>>2]|0,c[y+1716>>2]|0,g,c[x>>2]|0)|0}c[y+1712>>2]=g;c[b+316>>2]=g;if(c[e+48>>2]|0){g=1;break}switch(c[x>>2]|0){case 9:case 7:case 8:case 6:case 4:case 2:case 0:{g=1;break a}default:{}}c[y+1716>>2]=g;g=1;break}c[j>>2]=g;Uf(f,16,151683,j);g=-1094995529}else z=5;while(0);if((z|0)==5){c[i>>2]=g;Uf(f,16,151658,i);g=-1094995529}l=A;return g|0}function CO(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function DO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116064+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Uf(0,16,151423,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122033+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122545+a>>0]|0}while(0);l=i;return a|0}function EO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function FO(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function GO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=1<>2];g=(b|0)%(f|0)|0;a=b-g|0;if((g|0)>(d|0)?(g-d|0)>=((f|0)/2|0|0):0)a=a+f|0;else if((g|0)<(d|0))a=a-((d-g|0)>((f|0)/2|0|0)?f:0)|0;return ((e+-16|0)>>>0<3?0:a)+d|0}function HO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);Uf(b,48,151447,j);f=255;h=0;while(1){if((f|0)!=255){f=0;g=255;i=5;break}if((h|0)>2147483392|(JO(a)|0)<16){f=-1094995529;break}g=MO(a,8)|0;f=g;h=g+h|0}a:do if((i|0)==5){while(1){if((g|0)!=255)break;i=JO(a)|0;k=((i|0)<0)<<31>>31;g=cX(f|0,((f|0)<0)<<31>>31|0,3)|0;g=TW(g|0,y|0,8,0)|0;n=y;if((n|0)>(k|0)|(n|0)==(k|0)&g>>>0>i>>>0){f=-1094995529;break a}g=MO(a,8)|0;f=g+f|0;i=5}if((e|0)==39){f=NO(a,b,c,d,h,f)|0;break}else{OO(a,b,c,h,f);f=0;break}}while(0);l=j;return f|0}function IO(a){a=a|0;if((JO(a)|0)>0)a=(KO(a)|0)!=128&1;else a=0;return a|0}function JO(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(LO(a)|0)|0}function KO(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>24|0}function LO(a){a=a|0;return c[a+8>>2]|0}function MO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function NO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;do switch(f|0){case 256:{PO(d,a);a=0;break}case 45:{SO(d+52|0,a);a=0;break}case 47:{TO(d+72|0,a);a=0;break}case 1:{a=UO(d,a,e,b,g)|0;break}case 137:{VO(d+100|0,a);a=0;break}case 144:{WO(d+128|0,a);a=0;break}case 129:{a=XO(d,a,b)|0;break}case 4:{a=YO(d,a,g)|0;break}case 147:{ZO(d+140|0,a);a=0;break}default:{c[h>>2]=f;Uf(b,48,151484,h);QO(a,g<<3);a=0}}while(0);l=i;return a|0}function OO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if((e|0)==132)PO(d,a);else{c[g>>2]=e;Uf(b,48,151461,g);QO(a,f<<3)}l=h;return}function PO(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=(MO(c,8)|0)&255;f=b+48|0;d=0;while(1){if((d|0)==3)break;a:do switch(g<<24>>24){case 0:{a[f>>0]=1;e=0;while(1){if((e|0)==16)break a;a[b+(d<<4)+e>>0]=MO(c,8)|0;e=e+1|0}}case 1:{RO(c,16);break}case 2:{RO(c,32);break}default:{}}while(0);d=d+1|0}return}function QO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function RO(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function SO(a,b){a=a|0;b=b|0;var d=0,e=0;aP(b)|0;d=(dP(b)|0)==0;c[a>>2]=d&1;if(d){d=a+4|0;c[d>>2]=MO(b,7)|0;e=a+12|0;c[e>>2]=dP(b)|0;c[a+8>>2]=MO(b,6)|0;RO(b,3);c[a+16>>2]=dP(b)|0;RO(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)RO(b,16);RO(b,8);cP(b)}cP(b);return}function TO(a,b){a=a|0;b=b|0;var d=0;d=(dP(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=dP(b)|0;c[a+12>>2]=dP(b)|0;c[a+4>>2]=MO(b,16)|0;cP(b)}return}function UO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j+8|0;g=j;d=c[d+64+(c[a+136>>2]<<2)>>2]|0;if(!d)f=-12;else{if(c[(c[d+4>>2]|0)+216>>2]|0){d=MO(b,4)|0;a=a+88|0;c[a>>2]=0;switch(d|0){case 2:case 10:case 12:{Uf(e,48,151574,g);d=2;i=6;break}case 1:case 9:case 11:{Uf(e,48,151588,h);d=1;i=6;break}default:{}}if((i|0)==6)c[a>>2]=d;MO(b,2)|0;MO(b,1)|0;cP(b);f=f+-1|0}QO(b,f<<3);f=0}l=j;return f|0}function VO(a,d){a=a|0;d=d|0;var e=0,f=0;e=0;while(1){f=(MO(d,16)|0)&65535;if((e|0)==3)break;b[a+4+(e<<2)>>1]=f;b[a+4+(e<<2)+2>>1]=MO(d,16)|0;e=e+1|0}b[a+16>>1]=f;b[a+18>>1]=MO(d,16)|0;c[a+20>>2]=_O(d,32)|0;c[a+24>>2]=_O(d,32)|0;c[a>>2]=2;return}function WO(a,d){a=a|0;d=d|0;b[a+4>>1]=_O(d,16)|0;b[a+6>>1]=_O(d,16)|0;c[a>>2]=2;return}function XO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h+8|0;e=h;MO(b,4)|0;MO(b,1)|0;MO(b,1)|0;g=aP(b)|0;a:do if(g>>>0>15){c[e>>2]=g;Uf(d,16,151507,e);e=-1094995529}else{e=aP(b)|0;if(e>>>0>15){c[f>>2]=e;Uf(d,16,151538,f);e=-1094995529;break}c[a+136>>2]=e;e=1;while(1){if((e|0)>(g|0)){e=0;break a}aP(b)|0;e=e+1|0}}while(0);l=h;return e|0}function YO(a,b,c){a=a|0;b=b|0;c=c|0;do if((c|0)>=7){if((MO(b,8)|0)==255){RO(b,8);c=c+-8|0}else c=c+-7|0;RO(b,8);RO(b,8);if((_O(b,32)|0)==1195456820){c=$O(a+92|0,b,c)|0;break}else{QO(b,c<<3);c=0;break}}else c=-22;while(0);return c|0}function ZO(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=MO(b,8)|0;return}function _O(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=MO(a,b)|0;break}else{b=b+-16|0;c=(MO(a,16)|0)<=3){if((MO(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}RO(d,8);e=e+1|0}}RO(d,1);if(((MO(d,1)|0)!=0?(RO(d,1),g=MO(d,5)|0,RO(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=ZW(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=TW(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=dk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(MO(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(MO(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(MO(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}RO(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function aP(a){a=a|0;var b=0,c=0,e=0;e=bP(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;QO(a,b);return (_O(a,b+1|0)|0)+-1|0}function bP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=_O(d,32)|0;l=b;return a|0}function cP(a){a=a|0;RO(a,1);return}function dP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function eP(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=a;c[d>>2]=b;Qf(b+1648|0);Qf(b+1652|0);Qf(b+1656|0);Qf(b+1660|0);Qf(b+1664|0);Qf(b+1668|0);Qf(b+1672|0);Qf(b+1680|0);Qf(b+1676|0);Qf(b+1688|0);Qf(d);l=a;return}function fP(a){a=a|0;var b=0,c=0,e=0;e=rP(a,32)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;sP(a,b);return (tP(a,b+1|0)|0)+-1|0}function gP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function hP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function iP(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122033+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123057+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116064+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function jP(b){b=b|0;var c=0,d=0,e=0;c=0;while(1){if((c|0)==6)break;d=b+(c<<6)|0;e=d+16|0;do{a[d>>0]=16;d=d+1|0}while((d|0)<(e|0));a[b+1536+c>>0]=16;a[b+1542+c>>0]=16;c=c+1|0}d=b+384|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+448|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+512|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+576|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+640|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+704|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+768|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+832|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+896|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+960|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1024|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1088|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1152|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1216|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1280|0;c=152258;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1344|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1408|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1472|0;c=152322;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));return}function kP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);v=w;o=0;a:while(1){if((o|0)>=4){i=20;break}s=(o|0)==3?3:1;t=(o|0)>0?64:16;u=(o|0)>1;q=o+-2|0;n=1<<(o<<1)+4;n=(n|0)<64?n:64;r=(o|0)==0;p=0;while(1){if((p|0)>=6)break;b:do if(!(((gP(b)|0)&255)<<24>>24)){h=fP(b)|0;if(h|0){h=N(h,s)|0;if(p>>>0>>0){i=8;break a}h=p-h|0;gX(f+(o*384|0)+(p<<6)|0,f+(o*384|0)+(h<<6)|0,t|0)|0;if(u)a[f+1536+(q*6|0)+p>>0]=a[f+1536+(q*6|0)+h>>0]|0}}else{if(u){i=(iP(b)|0)+8|0;a[f+1536+(q*6|0)+p>>0]=i;h=0}else{h=0;i=8}while(1){if((h|0)>=(n|0))break b;if(r){j=(d[151186+h>>0]|0)<<2;k=151170+h|0}else{j=(d[151266+h>>0]|0)<<3;k=151202+h|0}j=j+(d[k>>0]|0)|0;k=(iP(b)|0)+i|0;a[f+(o*384|0)+(p<<6)+j>>0]=k;h=h+1|0;i=k&255}}while(0);p=p+s|0}o=o+1|0}if((i|0)==8){c[v>>2]=h;Uf(e,16,152217,v);h=-1094995529}else if((i|0)==20)if((c[g+4>>2]|0)==3){h=0;while(1){if((h|0)==64)break;a[f+1216+h>>0]=a[f+832+h>>0]|0;a[f+1280+h>>0]=a[f+896+h>>0]|0;a[f+1408+h>>0]=a[f+1024+h>>0]|0;a[f+1472+h>>0]=a[f+1088+h>>0]|0;h=h+1|0}a[f+1543>>0]=a[f+1537>>0]|0;a[f+1544>>0]=a[f+1538>>0]|0;a[f+1546>>0]=a[f+1540>>0]|0;a[f+1547>>0]=a[f+1541>>0]|0;h=0}else h=0;l=w;return h|0}function lP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);p=q+16|0;o=q+8|0;i=q;if(a[f+21>>0]|0)a[f+1629>>0]=(fP(b)|0)+2;a[f+1630>>0]=gP(b)|0;k=(gP(b)|0)&255;a[f+1631>>0]=k;a:do if(!(k<<24>>24))j=12;else{a[f+1632>>0]=fP(b)|0;r=fP(b)|0;h=r&255;k=f+1633|0;a[k>>0]=h;if((r&254)>>>0>5){Uf(e,16,152118,i);break}else i=0;while(1){if((i|0)>(h&255|0)){j=12;break a}r=(qP(b)|0)&255;a[f+1634+i>>0]=r;if(r<<24>>24)Uf(e,24,152182,o);r=(qP(b)|0)&255;a[f+1640+i>>0]=r;if(r<<24>>24)Uf(e,24,152182,p);i=i+1|0;h=a[k>>0]|0}}while(0);if((j|0)==12?(r=f+1646|0,a[r>>0]=fP(b)|0,n=fP(b)|0,a[f+1647>>0]=n,p=c[g+44>>2]|0,(((p|0)>10?p+-10|0:0)|0)>=(d[r>>0]|0)):0){r=c[g+48>>2]|0;l=q;return ((((r|0)>10?r+-10|0:0)|0)<(n&255|0)?-1094995529:0)|0}l=q;return -1094995529}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=b+44|0;x=b+1656|0;c[x>>2]=Jh((c[w>>2]|0)+1|0,4)|0;y=b+48|0;v=b+1660|0;c[v>>2]=Jh((c[y>>2]|0)+1|0,4)|0;z=d+13384|0;t=Jh(c[z>>2]|0,4)|0;i=b+1664|0;c[i>>2]=t;e=c[x>>2]|0;a:do if((e|0)!=0?!((t|0)==0|(c[v>>2]|0)==0):0){q=b+1648|0;if(a[b+52>>0]|0){e=c[q>>2]|0;if(!e){c[q>>2]=Jh(c[w>>2]|0,4)|0;f=Jh(c[y>>2]|0,4)|0;c[b+1652>>2]=f;e=c[q>>2]|0;if(!e){e=-12;break}}else f=c[b+1652>>2]|0;if(!f){e=-12;break}else g=0;while(1){h=c[w>>2]|0;if((g|0)>=(h|0))break;t=g+1|0;s=c[z>>2]|0;c[e+(g<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,g)|0)/(h|0)|0);g=t}g=d+13388|0;e=0;while(1){h=c[y>>2]|0;if((e|0)>=(h|0))break;t=e+1|0;s=c[g>>2]|0;c[f+(e<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,e)|0)/(h|0)|0);e=t}e=c[x>>2]|0}c[e>>2]=0;f=0;g=0;while(1){if((f|0)>=(c[w>>2]|0))break;t=(c[(c[q>>2]|0)+(f<<2)>>2]|0)+g|0;s=f+1|0;c[e+(s<<2)>>2]=t;f=s;g=t}g=c[v>>2]|0;c[g>>2]=0;n=b+1652|0;f=0;h=0;while(1){if((f|0)>=(c[y>>2]|0)){f=0;g=0;break}t=(c[(c[n>>2]|0)+(f<<2)>>2]|0)+h|0;s=f+1|0;c[g+(s<<2)>>2]=t;f=s;h=t}while(1){h=c[z>>2]|0;if((g|0)>=(h|0))break;t=f+(g>>>0>(c[e+(f<<2)>>2]|0)>>>0&1)|0;c[(c[i>>2]|0)+(g<<2)>>2]=t;f=t;g=g+1|0}m=N(c[d+13388>>2]|0,h)|0;s=b+1668|0;c[s>>2]=Jh(m,4)|0;e=b+1672|0;c[e>>2]=Jh(m,4)|0;f=b+1676|0;c[f>>2]=Jh(m,4)|0;t=d+13420|0;g=(c[t>>2]|0)+2|0;g=Jh(N(g,g)|0,4)|0;p=b+1688|0;c[p>>2]=g;o=c[s>>2]|0;if(((o|0)!=0?(r=c[e>>2]|0,(r|0)!=0):0)?(u=c[f>>2]|0,!((g|0)==0|(u|0)==0)):0){i=0;while(1){if((i|0)>=(m|0)){e=0;l=0;break}j=c[z>>2]|0;k=(i|0)%(j|0)|0;l=(i|0)/(j|0)|0;f=c[w>>2]|0;e=0;while(1){if((e|0)>=(f|0)){e=0;break}g=e+1|0;if(k>>>0<(c[(c[x>>2]|0)+(g<<2)>>2]|0)>>>0)break;else e=g}g=c[y>>2]|0;f=0;while(1){if((f|0)>=(g|0)){h=0;break}h=f+1|0;if(l>>>0<(c[(c[v>>2]|0)+(h<<2)>>2]|0)>>>0){h=f;break}else f=h}f=0;g=0;while(1){if((g|0)>=(e|0)){g=0;break}f=(N(c[(c[q>>2]|0)+(g<<2)>>2]|0,c[(c[n>>2]|0)+(h<<2)>>2]|0)|0)+f|0;g=g+1|0}while(1){if((g|0)>=(h|0))break;f=(N(c[(c[n>>2]|0)+(g<<2)>>2]|0,j)|0)+f|0;g=g+1|0}l=N(c[(c[q>>2]|0)+(e<<2)>>2]|0,l-(c[(c[v>>2]|0)+(h<<2)>>2]|0)|0)|0;l=f+k+l-(c[(c[x>>2]|0)+(e<<2)>>2]|0)|0;c[o+(i<<2)>>2]=l;c[r+(l<<2)>>2]=i;i=i+1|0}b:while(1){if((l|0)>=(c[y>>2]|0))break;m=l+1|0;h=0;while(1){if((h|0)>=(c[w>>2]|0)){l=m;continue b}g=c[v>>2]|0;i=g+(m<<2)|0;j=h+1|0;g=c[g+(l<<2)>>2]|0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;f=c[x>>2]|0;k=f+(j<<2)|0;f=c[f+(h<<2)>>2]|0;while(1){if(f>>>0>=(c[k>>2]|0)>>>0)break;c[u+(c[o+((N(c[z>>2]|0,g)|0)+f<<2)>>2]<<2)>>2]=e;f=f+1|0}g=g+1|0}e=e+1|0;h=j}}g=Jh(e,4)|0;c[b+1680>>2]=g;if(g){f=0;while(1){if((f|0)<(c[y>>2]|0))e=0;else break;while(1){h=c[w>>2]|0;if((e|0)>=(h|0))break;u=N(c[z>>2]|0,c[(c[v>>2]|0)+(f<<2)>>2]|0)|0;c[g+((N(h,f)|0)+e<<2)>>2]=(c[(c[x>>2]|0)+(e<<2)>>2]|0)+u;e=e+1|0}f=f+1|0}i=c[d+13336>>2]|0;h=c[d+13328>>2]|0;g=c[p>>2]|0;j=c[t>>2]|0;n=g+(j+3<<2)|0;c[b+1684>>2]=n;e=0;while(1){f=j+2|0;if((e|0)>=(f|0))break;c[g+((N(f,e)|0)<<2)>>2]=-1;c[g+(e<<2)>>2]=-1;e=e+1|0;j=c[t>>2]|0}l=i-h|0;m=l<<1;k=0;e=j;while(1){if((k|0)>(e|0)){e=0;break a}i=k>>l;h=0;while(1){if((h|0)>(e|0))break;f=(N(c[z>>2]|0,i)|0)+(h>>l)|0;f=c[(c[s>>2]|0)+(f<<2)>>2]<=(l|0))break;b=1<>2]=f;h=h+1|0;e=c[t>>2]|0}k=k+1|0}}else e=-12}else e=-12}else e=-12;while(0);return e|0}function nP(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(pP(a)|0)|0}function oP(a,b){a=a|0;b=b|0;var d=0,e=0;b=a+128+(b<<2)|0;d=c[b>>2]|0;if(d|0?(e=a+392|0,(c[e>>2]|0)==(c[d+4>>2]|0)):0)c[e>>2]=0;zg(b);return}function pP(a){a=a|0;return c[a+8>>2]|0}function qP(a){a=a|0;a=fP(a)|0;return ((a&1)+-1^a>>>1)+1|0}function rP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=e;if((b|0)<26)a=uP(a,b)|0;else{c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=tP(d,b)|0}l=e;return a|0}function sP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function tP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=hP(a,b)|0;break}else{b=b+-16|0;c=(hP(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function vP(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;_=l;l=l+272|0;if((l|0)>=(m|0))W(272);Z=_+256|0;Y=_+248|0;X=_+240|0;V=_+232|0;U=_+224|0;T=_+216|0;S=_+208|0;R=_+200|0;P=_+192|0;O=_+176|0;M=_+168|0;L=_+160|0;K=_+152|0;H=_+144|0;F=_+136|0;E=_+120|0;D=_+112|0;C=_+104|0;B=_+96|0;A=_+88|0;x=_+80|0;w=_+72|0;u=_+64|0;t=_+56|0;r=_+40|0;q=_+32|0;p=_+24|0;o=_+16|0;n=_+8|0;k=_;j=hP(e,4)|0;c[d>>2]=j;a:do if(j>>>0<=15){if(h|0?(c[h+(j<<2)>>2]|0)==0:0){c[n>>2]=j;Uf(i,16,152626,n);h=-1094995529;break}h=(hP(e,3)|0)+1|0;v=d+68|0;c[v>>2]=h;if((h|0)>7){c[o>>2]=h;Uf(i,16,152649,o);h=-1094995529;break}a[d+156>>0]=hP(e,1)|0;h=xP(e,i,d+300|0,c[v>>2]|0)|0;if((h|0)>=0){h=fP(e)|0;c[f>>2]=h;if(h>>>0>15){c[p>>2]=h;Uf(i,16,151683,p);h=-1094995529;break}h=fP(e)|0;o=d+4|0;c[o>>2]=h;if(h>>>0>3){c[q>>2]=h;Uf(i,16,152686,q);h=-1094995529;break}if((h|0)==3){h=(gP(e)|0)&255;a[d+8>>0]=h}else h=a[d+8>>0]|0;if(h<<24>>24)c[o>>2]=0;I=d+13376|0;c[I>>2]=fP(e)|0;h=fP(e)|0;J=d+13380|0;c[J>>2]=h;h=Vh(c[I>>2]|0,h,0,i)|0;if((h|0)>=0){if(gP(e)|0){k=c[o>>2]|0;n=(k|0)<2?2:1;k=(k|0)<3?2:1;h=d+28|0;c[h>>2]=N(k,fP(e)|0)|0;j=d+32|0;c[j>>2]=N(fP(e)|0,k)|0;k=d+36|0;c[k>>2]=N(fP(e)|0,n)|0;n=N(fP(e)|0,n)|0;c[d+40>>2]=n;if(c[i+64>>2]&65536|0){z=c[j>>2]|0;G=c[k>>2]|0;c[r>>2]=c[h>>2];c[r+4>>2]=z;c[r+8>>2]=G;c[r+12>>2]=n;Uf(i,48,152719,r);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}G=d+12|0;c[G>>2]=c[h>>2];c[G+4>>2]=c[h+4>>2];c[G+8>>2]=c[h+8>>2];c[G+12>>2]=c[h+12>>2]}G=d+44|0;c[G>>2]=(fP(e)|0)+8;h=(fP(e)|0)+8|0;if(c[o>>2]|0?(s=c[G>>2]|0,(h|0)!=(s|0)):0){c[t>>2]=s;c[t+4>>2]=h;Uf(i,16,152795,t);h=-1094995529;break}c[d+48>>2]=h;h=yP(i,d)|0;if((h|0)>=0){h=fP(e)|0;z=h+4|0;y=d+60|0;c[y>>2]=z;if(z>>>0>16){c[u>>2]=h;Uf(i,16,152878,u);h=-1094995529;break}o=(gP(e)|0)!=0;if(o)p=0;else p=(c[v>>2]|0)+-1|0;z=i+580|0;n=p;while(1){if((n|0)>=(c[v>>2]|0))break;f=d+72+(n*12|0)|0;c[f>>2]=(fP(e)|0)+1;j=d+72+(n*12|0)+4|0;c[j>>2]=fP(e)|0;c[d+72+(n*12|0)+8>>2]=(fP(e)|0)+-1;k=c[f>>2]|0;if(k>>>0>16){Q=34;break}h=c[j>>2]|0;if((h|0)>=(k|0)){c[x>>2]=h;Uf(i,24,152978,x);if(c[z>>2]&8|0){h=-1094995529;break a}h=c[j>>2]|0;if((h|0)>15){h=-1094995529;break a}c[f>>2]=h+1}n=n+1|0}if((Q|0)==34){c[w>>2]=k+-1;Uf(i,16,152927,w);h=-1094995529;break}b:do if(!o){j=d+72+(p*12|0)|0;k=d+72+(p*12|0)+4|0;n=d+72+(p*12|0)+8|0;h=0;while(1){if((h|0)>=(p|0))break b;c[d+72+(h*12|0)>>2]=c[j>>2];c[d+72+(h*12|0)+4>>2]=c[k>>2];c[d+72+(h*12|0)+8>>2]=c[n>>2];h=h+1|0}}while(0);r=d+13320|0;c[r>>2]=(fP(e)|0)+3;s=d+13324|0;c[s>>2]=fP(e)|0;t=d+13328|0;c[t>>2]=(fP(e)|0)+2;j=fP(e)|0;k=c[t>>2]|0;u=d+13332|0;c[u>>2]=k+j;n=c[r>>2]|0;if((n+-3|0)>>>0>27){c[A>>2]=n;Uf(i,16,153021,A);h=-1094995529;break}h=c[s>>2]|0;if(h>>>0>30){c[B>>2]=h;Uf(i,16,153059,B);h=-1094995529;break}if(k>>>0>=n>>>0|k>>>0<2){Uf(i,16,153116,C);h=-1094995529;break}if(j>>>0>30){c[D>>2]=j;Uf(i,16,153151,D);h=-1094995529;break}p=d+13344|0;c[p>>2]=fP(e)|0;q=d+13348|0;c[q>>2]=fP(e)|0;D=(gP(e)|0)&255;a[d+634>>0]=D;do if(D<<24>>24){h=d+635|0;jP(h);if(!(gP(e)|0))break;h=kP(e,i,h,d)|0;if((h|0)<0)break a}while(0);a[d+13196>>0]=gP(e)|0;a[d+13197>>0]=gP(e)|0;D=gP(e)|0;c[d+64>>2]=D;do if(D|0){h=d+13300|0;a[h>>0]=(hP(e,4)|0)+1;j=d+13301|0;a[j>>0]=(hP(e,4)|0)+1;k=(fP(e)|0)+3|0;c[d+13304>>2]=k;c[d+13308>>2]=(fP(e)|0)+k;h=a[h>>0]|0;j=a[j>>0]|0;k=c[G>>2]|0;if((k|0)<(((h&255)>(j&255)?h:j)&255|0)){c[E>>2]=h&255;c[E+4>>2]=j&255;c[E+8>>2]=k;Uf(i,16,153211,E);h=-1094995529;break a}else{a[d+13312>>0]=gP(e)|0;break}}while(0);h=fP(e)|0;k=d+2184|0;c[k>>2]=h;if(h>>>0>64){c[F>>2]=h;Uf(i,16,153273,F);h=-1094995529;break}else j=0;while(1){if(j>>>0>=h>>>0)break;h=zP(e,i,d+2188+(j*172|0)|0,d,0)|0;if((h|0)<0)break a;j=j+1|0;h=c[k>>2]|0}F=(gP(e)|0)&255;a[d+13198>>0]=F;c:do if(F<<24>>24){j=fP(e)|0;h=j&255;k=d+13296|0;a[k>>0]=h;j=j&255;if(j>>>0>32){c[H>>2]=j;Uf(i,16,153303,H);h=-1094995529;break a}else j=0;while(1){if((j|0)>=(h&255|0))break c;b[d+13200+(j<<1)>>1]=hP(e,c[y>>2]|0)|0;a[d+13264+j>>0]=gP(e)|0;j=j+1|0;h=a[k>>0]|0}}while(0);a[d+13316>>0]=gP(e)|0;a[d+13317>>0]=gP(e)|0;c[d+160>>2]=0;c[d+164>>2]=1;if(gP(e)|0)AP(e,i,g,d);do if(gP(e)|0){h=0;j=0;while(1){if((h|0)==1)break;h=h+1|0;j=gP(e)|0}BP(e,7);if(!j)break;c[d+13352>>2]=gP(e)|0;c[d+13356>>2]=gP(e)|0;c[d+13360>>2]=gP(e)|0;c[d+13364>>2]=gP(e)|0;if(gP(e)|0)Uf(i,24,153337,K);c[d+13368>>2]=gP(e)|0;if(gP(e)|0)Uf(i,24,153393,L);c[d+13372>>2]=gP(e)|0;if(!(gP(e)|0))break;Uf(i,24,153450,M)}while(0);if(!g){n=d+12|0;k=d+16|0;h=n;j=k;k=c[k>>2]|0;n=c[n>>2]|0}else{j=d+12|0;n=(c[j>>2]|0)+(c[d+224>>2]|0)|0;c[j>>2]=n;j=d+16|0;k=(c[j>>2]|0)+(c[d+228>>2]|0)|0;c[j>>2]=k;h=d+20|0;c[h>>2]=(c[h>>2]|0)+(c[d+232>>2]|0);h=d+24|0;c[h>>2]=(c[h>>2]|0)+(c[d+236>>2]|0);h=d+12|0}o=c[d+20>>2]|0;f=c[d+24>>2]|0;do if(n>>>0<(2147483647-k|0)>>>0&o>>>0<(2147483647-f|0)>>>0){if((k+n|0)>>>0>=(c[I>>2]|0)>>>0){Q=87;break}if((f+o|0)>>>0>=(c[J>>2]|0)>>>0)Q=87}else Q=87;while(0);if((Q|0)==87){Q=c[j>>2]|0;c[O>>2]=n;c[O+4>>2]=Q;c[O+8>>2]=o;c[O+12>>2]=f;Uf(i,24,153507,O);if(c[z>>2]&8|0){h=-1094995529;break}Uf(i,24,153546,P);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Q=d+28|0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0}k=c[r>>2]|0;n=(c[s>>2]|0)+k|0;h=d+13336|0;c[h>>2]=n;j=k+-1|0;c[d+13340>>2]=j;if(n>>>0>6){c[R>>2]=n;Uf(i,16,153583,R);h=-1094995529;break}if(n>>>0<4){c[S>>2]=n;Uf(i,16,153612,S);c[T>>2]=c[h>>2];Li(i,153675,T);h=-1094995529;break}S=c[I>>2]|0;Q=1<>n;c[d+13384>>2]=R;T=c[J>>2]|0;Q=T+-1+Q>>n;c[d+13388>>2]=Q;c[d+13392>>2]=N(Q,R)|0;c[d+13396>>2]=S>>k;c[d+13400>>2]=T>>k;R=c[t>>2]|0;c[d+13404>>2]=S>>R;c[d+13408>>2]=T>>R;c[d+13412>>2]=S>>j;c[d+13416>>2]=T>>j;j=n-R|0;c[d+13420>>2]=(1<>2]=((c[G>>2]|0)*6|0)+-48;if((1<>2]|0;if(h>>>0>j>>>0){c[V>>2]=h;Uf(i,16,153725,V);h=-1094995529;break}h=c[q>>2]|0;if(h>>>0>j>>>0){c[X>>2]=h;Uf(i,16,153779,X);h=-1094995529;break}h=c[u>>2]|0;if(h>>>0>(n>>>0<5?n:5)>>>0){c[Y>>2]=h;Uf(i,16,153833,Y);h=-1094995529;break}h=nP(e)|0;if((h|0)>=0){h=0;break}c[Z>>2]=0-h;Uf(i,16,153876,Z);h=-1094995529}}}}else{c[k>>2]=j;Uf(i,16,152601,k);h=-1094995529}while(0);l=_;return h|0}function wP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+64+(b<<2)|0;d=c[e>>2]|0;if(d|0){f=a+388|0;if((c[f>>2]|0)==(c[d+4>>2]|0)){c[f>>2]=0;d=0}else d=0;while(1){if((d|0)==64)break;i=c[a+128+(d<<2)>>2]|0;if(i|0?(c[c[i+4>>2]>>2]|0)==(b|0):0)oP(a,d);d=d+1|0}i=c[e>>2]|0;if(i|0?(c[f>>2]|0)==(c[i+4>>2]|0):0){c[g>>2]=152516;c[g+4>>2]=152580;c[g+8>>2]=92;Uf(0,0,159675,g);Ub()}}zg(e);l=h;return}function xP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o+16|0;j=o+8|0;g=o;a:do if((FP(b,d,e)|0)>=0?(i=f+-1|0,h=(f|0)>1,(nP(b)|0)>=((h&1)<<4|8|0)):0){a[e+35>>0]=hP(b,8)|0;f=0;while(1){if((f|0)>=(i|0))break;a[e+320+f>>0]=gP(b)|0;a[e+327+f>>0]=gP(b)|0;f=f+1|0}b:do if(h){f=i;while(1){if((f|0)>=8){f=0;break b}BP(b,2);f=f+1|0}}else f=0;while(0);while(1){if((f|0)>=(i|0)){f=0;break a}if(a[e+320+f>>0]|0?(FP(b,d,e+40+(f*40|0)|0)|0)<0:0){n=13;break}if(a[e+327+f>>0]|0){if((nP(b)|0)<8){n=16;break}a[e+40+(f*40|0)+35>>0]=hP(b,8)|0}f=f+1|0}if((n|0)==13){c[j>>2]=f;Uf(d,16,154601,j);f=-1;break}else if((n|0)==16){c[k>>2]=f;Uf(d,16,154644,k);f=-1;break}}else n=3;while(0);if((n|0)==3){Uf(d,16,154574,g);f=-1}l=o;return f|0}function yP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;h=b+44|0;e=c[h>>2]|0;a:do switch(e|0){case 8:{switch(c[b+4>>2]|0){case 0:{a=8;break}case 1:{a=0;break}case 2:{c[b+56>>2]=4;g=23;break a}case 3:{c[b+56>>2]=5;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 9:{switch(c[b+4>>2]|0){case 0:{a=30;break}case 1:{a=62;break}case 2:{c[b+56>>2]=72;g=23;break a}case 3:{c[b+56>>2]=68;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 10:{switch(c[b+4>>2]|0){case 0:{a=171;break}case 1:{a=64;break}case 2:{c[b+56>>2]=66;g=23;break a}case 3:{c[b+56>>2]=70;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 12:{switch(c[b+4>>2]|0){case 0:{a=169;break}case 1:{a=125;break}case 2:{c[b+56>>2]=129;g=23;break a}case 3:{c[b+56>>2]=133;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}default:{c[f>>2]=c[b+4>>2];c[f+4>>2]=e;Uf(a,16,154464,f);a=-1094995529}}while(0);if((g|0)==23){a=nh(c[b+56>>2]|0)|0;if(!a)a=-22;else{c[b+13436>>2]=0;c[b+13424>>2]=0;g=d[a+5>>0]|0;c[b+13428>>2]=g;c[b+13432>>2]=g;a=d[a+6>>0]|0;c[b+13440>>2]=a;c[b+13444>>2]=a;c[b+52>>2]=(c[h>>2]|0)>8&1;a=0}}l=i;return a|0}function zP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);p=s+40|0;o=s+32|0;k=s+24|0;q=s+16|0;n=s+8|0;j=s;h=f+2188|0;a:do if(((h|0)!=(e|0)?(i=f+2184|0,(c[i>>2]|0)!=0):0)?((gP(b)|0)&255)<<24>>24!=0:0){do if(g){h=(fP(b)|0)+1|0;g=c[i>>2]|0;if(g>>>0>>0){c[j>>2]=h;c[j+4>>2]=g;Uf(d,16,154274,j);g=-1094995529;break a}else{o=g-h|0;c[e+8>>2]=c[f+2188+(o*172|0)+4>>2];break}}else o=((e-h|0)/172|0)+-1|0;while(0);g=gP(b)|0;p=fP(b)|0;h=p+1|0;if(p>>>0>32767){c[n>>2]=h;Uf(d,16,154332,n);g=-1094995529;break}k=N(1-(g<<1&510)|0,h)|0;n=f+2188+(o*172|0)+4|0;h=0;g=0;j=0;while(1){if((j|0)>(c[n>>2]|0))break;p=gP(b)|0;a[e+140+g>>0]=p;if(!((p&255|0)==0?((gP(b)|0)&255)<<24>>24==0:0)){if((j|0)<(c[n>>2]|0))i=(c[f+2188+(o*172|0)+12+(j<<2)>>2]|0)+k|0;else i=k;c[e+12+(g<<2)>>2]=i;g=g+1|0;h=(i>>>31)+h|0}j=j+1|0}if(g>>>0>31){c[q>>2]=g;Uf(d,16,154368,q);g=-1094995529;break}p=e+4|0;c[p>>2]=g;c[e>>2]=h;if(g){o=1;while(1){if((o|0)>=(g|0))break;i=c[e+12+(o<<2)>>2]|0;j=a[e+140+o>>0]|0;h=o;while(1){g=h+-1|0;if((h|0)<=0)break;k=e+12+(g<<2)|0;n=c[k>>2]|0;if((i|0)>=(n|0)){h=g;continue}c[e+12+(h<<2)>>2]=n;d=e+140+g|0;a[e+140+h>>0]=a[d>>0]|0;c[k>>2]=i;a[d>>0]=j;h=g}o=o+1|0;g=c[p>>2]|0}h=c[e>>2]|0}if(h>>>0>1){i=0;g=h;while(1){g=g+-1|0;if(i>>>0>=h>>>1>>>0){g=0;break a}h=e+12+(i<<2)|0;q=c[h>>2]|0;f=e+140+i|0;d=a[f>>0]|0;b=e+12+(g<<2)|0;c[h>>2]=c[b>>2];h=e+140+g|0;a[f>>0]=a[h>>0]|0;c[b>>2]=q;a[h>>0]=d;i=i+1|0;h=c[e>>2]|0}}else g=0}else r=32;while(0);b:do if((r|0)==32){c[e>>2]=fP(b)|0;j=fP(b)|0;g=c[e>>2]|0;if((g|j)>>>0>15){Uf(d,16,154396,k);g=-1094995529;break}q=g+j|0;c[e+4>>2]=q;if(!q)g=0;else{h=0;i=0;while(1){if(i>>>0>=g>>>0){h=0;i=0;break}q=fP(b)|0;g=q+1|0;if(q>>>0>32767){r=37;break}g=h-g|0;c[e+12+(i<<2)>>2]=g;a[e+140+i>>0]=gP(b)|0;h=g;i=i+1|0;g=c[e>>2]|0}if((r|0)==37){c[o>>2]=g;Uf(d,16,154432,o);g=-1094995529;break}while(1){if(i>>>0>=j>>>0){g=0;break b}r=fP(b)|0;g=r+1|0;if(r>>>0>32767)break;r=g+h|0;c[e+12+((c[e>>2]|0)+i<<2)>>2]=r;q=(gP(b)|0)&255;a[(c[e>>2]|0)+i+(e+140)>>0]=q;h=r;i=i+1|0}c[p>>2]=g;Uf(d,16,154432,p);g=-1094995529}}while(0);l=s;return g|0}function AP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+240|0;if((l|0)>=(m|0))W(240);H=I+64|0;G=I+56|0;F=I+48|0;E=I+40|0;r=I+24|0;k=I+16|0;i=I+8|0;B=I+88|0;C=I+68|0;D=g+160|0;Uf(e,48,153901,I);do if(gP(b)|0){h=(hP(b,8)|0)&255;if(h>>>0<17){y=105068+(h<<3)|0;z=c[y+4>>2]|0;A=D;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}if((h|0)==255){c[D>>2]=hP(b,16)|0;c[g+164>>2]=hP(b,16)|0;break}else{c[i>>2]=h;Uf(e,24,153915,i);break}}while(0);A=gP(b)|0;c[g+168>>2]=A;if(A|0)c[g+172>>2]=gP(b)|0;A=gP(b)|0;c[g+176>>2]=A;a:do if(A|0){c[g+180>>2]=hP(b,3)|0;A=g+184|0;c[A>>2]=gP(b)|0;h=gP(b)|0;c[g+188>>2]=h;if(c[A>>2]|0?(j=g+56|0,(c[j>>2]|0)==0):0)c[j>>2]=12;if(h|0){h=g+192|0;a[h>>0]=hP(b,8)|0;i=g+193|0;a[i>>0]=hP(b,8)|0;j=g+194|0;a[j>>0]=hP(b,8)|0;if(!(xj(d[h>>0]|0)|0))a[h>>0]=2;if(!(yj(d[i>>0]|0)|0))a[i>>0]=2;if(!(zj(d[j>>0]|0)|0)){a[j>>0]=2;break}if(!(a[j>>0]|0)){i=g+56|0;switch(c[i>>2]|0){case 5:{h=73;break}case 70:{h=77;break}case 133:{h=137;break}default:break a}c[i>>2]=h}}}while(0);A=gP(b)|0;c[g+196>>2]=A;if(A|0){c[g+200>>2]=fP(b)|0;c[g+204>>2]=fP(b)|0}c[g+208>>2]=gP(b)|0;c[g+212>>2]=gP(b)|0;c[g+216>>2]=gP(b)|0;c[C>>2]=c[b>>2];c[C+4>>2]=c[b+4>>2];c[C+8>>2]=c[b+8>>2];c[C+12>>2]=c[b+12>>2];c[C+16>>2]=c[b+16>>2];gX(B|0,D|0,140)|0;if((nP(b)|0)>67?(rP(b,21)|0)==1048576:0){h=g+220|0;c[h>>2]=0;Uf(e,24,153939,k);h=c[h>>2]|0}else{h=gP(b)|0;c[g+220>>2]=h}if((h|0?(p=c[g+4>>2]|0,q=(p|0)<2?2:1,p=(p|0)<3?2:1,n=g+224|0,c[n>>2]=N(p,fP(b)|0)|0,o=g+228|0,c[o>>2]=N(fP(b)|0,p)|0,p=g+232|0,c[p>>2]=N(fP(b)|0,q)|0,q=N(fP(b)|0,q)|0,c[g+236>>2]=q,f|0):0)?c[e+64>>2]&65536|0:0){z=c[o>>2]|0;A=c[p>>2]|0;c[r>>2]=c[n>>2];c[r+4>>2]=z;c[r+8>>2]=A;c[r+12>>2]=q;Uf(e,48,153971,r);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0}n=g+240|0;o=g+264|0;p=g+268|0;q=g+272|0;f=g+276|0;r=g+280|0;s=g+284|0;t=g+288|0;u=g+292|0;v=g+296|0;w=g+244|0;x=g+248|0;y=g+252|0;z=g+260|0;A=g+68|0;i=g+256|0;h=0;b:while(1){g=gP(b)|0;c[n>>2]=g;if(g|0){j=(h|0)!=0;if(!(j|(nP(b)|0)>65)){Uf(e,24,154051,E);gX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue}c[w>>2]=tP(b,32)|0;k=tP(b,32)|0;c[x>>2]=k;if(j){g=c[w>>2]|0;c[F>>2]=k;c[F+4>>2]=g;Uf(e,32,154096,F)}g=gP(b)|0;c[y>>2]=g;if(g|0)c[i>>2]=fP(b)|0;g=gP(b)|0;c[z>>2]=g;if(g|0)CP(b,1,c[A>>2]|0)}g=gP(b)|0;c[o>>2]=g;do if(g|0)if((h|0)!=0|(nP(b)|0)>7){c[p>>2]=gP(b)|0;c[q>>2]=gP(b)|0;c[f>>2]=gP(b)|0;c[r>>2]=fP(b)|0;c[s>>2]=fP(b)|0;c[t>>2]=fP(b)|0;c[u>>2]=fP(b)|0;c[v>>2]=fP(b)|0;break}else{Uf(e,24,154117,G);gX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue b}while(0);if((h|0)!=0|(nP(b)|0)>0)break;Uf(e,24,154201,H);gX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1}l=I;return}function BP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function CP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(b){b=gP(a)|0;f=gP(a)|0;if(!(f|b))e=0;else{e=gP(a)|0;if(!e){BP(a,4);BP(a,4)}else{BP(a,8);BP(a,5);BP(a,1);BP(a,5);BP(a,4);BP(a,4);BP(a,4)}BP(a,5);BP(a,5);BP(a,5)}}else{e=0;f=0;b=0}h=(b|0)==0;g=(f|0)==0;f=0;while(1){if((f|0)>=(d|0))break;if((gP(a)|0)==0?(gP(a)|0)==0:0)if(!(gP(a)|0))j=13;else b=1;else{fP(a)|0;j=13}if((j|0)==13){j=0;n=fP(a)|0;b=n+1|0;if(n>>>0>31){j=14;break}}if(!h)DP(a,b,e);if(!g)DP(a,b,e);f=f+1|0}if((j|0)==14){c[i>>2]=b;Uf(0,16,154255,i)}l=k;return}function DP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;c=0;while(1){if((c|0)==(b|0))break;fP(a)|0;fP(a)|0;if(!d){fP(a)|0;fP(a)|0}EP(a);c=c+1|0}return}function EP(a){a=a|0;BP(a,1);return}function FP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=j+32|0;g=j+24|0;if((nP(b)|0)<88)d=-1;else{a[e>>0]=hP(b,2)|0;a[e+1>>0]=gP(b)|0;f=hP(b,5)|0;k=f&255;i=e+2|0;a[i>>0]=k;f=f&255;a:do switch(k<<24>>24){case 1:{Uf(d,48,154687,j);d=0;break}case 2:{Uf(d,48,154711,j+8|0);d=0;break}case 3:{Uf(d,48,154738,j+16|0);d=0;break}default:if((f|0)==4){Uf(d,48,154776,g);d=0;break a}else{c[h>>2]=f;Uf(d,24,154811,h);d=0;break a}}while(0);while(1){f=gP(b)|0;g=f&255;if((d|0)==32)break;a[e+3+d>>0]=g;if(!((f&255|0)==0|((d|0)<1|(a[i>>0]|0)!=0)))a[i>>0]=d;d=d+1|0}a[e+36>>0]=g;a[e+37>>0]=gP(b)|0;a[e+38>>0]=gP(b)|0;a[e+39>>0]=gP(b)|0;BP(b,16);BP(b,16);BP(b,12);d=0}l=j;return d|0}function GP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+(b<<2)|0;d=c[f>>2]|0;a:do if(d|0){e=a+384|0;if((c[e>>2]|0)==(c[d+4>>2]|0)){c[e>>2]=0;d=0}else d=0;while(1){if((d|0)==16)break a;e=c[a+64+(d<<2)>>2]|0;if(e|0?(c[c[e+4>>2]>>2]|0)==(b|0):0)wP(a,d);d=d+1|0}}while(0);zg(f);return}function HP(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=p;o=p+8|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;a=Gi(o,a,b,j,f,g,173,1)|0;a:do if((a|0)>=0){k=o+16|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break a;b=c[o>>2]|0;f=c[b+(g*68|0)+44>>2]|0;switch(f|0){case 32:{a=xO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 33:{a=yO(b+(g*68|0)+24|0,j,d,i)|0;if((a|0)<0)break a;break}case 34:{a=zO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 40:case 39:{a=AO(b+(g*68|0)+24|0,j,e,d,f)|0;if((a|0)<0)break a;break}default:{c[n>>2]=f;Uf(j,40,155320,n)}}g=g+1|0}}while(0);mi(o);l=p;return ((h&8|0)==0?0:a)|0}function IP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;a=JP(a,d)|0;if((a|0)>=0){Gg(b,c[d>>2]|0);ug(d);a=0}l=e;return a|0}function JP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=KP()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function KP(){var a=0;a=Lg(72)|0;if(a|0)xg(a);return a|0}function LP(){var a=0,b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);a=b;do if((MP(a,155355)|0)!=4)if((MP(a,155368)|0)==4){a=c[a>>2]|0;break}else{a=NP()|0;break}else a=c[a>>2]|0;while(0);l=b;return a|0}function MP(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=UP(b,0,c)|0;if((b|0)==-1)b=-1;else{a=RU(b,a,4)|0;oU(b)|0;b=a}l=c;return b|0}function NP(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+160|0;if((l|0)>=(m|0))W(160);a=n+120|0;h=n;i=n+132|0;k=182832;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[22226]|0)>>>0>=121){c[a>>2]=155380;c[a+4>>2]=155407;c[a+8>>2]=77;Uf(0,0,159675,a);Ub()}e=(j|0)==0&(k|0)==0;a=0;b=0;d=0;a:while(1){f=Yb()|0;g=f-a|0;do if(((b<<1|1)+a|0)<(f|0)){a=182832;a=TW(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=y;o=182832;c[o>>2]=a;c[o+4>>2]=b;o=183596+((a&511)<<2)|0;c[o>>2]=(c[o>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249){a=UW(a|0,b|0,j|0,k|0)|0;b=y;if(e)if(b>>>0>0|(b|0)==0&a>>>0>64)break a;else break;else if(b>>>0>0|(b|0)==0&a>>>0>4)break a;else break}}else{o=183596+((c[45708]&511)<<2)|0;b=N(c[o>>2]|0,1664525)|0;c[o>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}while(0);a=f;b=g;d=(d|0)==0?f:d}OP(h,160)|0;PP(h,183596,2048);QP(h,i);o=eX(c[i>>2]|0)|0;o=(eX(c[i+16>>2]|0)|0)+o|0;l=n;return o|0}function OP(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=196;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=197;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=197;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function PP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=b+8|0;j=i;f=c[j>>2]|0;j=TW(f|0,c[j+4>>2]|0,e|0,0)|0;c[i>>2]=j;c[i+4>>2]=y;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){Sd[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function QP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=b+8|0;j=g;j=cX(c[j>>2]|0,c[j+4>>2]|0,3)|0;j=RP(j,y)|0;i=f;c[i>>2]=j;c[i+4>>2]=y;PP(b,155431,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;PP(b,262540,1)}PP(b,f,8);f=0;while(1){if((f|0)>=(d[b>>0]|0|0))break;i=eX(c[b+80+(f<<2)>>2]|0)|0;j=e+(f<<2)|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;f=f+1|0}l=h;return}function RP(a,b){a=a|0;b=b|0;a=eX(a|0)|0;b=eX(b|0)|0;y=a;return b|0}function SP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;G=l;l=l+256|0;if((l|0)>=(m|0))W(256);y=G;z=c[a>>2]|0;A=a+4|0;B=c[A>>2]|0;C=a+8|0;D=c[C>>2]|0;E=a+12|0;F=c[E>>2]|0;q=a+16|0;r=c[q>>2]|0;s=a+20|0;t=c[s>>2]|0;u=a+24|0;v=c[u>>2]|0;w=a+28|0;x=c[w>>2]|0;e=0;f=t;g=r;h=F;i=D;j=B;k=z;n=x;o=v;while(1){if((e|0)==64)break;if(e>>>0<16){p=b+(e<<2)|0;p=eX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0}else{H=c[y+(e+-15<<2)>>2]|0;p=c[y+(e+-2<<2)>>2]|0;p=(c[y+(e+-7<<2)>>2]|0)+(c[y+(e+-16<<2)>>2]|0)+((H<<14|H>>>18)^H>>>3^(H<<25|H>>>7))+((p<<13|p>>>19)^p>>>10^(p<<15|p>>>17))|0}c[y+(e<<2)>>2]=p;L=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+n+((o^f)&g^o)+p+(c[105232+(e<<2)>>2]|0)|0;K=o;J=k;I=j;p=i;H=g;e=e+1|0;g=L+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+L|0;o=f;n=K;j=J;i=I;h=p;f=H}c[a>>2]=z+k;c[A>>2]=B+j;c[C>>2]=D+i;c[E>>2]=F+h;c[q>>2]=r+g;c[s>>2]=t+f;c[u>>2]=v+o;c[w>>2]=x+n;l=G;return}function TP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+320|0;if((l|0)>=(m|0))W(320);p=x;q=c[a>>2]|0;r=a+4|0;s=c[r>>2]|0;t=a+8|0;u=c[t>>2]|0;v=a+12|0;w=c[v>>2]|0;n=a+16|0;o=c[n>>2]|0;f=o;g=w;h=u;i=s;j=q;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=eX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[p+(k+-8<<2)>>2]^c[p+(k+-3<<2)>>2]^c[p+(k+-14<<2)>>2]^c[p+(k+-16<<2)>>2];e=e<<1|e>>>31}c[p+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40)if(k>>>0<20){e=((g^h)&i^g)+1518500249|0;break}else{e=(h^i^g)+1859775393|0;break}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(h^i^g)+-899497514|0;break}while(0);A=j;z=h;y=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=A;g=z;f=y}c[a>>2]=q+j;c[r>>2]=s+i;c[t>>2]=u+h;c[v>>2]=w+g;c[n>>2]=o+f;l=x;return}function UP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=i+16|0;g=i+8|0;f=i;e=i+24|0;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=qU(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(pU(e,2,g)|0)==-1):0)Uf(0,48,155433,h);l=i;return e|0}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ag((BU(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(mV(f,155462)|0)|0;k=e;f=e;a:while(1){b:while(1){h=a[g>>0]|0;if(!(h<<24>>24))break a;if(mV(g,d)|0)break a;i=g+1|0;switch(h<<24>>24){case 39:break b;case 92:{j=a[i>>0]|0;if(j<<24>>24){l=8;break b}break}default:{}}a[f>>0]=h;g=i;f=f+1|0}if((l|0)==8){l=0;i=f+1|0;a[f>>0]=j;g=g+2|0;k=i;f=i;continue}while(1){g=a[i>>0]|0;j=g<<24>>24==0;h=i+1|0;if(!(j^g<<24>>24!=39))break;a[f>>0]=g;i=h;f=f+1|0}g=j?i:h;k=j?k:f}do{a[f>>0]=0;f=f+-1|0;if(f>>>0>>0)break}while((mV(f,155462)|0)!=0);c[b>>2]=g}return e|0}function WP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=XP(a[e>>0]|0)|0;b=XP(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function XP(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function YP(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=XP(a[e>>0]|0)|0;e=e+1|0;b=XP(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function ZP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=BU(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=CU(c,44)|0;if(!d)d=c+(BU(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!(YP(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(JT(155467,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function _P(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}else h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;else g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((N(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=CU(h,i)|0;h=k+((k|0)!=0&1)|0}k=CU(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function $P(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function aQ(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function bQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?aQ(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=$f(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;bQ(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;gX(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;Bg(a,h);d=0}}}else{d=$f(0,b)|0;c[h>>2]=d;do if(d){d=kh(d,b,11,0,0)|0;if(!d){Qf(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);l=i;return d|0}function cQ(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(BU(b)|0)|0;g=0;c=0;while(1){if(b>>>0>>0)d=b;else{b=g;break}a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=dQ(b,d-b|0)|0;f=y;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}y=c;return b|0}function dQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;f=0;while(1){if(f>>>0>=28){e=0;i=7;break}e=c[28168+(f<<4)>>2]|0;if((BU(e)|0)==(d|0)?(IT(e,b,d)|0)==0:0){i=5;break}f=f+1|0}do if((i|0)==5){e=28168+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}else if((i|0)==7){while(1){i=0;if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[105488+(e<<3)>>2]|0,(BU(g)|0)==(d|0)):0)?(IT(g,b,d)|0)==0:0){i=11;break}e=e+1|0;i=7}if((i|0)==11){e=cX(1,0,e|0)|0;f=y;break}c[(mT()|0)>>2]=0;e=yT(b,j,10)|0;if(((c[(mT()|0)>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=eQ(e)|0;f=y;break}c[(mT()|0)>>2]=0;g=wT(b,j,0)|0;e=y;if(!(c[(mT()|0)>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}while(0);y=f;l=k;return e|0}function eQ(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[28168+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=28168+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}y=b;return a|0}function fQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=p+40|0;o=p+32|0;n=p+24|0;j=p+16|0;i=p+8|0;h=p;if((b|0)<1)b=Uh(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[28168+(f<<4)+4>>2]|0)?(g=28168+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[28168+(f<<4)>>2];dg(a,156129,h)}else if((g|0)==9?(c[i>>2]=b,dg(a,156132,i),!((d|0)==0&(e|0)==0)):0){dg(a,156144,j);b=0;g=0;while(1){if((g|0)==64)break;j=cX(1,0,g|0)|0;if(!((j&d|0)==0&(y&e|0)==0)){f=gQ(g)|0;if(f|0){if((b|0)>0)dg(a,156147,n);c[o>>2]=f;dg(a,156129,o)}b=b+1|0}g=g+1|0}dg(a,156149,k)}l=p;return}function gQ(a){a=a|0;if(a>>>0>35)a=0;else a=c[105488+(a<<3)>>2]|0;return a|0}function hQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);g=f;$P(g,a,b);fQ(g,c,d,e);l=f;return}function iQ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+1072|0;if((l|0)>=(m|0))W(1072);J=K+792|0;I=K+784|0;H=K+528|0;j=K+1060|0;k=K+1056|0;F=K+520|0;G=K+512|0;D=K;E=K+800|0;c[H>>2]=j;c[H+4>>2]=k;c[H+8>>2]=K+1064;if(!((_U(f,156151,H)|0)==2?(i=c[j>>2]|0,i=jQ(b,e,g,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){v=e+12|0;w=e+44|0;x=e+16|0;y=e+32|0;B=e+24|0;C=e+16|0;i=0;while(1){u=G;c[u>>2]=1;c[u+4>>2]=0;if(!(c[v>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{n=j<<24>>24;j=f+1|0;break}default:{n=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[H+f>>0]=k;f=f+1|0}a[H+f>>0]=0;t=f}else{n=0;t=0;j=f}s=(t|0)!=0;r=s?H:j;k=kQ(d,r,c[w>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==10:0){u=k+16|0;h[F>>3]=+((c[u>>2]|0)>>>0)+4294967296.0*+(c[u+4>>2]|0);u=30}else u=15;do if((u|0)==15){u=0;q=c[w>>2]|0;b:do if(!q){k=0;u=24}else{k=0;f=0;while(1){while(1){f=Cg(d,f)|0;if(!f){u=24;break b}if((c[f+12>>2]|0)!=10)continue;p=c[f+44>>2]|0;if(!p)continue;if(!(HT(p,q)|0))break}if((k+6|0)>>>0>63)break;c[E+(k<<2)>>2]=c[f>>2];p=f+16|0;h[D+(k<<3)>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);k=k+1|0}c[I>>2]=q;Uf(b,16,156165,I);i=-1163346256}while(0);if((u|0)==24){u=0;c[E+(k<<2)>>2]=167475;switch(c[v>>2]|0){case 1:case 0:case 10:case 9:case 2:{q=C;o=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0);break}default:o=+h[x>>3]}p=k+1|0;h[D+(k<<3)>>3]=o;c[E+(p<<2)>>2]=156465;q=k+2|0;h[D+(p<<3)>>3]=+h[y>>3];c[E+(q<<2)>>2]=156469;p=k+3|0;h[D+(q<<3)>>3]=+h[B>>3];c[E+(p<<2)>>2]=167453;q=k+4|0;h[D+(p<<3)>>3]=0.0;c[E+(q<<2)>>2]=167669;k=k+5|0;h[D+(q<<3)>>3]=-1.0;c[E+(k<<2)>>2]=0;h[D+(k<<3)>>3]=0.0;k=lQ(F,r,E,D,0,0,0,0,0,0,b)|0;if((k|0)>=0){u=30;break}c[J>>2]=j;Uf(b,16,156202,J);i=k}f=1}while(0);if((u|0)==30){c:do if(!(c[v>>2]|0)){mQ(e,g,0,0,G)|0;switch(n|0){case 43:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]|~~o>>>0)>>>0)+4294967296.0*+(c[u+4>>2]|(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}case 45:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]&~(~~o>>>0))>>>0)+4294967296.0*+(c[u+4>>2]&~(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}default:break c}}while(0);k=jQ(b,e,g,+h[F>>3],1,1,0)|0;if((k|0)>=0){j=j+t|0;if(s){u=(a[j>>0]|0)==0;f=u&1;i=u?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}l=K;return i|0}function jQ(a,b,d,e,f,i,j){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;i=i|0;j=j|0;var k=0,n=0,o=0.0,p=0.0,q=0.0,t=0,u=0,v=0,w=0;w=l;l=l+64|0;if((l|0)>=(m|0))W(64);k=w+40|0;u=w+8|0;t=w;n=c[b+12>>2]|0;a:do if(!n){o=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);if(!(o<-1.5|o>4294967295.5)?(u=OU(o*256.0)|0,(u&255|0)==0&0==0):0){v=14;break}d=c[b>>2]|0;h[k>>3]=o;c[k+8>>2]=d;Uf(a,16,156720,k);k=-34}else{if(!f){p=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;o=+h[b+32>>3]}else{o=+h[b+32>>3];p=+(f|0);q=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(o*p>3]*p>q):0)switch(n|0){case 1:case 18:{v=14;break a}case 12:{c[d>>2]=ZW(OU(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 13:{c[d>>2]=ZW(OU(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 6:case 14:{o=(+(i>>>0)+4294967296.0*+(j|0))*e;if(+(~~e|0)==e){c[d>>2]=~~o;c[d+4>>2]=f;k=0;break a}else{JQ(t,o/+(f|0),16777216);i=t;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break a}}case 2:case 17:case 15:{o=e/+(f|0);if((i|0)==1&(j|0)==0&o==9223372036854775808.0){k=-1;n=2147483647}else{k=OU(o)|0;k=ZW(k|0,y|0,i|0,j|0)|0;n=y}c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 9:{o=e/+(f|0);do if(!((i|0)==1&(j|0)==0&o==18446744073709551616.0))if(o>9223372036854775808.0){k=OU(o+-9223372036854775808.0)|0;k=ZW(k|0,y^-2147483648|0,i|0,j|0)|0;n=y;break}else{k=OU(o)|0;k=ZW(k|0,y|0,i|0,j|0)|0;n=y;break}else{k=-1;n=-1}while(0);c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 4:{g[d>>2]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}case 3:{h[d>>3]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}default:{k=-22;break a}}p=q/p}k=c[b>>2]|0;e=+h[b+24>>3];h[u>>3]=p;c[u+8>>2]=k;h[u+16>>3]=e;h[u+24>>3]=o;Uf(a,16,156668,u);k=-34}while(0);if((v|0)==14){k=OU(e/+(f|0))|0;k=ZW(k|0,y|0,i|0,j|0)|0;c[d>>2]=k;k=0}l=w;return k|0}function kQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GQ(a,b,c,d,e,0)|0}function lQ(a,b,d,e,f,g,i,j,k,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;c[p>>2]=0;b=nQ(p,b,d,f,g,i,j,n,o)|0;if((b|0)<0)h[a>>3]=r;else{b=c[p>>2]|0;h[a>>3]=+oQ(b,e,k);pQ(b);b=qQ(+h[a>>3])|0;k=y&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}l=q;return b|0}function mQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(c[a+12>>2]|0){case 0:{a=f;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break}case 12:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 13:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 1:case 18:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 9:case 2:case 15:case 17:{d=b;e=c[d+4>>2]|0;a=f;c[a>>2]=c[d>>2];c[a+4>>2]=e;a=0;break}case 4:{h[d>>3]=+g[b>>2];a=0;break}case 3:{h[d>>3]=+h[b>>3];a=0;break}case 6:{d=c[b>>2]|0;a=f;c[a>>2]=d;c[a+4>>2]=((d|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break}case 10:{h[d>>3]=+h[a+16>>3];a=0;break}default:a=-22}return a|0}function nQ(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;if((l|0)>=(m|0))W(64);s=u;r=u+12|0;t=u+8|0;n=r;o=n+52|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));c[t>>2]=0;q=ag((BU(d)|0)+1|0)|0;if(!q)n=-12;else{p=q;n=d;a:while(1){do{o=a[n>>0]|0;if(!(o<<24>>24))break a;n=n+1|0}while((sQ(o<<24>>24)|0)!=0);a[p>>0]=o;p=p+1|0}a[p>>0]=0;c[r>>2]=105776;c[r+4>>2]=100;o=r+8|0;c[o>>2]=q;c[r+16>>2]=e;c[r+20>>2]=g;c[r+24>>2]=f;c[r+28>>2]=i;c[r+32>>2]=h;c[r+40>>2]=j;c[r+44>>2]=k;n=tQ(t,r)|0;do if((n|0)>=0){o=c[o>>2]|0;if(a[o>>0]|0){c[s>>2]=o;c[s+4>>2]=d;Uf(r,16,156241,s);n=-22;break}o=c[t>>2]|0;if(uQ(o)|0){s=Lg(80)|0;c[o+32>>2]=s;if(!s)n=-12;else{c[b>>2]=o;c[t>>2]=0}}else n=-22}while(0);pQ(c[t>>2]|0);Rf(q)}l=u;return n|0}function oQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;g=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+rQ(e,a);l=g;return +i}function pQ(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=a;if(a|0){pQ(c[a+20>>2]|0);pQ(c[a+24>>2]|0);pQ(c[a+28>>2]|0);Qf(a+32|0);Qf(b)}l=d;return}function qQ(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function rQ(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,n=0,o=0,p=0.0,q=0.0,s=0.0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=t;a:do switch(c[b>>2]|0){case 0:{e=+h[b+8>>3];break}case 1:{e=+h[b+8>>3]*+h[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{q=+h[b+8>>3];o=c[b+16>>2]|0;s=+rQ(a,c[b+20>>2]|0);s=q*+Gd[o&15](s);l=t;return +s}case 3:{q=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;s=+rQ(a,c[b+20>>2]|0);s=q*+Hd[n&0](o,s);l=t;return +s}case 4:{p=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;q=+rQ(a,c[b+20>>2]|0);s=+rQ(a,c[b+24>>2]|0);s=p*+Id[n&0](o,q,s);l=t;return +s}case 5:{s=1.0/(+K(+(+rQ(a,c[b+20>>2]|0)*4.0))+1.0);l=t;return +s}case 6:{s=+rQ(a,c[b+20>>2]|0);s=+K(+(s*s*-.5))/2.5066282746310002;l=t;return +s}case 7:{s=+h[b+8>>3];o=c[a+48>>2]|0;a=~~+rQ(a,c[b+20>>2]|0);l=t;return +(s*+h[o+(((a|0)>0?((a|0)<9?a:9):0)<<3)>>3])}case 8:{s=+h[b+8>>3];a=qQ(+rQ(a,c[b+20>>2]|0))|0;b=y&2147483647;l=t;return +(s*+((b>>>0>2146435072|(b|0)==2146435072&a>>>0>0)&1))}case 9:{s=+h[b+8>>3]*+((qQ(+rQ(a,c[b+20>>2]|0))|0)==0&(y&2147483647|0)==2146435072&1);l=t;return +s}case 27:{s=+h[b+8>>3]*+z(+(+rQ(a,c[b+20>>2]|0)));l=t;return +s}case 28:{s=+h[b+8>>3]*+M(+(+rQ(a,c[b+20>>2]|0)));l=t;return +s}case 29:{s=+h[b+8>>3]*+pc(+(+rQ(a,c[b+20>>2]|0)));l=t;return +s}case 30:{s=+h[b+8>>3]*+fX(+(+rQ(a,c[b+20>>2]|0)));l=t;return +s}case 31:{s=+h[b+8>>3]*+B(+(+rQ(a,c[b+20>>2]|0)));l=t;return +s}case 32:{s=+h[b+8>>3]*+(+rQ(a,c[b+20>>2]|0)==0.0&1);l=t;return +s}case 36:{g=+h[b+8>>3];if(!(+rQ(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else o=22}else{f=c[b+24>>2]|0;o=22}if((o|0)==22)e=+rQ(a,f);e=g*e;break}case 37:{g=+h[b+8>>3];if(+rQ(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else o=27}else{f=c[b+24>>2]|0;o=27}if((o|0)==27)e=+rQ(a,f);e=g*e;break}case 42:{f=b+20|0;e=+rQ(a,c[f>>2]|0);g=+rQ(a,c[b+24>>2]|0);j=+rQ(a,c[b+28>>2]|0);o=qQ(g)|0;n=y&2147483647;if((!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)?(o=qQ(j)|0,n=y&2147483647,!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)):0)?(o=qQ(e)|0,n=y&2147483647,!(g>j|(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0))):0){q=+h[b+8>>3];s=+rQ(a,c[f>>2]|0);l=t;return +(q*(sj?j:s))}else e=r;break}case 41:{e=+rQ(a,c[b+20>>2]|0);g=+h[b+8>>3];if(!(e>=+rQ(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+rQ(a,c[b+28>>2]|0)&1);e=g*e;break}case 44:{s=+rQ(a,c[b+20>>2]|0);s=s+(+rQ(a,c[b+24>>2]|0)-s)*+rQ(a,c[b+28>>2]|0);l=t;return +s}case 38:{e=+rQ(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+rQ(a,f);h[i>>3]=e;Uf(a,f,156237,i);break}case 33:{n=~~+rQ(a,c[b+20>>2]|0);a=(c[a+48>>2]|0)+(((n|0)>0?((n|0)<9?n:9):0)<<3)|0;s=+h[a>>3];n=qQ(s)|0;i=y&2147483647;o=TW(ZW(~~s>>>0|0,(+A(s)>=1.0?(s>0.0?~~+O(+z(s/4294967296.0),4294967295.0)>>>0:~~+M((s-+(~~s>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,y|0,1013904223,0)|0;s=i>>>0>2146435072|(i|0)==2146435072&n>>>0>0?1013904223.0:+(o>>>0)+4294967296.0*+(y>>>0);h[a>>3]=s;l=t;return +(+h[b+8>>3]*(s*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+rQ(a,c[i>>2]|0)!=0.0))break a;e=+rQ(a,c[f>>2]|0)}}case 25:{k=+rQ(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)o=0;else{o=~~+rQ(a,f);o=(o|0)>0?((o|0)<9?o:9):0}n=a+48|0;p=+h[(c[n>>2]|0)+(o<<3)>>3];i=b+20|0;g=1.0;e=0.0;f=0;while(1){if((f|0)>=1e3)break;h[(c[n>>2]|0)+(o<<3)>>3]=+(f|0);s=+rQ(a,c[i>>2]|0);j=e+g*s;if(s!=0.0&e==j){e=j;break}b=f+1|0;g=g*(k/+(b|0));e=j;f=b}h[(c[n>>2]|0)+(o<<3)>>3]=p;break}case 26:{n=a+48|0;s=+h[c[n>>2]>>3];q=+rQ(a,c[b+24>>2]|0);i=b+20|0;k=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;g=-1.0;e=-1.0;f=-1;while(1){if((f|0)>=1024)break;if((f|0)<255)h[c[n>>2]>>3]=q*+(d[116320+(f&255)>>0]|0)/255.0;else{p=q*+C(.9,+(+(f+-255|0)));h[c[n>>2]>>3]=(f&2|0?e:g)+((f&1|0)==0?p:-p)}p=+rQ(a,c[i>>2]|0);if(p<=0.0&p>j){j=p;e=+h[c[n>>2]>>3]}if(p>=0.0&p>2]>>3]}if(e>=0.0&g>=0.0){f=0;o=60;break}else f=f+1|0}b:do if((o|0)==60)while(1){if((f|0)>=1e3)break b;q=(e+g)*.5;h[c[n>>2]>>3]=q;if(e==q|g==q)break b;p=+rQ(a,c[i>>2]|0);if(p<=0.0)e=+h[c[n>>2]>>3];if(p>=0.0)g=+h[c[n>>2]>>3];b=qQ(p)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&b>>>0>0){g=p;e=p;break}else{f=f+1|0;o=60}}while(0);h[c[n>>2]>>3]=s;e=k>-j?e:g;break}default:{e=+rQ(a,c[b+20>>2]|0);g=+rQ(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-g*+z(+(e/g)))*+h[b+8>>3];break a}case 35:{e=+h[b+8>>3]*(+((LM(~~e>>>0,+A(e)>=1.0?(e>0.0?~~+O(+z(e/4294967296.0),4294967295.0)>>>0:~~+M((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~g>>>0,+A(g)>=1.0?(g>0.0?~~+O(+z(g/4294967296.0),4294967295.0)>>>0:~~+M((g-+(~~g>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(y|0));break a}case 11:{e=(e>g?e:g)*+h[b+8>>3];break a}case 12:{e=(e>3];break a}case 13:{e=(e==g?1.0:0.0)*+h[b+8>>3];break a}case 14:{e=(e>g?1.0:0.0)*+h[b+8>>3];break a}case 15:{e=(e>=g?1.0:0.0)*+h[b+8>>3];break a}case 17:{e=(e>3];break a}case 16:{e=(e<=g?1.0:0.0)*+h[b+8>>3];break a}case 18:{e=+C(+e,+g)*+h[b+8>>3];break a}case 19:{e=e*g*+h[b+8>>3];break a}case 20:{e=e/g*+h[b+8>>3];break a}case 21:{e=(e+g)*+h[b+8>>3];break a}case 22:{e=g*+h[b+8>>3];break a}case 23:{s=+h[b+8>>3];b=~~e;h[(c[a+48>>2]|0)+(((b|0)>0?((b|0)<9?b:9):0)<<3)>>3]=g;e=g*s;break a}case 34:{e=+h[b+8>>3]*+zT(e,g);break a}case 43:{e=+h[b+8>>3]*+J(+e,+g);break a}case 39:{a=qQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=qQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g&~~e|0);break a}case 40:{a=qQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=qQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);l=t;return +e}function sQ(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function tQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n+4|0;i=n;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=vQ(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=vQ(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=wQ(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;pQ(h);break}else if((f|0)==8){c[j>>2]=0;pQ(h);pQ(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);l=n;return e|0}function uQ(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33: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(!(uQ(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(uQ(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(uQ(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(uQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(uQ(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(uQ(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(uQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(uQ(c[a+24>>2]|0)|0)){a=0;break a}a=(uQ(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(uQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(uQ(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function vQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+4|0;i=k;e=xQ(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=xQ(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=wQ(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;pQ(h);break}else if((f|0)==7){c[j>>2]=0;pQ(h);pQ(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);l=k;return e|0}function wQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Lg(40)|0;if(!e)e=0;else{c[e>>2]=a;h[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function xQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n+4|0;j=n;e=yQ(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=yQ(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=wQ(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;pQ(i);break}else if((f|0)==7){c[k>>2]=0;pQ(i);pQ(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);l=n;return e|0}function yQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+12|0;j=p+8|0;k=p+4|0;o=p;e=zQ(k,d,n)|0;do if((e|0)>=0){i=d+8|0;g=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=10;break}c[i>>2]=e+1;e=zQ(o,d,j)|0;if((e|0)<0){f=5;break}f=wQ(18,g,c[o>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(!e){g=f;continue}g=e+8|0;h[g>>3]=+h[g>>3]*+(c[j>>2]|1|0);g=f}if((f|0)==5){pQ(g);break}else if((f|0)==7){pQ(g);pQ(c[o>>2]|0);e=-12;break}else if((f|0)==10){if(g|0){o=g+8|0;h[o>>3]=+h[o>>3]*+(c[n>>2]|1|0)}c[b>>2]=g;e=0;break}}while(0);l=p;return e|0}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+oV(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=AQ(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=BQ(b,d,e)|0;l=j;return b|0}function AQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=x+24|0;r=x+16|0;q=x+8|0;p=x;w=x+32|0;s=x+28|0;o=Lg(40)|0;c[w>>2]=o;t=d+8|0;v=c[t>>2]|0;c[s>>2]=v;a:do if(!o)e=-12;else{j=o+8|0;h[j>>3]=+CQ(v,s);n=c[s>>2]|0;i=o;if((n|0)!=(c[t>>2]|0)){c[o>>2]=0;c[t>>2]=n;c[b>>2]=i;e=0;break}h[j>>3]=1.0;f=c[d+16>>2]|0;b:do if(!f)e=0;else{e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g){e=0;break b}if(DQ(n,g)|0)break;e=e+1|0}c[t>>2]=n+(BU(g)|0);c[o>>2]=1;c[o+16>>2]=e;c[b>>2]=i;e=0;break a}while(0);while(1){if(e>>>0>=4)break;f=c[28616+(e<<4)>>2]|0;if(DQ(n,f)|0){k=11;break}e=e+1|0}if((k|0)==11){c[t>>2]=n+(BU(f)|0);c[o>>2]=0;h[j>>3]=+h[28616+(e<<4)+8>>3];c[b>>2]=i;e=0;break}e=CU(n,40)|0;c[t>>2]=e;if(!e){c[p>>2]=v;Uf(d,16,156291,p);c[t>>2]=c[s>>2];pQ(c[w>>2]|0);e=-22;break}c[t>>2]=e+1;if((a[n>>0]|0)==40){Qf(w);e=tQ(w,d)|0;if((e|0)<0)break;e=c[t>>2]|0;if((a[e>>0]|0)==41){c[t>>2]=e+1;c[b>>2]=c[w>>2];e=0;break}else{c[q>>2]=v;Uf(d,16,156334,q);pQ(c[w>>2]|0);e=-22;break}}e=tQ(o+20|0,d)|0;if((e|0)<0){pQ(c[w>>2]|0);break}f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;tQ((c[w>>2]|0)+24|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;tQ((c[w>>2]|0)+28|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[r>>2]=v;Uf(d,16,156355,r);pQ(c[w>>2]|0);e=-22;break}c[t>>2]=f+1;k=c[w>>2]|0;c[k>>2]=2;i=c[s>>2]|0;j=k;do if(!(DQ(i,156393)|0)){if(DQ(i,156398)|0){c[k+16>>2]=2;break}if(DQ(i,156403)|0){c[k+16>>2]=3;break}if(DQ(i,156408)|0){c[k+16>>2]=4;break}if(DQ(i,156412)|0){c[k+16>>2]=5;break}if(DQ(i,156416)|0){c[k+16>>2]=6;break}if(DQ(i,156420)|0){c[k+16>>2]=7;break}if(DQ(i,156425)|0){c[k+16>>2]=8;break}if(DQ(i,156430)|0){c[k+16>>2]=9;break}if(DQ(i,156435)|0){c[k+16>>2]=10;break}if(DQ(i,168905)|0){c[k+16>>2]=11;break}if(DQ(i,156439)|0){c[k+16>>2]=12;break}if(DQ(i,156443)|0){c[k+16>>2]=13;break}if(DQ(i,156448)|0){c[k>>2]=5;break}if(DQ(i,156455)|0){c[k>>2]=6;break}if(DQ(i,156461)|0){c[k>>2]=10;break}if(DQ(i,156465)|0){c[k>>2]=11;break}if(DQ(i,156469)|0){c[k>>2]=12;break}if(DQ(i,156473)|0){c[k>>2]=13;break}if(DQ(i,156476)|0){c[k>>2]=15;break}if(DQ(i,156480)|0){c[k>>2]=14;break}if(DQ(i,156483)|0){c[k>>2]=16;break}if(DQ(i,156487)|0){c[k>>2]=17;break}if(DQ(i,156490)|0){c[k>>2]=7;break}if(DQ(i,156493)|0){c[k>>2]=8;break}if(DQ(i,156499)|0){c[k>>2]=9;break}if(DQ(i,156505)|0){c[k>>2]=23;break}if(DQ(i,156508)|0){c[k>>2]=24;break}if(DQ(i,156514)|0){c[k>>2]=25;break}if(DQ(i,156521)|0){c[k>>2]=26;break}if(DQ(i,156526)|0){c[k>>2]=27;break}if(DQ(i,156532)|0){c[k>>2]=28;break}if(DQ(i,162611)|0){c[k>>2]=29;break}if(DQ(i,156537)|0){c[k>>2]=30;break}if(DQ(i,156543)|0){c[k>>2]=31;break}if(DQ(i,156548)|0){c[k>>2]=32;break}if(DQ(i,156552)|0){c[k>>2]=18;break}if(DQ(i,156556)|0){c[k>>2]=38;break}if(DQ(i,157019)|0){c[k>>2]=33;break}if(DQ(i,156562)|0){c[k>>2]=34;break}if(DQ(i,156568)|0){c[k>>2]=35;break}if(DQ(i,156572)|0){c[k>>2]=36;break}if(DQ(i,156575)|0){c[k>>2]=37;break}if(DQ(i,156581)|0){c[k>>2]=39;break}if(DQ(i,156588)|0){c[k>>2]=40;break}if(DQ(i,156594)|0){c[k>>2]=41;break}if(DQ(i,156602)|0){c[k>>2]=42;break}if(DQ(i,156607)|0){c[k>>2]=43;break}if(DQ(i,156613)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break c;if(DQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break d;if(DQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[u>>2]=v;Uf(d,16,156618,u);pQ(c[w>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);l=x;return e|0}function BQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return AQ(b,d)|0}function CQ(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;if((a[b>>0]|0)==48?(a[b+1>>0]|32|0)==120:0)f=+((xT(b,k,16)|0)>>>0);else f=+oV(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+NU(f/20.0*3.321928094887362);b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{g=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[28680+(b*24|0)+16>>0]|0){g=i+1|0;if((a[g>>0]|0)==105){f=f*+h[28680+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+h[28680+(b*24|0)+8>>3];c[k>>2]=g;e=g;b=g;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)g=a[b>>0]|0;if(g<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;l=n;return +f}function DQ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function EQ(a){a=+a;var b=0;b=FQ()|0;return +((+(b>>>0)+4294967296.0*+(y|0))*1.0e-06)}function FQ(){var a=0,b=0,d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=a;hc(b|0,0)|0;d=c[b>>2]|0;d=ZW(d|0,((d|0)<0)<<31>>31|0,1e6,0)|0;b=c[b+4>>2]|0;b=TW(d|0,y|0,b|0,((b|0)<0)<<31>>31|0)|0;l=a;return b|0}function GQ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=IQ(a,i)|0;if(!i)break b;h=GQ(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=HQ(j,h)|0;c[i>>2]=h;if(!h){i=7;break}h=GQ(i,b,d,e,f,0)|0;if(h|0){i=10;break}h=c[i>>2]|0}if((i|0)==7)break;else if((i|0)==10)break a}while(0);j=(d|0)==0;h=0;while(1){h=Cg(a,h)|0;if(!h){h=0;break a}if(HT(c[h>>2]|0,b)|0)continue;if((c[h+40>>2]&e|0)!=(e|0))continue;i=(c[h+12>>2]|0)==10;if(j)if(i)continue;else break;if(!i)continue;i=c[h+44>>2]|0;if(!i)continue;if(!(HT(i,d)|0))break}if(g)c[g>>2]=(f&2|0)==0?a:0}else h=0;while(0);l=k;return h|0}function HQ(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Kd[a&31](b)|0;return a|0}function IQ(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Ld[d&15](a,b)|0;return a|0}function JQ(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0.0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;e=n+8|0;i=KQ(b)|0;h=y&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+A(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+bU(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=cX(1,0,61-f|0)|0;f=y;g=j+4|0;o=+z(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~o>>>0;i=+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0;Kn(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)Kn(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);l=n;return}function KQ(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function LQ(){var a=0,b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;a=Gc(84)|0;if(!(c[46411]|0)){c[b>>2]=a;Uf(0,48,156791,b);c[46411]=1}l=d;return a|0}function MQ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=s;p=a+68|0;g=c[p>>2]|0;do if((g|0)>0?(q=a+72|0,h=c[q>>2]|0,(h|0)>0):0){r=a+392|0;e=c[r>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,t=c[k>>2]|0,n=a+388|0,i=c[n>>2]|0,(i+t|0)>>>0>>0&((f+e|0)>>>0>>0&t>>>0<(2147483647-i|0)>>>0)):0){i=nh(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[p>>2]=(c[p>>2]|0)-(c[j>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[j>>2]=0;c[n>>2]=0;e=0;break}NQ(o,a,i);if(!(b&1)){h=c[r>>2]|0;if(!h)b=2147483647;else b=d[156818+((N(h&0-h,125613361)|0)>>>27)>>0]|0;f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[o+(g<<2)>>2]|0;if(!e)e=2147483647;else e=d[156818+((N(e&0-e,125613361)|0)>>>27)>>0]|0;f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[r>>2]=h&-1<>2]|0;if(!g)break;c[f>>2]=g+(c[o+(e<<2)>>2]|0);e=e+1|0}c[p>>2]=(c[p>>2]|0)-((c[j>>2]|0)+(c[r>>2]|0));c[q>>2]=(c[q>>2]|0)-((c[n>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);l=s;return e|0}function NQ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=10;break}i=d[n>>0]|0;g=0;while(1){if((g|0)>=(i|0))break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=N((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;c[a+(f<<2)>>2]=(N((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j;f=f+1|0}if((q|0)==10)c[a+4>>2]=0;return}function OQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[d>>2]|0;g=c[e+4>>2]|0;h=ZW(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=y;e=c[e>>2]|0;d=c[d+4>>2]|0;e=ZW(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=An(a,b,h,g,e,y,f)|0;return f|0}function PQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=OQ(a,b,h,g,5)|0;l=f;return e|0}function QQ(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Lg(N(b,a)|0)|0;else a=0;return a|0}function RQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=n+16|0;k=n+8|0;i=n;j=n+32|0;h=n+24|0;f=GQ(a,b,0,0,e,j)|0;e=c[j>>2]|0;a:do if((f|0)!=0&(e|0)!=0){b=(d|0)!=0;if(!b)switch(c[f+12>>2]|0){case 18:case 17:case 16:case 15:case 14:case 11:case 13:case 12:case 5:break;default:{b=-22;break a}}if(!(c[f+40>>2]&128)){j=e+(c[f+8>>2]|0)|0;do switch(c[f+12>>2]|0){case 18:{b=SQ(a,f,d,j)|0;break a}case 5:{b=TQ(d,j)|0;break a}case 7:{b=UQ(d,j)|0;break a}case 6:case 3:case 4:case 9:case 2:case 1:case 0:{b=iQ(a,e,f,d,j)|0;break a}case 11:{b=VQ(a,d,j)|0;break a}case 14:{b=WQ(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=jQ(a,f,j,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}case 12:{b=XQ(a,f,d,j)|0;break a}case 13:{b=YQ(a,f,d,j)|0;break a}case 15:{if(!b){b=j;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=ZQ(j,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;Uf(a,16,156850,i);break a}case 16:{b=_Q(a,d,j)|0;break a}case 17:{if(b?HT(d,167453)|0:0){e=cQ(d)|0;f=y;if((e|0)==0&(f|0)==0){c[k>>2]=d;Uf(a,16,156897,k);b=-22}else b=0;a=j;c[a>>2]=e;c[a+4>>2]=f;break a}d=j;c[d>>2]=0;c[d+4>>2]=0;break}default:{}}while(0);Uf(a,16,156950,g);b=-22}else b=-22}else b=-1414549496;while(0);l=n;return b|0}function SQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;j=o+4|0;do if(!d)f=0;else{if(HT(d,163890)|0)if(!(ZP(d,159266)|0))if(!(ZP(d,159295)|0)){c[j>>2]=0;g=yT(d,j,10)|0;p=d+(BU(d)|0)|0;if((p|0)==(c[j>>2]|0)){f=g;n=6}}else{f=0;n=6}else{f=1;n=6}else{f=-1;n=6}if(((n|0)==6?(i=+(f|0),!(+h[b+24>>3]>i)):0)?!(+h[b+32>>3]>2]=f;f=0;break}c[k>>2]=d;Uf(a,16,159327,k);f=-22}while(0);l=o;return f|0}function TQ(a,b){a=a|0;b=b|0;Qf(b);a=bi(a)|0;c[b>>2]=a;return (a|0?0:-12)|0}function UQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;Qf(d);c[j>>2]=0;do if((b|0)!=0?(e=BU(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=ag(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=9;break}e=oR(e)|0;f=oR(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){Rf(i);e=-22;break}else if((b|0)==9){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function VQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if((b|0)!=0?(HT(b,167453)|0)!=0:0){d=nR(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;Uf(a,16,158961,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}l=f;return d|0}function WQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;if(b){d=lR(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;Uf(a,16,158863,e)}l=g;return d|0}function XQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return iR(a,b,c,d,183,18,158824)|0}function YQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return iR(a,b,c,d,12,19,158707)|0}function ZQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;if((l|0)>=(m|0))W(144);o=s+132|0;p=s+88|0;q=s+44|0;r=s;f=p;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));j=b;c[j>>2]=0;c[j+4>>2]=-2147483648;j=(e|0)!=0;a:do if(j){g=(a[d>>0]|0)==45;d=g?d+1|0:d;g=g&1;f=bR(d,158556,p)|0;if(!f){f=bR(d,158565,p)|0;e=p+8|0;c[e>>2]=0;if(!f){c[p>>2]=yT(d,r,10)|0;f=c[r>>2]|0;if((f|0)==(d|0)){e=-22;break}else{c[p+4>>2]=0;c[e>>2]=0;e=g;d=0;k=18;break}}else{n=g;h=0;k=19}}else{n=g;h=0;k=19}}else{e=FQ()|0;f=y;n=XW(e|0,f|0,1e6,0)|0;c[o>>2]=n;if(!(WP(d,158552)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}else f=0;while(1){if(f>>>0>=2){e=0;break}e=bR(d,c[106940+(f<<2)>>2]|0,p)|0;if(!e)f=f+1|0;else break}h=(e|0)==0;g=h?d:e;h=h&1;e=a[g>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{d=g+1|0;break}default:{d=g;while(1){f=d+1|0;if(!(cR(e<<24>>24)|0))break b;d=f;e=a[f>>0]|0}}}while(0);e=0;f=g;while(1){if(e>>>0>=2){e=0;d=h;k=18;break a}f=bR(d,c[106948+(e<<2)>>2]|0,p)|0;if(!f){e=e+1|0;f=0}else{n=0;k=19;break}}}while(0);if((k|0)==18)if(!f)e=-22;else{n=e;h=d;k=19}c:do if((k|0)==19){e=a[f>>0]|0;if(e<<24>>24==46){g=1e5;d=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(dR(e)|0))break;i=(N(e+-48|0,g)|0)+d|0;g=(g>>>0)/10|0;d=i}while(1){e=a[f>>0]|0;if(!(dR(e<<24>>24)|0)){i=f;g=e;break}else f=f+1|0}}else{d=0;i=f;g=e}d:do if(j){j=((c[p+4>>2]|0)*60|0)+((c[p+8>>2]|0)*3600|0)+(c[p>>2]|0)|0;e=((j|0)<0)<<31>>31;switch(g<<24>>24){case 109:{if((a[i+1>>0]|0)==115){i=i+2|0;d=(d|0)/1e3|0;g=1e3;h=0;f=j;break d}else k=28;break}case 117:{f=i+1|0;if((a[f>>0]|0)==115){i=i+2|0;d=0;g=1;h=0;f=j;break d}break}default:k=28}if((k|0)==28)f=i+1|0;i=g<<24>>24==115?f:i;g=1e6;h=0;f=j}else{j=(g|32)<<24>>24==122;e=j&1;i=i+e|0;h=(h|0)!=0;e:do if(h|j){f=0;g=0}else{switch(a[i>>0]|0){case 45:case 43:break;default:{f=0;g=0;break e}}f=r;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=(a[i>>0]|0)==43;f=i+1|0;i=f;e=0;while(1){if(e>>>0>=3){k=37;break}i=bR(f,c[106956+(e<<2)>>2]|0,r)|0;if(!i){i=0;e=e+1|0}else break}if((k|0)==37)if(!i){e=-22;break c}g=N(g?-60:60,((c[r+8>>2]|0)*60|0)+(c[r+4>>2]|0)|0)|0;e=1;f=g;g=((g|0)<0)<<31>>31}while(0);if(h){if(!e){q=(qc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}else{q=(ic(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}q=p+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2]}r=(e|0)!=0;c[p+32>>2]=(r^1)<<31>>31;if(r)e=eR(p)|0;else e=sc(p|0)|0;f=TW(f|0,g|0,e|0,((e|0)<0)<<31>>31|0)|0;g=1e6;h=0;e=y}while(0);r=(a[i>>0]|0)==0;e=ZW(g|0,h|0,f|0,e|0)|0;e=TW(e|0,y|0,d|0,((d|0)<0)<<31>>31|0)|0;f=y;if(r){r=(n|0)!=0;q=UW(0,0,e|0,f|0)|0;c[b>>2]=r?q:e;c[b+4>>2]=r?y:f;e=0}else e=-22}while(0);l=s;return e|0}function _Q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if(b){d=$Q(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;Uf(a,16,156972,e)}}else d=0;l=f;return d|0}function $Q(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+160|0;if((l|0)>=(m|0))W(160);t=u+16|0;p=u+8|0;o=u;s=u+28|0;q=u+32|0;n=u+24|0;if((a[d>>0]|0)==35)i=1;else{i=(JT(d,157016,2)|0)==0;i=i?2:0}if((e|0)<0)e=BU(d)|0;e=e-i+1|0;di(q,d+i|0,e>>>0<128?e:128)|0;e=CU(q,64)|0;c[s>>2]=e;if(!e)k=0;else{k=e+1|0;c[s>>2]=k;a[e>>0]=0}h=BU(q)|0;j=b+3|0;a[j>>0]=-1;a:do if((WP(q,157019)|0)!=0?(WP(q,157026)|0)!=0:0){if((i|0)==0?(mV(q,157035)|0)!=(h|0):0){e=qV(q,105820,140,8,10)|0;if(!e){c[p>>2]=q;Uf(f,16,157099,p);e=-22;break}else{r=e+4|0;a[b>>0]=a[r>>0]|0;a[b+1>>0]=a[r+1>>0]|0;a[b+2>>0]=a[r+2>>0]|0;r=20;break}}e=xT(q,n,16)|0;b:do if(!(a[c[n>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;r=20;break a}while(0);c[o>>2]=q;Uf(f,16,157058,o);e=-22}else r=9;while(0);if((r|0)==9){q=LP()|0;a[b>>0]=q>>>24;a[b+1>>0]=q>>>16;a[b+2>>0]=q>>>8;a[j>>0]=q;r=20}do if((r|0)==20)if(!k)e=0;else{if(!(JT(k,157016,2)|0))g=+((xT(k,s,16)|0)>>>0);else{g=+oV(k,s);g=g<0.0|g>1.0?256.0:g*255.0}s=c[s>>2]|0;if((s|0)!=(k|0)?!(g<0.0|(g>255.0|(a[s>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[t>>2]=k;c[t+4>>2]=d;Uf(f,16,157123,t);e=-22}while(0);l=u;return e|0}function aR(a,b){a=a|0;b=b|0;return WP(a,c[b>>2]|0)|0}function bR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q;c[o>>2]=b;h=e+8|0;i=e+4|0;j=e+20|0;k=e+16|0;n=e+12|0;a:while(1){g=d+1|0;f=a[d>>0]|0;switch(f<<24>>24){case 0:{p=27;break a}case 37:break;default:{d=(cR(f<<24>>24)|0)==0;b=c[o>>2]|0;if(d){if((a[b>>0]|0)!=f<<24>>24){b=0;break a}c[o>>2]=b+1;d=g;continue a}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(cR(d<<24>>24)|0))break;b=b+1|0}c[o>>2]=b;d=g;continue a}}d=d+2|0;b=a[g>>0]|0;switch(b<<24>>24|0){case 74:case 72:{b=fR(o,0,b<<24>>24==72?23:2147483647,2)|0;if((b|0)==-1){b=0;break a}c[h>>2]=b;continue a}case 77:{b=fR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[i>>2]=b;continue a}case 83:{b=fR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[e>>2]=b;continue a}case 89:{b=fR(o,0,9999,4)|0;if((b|0)==-1){b=0;break a}c[j>>2]=b+-1900;continue a}case 109:{b=fR(o,1,12,2)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b+-1;continue a}case 100:{b=fR(o,1,31,2)|0;if((b|0)==-1){b=0;break a}c[n>>2]=b;continue a}case 84:{g=bR(c[o>>2]|0,158585,e)|0;c[o>>2]=g;if(!g){b=0;break a}else continue a}case 104:case 66:case 98:{b=gR(o)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b;continue a}case 37:{g=c[o>>2]|0;c[o>>2]=g+1;if((a[g>>0]|0)==37)continue a;else{b=0;break a}}default:{b=0;break a}}}if((p|0)==27)b=c[o>>2]|0;l=q;return b|0}function cR(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function dR(a){a=a|0;return (a+-48|0)>>>0<10|0}function eR(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function fR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(dR(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function gR(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if((b|0)>=12){b=-1;break}d=c[106968+(b<<2)>>2]|0;if(!(YP(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=BU(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?(YP(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function hR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=12){b=-1;break}if(!(HT(101804+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function iR(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);q=r+8|0;o=r;n=r+28|0;do if((e|0)!=0?(HT(e,167453)|0)!=0:0){k=Kd[i&31](e)|0;if((k|0)==-1){k=yT(e,n,0)|0;if(k>>>0>>0?(a[c[n>>2]>>0]|0)==0:0){p=7;break}else{c[o>>2]=e;c[o+4>>2]=j;Uf(b,16,158721,o);i=-22;break}}else p=7}else{k=-1;p=7}while(0);do if((p|0)==7){s=+h[d+24>>3];e=~~(s>-1.0?s:-1.0);s=+h[d+32>>3];p=g+-1|0;t=+(p|0);i=~~(s>t?t:s);g=(i|e|0)==0;e=g?-1:e;i=g?p:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[q>>2]=k;c[q+4>>2]=f;c[q+8>>2]=j;c[q+12>>2]=e;c[q+16>>2]=i;Uf(b,16,158762,q);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);l=r;return i|0}function jR(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=f;d=f+8|0;if(!(HT(a,158837)|0))b=125011;else{b=(HT(a,158843)|0)==0;b=b?125001:a}a=kR(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=158854;KU(d,32,158849,e)|0;a=kR(d)|0;if((a|0)==-1){e=(HT(b,158857)|0)==0;l=f;return (e?46:-1)|0}}l=f;return a|0}function kR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=183){b=-1;break}if(!(HT(c[112+(b*152|0)>>2]|0,a)|0))break;if(ZP(a,c[112+(b*152|0)+144>>2]|0)|0)break;b=b+1|0}return b|0}function lR(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)>=8){e=6;break}if(!(HT(c[107016+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=107016+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=mR(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function mR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=k+8|0;i=k;g=a+4|0;c[j>>2]=a;c[j+4>>2]=g;c[j+8>>2]=k+20;do if((_U(b,158912,j)|0)!=2){b=lQ(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{JQ(i,+h[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[g>>2]|0;Kn(a,g,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);l=k;return b|0}function nR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=0;while(1){if((g|0)>=53){i=6;break}if(!(HT(c[107112+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[107112+(g*12|0)+8>>2]|0;e=c[107112+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=yT(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=yT(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}l=j;return e|0}function oR(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function pR(a){a=a|0;return (a>>>0>11?0:101804+(a*20|0)|0)|0}function qR(a){a=a|0;rR(a,0,0);return}function rR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;j=n+8|0;i=j+4|0;e=0;a:while(1){e=Cg(a,e)|0;if(!e)break;g=a+(c[e+8>>2]|0)|0;f=c[e+40>>2]|0;if(!((f&b|0)==(d|0)&(f&128|0)==0))continue;f=c[e+12>>2]|0;switch(f|0){case 8:case 10:continue a;case 13:case 12:case 17:case 15:case 9:case 2:case 1:case 0:case 18:{f=e+16|0;jQ(a,e,g,1.0,1,c[f>>2]|0,c[f+4>>2]|0)|0;continue a}case 4:case 3:{jQ(a,e,g,+h[e+16>>3],1,1,0)|0;continue a}case 6:{JQ(j,+h[e+16>>3],2147483647);f=c[j>>2]|0;jQ(a,e,g,1.0,c[i>>2]|0,f,((f|0)<0)<<31>>31)|0;continue a}case 16:{_Q(a,c[e+16>>2]|0,g)|0;continue a}case 5:{TQ(c[e+16>>2]|0,g)|0;continue a}case 11:{VQ(a,c[e+16>>2]|0,g)|0;continue a}case 14:{WQ(a,c[e+16>>2]|0,g)|0;continue a}case 7:{UQ(c[e+16>>2]|0,g)|0;continue a}default:{g=c[e>>2]|0;c[k>>2]=f;c[k+4>>2]=g;Uf(a,48,159373,k);continue a}}}l=n;return} +function ng(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((og(b,12)|0)==4095){pg(b);qg(b,2);g=rg(b)|0;h=og(b,2)|0;i=og(b,4)|0;j=c[89208+(i<<2)>>2]|0;if(j){pg(b);f=og(b,3)|0;pg(b);pg(b);pg(b);pg(b);e=og(b,13)|0;if((e|0)<7)e=-67308554;else{qg(b,11);b=og(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;c[d+8>>2]=((N(e<<3,j)|0)>>>0)/(i>>>0)|0}}else e=-50531338}else e=-16976906;return e|0}function og(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function pg(a){a=a|0;qg(a,1);return}function qg(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function rg(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function sg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){Rd[e&31](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)tg(f);tg(g);f=g+8|0;ug(c[f>>2]|0);Qf(f);Qf(b);vg(g+16|0);vg(g+20|0);Qf(a)}return}function tg(a){a=a|0;var b=0;b=0;a:while(1){b=Cg(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{Qf(a+(c[b+8>>2]|0)|0);continue a}case 8:{Dg(a+(c[b+8>>2]|0)|0);continue a}default:continue a}}return}function ug(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){xg(b);Qf(a)}return}function vg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wg(b);Qf(a)}return}function wg(a){a=a|0;var b=0,d=0;Qf(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function xg(a){a=a|0;yg(a);zg(a);Ag(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function yg(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;Qf((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}Qf(b);c[d>>2]=0;return}function zg(a){a=a|0;if(a|0?c[a>>2]|0:0)Bg(a,0);return}function Ag(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function Bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)Qf(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];Qf(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;Sd[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);Qf(d)}l=g;return}function Cg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function Dg(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;Qf((c[d>>2]|0)+(e<<3)|0);Qf((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}Qf(d)}Qf(a);return}function Eg(a,b){a=a|0;b=b|0;return Ld[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function Fg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){Uf(a,16,116968,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){Gg(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}l=g;return a|0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Ag(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;wg(a);gX(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=Lg((c[b>>2]|0)+64|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;gX(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Ig(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=p+24|0;j=p+16|0;i=p;n=a+4|0;e=c[(c[n>>2]|0)+4>>2]|0;g=a+16|0;a:do if(!e)o=13;else{f=c[(c[g>>2]|0)+4>>2]|0;b=0;while(1){d=c[e+(b<<2)>>2]|0;if(!d)break;if((f|0)==(d|0)){o=13;break a}else b=b+1|0}b=Jg(f)|0;if(!b)b=166724;else b=c[b+8>>2]|0;h=c[(c[g>>2]|0)+4>>2]|0;d=c[c[n>>2]>>2]|0;c[i>>2]=b;c[i+4>>2]=h;c[i+8>>2]=d;Uf(a,16,117006,i);d=0;while(1){b=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=Jg(b)|0;if(!b)b=166724;else b=c[b+8>>2]|0;i=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[j>>2]=b;c[j+4>>2]=i;Uf(a,16,117092,j);d=d+1|0}Uf(a,16,128563,k);b=-22}while(0);do if((o|0)==13){b=Hg(c[a+20>>2]|0,c[g>>2]|0)|0;if((b|0)>=0){k=a+24|0;o=c[k+4>>2]|0;b=a+32|0;c[b>>2]=c[k>>2];c[b+4>>2]=o;b=c[(c[n>>2]|0)+16>>2]|0;if(b|0?(h=Kd[b&31](a)|0,(h|0)<0):0){b=h;break}b=0}}while(0);l=p;return b|0}function Jg(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=a;a=qV(d,89272,436,28,6)|0;l=b;return a|0}function Kg(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Lg(a){a=a|0;var b=0;b=ag(a)|0;if(b|0)iX(b|0,0,a|0)|0;return b|0}function Mg(a){a=a|0;var b=0;b=c[a+24>>2]|0;if(c[c[a+28>>2]>>2]|0){iX(b|0,0,46324)|0;a=MN(a,b)|0;if((a|0)>=0){c[b+25692>>2]=0;a=0}}else a=0;return a|0}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=u;s=c[a+24>>2]|0;t=c[b+24>>2]|0;k=s+25692|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[s+25668>>2]|0)==(c[t+25668>>2]|0)?(c[s+25672>>2]|0)==(c[t+25672>>2]|0):0)?(c[s+27012>>2]|0)==(c[t+27012>>2]|0):0)?(c[s+27008>>2]|0)==(c[t+27008>>2]|0):0)?(d=c[s+28216>>2]|0,d|0):0)?(e=c[t+28216>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=s+25976|0;i=t+25976|0;gX(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32){a=0;break}b=s+27052+(a<<2)|0;zg(b);d=c[t+27052+(a<<2)>>2]|0;if(d|0?(p=Bh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}while(1){if(a>>>0>=256)break;b=s+27180+(a<<2)|0;zg(b);d=c[t+27180+(a<<2)>>2]|0;if(d|0?(p=Bh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}b=s+28204|0;zg(b);e=s+28208|0;zg(e);d=s+28212|0;c[d>>2]=0;f=s+28216|0;c[f>>2]=0;a=c[t+28204>>2]|0;if(a|0){a=Bh(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[t+28208>>2]|0;if(a|0){a=Bh(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[s+25668>>2]=c[t+25668>>2];c[s+25672>>2]=c[t+25672>>2];c[s+27008>>2]=c[t+27008>>2];c[s+27012>>2]=c[t+27012>>2];c[s+27020>>2]=c[t+27020>>2];c[s+27016>>2]=c[t+27016>>2];c[s+26368>>2]=c[t+26368>>2];if((c[k>>2]|0)==0?(c[t+25692>>2]|0)==0:0)a=0;else{a=Hn(s)|0;if((a|0)<0){Uf(c[s+4>>2]|0,16,150590,n);break}}gX(h|0,i|0,384)|0}p=c[t+4>>2]|0;f=c[s+4>>2]|0;c[f+104>>2]=c[p+104>>2];c[f+100>>2]=c[p+100>>2];c[f+92>>2]=c[p+92>>2];c[f+96>>2]=c[p+96>>2];c[s+29664>>2]=c[t+29664>>2];c[s+29668>>2]=c[t+29668>>2];c[s+25688>>2]=c[t+25688>>2];c[s+26384>>2]=c[t+26384>>2];c[s+26380>>2]=c[t+26380>>2];c[s+26376>>2]=c[t+26376>>2];f=t+25684|0;p=s+25684|0;c[p>>2]=c[f>>2];b=0;while(1){if((b|0)>=36)break;d=s+696+(b*656|0)|0;Ug(s,d);e=t+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(o=ii(s,d,e)|0,(o|0)<0):0){a=o;break a}b=b+1|0}b=c[t+24312>>2]|0;if((b|0)!=0?(q=t+696|0,b>>>0>=q>>>0&b>>>0<(t+24312|0)>>>0):0)b=s+696+(((b-q|0)/656|0)*656|0)|0;else b=0;o=s+24312|0;c[o>>2]=b;b=s+24316|0;Ug(s,b);d=t+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(r=ii(s,b,d)|0,(r|0)<0):0){a=r;break}c[s+29672>>2]=c[t+29672>>2];c[s+25700>>2]=c[t+25700>>2];c[s+25704>>2]=c[t+25704>>2];c[p>>2]=c[f>>2];c[s+27036>>2]=c[t+27036>>2];c[s+27040>>2]=c[t+27040>>2];b=s+28224|0;j=b;k=t+28224|0;n=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));d=s+28348|0;e=t+28348|0;j=d;k=e;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));f=s+28476|0;g=t+28476|0;j=f;k=g;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));h=s+28604|0;i=t+28604|0;j=h;k=i;n=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));j=s+28676|0;k=t+28676|0;n=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));c[s+28740>>2]=c[t+28740>>2];c[s+28744>>2]=c[t+28744>>2];gX(s+28748|0,t+28748|0,792)|0;c[s+29540>>2]=c[t+29540>>2];c[s+29544>>2]=c[t+29544>>2];c[s+29548>>2]=c[t+29548>>2];c[s+29552>>2]=c[t+29552>>2];c[s+29556>>2]=c[t+29556>>2];TN(d,e,32,s,t);TN(f,g,32,s,t);TN(h,i,18,s,t);c[s+29576>>2]=c[t+29576>>2];if(c[o>>2]|0){if(!(c[p>>2]|0)){a=xi(s)|0;c[s+28248>>2]=c[s+28228>>2];c[s+28252>>2]=c[b>>2]}c[s+28260>>2]=c[s+28256>>2];c[s+28264>>2]=c[s+28244>>2];c[s+29572>>2]=c[t+29572>>2]}else a=0}else a=0;while(0);l=u;return a|0}function Og(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;d=o;i=c[a+24>>2]|0;b=MN(a,i)|0;do if((b|0)>=0){if(Dc(183588,3)|0){Uf(a,16,148706,d);b=-1313558101;break}f=a+84|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+80|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+76|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+72>>2]|0;if(((b|0)>0?(g=c[a+68>>2]|0,g|0):0)?(h=qi(g,b,i+27052|0,i+27036|0,i+27040|0,c[a+580>>2]|0,a)|0,(h|0)<0):0){Qg(a)|0;b=h;break}b=c[i+28216>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+140|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+28>>2]|0)+4>>2]=1;Sg(i);b=i+29672|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+696>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+696>>2]&2))b=0;else{Uf(a,24,148731,n);b=0}}while(0);l=o;return b|0}function Pg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+48|0;if((l|0)>=(m|0))W(48);v=w+24|0;q=w+16|0;p=w;n=w+36|0;o=c[g+24>>2]|0;h=c[g+28>>2]|0;s=c[b+24>>2]|0;c[s+25696>>2]=c[b+60>>2];c[s+29588>>2]=0;c[s+25636>>2]=0;t=s+24972|0;Ug(s,t);a:do if(h){i=s+27036|0;if((c[i>>2]|0?oi(g,1,0)|0:0)?(j=oi(g,1,n)|0,k=c[n>>2]|0,pi(j,k)|0):0)qi(j,k,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[o>>0]|0)==1:0)?(a[o+2>>0]|0)==0:0)?(d[o+4>>0]|0)>251:0)?a[o+5>>0]&31:0)?(a[o+8>>0]|0)==103:0)?pi(o,h)|0:0){h=qi(o,h,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;break}j=ri(s,o,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[s+24312>>2]|0)==0;if(i?(c[s+27028>>2]|0)==10:0)if((j|0)>(h|0)){c[p>>2]=127096;c[p+4>>2]=127118;c[p+8>>2]=998;Uf(0,0,159675,p);Ub()}else{h=ni(s,e,f,j)|0;break}do if(c[b+64>>2]&32768){q=c[s+27008>>2]|0;if(!((q|0)==0?1:(c[s+27004>>2]|0)<(q|0)))r=30}else{if(!i?c[s+27032>>2]|0:0){r=30;break}if((c[b+732>>2]|0)>7)break a;if((h|0)>3?(IT(150807,o,4)|0)==0:0)break a;Uf(b,16,127139,q);h=-1094995529;break a}while(0);if((r|0)==30){i=si(s,c[s+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[s+28740>>2]|0;if(i|0?(u=ti(s,e,i,f)|0,(u|0)<0):0){h=u;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[v>>2]=127150;c[v+4>>2]=127118;c[v+8>>2]=1023;Uf(0,0,159675,v);Ub()}Ug(s,t);h=ui(j,h)|0}}else h=ni(s,e,f,0)|0;while(0);l=w;return h|0}function Qg(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;gi(d);Vg(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;Ug(d,b);Dh(b);a=a+1|0}a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;Qf(d+25628|0);c[d+25632>>2]=0;Tg(d+29676|0);li(d+27052|0);mi(d+25640|0);b=d+24316|0;Ug(d,b);Dh(b);b=d+24972|0;Ug(d,b);Dh(b);return 0}function Rg(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));Sg(d);Tg(d+29676|0);a=0;while(1){if((a|0)==36)break;Ug(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;Ug(d,d+24316|0);c[d+27004>>2]=0;Vg(d);c[d+25692>>2]=0;return}function Sg(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28744>>2]=-2147483648;c[a+29564>>2]=1;fi(a);c[a+28264>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28604+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28604+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28604+(b<<2)>>2]=0}Ug(a,a+24972|0);c[a+26384>>2]=0;c[a+29572>>2]=-1;c[a+29576>>2]=0;c[a+29560>>2]=0;c[a+29544>>2]=1;return}function Tg(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+208>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;Qf(a+32|0);return}function Ug(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){Yg(c[a+4>>2]|0,b+4|0);zg(b+52|0);d=b+20|0;zg(d);zg(b+44|0);a=0;while(1){if((a|0)==2)break;zg(b+28+(a<<2)|0);zg(b+60+(a<<2)|0);a=a+1|0}iX(d|0,0,636)|0}return}function Vg(a){a=a|0;var b=0,d=0,e=0;Qf(a+25732|0);Qf(a+26396|0);Qf(a+26392|0);Qf(a+26400|0);Qf(a+26404|0);Qf(a+26408|0);Qf(a+25972|0);Qf(a+28220|0);c[a+26372>>2]=0;Qf(a+26388|0);Qf(a+26360|0);Qf(a+26364|0);Wg(a+29924|0);Wg(a+29928|0);Wg(a+29932|0);Wg(a+29936|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;Qf(e+(a*34768|0)+27784|0);Qf(e+(a*34768|0)+572|0);Qf(e+(a*34768|0)+604|0);Qf(e+(a*34768|0)+608|0);Qf(e+(a*34768|0)+27788|0);Qf(e+(a*34768|0)+27792|0);Qf(e+(a*34768|0)+27796|0);Qf(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function Wg(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)Xg(b);return}function Xg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+4|0;e=g;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];Sd[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);Qf(e);a=c[f>>2]|0}Bc(a|0)|0;b=c[a+52>>2]|0;if(b|0)Rd[b&31](c[a+40>>2]|0);Qf(f);l=g;return}function Yg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=i;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)d=(c[a+400>>2]|0)==12;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+576>>2]&32768|0){c[e>>2]=b;Uf(a,48,124549,e)}zg(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){_g(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;kX(a|0)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5263439?(f=h+304|0,g=Tf(c[f>>2]|0,h+312|0,e*408|0)|0,g|0):0){c[f>>2]=g;$g(g+((c[d>>2]|0)*408|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}lX(a|0)|0}while(0);l=i;return}function Zg(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+860>>2]|0;a:do if(!d){d=eh(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=fh(a,b)|0;break a}case 1:{d=gh(a,b)|0;break a}default:{d=-1;break a}}}else{d=dh(d,b,0)|0;c[b+68>>2]=c[a+100>>2];c[b+72>>2]=c[a+104>>2]}while(0);return d|0}function _g(a){a=a|0;var b=0,d=0,e=0;if(a|0){bh(a);b=0;while(1){if((b|0)==8)break;zg(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;zg((c[e>>2]|0)+(b<<2)|0);b=b+1|0}Qf(e);Dg(a+344|0);zg(a+372|0);zg(a+376|0);zg(a+380|0);zg(a+400|0);ah(a)}return}function $g(a,b){a=a|0;b=b|0;gX(a|0,b|0,408)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;iX(b|0,0,408)|0;ah(b);return}function ah(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))Qf(b);iX(a|0,0,408)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function bh(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;ch((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;Qf(b);return}function ch(a){a=a|0;var b=0;b=c[a>>2]|0;zg(b+16|0);Dg(b+12|0);Qf(a);return}function dh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=Bh(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Ld[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)zg(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=Bh(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=Ch()|0,c[f>>2]=e,(e|0)!=0):0){d=dh(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)<0){Dh(f);break}d=Eh(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){Dh(f);d=0;break}else{c[h>>2]=d;Uf(i,16,126624,h);Dh(f);break}}else d=-12;while(0)}l=j;return d|0}function eh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=t;j=t+56|0;p=t+40|0;q=t+24|0;g=t+16|0;h=t+12|0;s=c[(c[a+28>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;n=b+72|0;f=c[n>>2]|0;c[h>>2]=f;o=s+16|0;i=b+80|0;if(((c[o>>2]|0)==(c[i>>2]|0)?(c[s+20>>2]|0)==(e|0):0)?(c[s+24>>2]|0)==(f|0):0)d=0;else r=5;b:do if((r|0)==5){qh(a,g,h,s+28|0);f=a+112|0;a=c[g>>2]|0;do{d=rh(p,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[p+(d<<2)>>2]|0)%(c[s+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=sh(j,c[f>>2]|0,c[h>>2]|0,0,p)|0;if((f|0)>=0){d=0;while(1){if((d|0)>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[q+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[q+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if((d|0)>=4){r=20;break}e=s+(d<<2)|0;Wg(e);c[s+60+(d<<2)>>2]=c[p+(d<<2)>>2];a=c[q+(d<<2)>>2]|0;if(a|0?(r=uh(a+23|0,15)|0,c[e>>2]=r,(r|0)==0):0){r=22;break}d=d+1|0}if((r|0)==20){c[o>>2]=c[i>>2];c[s+20>>2]=c[k>>2];c[s+24>>2]=c[n>>2];d=0;break a}else if((r|0)==22){d=-12;r=31;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(vh(c[g>>2]|0)|0)!=0;h=h?f:1;i=s+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[s+76>>2]|0)==(h|0):0)?(c[s+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[s+84>>2]|0):0){d=0;break a}Wg(s);a=s+60|0;e=b+76|0;d=wh(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){q=uh(c[a>>2]|0,0)|0;c[s>>2]=q;if(!q){d=-12;r=31}else{c[i>>2]=c[g>>2];c[s+76>>2]=h;c[s+80>>2]=f;c[s+84>>2]=c[e>>2];d=0}}else r=31;break}default:{c[e>>2]=165680;c[e+4>>2]=124617;c[e+8>>2]=1524;Uf(0,0,159675,e);Ub()}}while(0);if((r|0)==31){e=0;while(1){if((e|0)==4)break;Wg(s+(e<<2)|0);e=e+1|0}c[s+16>>2]=-1;c[s+84>>2]=0;c[s+80>>2]=0;c[s+76>>2]=0;c[s+24>>2]=0;c[s+20>>2]=0}l=t;return d|0}function fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;e=n+8|0;d=n;f=c[(c[a+28>>2]|0)+16>>2]|0;h=b+80|0;i=nh(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){c[e>>2]=oh(c[h>>2]|0)|0;Uf(a,16,124725,e);d=-22;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if((d|0)>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=ih(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=19;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==19){_g(b);d=-12;break}while(1){if((d|0)>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))ph(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+576>>2]&32768))d=0;else{c[j>>2]=b;Uf(a,48,124778,j);d=0}}else k=5;while(0);if((k|0)==5){Uf(a,16,124675,d);d=-1}l=n;return d|0}function gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;f=o;k=c[(c[a+28>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){d=b+64|0;c[d>>2]=hh(h,4)|0;i=h+-8|0;c[b+284>>2]=i;i=hh(i,4)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){Qf(d);Qf(e);d=-12}else{i=d;j=5}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=5}else{c[f>>2]=124589;c[f+4>>2]=124617;c[f+8>>2]=1556;Uf(0,0,159675,f);Ub()}}a:do if((j|0)==5){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=8;break}f=ih(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==8){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=ih(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+576>>2]&32768)){d=0;break a}c[n>>2]=b;Uf(a,48,124637,n);d=0;break a}while(0);_g(b);d=-12}while(0);l=o;return d|0}function hh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Lg(N(b,a)|0)|0;else a=0;return a|0}function ih(a){a=a|0;var b=0,d=0,e=0,f=0;kX(a|0)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=lh(a)|0;lX(a|0)|0;if(!b)b=0;else f=6}else{b=kh(c[e>>2]|0,c[a+36>>2]|0,10,e,0)|0;if(!b){lX(a|0)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;lX(a|0)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function jh(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;kX(b|0)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;lX(b|0)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)Xg(b);return}function kh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=Lg(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=d|0?d:11;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=Lg(12)|0;if(!d){Qf(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);l=j;return d|0}function lh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=c[a+48>>2]|0;if(!b)b=Kd[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Ld[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=Lg(20)|0;if(!d){zg(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=10;break}}else b=0;while(0);l=f;return b|0}function mh(a,b){a=a|0;b=b|0;Rf(b);return}function nh(a){a=a|0;return (a>>>0>182?0:112+(a*152|0)|0)|0}function oh(a){a=a|0;if(a>>>0<183)a=c[112+(a*152|0)>>2]|0;else a=0;return a|0}function ph(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if((g|0)>=256){d=0;break}switch(b|0){case 20:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>5)*36|0;break}case 17:{d=(g>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 22:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>3)*255|0;break}case 19:{d=(g>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function qh(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+112|0;g=nh(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}a:do switch(c[i>>2]|0){case 114:case 115:case 163:case 164:case 78:case 79:case 138:case 139:case 136:case 137:case 76:case 77:case 74:case 75:case 98:case 99:case 92:case 93:case 86:case 87:case 52:case 51:case 134:case 135:case 132:case 133:case 69:case 70:case 67:case 68:case 157:case 156:case 155:case 154:case 96:case 97:case 90:case 91:case 84:case 85:case 50:case 49:case 130:case 131:case 128:case 129:case 65:case 66:case 71:case 72:case 94:case 95:case 88:case 89:case 82:case 83:case 48:case 47:case 126:case 127:case 124:case 125:case 63:case 64:case 61:case 62:case 81:case 80:case 33:case 14:case 32:case 13:case 12:case 30:case 29:case 8:case 113:case 73:case 5:case 31:case 4:case 15:case 110:case 1:case 0:{h=32;g=16;break}case 16:case 140:case 7:{h=32;g=32;break}case 6:{i=(c[a+16>>2]|0)==22;h=i?64:h;g=i?64:g;break}case 39:{j=c[a+16>>2]|0;i=(j|0)==42;j=(j|0)==39;h=j?8:i?4:h;g=j?8:i?4:g;break}case 20:case 17:case 11:{i=c[a+16>>2]|0;switch(i|0){case 43:case 49:{h=4;g=4;break}default:{}}switch(i|0){case 39:case 148:break;default:break a}h=8;g=8;break}case 3:{j=((c[a+16>>2]|0)+-53|0)>>>0<2;h=j?4:h;g=j?4:g;break}case 2:{j=(c[a+16>>2]|0)==43;h=j?4:h;g=j?4:g;break}default:{}}while(0);j=c[a+16>>2]|0;g=(j|0)==136?((g|0)>8?g:8):g;c[b>>2]=(c[b>>2]|0)+-1+g&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((j|0)!=27?(c[a+680>>2]|0)==0:0)g=0;else{c[e>>2]=g+2;g=c[b>>2]|0;c[b>>2]=(g|0)>32?g:32;g=0}while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function rh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;h=i;f=nh(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){zh(g,h,f);e=0;while(1){if((e|0)>=4){b=0;break a}b=Ah(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);l=i;return b|0}function sh(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=p;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;j=nh(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=N(h,e)|0;if((i&66|0)==0&0==0)b=0;else{c[a+4>>2]=f+h;b=h+1024|0;break}while(1){if((b|0)==4)break;c[o+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}n=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if((e|0)>=4)break a;if(!(c[o+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[n>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<>i;q=c[g+(e<<2)>>2]|0;h=N(f,q)|0;i=(b|0)>(2147483647-h|0);if((q|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);l=p;return b|0}function th(a){a=a|0;var b=0;b=yh(a)|0;if(!b)b=0;else iX(c[b+4>>2]|0,0,a|0)|0;return b|0}function uh(a,b){a=a|0;b=b|0;var d=0;d=Lg(56)|0;if(!d)d=0;else{Cc(d|0,0)|0;c[d+36>>2]=a;c[d+44>>2]=b|0?b:16;c[d+32>>2]=1}return d|0}function vh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101804+(a*20|0)+12>>2]|0;return a|0}function wh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=xh(e)|0;g=vh(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=ZW(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=y,f=(2147483647-(N(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;e=e+-1+(N(N(f?1:b,h)|0,d)|0)&0-e;if(a|0)c[a>>2]=e;e=N(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function xh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101804+(a*20|0)+8>>2]>>3;return a|0}function yh(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=ag(a)|0;c[d>>2]=b;if(b){a=kh(b,a,11,0,0)|0;if(!a){Qf(d);a=0}}else a=0;l=e;return a|0}function zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;e=0}else e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function Ah(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=N(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function Bh(a){a=a|0;var b=0;b=Lg(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function Ch(){var a=0;a=Lg(408)|0;if(!a)a=0;else{c[a+64>>2]=0;ah(a)}return a|0}function Dh(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){_g(b);Qf(a)}return}function Eh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=s;h=c[b+376>>2]|0;i=a+376|0;a:do if(h){f=c[i>>2]|0;do if(f|0){k=c[h+4>>2]|0;f=c[f+4>>2]|0;if(!(((k|0)==(f|0)?(c[b+80>>2]|0)==(c[k+40>>2]|0):0)?(c[a+80>>2]|0)==(c[k+36>>2]|0):0)){g=c[(c[k+4>>2]|0)+12>>2]|0;if(!g)break;if((c[g+4>>2]|0)!=(f|0))break}e=c[b+248>>2]|0;if(!e){Uf(k,16,126677,n);e=-22;break a}else{e=c[e+4>>2]|0;_g(a);e=Fh(a,c[e>>2]|0)|0;break a}}while(0);f=c[h+4>>2]|0;if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=Nd[j&3](f,a,b,d)|0,(e|0)!=-38):0))r=14}else r=14;while(0);do if((r|0)==14){e=c[i>>2]|0;if(((e|0?(o=c[e+4>>2]|0,(c[o+36>>2]|0)==(c[a+80>>2]|0)):0)?(p=c[(c[c[o+4>>2]>>2]|0)+76>>2]|0,p|0):0)?(q=Nd[p&3](o,a,b,d)|0,(q|0)!=-38):0){e=q;break}e=-38}while(0);l=s;return e|0}function Fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Gh(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Hh(a,32)|0;if((d|0)<0)break;d=Ih(a,b)|0;if((d|0)>=0)break;_g(a);break}else d=0;while(1){if(d>>>0>=8){f=10;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=Bh(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==10){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=hh(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=Bh(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=Bh(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=Jh(4,d)|0;c[a+64>>2]=e;if(!e){d=-12;break}gX(e|0,c[f>>2]|0,d<<2|0)|0};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);_g(a)}while(0);return d|0}function Gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);q=t;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];Yh(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));i=b+292|0;j=b+288|0;k=b+68|0;n=a+68|0;o=b+72|0;p=a+72|0;d=(d|0)==0;g=0;while(1){if((g|0)>=(c[i>>2]|0)){r=15;break}h=c[(c[j>>2]|0)+(g<<2)>>2]|0;e=c[h>>2]|0;if(!e){if((c[k>>2]|0)==(c[n>>2]|0)?(c[o>>2]|0)==(c[p>>2]|0):0)r=6}else r=6;if((r|0)==6){r=0;if(d){e=Bh(c[h+16>>2]|0)|0;c[q>>2]=e;e=_h(a,c[h>>2]|0,e)|0;if(!e){r=12;break}}else{f=h+8|0;e=Zh(a,e,c[f>>2]|0)|0;if(!e){r=8;break}gX(c[e+4>>2]|0,c[h+4>>2]|0,c[f>>2]|0)|0}Yh(e+12|0,c[h+12>>2]|0,0)|0}g=g+1|0}do if((r|0)==8){bh(a);e=-12}else if((r|0)==12){zg(q);bh(a);e=-12}else if((r|0)==15){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;zg(d);h=c[b+372>>2]|0;if(h|0?(s=Bh(h)|0,c[d>>2]=s,s|0):0){c[e>>2]=c[s+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;zg(f);g=a+400|0;zg(g);e=c[b+380>>2]|0;if(e|0?(a=Bh(e)|0,c[f>>2]=a,(a|0)==0):0){e=-12;break}e=c[b+400>>2]|0;if(e|0?(b=Bh(e)|0,c[g>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);l=t;return e|0}function Hh(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Sh(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=Th(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Ih(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Kh(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=Lh(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function Jh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=ag(N(b,a)|0)|0;else a=0;return a|0}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=Nh(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];Oh(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);l=j;return d|0}function Lh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=vh(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=h|0?g:1;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}Mh(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function Mh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(vh(h)|0)!=0;j=k?g:1;i=xh(h)|0;g=N(k?1:g,i)|0;i=N(g,f)|0;h=N(g,d)|0;g=N(g,e)|0;d=c[a>>2]|0;f=c[b>>2]|0;e=d>>>0>>0;a:do if(((e?f:d)-(c[(e?a:b)>>2]|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;hX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;gX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function Nh(a){a=a|0;var b=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=nh(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0)){a=0;b=0;break}c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);l=g;return a|0}function Oh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;k=n;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}Qh(a,j,d,k,f,g,h,4);l=n;return}function Ph(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;k=o;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[k>>2]=126753;c[k+4>>2]=126784;c[k+8>>2]=314;Uf(0,0,159675,k);Ub()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[n>>2]=126805;c[n+4>>2]=126784;c[n+8>>2]=315;Uf(0,0,159675,n);Ub()}else{h=g;i=a;j=d}while(1){if((h|0)<=0)break a;gX(i|0,j|0,f|0)|0;h=h+-1|0;i=i+b|0;j=j+e|0}}while(0);l=o;return}function Qh(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;o=nh(g)|0;a:do if(o|0?(k=c[o+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){Wd[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);gX(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}n=d[o+4>>0]|0;r=0;k=0;while(1){if((k|0)==(n|0))break;q=(c[o+16+(k<<5)>>2]|0)+1|0;r=(r|0)>(q|0)?r:q;k=k+1|0}o=o+6|0;p=0-i|0;n=0;while(1){if((n|0)>=(r|0))break a;q=Rh(g,h,n)|0;if((q|0)<0)break;if((n+-1|0)>>>0<2)k=0-(p>>(d[o>>0]|0))|0;else k=i;Wd[j&63](c[a+(n<<2)>>2]|0,c[b+(n<<2)>>2]|0,c[e+(n<<2)>>2]|0,c[f+(n<<2)>>2]|0,q,k);n=n+1|0}Uf(0,16,126723,s)}while(0);l=t;return}function Rh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=g+16|0;f=g;a=nh(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){zh(e,f,a);a=Ah(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;l=g;return a|0}function Sh(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+80|0;k=nh(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=Vh(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){b=(b|0)<1?32:b;j=b+-1|0;f=1;while(1){if((f|0)>(b|0))break;e=rh(g,c[h>>2]|0,f+-1+(c[i>>2]|0)&0-f)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else f=f<<1}b=0-b|0;e=0;while(1){if((e|0)>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if((f|0)>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=yh((N(b,e)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;zg(m);e=yh(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);_g(a);e=-12}}else e=-22;while(0);return e|0}function Th(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+80|0;g=vh(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=Uh(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=g|0?f:1;j=a+32|0;if(!((c[j>>2]|0)==0?(d=wh(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){d=a+64|0;c[d>>2]=hh(i,4)|0;e=i+-8|0;h=hh(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){Qf(d);Qf(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=yh(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=14;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==14){_g(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=yh(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}_g(a);d=-12}while(0);return d|0}function Uh(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=bX(a|0,b|0,33)|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function Vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Wh(a,b,-1,2147483647,-1,c,d)|0}function Wh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=n+8|0;j=n;i=n+24|0;c[i>>2]=102044;c[i+4>>2]=g;c[i+8>>2]=h;g=Rh(f,a,0)|0;h=(g|0)<1;f=cX(a|0,0,3)|0;f=h?f:g;g=h?y:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(h=TW(f|0,g|0,1024,0)|0,h=ZW(h|0,y|0,b+128|0,0)|0,g=y,!(g>>>0>0|(g|0)==0&h>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(j=ZW(b|0,0,a|0,0)|0,h=y,(h|0)>(e|0)|(h|0)==(e|0)&j>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;Uf(i,16,126867,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;Uf(i,16,126836,j);f=-22}l=n;return f|0}function Xh(a){a=a|0;return c[c[a>>2]>>2]|0}function Yh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=$h(b,262540,f,2)|0;if(!f){e=0;break}e=ai(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function Zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=yh(d)|0;c[e>>2]=d;a=_h(a,b,d)|0;if(!a)zg(e);l=f;return a|0}function _h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((((d|0)!=0?(g=a+292|0,h=c[g>>2]|0,h>>>0<=536870910):0)?(i=a+288|0,f=$f(c[i>>2]|0,(h<<2)+4|0)|0,(f|0)!=0):0)?(c[i>>2]=f,e=Lg(20)|0,(e|0)!=0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;h=c[i>>2]|0;i=c[g>>2]|0;c[g>>2]=i+1;c[h+(i<<2)>>2]=e}else e=0;return e|0}function $h(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=ei(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(ei(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function ai(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=r+8|0;q=r+4|0;o=r;g=c[a>>2]|0;c[n>>2]=0;c[q>>2]=0;c[o>>2]=0;if(!(e&64))i=$h(g,b,0,e)|0;else i=0;if(!(e&4))h=bi(b)|0;else h=b;c[q>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=bi(d)|0;c[o>>2]=f}else{c[o>>2]=d;f=d}if(!g){g=Lg(8)|0;c[a>>2]=g;if(!g)k=32;else{p=g;k=11}}else{p=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=p+4|0;b=$f(c[g>>2]|0,(c[p>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){Rf(h);Rf(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))Rf(g);else c[n>>2]=g;Rf(c[i>>2]|0);d=c[p+4>>2]|0;h=(c[p>>2]|0)+-1|0;c[p>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=p+4|0;h=c[d>>2]|0;g=c[p>>2]|0;c[h+(g<<3)>>2]=j;f=c[o>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[n>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=BU(h)|0;g=g+1+(BU(f)|0)|0;b=Lg(g)|0;if(!b)break;ci(b,h,g)|0;Qf(n);ci(b,f,g)|0;c[(c[d>>2]|0)+(c[p>>2]<<3)+4>>2]=b;Qf(o);f=c[p>>2]|0}f=f+1|0;c[p>>2]=f}else if((k|0)==27){Qf(q);f=c[p>>2]|0}if(f|0){f=0;break a}Qf(p+4|0);Qf(a);f=0;break a}else f=0}while(0);if(!(c[p>>2]|0)){Qf(p+4|0);Qf(a);k=32}else k=32}while(0);if((k|0)==32){Rf(c[q>>2]|0);Rf(f);f=-12}l=r;return f|0}function bi(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(BU(a)|0)+1|0,b=$f(0,c)|0,(b|0)!=0):0)gX(b|0,a|0,c|0)|0;else b=0;return b|0}function ci(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=BU(a)|0;if((d+1|0)>>>0>>0)a=di(a+d|0,b,c-d|0)|0;else a=BU(b)|0;return a+d|0}function di(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0>>0)a[b>>0]=0;return (BU(c)|0)+g|0}function ei(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function fi(a){a=a|0;var b=0;gi(a);c[a+28260>>2]=0;c[a+28264>>2]=0;c[a+28248>>2]=65536;c[a+28252>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}return}function gi(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;hi(a,b,0);b=b+1|0}d=a+29556|0;if((c[d>>2]|0)!=0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){Ug(a,e);ii(a,e,c[a+28348>>2]|0)|0;b=0}else b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28348+(b<<2)|0;ji(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28268|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28476+(b<<2)|0;e=c[b>>2]|0;if(e|0?ji(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29552|0;c[d>>2]=(c[d>>2]|0)+-1}return}function ii(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=126985;c[e+4>>2]=127001;c[e+8>>2]=70;Uf(0,0,159675,e);Ub()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=127027;c[g+4>>2]=127001;c[g+8>>2]=71;Uf(0,0,159675,g);Ub()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=127042;c[i+4>>2]=127001;c[i+8>>2]=72;Uf(0,0,159675,i);Ub()}i=b+4|0;c[i>>2]=h;e=ki(i,e)|0;a:do if((e|0)>=0){i=b+20|0;c[i>>2]=Bh(c[d+20>>2]|0)|0;h=Bh(c[d+44>>2]|0)|0;c[b+44>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19}else{c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];e=0;while(1){if((e|0)>=2)break;i=b+28+(e<<2)|0;c[i>>2]=Bh(c[d+28+(e<<2)>>2]|0)|0;h=Bh(c[d+60+(e<<2)>>2]|0)|0;c[b+60+(e<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19;break a}c[b+36+(e<<2)>>2]=c[d+36+(e<<2)>>2];c[b+68+(e<<2)>>2]=c[d+68+(e<<2)>>2];e=e+1|0}if(!(c[d+56>>2]|0))e=0;else{e=Bh(c[d+52>>2]|0)|0;c[b+52>>2]=e;if(!e){e=-12;j=19;break}c[b+56>>2]=c[e+4>>2];e=0}while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}gX(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}}else j=19;while(0);if((j|0)==19)Ug(a,b);l=k;return e|0}function ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28604+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Fh(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=127062;c[f+4>>2]=127077;c[f+8>>2]=1792;Uf(0,0,159675,f);Ub()}d=c[b+12>>2]|0;if((d|0)!=0?(f=Bh(d)|0,c[e>>2]=f,(f|0)==0):0){Yg(c[g>>2]|0,a);d=-12}else d=0}l=h;return d|0}function li(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32){b=0;break}zg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==256)break;zg(a+128+(b<<2)|0);b=b+1|0}zg(a+1156|0);zg(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function mi(a){a=a|0;var b=0,d=0;d=a+20|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Qf((c[a>>2]|0)+(b*68|0)+60|0);b=b+1|0}Qf(a);c[d>>2]=0;Qf(a+4|0);c[a+12>>2]=0;c[a+8>>2]=0;return}function ni(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+28604>>2]|0;c[a+24312>>2]=0;c[a+26384>>2]=0;h=0;f=1;while(1){g=c[a+28604+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28604+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28604+(k<<2)>>2]|0;c[a+28604+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=ti(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function oi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function pi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=5;break}c=((dX(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24==7){e=e+-1|0;b=b+c|0}else{c=0;break}}a:do if((f|0)==5){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((dX(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24==8){e=e+-1|0;c=c+b|0}else{c=0;break}}}}while(0);return c|0}function qi(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=u+16|0;q=u+8|0;k=u;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;Uf(j,16,148560,k);e=-1094995529;break a}k=a[b+5>>0]&31;s=b+e|0;p=b+6|0;g=0;while(1){if((g|0)>=(k|0))break;n=((dX(d[p>>0]|d[p+1>>0]<<8|0)|0)&65535)+2|0;if((n|0)>(s-p|0)){e=-1094995529;break a}o=KN(p,n,f,i,j)|0;if((o|0)<0){r=9;break}p=p+n|0;g=g+1|0}if((r|0)==9){c[q>>2]=g;Uf(j,16,148579,q);e=o;break a}o=d[p>>0]|0;g=p+1|0;n=0;while(1){if((n|0)>=(o|0)){r=17;break}k=((dX(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(s-g|0)){e=-1094995529;break a}p=KN(g,k,f,i,j)|0;if((p|0)<0){r=15;break}g=g+k|0;n=n+1|0}if((r|0)==15){c[t>>2]=n;Uf(j,16,148613,t);e=p;break a}else if((r|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=LN(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);l=u;return e|0}function ri(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+80|0;if((l|0)>=(m|0))W(80);P=Z+48|0;T=Z+40|0;S=Z+32|0;R=Z+24|0;Q=Z+16|0;O=Z+8|0;j=Z;L=Z+52|0;U=b+4|0;M=c[U>>2]|0;Y=b+27032|0;c[Y>>2]=0;N=b+27028|0;c[N>>2]=0;i=M+64|0;if(!(c[i>>2]&32768)){c[b+29560>>2]=0;if(!(c[b+26384>>2]|0))c[b+24312>>2]=0;Tg(b+29676|0)}h=c[b+27040>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){X=e+5|0;if((eX(d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27036>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}X=eX(g|0)|0;if(!(X>>>0<2|X>>>0>f>>>0))c[b+27036>>2]=1}while(0);F=b+25640|0;g=Gi(F,e,f,M,c[b+27036>>2]|0,h,c[M+16>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)Uf(M,16,128120,j);else{C=M+696|0;if(c[C>>2]&1){g=Hi(b)|0;if((g|0)<0)break}else g=0;p=b+25656|0;q=M+732|0;r=b+27024|0;D=b+29560|0;s=b+29580|0;t=b+29588|0;X=b+24312|0;u=M+592|0;v=b+25632|0;w=b+25636|0;E=b+25628|0;x=b+29676|0;y=b+27052|0;z=b+29716|0;A=M+576|0;B=b+29900|0;h=0;o=0;a:while(1){if((o|0)>=(c[p>>2]|0)){V=71;break}k=c[F>>2]|0;j=k+(o*68|0)|0;i=c[k+(o*68|0)+64>>2]|0;if((c[q>>2]|0)>7&(i|0)==0){if((c[k+(o*68|0)+44>>2]|0)==6){i=0;V=22}}else V=22;b:do if((V|0)==22){V=0;c[r>>2]=i;i=c[k+(o*68|0)+44>>2]|0;c[N>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(o*68|0)+8>>2]|0)+1>>0]&-4)<<24>>24==-104){V=24;break a}if(!h){if(c[D>>2]|0?c[C>>2]&2|0:0){V=28;break a}fi(b)}c[s>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{Li(M,128271,R);break b}case 6:{n=Mi(x,k+(o*68|0)+24|0,y,M)|0;if(!(c[s>>2]|0))i=(c[z>>2]|0)!=-1;else i=1;c[s>>2]=i&1;if(c[A>>2]&8388608|0)Ni(B,c[U>>2]|0);if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}case 7:{i=k+(o*68|0)+24|0;c[L>>2]=c[i>>2];c[L+4>>2]=c[i+4>>2];c[L+8>>2]=c[i+8>>2];c[L+12>>2]=c[i+12>>2];c[L+16>>2]=c[i+16>>2];j=c[u>>2]|0;if((j|0?(H=c[j+28>>2]|0,H|0):0)?(I=Nd[H&3](M,7,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(I|0)<0):0){V=61;break a}if((Oi(L,M,y,0)|0)<=-1?(Uf(c[U>>2]|0,48,128289,S),Pi(L,(c[k+(o*68|0)+20>>2]|0)+1|0,(c[k+(o*68|0)+16>>2]|0)+-1|0)|0,(Oi(L,M,y,0)|0)<=-1):0)Oi(i,M,y,1)|0;break b}case 8:{i=c[u>>2]|0;if((i|0?(J=c[i+28>>2]|0,J|0):0)?(K=Nd[J&3](M,8,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(K|0)<0):0){n=K;break a}n=Qi(k+(o*68|0)+24|0,M,y,c[k+(o*68|0)+12>>2]|0)|0;if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}default:{n=c[k+(o*68|0)+12>>2]|0;c[T>>2]=i;c[T+4>>2]=n;Uf(M,48,128347,T);break b}}c[Y>>2]=1;i=Ii(b,j)|0;if(i|0){k=c[E>>2]|0;n=c[w>>2]|0;c[k+(n*34768|0)+23408>>2]=0;c[k+(n*34768|0)+23404>>2]=0;if((i|0)>=0)break;Uf(c[U>>2]|0,16,128379,P);break}if((c[D>>2]|0)==1){if((!((o|0)<(g|0)|(c[C>>2]&1|0)==0)?(c[t>>2]|0)==0:0)?c[X>>2]|0:0){Ji(M);c[t>>2]=1}i=c[U>>2]|0;j=c[i+592>>2]|0;if(j|0?(G=Md[c[j+24>>2]&15](i,e,f)|0,(G|0)<0):0){n=G;break a}}i=c[u>>2]|0;if(!i)j=c[v>>2]|0;else j=1;if((c[w>>2]|0)==(j|0)){if(!(c[(c[U>>2]|0)+592>>2]|0))n=Ki(b)|0;else{n=Md[c[i+32>>2]&15](M,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0;c[w>>2]=0}if((n|0)<0?(c[(c[U>>2]|0)+580>>2]&8|0)!=0:0)break a}}while(0);o=o+1|0}do if((V|0)==24){Uf(c[U>>2]|0,16,128163,O);c[b+28744>>2]=-2147483648;n=-1}else if((V|0)==28){Uf(b,16,128188,Q);n=-1094995529}else if((V|0)==61)n=I;else if((V|0)==71){g=Ki(b)|0;if((g|0)<0?c[(c[U>>2]|0)+580>>2]&8|0:0){n=g;break}n=0}while(0);k=b+26380|0;if((((c[k>>2]|0)==3?c[D>>2]|0:0)?(c[b+28216>>2]|0)==(c[(c[b+27052+(c[c[b+28212>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29672>>2]|0:0){h=c[E>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;Ri(h+696|0,c[X>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){Ri(g,0);break}else{Ri(g,c[h+23452>>2]|0);break}}else{Ri(h+728|0,g);V=h+23416|0;c[h+23452>>2]=g;U=c[g>>2]|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];V=h+23428|0;U=(c[g>>2]|0)+32|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)Ri(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];Si(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[X>>2]|0;if((g|0?(c[b+25684>>2]|0)==0:0)?c[Y>>2]|0:0)yi(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(n|0)<0?n:f}while(0);l=Z;return g|0}function si(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=c[a+4>>2]|0;c[a+27004>>2]=0;f=(d|0)!=0;if(!f?(c[e+696>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25684>>2]|0)){b=xi(a)|0;c[a+28248>>2]=c[a+28228>>2];c[a+28252>>2]=c[a+28224>>2]}else b=0;c[a+28260>>2]=c[a+28256>>2];c[a+28264>>2]=c[a+28244>>2]}d=c[e+592>>2]|0;if(d){b=Kd[c[d+36>>2]&31](e)|0;if((b|0)<0)Uf(e,16,127398,g)}if(!f?(c[a+25684>>2]|0)==0:0)yi((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[a+29560>>2]=0;l=h;return b|0}function ti(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=o;j=o+40|0;k=o+24|0;n=o+8|0;f=c[a+4>>2]|0;if(((c[f+60>>2]&8|0)==0?(c[f+64>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+592>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;p=h&1;c[g>>2]=p;Uf(f,48,127178,g);g=0-(p^1)|0;f=0;while(1){if((f|0)==4)break;q=i+(f<<2)|0;p=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[q>>2]|0)+(p&g);c[n+(f<<2)>>2]=(c[q>>2]|0)+(h?p:0);c[k+(f<<2)>>2]=p<<1;f=f+1|0}Oh(j,k,n,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=vi(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}l=o;return f|0}function ui(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Fh(b,c[d>>2]|0)|0;if((e|0)>=0){ai(b+344|0,127216,wi(a+29852|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}return e|0}function wi(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?127228:127244;break a}case 1:{a=(c[a+20>>2]|0)==2?127260:127279;break a}case 2:{a=(c[a+20>>2]|0)==2?127298:127317;break a}case 3:{a=(c[a+20>>2]|0)==2?127336:127347;break a}case 4:{a=(c[a+20>>2]|0)==2?127358:127369;break a}case 5:{a=(c[a+20>>2]|0)==2?127380:127389;break a}default:{a=155917;break a}}case 1:{a=155917;break}default:a=0}while(0);return a|0}function xi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=l;l=l+144|0;if((l|0)>=(m|0))W(144);E=N+112|0;D=N+104|0;C=N+96|0;w=N+80|0;v=N+72|0;u=N+64|0;t=N+56|0;z=N+48|0;y=N+40|0;x=N+24|0;e=N+16|0;p=N+128|0;L=N;r=N+124|0;G=L;c[G>>2]=0;c[G+4>>2]=0;G=a+28216|0;do if(c[G>>2]|0){if(!(c[a+29548>>2]|0))zi(a);q=c[a+29540>>2]|0;b=a+4|0;d=c[b>>2]|0;if((q|0)==0?(c[d+576>>2]&2048|0)!=0:0)Uf(d,48,127484,e);J=a+29556|0;H=a+29552|0;B=a+28348|0;K=a+24312|0;I=a+26380|0;n=a+28244|0;o=a+29544|0;k=0;j=0;f=0;g=0;d=0;a:while(1){if((k|0)>=(q|0))break;e=c[b>>2]|0;if(!(c[e+576>>2]&2048))h=a+28748+(k*12|0)|0;else{h=a+28748+(k*12|0)|0;O=c[a+28748+(k*12|0)+4>>2]|0;i=c[a+28748+(k*12|0)+8>>2]|0;c[x>>2]=c[h>>2];c[x+4>>2]=O;c[x+8>>2]=i;Uf(e,48,127498,x)}e=c[h>>2]|0;b:do switch(e|0){case 3:case 1:{f=Ai(a,c[a+28748+(k*12|0)+4>>2]|0,r)|0;g=Bi(a,f,p)|0;e=c[h>>2]|0;if(!g){if(((e|0)==3?(s=c[a+28476+(c[a+28748+(k*12|0)+8>>2]<<2)>>2]|0,s|0):0)?(c[s+88>>2]|0)==(f|0):0){h=j;e=0;break b}Uf(c[b>>2]|0,c[J>>2]|0?16:48,127513,y);h=j;d=-1094995529;e=0}else{i=f;A=18}break}default:{i=f;A=18}}while(0);c:do if((A|0)==18){A=0;switch(e|0){case 1:{e=c[b>>2]|0;if(c[e+576>>2]&2048|0){O=c[J>>2]|0;c[z>>2]=c[a+28748+(k*12|0)+4>>2];c[z+4>>2]=O;Uf(e,48,127540,z)}Ci(a,i,c[r>>2]^3)|0;h=j;f=i;e=g;break c}case 3:{e=a+28748+(k*12|0)+8|0;f=c[e>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(g|0))hi(a,f,0);Di(a,c[p>>2]|0);c[a+28476+(c[e>>2]<<2)>>2]=g;e=c[a+28476+(c[e>>2]<<2)>>2]|0;if(!e){h=j;f=i;e=g;break c}c[e+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;h=j;f=i;e=g;break c}case 2:{e=Ai(a,c[a+28748+(k*12|0)+8>>2]|0,r)|0;c[p>>2]=e;g=c[a+28476+(e<<2)>>2]|0;if(g|0){hi(a,e,c[r>>2]^3);h=j;f=i;e=g;break c}e=c[b>>2]|0;if(!(c[e+576>>2]&2048)){h=j;f=i;e=0;break c}Uf(e,48,127571,t);h=j;f=i;e=0;break c}case 6:{e=c[K>>2]|0;if((c[B>>2]|0)==(e|0)){Uf(c[b>>2]|0,16,127597,u);Di(a,0);e=c[K>>2]|0}h=a+28748+(k*12|0)+8|0;if(c[e+100>>2]|0){e=0;while(1){if((e|0)==32)break;if((c[a+28476+(e<<2)>>2]|0)==(c[K>>2]|0)){if((e|0)!=(c[h>>2]|0))Uf(c[b>>2]|0,16,127669,v);hi(a,e,0)}e=e+1|0}c[p>>2]=32;e=c[K>>2]|0}f=c[h>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(e|0)){if(c[e+100>>2]|0){A=42;break a}hi(a,f,0);c[a+28476+(c[h>>2]<<2)>>2]=c[K>>2];c[(c[a+28476+(c[h>>2]<<2)>>2]|0)+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;e=c[K>>2]|0}h=e+640|0;c[h>>2]=c[h>>2]|c[I>>2];h=1;f=i;e=g;break c}case 4:{e=c[a+28748+(k*12|0)+8>>2]|0;while(1){if((e|0)>=16)break;hi(a,e,0);e=e+1|0}c[p>>2]=e;h=j;f=i;e=g;break c}case 5:{while(1){if(!(c[J>>2]|0)){e=0;break}Ci(a,c[(c[B>>2]|0)+88>>2]|0,0)|0}while(1){if((e|0)==16)break;hi(a,e,0);e=e+1|0}c[p>>2]=16;e=c[K>>2]|0;c[e+88>>2]=0;c[n>>2]=0;c[o>>2]=1;c[e+92>>2]=1;e=0;while(1){if((e|0)==16)break;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}c[p>>2]=16;h=j;f=i;e=g;break c}default:{h=j;f=i;e=g;break c}}}while(0);k=k+1|0;j=h;g=e}if((A|0)==42){c[w>>2]=127732;c[w+4>>2]=127758;c[w+8>>2]=702;Uf(0,0,159675,w);Ub()}do if(!j){if(c[J>>2]|0){f=c[B>>2]|0;e=c[K>>2]|0;if((f|0)==(e|0)){O=f+640|0;c[O>>2]=c[O>>2]|c[I>>2];break}}else e=c[K>>2]|0;if(c[e+100>>2]|0){Uf(c[b>>2]|0,16,127781,C);d=-1094995529;break}if(Ci(a,c[e+88>>2]|0,0)|0){Uf(c[b>>2]|0,16,127894,D);d=-1094995529}e=c[J>>2]|0;if(!e)e=1;else{hX(a+28352|0,B|0,e<<2|0)|0;e=(c[J>>2]|0)+1|0}O=c[K>>2]|0;c[a+28348>>2]=O;c[J>>2]=e;O=O+640|0;c[O>>2]=c[O>>2]|c[I>>2]}while(0);e=c[H>>2]|0;f=c[J>>2]|0;g=c[(c[G>>2]|0)+48>>2]|0;do if((f+e|0)>(((g|0)>1?g:1)|0)){d=c[b>>2]|0;c[E>>2]=e;c[E+4>>2]=f;c[E+8>>2]=g;Uf(d,16,127936,E);d=c[J>>2]|0;if((c[H>>2]|0)!=0&(d|0)==0)d=0;else{Ci(a,c[(c[a+28348+(d+-1<<2)>>2]|0)+88>>2]|0,0)|0;d=-1094995529;break}while(1){if((d|0)>=16)break;if(c[a+28476+(d<<2)>>2]|0)break;d=d+1|0}hi(a,d,0);d=-1094995529}while(0);e=0;while(1){if((e|0)>=(c[J>>2]|0))break;f=c[a+28348+(e<<2)>>2]|0;if(c[f+648>>2]|0?(F=c[f+88>>2]|0,O=c[G>>2]|0,((1<>2])+-1&(c[(c[K>>2]|0)+88>>2]|0)-F|0)>(c[O+48>>2]|0)):0)Ci(a,F,0)|0;e=e+1|0}Ei(a);Fi(a);h=L+4|0;g=0;i=0;f=0;while(1){if((g|0)==256)break;e=c[a+27180+(g<<2)>>2]|0;if(!e)e=i;else{G=c[e+4>>2]|0;O=G+20|0;e=c[(i>>>0>(c[O>>2]|0)>>>0?L:O)>>2]|0;c[L>>2]=e;f=c[(f>>>0>(c[G+24>>2]|0)>>>0?L:O)+4>>2]|0;c[h>>2]=f}g=g+1|0;i=e}if((d|0)>-1?(c[H>>2]|0)==0:0){e=c[I>>2]|0;if((c[J>>2]|0)>=3?!((i|0)<=(((e|0)!=3?2:1)|0)&(f|0)<2):0)break;if(((i|0)<=((((c[a+29580>>2]|0)==0&1)<<1)+((e|0)!=3?3:2)|0)?(M=c[K>>2]|0,(c[(c[M>>2]|0)+88>>2]|0)==1):0)?(O=M+644|0,c[O>>2]=c[O>>2]|1,(c[(c[b>>2]|0)+140>>2]|0)==0):0){O=a+29576|0;c[O>>2]=c[O>>2]|2}}}else{b=a+4|0;Uf(c[b>>2]|0,16,127470,N+8|0);d=-1094995529}while(0);l=N;return (c[(c[b>>2]|0)+580>>2]&8|0?d:0)|0}function yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;e=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){a=c[a>>2]|0;c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;Uf(a,48,127445,h)}h=e+184|0;kX(h|0)|0;c[g>>2]=b;jX(e+60|0)|0;lX(h|0)|0}l=i;return}function zi(a){a=a|0;var b=0,d=0,e=0;b=c[a+29556>>2]|0;do if((b|0)!=0?((c[a+29552>>2]|0)+b|0)>=(c[(c[a+28216>>2]|0)+48>>2]|0):0){e=(c[a+26380>>2]|0)==3;if((!e?(c[a+26384>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28748>>2]=1;d=c[(c[a+28348+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28752|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28760>>2]=1;c[a+28764>>2]=d|1;b=2}}else b=0;while(0);c[a+29540>>2]=b;return}function Ai(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26380|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function Bi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;h=a+29556|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28348+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+576>>2]&2048))f=e+88|0;else{o=e+88|0;p=c[o>>2]|0;c[j>>2]=g;c[j+4>>2]=p;c[j+8>>2]=e;Uf(f,48,128110,j);f=o}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;l=n;return e|0}function Ci(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+576>>2]&2048|0){i=c[a+29556>>2]|0;c[f>>2]=b;c[f+4>>2]=i;Uf(e,48,128084,f)}b=Bi(a,b,g)|0;if(b|0?ji(a,b,d)|0:0)Di(a,c[g>>2]|0);l=h;return b|0}function Di(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28348+(b<<2)|0;c[d>>2]=0;f=a+29556|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)hX(d|0,a+28348+(b+1<<2)|0,e-b<<2|0)|0;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){Uf(b,48,128066,g);d=a+29556|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28348+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;Uf(h,48,128046,f);b=b+1|0}}while(0);l=g;return}function Fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){Uf(b,48,128029,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28476+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;Uf(h,48,128046,f)}b=b+1|0}}while(0);l=g;return}function Gi(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=E+40|0;C=E+32|0;B=E+24|0;A=E+16|0;k=E;y=E+44|0;x=(g|0)!=0;if((e|0)<=-1){c[k>>2]=155203;c[k+4>>2]=155217;c[k+8>>2]=137;Uf(0,0,159675,k);Ub()}s=b;t=b+e|0;u=a+4|0;uN(u,a+8|0,(j|0?0:262144)+e|0);a:do if(c[u>>2]|0){c[a+12>>2]=0;v=a+16|0;c[v>>2]=0;w=a+20|0;r=(i|0)==173;n=x?0:e;g=s;b:while(1){e=b+n|0;while(1){i=t-g|0;if(i>>>0<=3){g=0;break a}k=g-s|0;if((k|0)==(n|0)){D=8;break}if((k|0)>(n|0))Uf(f,24,148012,A);k=wN(g,e)|0;i=g+(i>>>0>k>>>0?k:i)|0;k=i;g=t-k|0;if(!g)break b;q=k-s|0;p=n-q|0;g=g>>>0>p>>>0?p:g;if((n|0)>(q|0)){q=g;break}else g=i+g|0}if((D|0)==8){D=0;c[y>>2]=0;k=g;g=vN(h,k,i,y,f)|0;k=k+(i>>>0>h>>>0?h:i)|0;if((g|0)<0)break a;else{q=g;n=k-s+g|0}}g=c[w>>2]|0;i=c[v>>2]|0;if((g|0)<=(i|0)){g=g+1|0;i=xN(c[a>>2]|0,g,68)|0;if(!i){g=-12;break a}c[a>>2]=i;e=c[w>>2]|0;iX(i+(e*68|0)|0,0,(g-e|0)*68|0)|0;e=c[a>>2]|0;o=c[v>>2]|0;c[e+(o*68|0)+56>>2]=1024;p=Jh(1024,4)|0;c[e+(o*68|0)+60>>2]=p;if(!p){g=-12;break a}c[w>>2]=g;i=c[v>>2]|0}p=c[a>>2]|0;o=p+(i*68|0)|0;e=k;g=yN(e,q,u,o,j)|0;if((g|0)<0)break a;if(x?(q|0)!=0&(q|0)!=(g|0):0){c[C>>2]=g;c[C+4>>2]=q;Uf(f,48,148080,C)}c[v>>2]=(c[v>>2]|0)+1;k=t-k|0;g=e+(k>>>0>g>>>0?g:k)|0;e=g;k=t-e|0;if(k>>>0>3){if((k|0)<4)g=0;else g=eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;g=(g|0)!=480&1}else g=1;g=zN(o,g)|0;c[p+(i*68|0)+12>>2]=g;g=AN(p+(i*68|0)+24|0,c[p+(i*68|0)+8>>2]|0,g)|0;if((g|0)<0)break a;if(r)g=BN(o,f)|0;else g=CN(o,f)|0;if((g|0)<1){if((g|0)<0){c[z>>2]=c[p+(i*68|0)+44>>2];Uf(f,16,148125,z)}}else if((c[p+(i*68|0)+4>>2]|0)>=1){g=e;continue}c[v>>2]=(c[v>>2]|0)+-1;g=e}if((c[v>>2]|0)>0)g=0;else{Uf(f,16,148055,B);g=-1094995529}}else g=-12;while(0);l=E;return g|0}function Hi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;h=o+4|0;i=a+25656|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*68|0)+44|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=Pi(h,(c[d+(f*68|0)+8>>2]|0)+1|0,(c[d+(f*68|0)+4>>2]|0)+-1|0)|0;if((d|0)<0){Uf(c[g>>2]|0,16,147979,k);if(!(c[(c[g>>2]|0)+580>>2]&8))break b;else{n=12;break a}}d=(b|0)!=0;if(!(d&(pN(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((n|0)==12)a=d;l=o;return a|0}function Ii(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+34832|0;if((l|0)>=(m|0))W(34832);v=x+34824|0;u=x+34816|0;t=x+34808|0;s=x+34800|0;q=x+34784|0;j=x+34776|0;h=x+34768|0;i=x;o=a+25628|0;e=c[o>>2]|0;w=a+25636|0;g=c[w>>2]|0;f=e+(g*34768|0)|0;if(!g)n=(c[a+29560>>2]|0)==0;else n=0;r=n&1;d=e+(g*34768|0)+4|0;y=b+24|0;c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];c[d+16>>2]=c[y+16>>2];d=Sl(a,f,b)|0;a:do if((d|0)>=0){if((c[e+(g*34768|0)+21836>>2]|0)>0){c[e+(g*34768|0)+23408>>2]=0;c[e+(g*34768|0)+23404>>2]=0;d=0;break}d=(c[e+(g*34768|0)+21808>>2]|0)==0;if(!d?(c[a+29560>>2]|0)!=0:0)k=11;else{if(c[a+29588>>2]|0){Uf(c[a+4>>2]|0,16,144279,h);d=-1094995529;break}if(d){h=a+29560|0;do if(c[h>>2]|0){if(c[w>>2]|0){d=Ki(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+580>>2]&8|0:0)break a;y=c[o>>2]|0;gX(i|0,y|0,34768)|0;gX(y|0,f|0,34768)|0;gX(f|0,i|0,34768)|0;f=c[o>>2]|0}e=a+24312|0;if(!(c[e>>2]|0)){d=-1094995529;break a}g=a+26384|0;d=(c[g>>2]|0)==0;if((c[a+26380>>2]|0)!=3){if(d){d=-1094995529;break a}d=si(a,c[o>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27028>>2]|0)!=5){d=-1094995529;break a}Uf(a,24,144296,j);d=si(a,c[o>>2]|0,1)|0;yi((c[e>>2]|0)+4|0,2147483647,0);yi((c[e>>2]|0)+4|0,2147483647,1);c[e>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26384|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;e=c[d>>2]|0;if(e|0?(c[a+25684>>2]|0)==0:0)yi(e+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[d>>2]=0;g=f;d=h}else{g=f;d=h}}else k=11}if((k|0)==11){g=f;d=a+29560|0}f=c[d>>2]|0;e=(f|0)==0;do if(e){if((g|0)!=(c[o>>2]|0)){c[q>>2]=144322;c[q+4>>2]=133479;c[q+8>>2]=2090;Uf(0,0,159675,q);Ub()}if((c[a+26384>>2]|0)==0?(p=c[(c[a+4>>2]|0)+732>>2]|0,(p|0)>7):0){if(!(c[a+27024>>2]|0)){d=0;break a}if((p|0)>15){if((c[g+840>>2]|0)==3){d=0;break a}if((p|0)>23){if((c[g+840>>2]|0)!=1){d=0;break a}if((p|0)>31)if((c[a+27028>>2]|0)==5)if((p|0)>47){d=0;break a}else break;else if((c[a+29716>>2]|0)<0|(p|0)>47){d=0;break a}else break}}}}while(0);do if(!n){y=c[(c[a+27180+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;q=c[a+28212>>2]|0;d=c[q>>2]|0;if((d|0)==(c[y>>2]|0)?(c[q+64>>2]|0)==(c[y+64>>2]|0):0){if((c[a+28216>>2]|0)==(c[(c[a+27052+(d<<2)>>2]|0)+4>>2]|0))break;Uf(c[a+4>>2]|0,16,144369,t);d=-1094995529;break a}Uf(c[a+4>>2]|0,16,144341,s);d=-1094995529;break a}while(0);do if(e){d=Tl(a,g,b,r)|0;if((d|0)<0)break a}else{d=c[a+26380>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25684>>2]|0)==((c[b+64>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[v>>2]=f+1;Uf(d,16,144471,v);d=-1094995529;break a}y=c[a+4>>2]|0;c[u>>2]=d;c[u+4>>2]=e;Uf(y,16,144409,u);d=-1094995529;break a}while(0);d=Ul(a,g,b)|0;if((d|0)>=0){c[w>>2]=(c[w>>2]|0)+1;d=0}}while(0);l=x;return d|0}function Ji(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[(c[a+28>>2]|0)+20>>2]|0;if(c[a+696>>2]&1|0){e=a+592|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){kX((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;Rl(c[f>>2]|0)}}while(0);b=f+184|0;kX(b|0)|0;d=f+300|0;if((c[d>>2]|0)==4)Uf(a,24,144238,g);c[d>>2]=4;jX(f+60|0)|0;lX(b|0)|0}l=h;return}function Ki(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=w+16|0;d=w;i=c[a+4>>2]|0;v=a+25636|0;t=c[v>>2]|0;u=a+25628|0;j=c[u>>2]|0;b=j+21812|0;c[b>>2]=2147483647;if((t|0)<1|(c[i+592>>2]|0)!=0)b=0;else{k=t+-1|0;s=a+27008|0;h=c[s>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(h|0)){c[d>>2]=133410;c[d+4>>2]=133479;c[d+8>>2]=2746;Uf(0,0,159675,d);Ub()}a:do if((t|0)!=1){if((t|0)<=0){c[e>>2]=133503;c[e+4>>2]=133479;c[e+8>>2]=2758;Uf(0,0,159675,e);Ub()}r=a+27012|0;b=0;while(1){if((b|0)==(t|0))break;f=c[r>>2]|0;e=N(h,f)|0;c[j+(b*34768|0)+596>>2]=0;g=N(f,c[j+(b*34768|0)+21792>>2]|0)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(t|0))break;q=N(f,c[j+(d*34768|0)+21792>>2]|0)|0;q=q+(c[j+(d*34768|0)+21788>>2]|0)|0;q=(b|0)==(d|0)|(q|0)<(g|0)?e:(e|0)>(q|0)?q:e;d=d+1|0;e=q}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}Pd[c[i+704>>2]&7](i,7,j,0,t,34768)|0;e=c[u>>2]|0;c[a+27004>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(t|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25708|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26376|0;h=a+26380|0;f=0;while(1){if((f|0)==(t|0)){b=0;break a}q=c[u>>2]|0;i=q+(f*34768|0)|0;j=q+(f*34768|0)+21792|0;o=c[j>>2]|0;n=c[s>>2]|0;k=(o|0)<(n|0)?o+1|0:n;n=c[((o|0)>=(n|0)?r:q+(f*34768|0)+21788|0)>>2]|0;o=q+(f*34768|0)+21804|0;p=k+-1|0;q=q+(f*34768|0)+21800|0;e=c[o>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[o>>2]|0))b=0;else b=c[q>>2]|0;if((e|0)==(p|0))d=n;else d=c[r>>2]|0;fk(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{c[b>>2]=N(c[a+27012>>2]|0,h)|0;c[a+25708>>2]=0;b=ek(i,j)|0;c[a+27004>>2]=c[(c[u>>2]|0)+21792>>2]}while(0);c[v>>2]=0}l=w;return b|0}function Li(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;rj(1,a,b,f);l=e;return}function Mi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);u=w+16|0;t=w;n=a+36|0;o=a+40|0;p=a+44|0;q=a+176|0;r=a+208|0;s=a+224|0;k=a+240|0;i=0;a:while(1){if((Hj(b)|0)<=16){f=i;break}if(!(Ij(b,16)|0)){f=i;break}else h=0;while(1){if((Hj(b)|0)<8){f=-1094995529;break a}h=(Ij(b,8)|0)+h|0;if((Jj(b,8)|0)!=255){g=0;break}}do{if((Hj(b)|0)<8){f=-1094995529;break a}g=(Ij(b,8)|0)+g|0}while((Jj(b,8)|0)==255);f=Hj(b)|0;if(g>>>0>((f|0)/8|0)>>>0){v=9;break}j=(Kj(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=Lj(a,b,d,e)|0;v=21;break}case 4:{f=Mj(a,b,g)|0;v=21;break}case 5:{f=Nj(n,b,g)|0;v=21;break}case 6:{Oj(o,b);f=i;break}case 0:{f=Pj(p,b,d,e)|0;v=21;break}case 45:{Qj(q,b);f=i;break}case 47:{Rj(r,b);f=i;break}case 56:{Sj(s,b);f=i;break}case 147:{Tj(k,b);f=i;break}default:{c[u>>2]=h;Uf(e,48,133228,u);f=i}}while(0);if((v|0)==21){v=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}Uj(b,j-(Kj(b)|0)|0);Vj(b);i=f}if((v|0)==9){c[t>>2]=h;c[t+4>>2]=g<<3;c[t+8>>2]=f;Uf(e,16,133191,t);f=-1094995529}l=w;return f|0}function Ni(b,f){b=b|0;f=f|0;var g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;p=l;l=l+96|0;if((l|0)>=(m|0))W(96);j=p+80|0;i=p+72|0;g=p+40|0;o=p+32|0;n=p+24|0;k=p+16|0;q=p+8|0;Uf(f,48,132936,p);c[q>>2]=d[b>>0];Uf(f,48,132969,q);switch(a[b>>0]|0){case 0:{q=b+1|0;c[k>>2]=d[q>>0];Uf(f,48,132996,k);switch(a[q>>0]|0){case 2:{c[n>>2]=e[b+2>>1];Uf(f,48,133030,n);break}case 3:{c[o>>2]=e[b+4>>1];Uf(f,48,133064,o);break}default:{}}t=+(d[b+7>>0]|0)/255.0;s=+(d[b+8>>0]|0)/255.0;r=+(d[b+9>>0]|0)/255.0;h[g>>3]=+(d[b+6>>0]|0)/255.0;h[g+8>>3]=t;h[g+16>>3]=s;h[g+24>>3]=r;Uf(f,48,133099,g);break}case 1:{q=b+10|0;c[i>>2]=d[q>>0];Uf(f,48,133144,i);if(!(a[q>>0]|0)){h[j>>3]=+(e[b+12>>1]|0)/100.0;Uf(f,48,133167,j)}break}default:{}}l=p;return}function Oi(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;R=l;l=l+240|0;if((l|0)>=(m|0))W(240);L=R+152|0;I=R+144|0;H=R+120|0;F=R+104|0;D=R+96|0;A=R+88|0;z=R+80|0;w=R+72|0;y=R+64|0;x=R+56|0;v=R+48|0;t=R+40|0;u=R+32|0;s=R+24|0;r=R+16|0;q=R+8|0;j=R;M=R+228|0;O=th(5300)|0;c[M>>2]=O;P=O;a:do if(!O)g=-12;else{Q=O+4|0;K=c[Q>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=K+5296|0;c[i>>2]=g;if(g>>>0>4096){Uf(d,48,132077,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}gX(K+1200|0,h|0,g|0)|0;p=gj(a,8)|0;g=fj(a)|0;h=fj(a)|0;i=fj(a)|0;j=fj(a)|0;k=fj(a)|0;n=fj(a)|0;tj(a);o=gj(a,8)|0;J=dj(a)|0;b:do if(J>>>0>31){c[q>>2]=J;Uf(d,16,131164,q)}else{c[K>>2]=J;c[K+1164>>2]=24;G=K+4|0;c[G>>2]=p;c[K+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|n<<5;E=K+8|0;c[E>>2]=o;c[K+112>>2]=-1;i=K+672|0;j=K+768|0;k=K+668|0;iX(i|0,16,480)|0;c[k>>2]=0;c[K+128>>2]=2;switch(p|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=dj(a)|0;c[K+12>>2]=g;if(g>>>0>3){c[r>>2]=g;Li(d,132110,r);break b}if((g|0)==3?(B=fj(a)|0,c[K+1192>>2]=B,B|0):0){Uf(d,16,132131,s);break b}B=K+1184|0;c[B>>2]=(cj(a)|0)+8;g=cj(a)|0;h=g+8|0;c[K+1188>>2]=h;if((h|0)!=(c[B>>2]|0)){Li(d,132172,u);break b}if(g>>>0>6){c[t>>2]=h;c[t+4>>2]=h;Uf(d,16,132208,t);break b}c[K+16>>2]=fj(a)|0;g=kj(a,K,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[K+12>>2]=1;c[K+1184>>2]=8;c[K+1188>>2]=8}}g=cj(a)|0;if(g>>>0>12){c[v>>2]=g;Uf(d,16,132242,v);break}c[K+20>>2]=g+4;g=dj(a)|0;v=K+24|0;c[v>>2]=g;c:do switch(g|0){case 0:{g=cj(a)|0;if(g>>>0>12){c[x>>2]=g;Uf(d,16,132293,x);break b}else{c[K+28>>2]=g+4;break c}}case 1:{c[K+32>>2]=fj(a)|0;c[K+36>>2]=hj(a)|0;c[K+40>>2]=hj(a)|0;g=cj(a)|0;i=K+44|0;c[i>>2]=g;if(g>>>0>255){c[y>>2]=g;Uf(d,16,132332,y);break b}else h=0;while(1){if((h|0)>=(g|0))break c;b[K+148+(h<<1)>>1]=hj(a)|0;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[w>>2]=g;Uf(d,16,132362,w);break b}}while(0);g=dj(a)|0;t=K+48|0;c[t>>2]=g;y=(c[d+20>>2]|0)==844516691;B=(g|0)>2?g:2;c[t>>2]=y?B:g;g=y?B:g;if((g|0)>16){c[z>>2]=g;Uf(d,16,132383,z);break}c[K+52>>2]=fj(a)|0;s=K+56|0;c[s>>2]=(cj(a)|0)+1;u=K+60|0;c[u>>2]=(cj(a)|0)+1;g=fj(a)|0;B=K+64|0;c[B>>2]=g;h=c[u>>2]|0;if(h>>>0>1073741822){Uf(d,16,132413,A);break}c[u>>2]=N(h,2-g|0)|0;if(!g)g=fj(a)|0;else g=0;r=K+68|0;c[r>>2]=g;g=c[s>>2]|0;if((g>>>0<=134217726?(C=c[u>>2]|0,C>>>0<=134217726):0)?(Vh(g<<4,C<<4,0,d)|0)==0:0){q=K+72|0;c[q>>2]=fj(a)|0;D=fj(a)|0;g=K+76|0;c[g>>2]=D;d:do if(!D){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=cj(a)|0;j=cj(a)|0;k=cj(a)|0;n=cj(a)|0;o=c[s>>2]<<4;p=c[u>>2]<<4;if(c[d+64>>2]&65536|0){c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=n;Uf(d,48,132456,F);H=K+80|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;break}h=c[K+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[B>>2]|0)<<((h|0)==1&1);F=536870911>>>g;do if((!(i>>>0>F>>>0|j>>>0>F>>>0)?(F=536870911/(h>>>0)|0,!(k>>>0>F>>>0|n>>>0>F>>>0)):0)?j+i<>>0>>0:0){if((N(h,n+k|0)|0)>>>0>=p>>>0)break;c[K+80>>2]=i<>2]=j<>2]=N(h,k)|0;c[K+92>>2]=N(h,n)|0;break d}while(0);c[H>>2]=i;c[H+4>>2]=j;c[H+8>>2]=k;c[H+12>>2]=n;c[H+16>>2]=o;c[H+20>>2]=p;Uf(d,16,132522,H);break b}while(0);H=fj(a)|0;i=K+96|0;c[i>>2]=H;if(H|0?(uj(a,d,K)|0)<0:0)break;g=vj(a)|0;if((g|0)<0?(f=(f|0)!=0,c[I>>2]=c[i>>2]|0?132563:148306,c[I+4>>2]=0-g,Uf(d,f?24:16,132567,I),!f):0)break;A=(c[K+660>>2]|0)==0;e:do if(A){if((c[t>>2]|0)==0?(c[d+568>>2]|0)<=0:0)break;h=K+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[102104+(g<<3)>>2]|0)==(c[E>>2]|0))break;g=g+1|0}I=(c[102104+(g<<3)+4>>2]|0)/(N(c[u>>2]|0,c[s>>2]|0)|0)|0;c[h>>2]=(I|0)<15?I:15}while(0);g=K+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+576>>2]&1|0){z=c[G>>2]|0;y=c[E>>2]|0;x=c[v>>2]|0;w=c[t>>2]|0;v=c[s>>2]|0;u=c[u>>2]|0;if(!(c[B>>2]|0))t=c[r>>2]|0?132591:132598;else t=132606;o=c[q>>2]|0?132610:262540;p=c[K+80>>2]|0;q=c[K+84>>2]|0;r=c[K+88>>2]|0;s=c[K+92>>2]|0;h=c[i>>2]|0?132563:262540;i=132614+((c[K+12>>2]|0)*5|0)|0;if(!(c[K+132>>2]|0)){k=0;n=0}else{k=c[K+136>>2]|0;n=c[K+140>>2]|0}j=c[K+1184>>2]|0;if(A)g=-1;else g=c[K+664>>2]|0;c[L>>2]=J;c[L+4>>2]=z;c[L+8>>2]=y;c[L+12>>2]=x;c[L+16>>2]=w;c[L+20>>2]=v;c[L+24>>2]=u;c[L+28>>2]=t;c[L+32>>2]=o;c[L+36>>2]=p;c[L+40>>2]=q;c[L+44>>2]=r;c[L+48>>2]=s;c[L+52>>2]=h;c[L+56>>2]=i;c[L+60>>2]=k;c[L+64>>2]=n;c[L+68>>2]=j;c[L+72>>2]=g;Uf(d,48,132634,L)}g=e+(J<<2)|0;h=c[g>>2]|0;do if(h|0){if(IT(c[h+4>>2]|0,c[Q>>2]|0,c[O+8>>2]|0)|0)break;zg(M);g=0;break a}while(0);wj(e,J);c[g>>2]=P;g=0;break a}Uf(d,16,132430,D)}while(0);zg(M);g=-1094995529}while(0);l=R;return g|0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;return sj(a,b,c>>>0>268435455?-8:c<<3)|0}function Qi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+128|0;if((l|0)>=(m|0))W(128);E=F+56|0;q=F+48|0;p=F+40|0;n=F+32|0;o=F+24|0;k=F+16|0;i=F+8|0;f=F;z=F+116|0;D=cj(a)|0;a:do if(D>>>0<=255){f=th(173836)|0;c[z>>2]=f;C=f;if(!f)f=-12;else{B=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=B+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;Uf(b,48,131119,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}gX(B+728|0,g|0,f|0)|0;f=dj(a)|0;c[B>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){x=c[j+4>>2]|0;y=x+1184|0;f=c[y>>2]|0;if((f|0)>14){c[o>>2]=f;Uf(b,16,131188,o);f=-1094995529;break}switch(f|0){case 13:case 11:{c[n>>2]=f;ej(b,131215,n);f=-1163346256;break b}default:{}}v=B+4|0;c[v>>2]=fj(a)|0;c[B+8>>2]=fj(a)|0;u=cj(a)|0;w=B+12|0;c[w>>2]=u+1;if((u|0)>0){c[B+16>>2]=cj(a)|0;Uf(b,16,131247,p)}t=B+20|0;c[t>>2]=(cj(a)|0)+1;s=cj(a)|0;u=B+24|0;c[u>>2]=s+1;if(((c[t>>2]|0)+-1|s)>>>0>31){Uf(b,16,131266,q);f=-1094995529;break}s=(c[y>>2]|0)*6|0;k=B+28|0;c[k>>2]=fj(a)|0;c[B+32>>2]=gj(a,2)|0;s=s+-22|0;n=B+36|0;c[n>>2]=s+(hj(a)|0);o=B+40|0;c[o>>2]=s+(hj(a)|0);s=hj(a)|0;j=B+44|0;c[j>>2]=s;if((s+12|0)>>>0>24)f=-1094995529;else{p=B+52|0;c[p>>2]=fj(a)|0;q=B+56|0;c[q>>2]=fj(a)|0;r=B+60|0;c[r>>2]=fj(a)|0;s=B+64|0;c[s>>2]=0;i=B+68|0;f=i;g=x+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=B+164|0;gX(f|0,x+768|0,384)|0;if((ij(a)|0)<(e|0)?(jj(x,b)|0)!=0:0){c[s>>2]=fj(a)|0;f=kj(a,x,B,0,i,f)|0;if((f|0)<0)break;a=hj(a)|0;h=B+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=B+48|0;c[h>>2]=f}lj(B,0,f,c[y>>2]|0);lj(B,1,c[h>>2]|0,c[y>>2]|0);mj(B,x);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[B+724>>2]=1;if(c[b+576>>2]&1|0){h=c[B>>2]|0;i=c[v>>2]|0?131292:131298;j=c[w>>2]|0;v=c[t>>2]|0;w=c[u>>2]|0;x=c[k>>2]|0?131304:262540;y=c[n>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0?131313:262540;z=c[q>>2]|0?131318:262540;A=c[r>>2]|0?131325:262540;B=c[s>>2]|0?131330:262540;c[E>>2]=D;c[E+4>>2]=h;c[E+8>>2]=i;c[E+12>>2]=j;c[E+16>>2]=v;c[E+20>>2]=w;c[E+24>>2]=x;c[E+28>>2]=y;c[E+32>>2]=e;c[E+36>>2]=g;c[E+40>>2]=f;c[E+44>>2]=a;c[E+48>>2]=z;c[E+52>>2]=A;c[E+56>>2]=B;Uf(b,48,131337,E)}nj(d,D);c[d+128+(D<<2)>>2]=C;f=0;break a}}else A=8;while(0);if((A|0)==8){c[k>>2]=f;Uf(b,16,131164,k);f=-1094995529}zg(z)}}else{c[f>>2]=D;Uf(b,16,150812,f);f=-1094995529}while(0);l=F;return f|0}function Ri(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function Si(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;$=l;l=l+80|0;if((l|0)>=(m|0))W(80);D=$+64|0;v=$+48|0;u=$+40|0;t=$+32|0;s=$+24|0;r=$+16|0;o=$+8|0;n=$;S=f+568|0;p=c[S>>2]|0;V=f+560|0;q=c[V>>2]|0;a:do if((((c[(c[f>>2]|0)+572>>2]|0?(k=f+572|0,c[k>>2]|0):0)?(c[(c[f>>2]|0)+680>>2]|0)==0:0)?Ti(f)|0:0)?(U=f+556|0,j=c[U>>2]|0,h=c[f>>2]|0,(c[k>>2]|0)!=(N(j*3|0,(c[h+272>>2]|0)+(c[h+268>>2]|0)|0)|0)):0){g=f+672|0;E=c[g>>2]|0;X=E+32|0;_=f+580|0;Y=f+564|0;i=0;while(1){if((i|0)>=(j|0))break;if((a[(c[_>>2]|0)+((N((c[V>>2]|0)+-1|0,c[Y>>2]|0)|0)+i)>>0]|0)!=127)break;i=i+1|0}if(((i|0)==(j|0)?(c[h+16>>2]|0)==2:0)?((c[h+96>>2]|0)+15&16|0)!=0:0){h=c[f>>2]|0;if((c[k>>2]|0)==(N((c[U>>2]|0)*3|0,(c[h+268>>2]|0)+1+(c[h+272>>2]|0)|0)|0)){Uf(h,48,128406,n);break}}C=f+704|0;i=c[C>>2]|0;do if(i|0){Q=c[g>>2]|0;if(((c[i+68>>2]|0)==(c[Q+68>>2]|0)?(c[i+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[i+80>>2]|0)==(c[Q+80>>2]|0):0)break;Uf(h,24,128435,o);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;c[C+24>>2]=0;c[C+28>>2]=0}while(0);B=f+736|0;h=c[B>>2]|0;do if(h|0){Q=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[Q+68>>2]|0)?(c[h+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[h+80>>2]|0)==(c[Q+80>>2]|0):0)break;Uf(c[f>>2]|0,24,128485,r);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;c[B+24>>2]=0;c[B+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))T=27;b:do if((T|0)==27){Uf(c[f>>2]|0,16,128531,s);i=(N(p<<3,q)|0)+16|0;h=0;while(1){if((h|0)>=2)break b;k=f+768+(h<<2)|0;c[k>>2]=th(N(c[Y>>2]<<2,c[V>>2]|0)|0)|0;j=th(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0){g=0;break}c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}while(1){if((g|0)==2)break a;zg(f+768+(g<<2)|0);zg(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+576>>2]&1024|0){h=0;while(1){if((h|0)<(c[V>>2]|0))i=0;else break c;while(1){if((i|0)>=(c[U>>2]|0))break;P=d[(c[_>>2]|0)+((N(c[Y>>2]|0,h)|0)+i)>>0]|0;Q=c[f>>2]|0;c[t>>2]=P;Uf(Q,48,128558,t);i=i+1|0}Uf(c[f>>2]|0,48,128563,u);h=h+1|0}}while(0);P=f+552|0;Q=f+548|0;n=1;while(1){if((n|0)==4)break;p=9<>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=d[j>>0]|0;h=(p&k|0)==0?i:1;if(!h)a[j>>0]=q|k;i=(k&1|0)==0?h:0;h=o}n=n+1|0}O=f+792|0;d:do if(c[O>>2]|0){i=0;h=c[P>>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break d;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=a[j>>0]|0;n=k&255;h=(n&98|0)==0?((n&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(n&1|0)==0?h:0;h=o}}while(0);e:do if(c[(c[f>>2]|0)+580>>2]&8|0){h=1;n=(c[P>>2]|0)+-2|0;while(1){if((n|0)<((c[U>>2]|0)+100|0))break e;M=c[Q>>2]|0;L=c[_>>2]|0;i=L+(c[M+(n<<2)>>2]|0)|0;j=a[i>>0]|0;k=j&255;h=(k&1|0)==0?h:1;if(j<<24>>24!=127?(a[L+(c[M+(n+1<<2)>>2]|0)>>0]|0)==127:0){if((k&112|0)!=0|(h|0)==0)T=60}else if(!h)T=60;if((T|0)==60){T=0;a[i>>0]=j|14;h=0}n=n+-1|0}}while(0);M=f+600|0;h=9999999;n=1;while(1){if((n|0)==4){h=0;n=0;break}o=1<>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;L=c[(c[Q>>2]|0)+(k<<2)>>2]|0;i=(c[_>>2]|0)+L|0;j=d[i>>0]|0;K=c[M>>2]|0;if(!((K|0)!=0?(a[K+L>>0]|0)!=0:0))h=h+1|0;h=(o&j|0)==0?h:0;do if(!(c[O>>2]|0)){if((h|0)>=50)break;a[i>>0]=o|j}else{if((h|0)>=(c[p>>2]|0))break;a[i>>0]=o|j}while(0);h=(j&1|0)==0?h:9999999;i=k}n=n+1|0}while(1){j=c[P>>2]|0;if((n|0)>=(j|0))break;i=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;n=n+1|0}f:do if(!(c[O>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(i<<2)>>2]|0)|0;L=d[h>>0]|0;a[h>>0]=(L&14|0)==0?L:L|14;i=i+1|0;h=c[P>>2]|0}}else h=j;while(0);i=0;j=0;k=0;n=0;while(1){if((n|0)>=(h|0))break;L=d[(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)>>0]|0;i=(L>>>2&1)+i|0;j=(L>>>3&1)+j|0;k=(L>>>1&1)+k|0;n=n+1|0}L=c[f>>2]|0;K=(Ui(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[v>>2]=i;c[v+4>>2]=k;c[v+8>>2]=j;c[v+12>>2]=K;Uf(L,32,128565,v);j=(Vi(f)|0)!=0;j=j?1:12296;L=f+696|0;i=0;while(1){h=c[P>>2]|0;if((i|0)>=(h|0))break;h=c[(c[Q>>2]|0)+(i<<2)>>2]|0;if((a[(c[_>>2]|0)+h>>0]&12)==12)c[(c[L>>2]|0)+(h<<2)>>2]=j;i=i+1|0}K=c[C>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))T=92;g:do if((T|0)==92){K=c[B>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)break;else j=0;while(1){if((j|0)>=(h|0))break g;i=(c[L>>2]|0)+(c[(c[Q>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[P>>2]|0}j=j+1|0}}while(0);w=f+608|0;x=f+612|0;y=f+800|0;z=f+804|0;A=f+608|0;r=0;while(1){h=c[V>>2]|0;if((r|0)>=(h|0))break;q=r<<1;p=0;while(1){if((p|0)>=(c[U>>2]|0))break;i=(N(c[Y>>2]|0,r)|0)+p|0;j=c[(c[L>>2]|0)+(i<<2)>>2]|0;h=c[C>>2]|0;if(!h)h=0;else h=(c[h>>2]|0)!=0;k=(h^1)&1;o=h?1:2;K=d[(c[_>>2]|0)+i>>0]|0;if(!((K&2|0)==0|(K&8|j&7|0)!=0)){h:do if(!(j&64)){K=f+680+(k<<2)|0;h=(N(c[S>>2]|0,q)|0)+(p<<1)|0;c[w>>2]=b[(c[K>>2]|0)+(h<<2)>>1];c[x>>2]=b[(c[K>>2]|0)+(h<<2)+2>>1];h=0}else{j=c[S>>2]|0;n=(N(j,r)|0)+p<<1;i=f+680+(k<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}J=h&1|n;I=h>>1;c[f+608+(h<<3)>>2]=b[(c[i>>2]|0)+((N(j,I)|0)+J<<2)>>1];K=c[S>>2]|0;c[f+608+(h<<3)+4>>2]=b[(c[i>>2]|0)+((N(K,I)|0)+J<<2)+2>>1];h=h+1|0;j=K}}while(0);Yd[c[y>>2]&1](c[z>>2]|0,0,o,h,A,p,r,0,0)}p=p+1|0}r=r+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){q=f+784|0;r=f+640|0;s=f+644|0;t=f+786|0;u=f+740|0;v=f+744|0;p=0;j:while(1){if((p|0)>=(h|0)){R=h;break i}o=p<<1;n=0;while(1){if((n|0)>=(c[U>>2]|0))break;k=(N(o,c[S>>2]|0)|0)+(n<<1)|0;K=(N(c[Y>>2]|0,p)|0)+n|0;if(!((a[(c[_>>2]|0)+K>>0]&10)!=10?1:(c[(c[L>>2]|0)+(K<<2)>>2]&7|0)!=0)){K=c[C>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)h=3;else h=2;K=c[B>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))h=h&1;i=b[q>>1]|0;if(!(i<<16>>16)){c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;i=0}else{i=i&65535;j=e[t>>1]|0;if((c[(c[f>>2]|0)+16>>2]|0)==27)break j;Wi(c[u>>2]|0,p,0);K=c[v>>2]|0;I=b[K+(k<<2)>>1]|0;c[w>>2]=(N(I,j)|0)/(i|0)|0;K=b[K+(k<<2)+2>>1]|0;c[x>>2]=(N(K,j)|0)/(i|0)|0;J=j-i|0;c[r>>2]=(N(J,I)|0)/(i|0)|0;i=(N(J,K)|0)/(i|0)|0}c[s>>2]=i;Yd[c[y>>2]&1](c[z>>2]|0,0,h,0,A,n,p,0,0)}n=n+1|0}p=p+1|0;h=c[V>>2]|0}c[D>>2]=128616;c[D+4>>2]=128655;c[D+8>>2]=1212;Uf(0,0,159675,D);Ub()}else{Xi(f);R=c[V>>2]|0}while(0);K=E+36|0;J=E+40|0;B=f+588|0;C=f+592|0;D=f+596|0;z=0;while(1){if((z|0)>=(R|0))break;E=z<<4;F=z<<3;A=0;while(1){if((A|0)>=(c[U>>2]|0))break;G=(N(c[Y>>2]|0,z)|0)+A|0;if(!((c[(c[L>>2]|0)+(G<<2)>>2]&7|0)!=0?(c[O>>2]|0)!=0:0))T=140;do if((T|0)==140){T=0;y=c[g>>2]|0;n=c[X>>2]|0;o=(c[y>>2]|0)+(A<<4)+(N(E,n)|0)|0;p=c[y+4>>2]|0;w=A<<3;H=c[K>>2]|0;q=N(H,F)|0;y=c[y+8>>2]|0;I=c[J>>2]|0;x=N(I,F)|0;r=c[S>>2]|0;s=(c[B>>2]|0)+((N(r,z)|0)+A<<1<<1)|0;j=0;while(1){if((j|0)==4)break;t=j<<3&8;u=j>>>1<<3;k=0;h=0;while(1){if((k|0)==8)break;v=N(n,k+u|0)|0;i=0;while(1){if((i|0)==8)break;aa=h+(d[o+(i+t+v)>>0]|0)|0;i=i+1|0;h=aa}k=k+1|0}b[s+((N(r,j>>1)|0)+(j&1)<<1)>>1]=(h+4|0)>>>3;j=j+1|0}q=p+w+q|0;p=y+w+x|0;if(!y)break;else{h=0;i=0;k=0}while(1){if((k|0)==8)break;n=N(H,k)|0;o=N(I,k)|0;j=0;while(1){if((j|0)==8)break;aa=i+(d[q+(n+j)>>0]|0)|0;y=h+(d[p+(o+j)>>0]|0)|0;j=j+1|0;h=y;i=aa}k=k+1|0}b[(c[C>>2]|0)+(G<<1)>>1]=(i+4|0)>>>3;b[(c[D>>2]|0)+(G<<1)>>1]=(h+4|0)>>>3}while(0);A=A+1|0}z=z+1|0}Yi(f,c[B>>2]|0,c[U>>2]<<1,R<<1,c[S>>2]|0,1);Yi(f,c[C>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);Yi(f,c[D>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);Zi(c[B>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[S>>2]|0);n=0;while(1){h=c[V>>2]|0;if((n|0)>=(h|0))break;i=n<<4;j=n<<3;h=0;while(1){if((h|0)>=(c[U>>2]|0))break;k=(N(c[Y>>2]|0,n)|0)+h|0;do if(!(c[(c[L>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[_>>2]|0)+k>>0]&2))break;T=c[g>>2]|0;R=(c[T>>2]|0)+(h<<4)+(N(i,c[X>>2]|0)|0)|0;aa=h<<3;S=(c[T+4>>2]|0)+aa+(N(c[K>>2]|0,j)|0)|0;T=c[T+8>>2]|0;aa=T+aa+(N(c[J>>2]|0,j)|0)|0;T=(T|0)==0;_i(f,R,T?0:S,T?0:aa,h,n)}while(0);h=h+1|0}n=n+1|0}if(c[(c[f>>2]|0)+572>>2]&2|0?($i(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,h<<1,c[X>>2]|0,1),aj(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[X>>2]|0,1),Z=c[g>>2]|0,c[Z+8>>2]|0):0){$i(f,c[Z+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);$i(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0);aj(f,c[(c[g>>2]|0)+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);aj(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[P>>2]|0)){h=0;break}k=c[(c[Q>>2]|0)+(i<<2)>>2]|0;h=c[M>>2]|0;do if(h|0){if((a[(c[_>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}while(1){if((h|0)==2)break;zg(f+768+(h<<2)|0);zg(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);l=$;return}function Ti(a){a=a|0;var b=0,d=0;d=c[(c[a>>2]|0)+592>>2]|0;if(!((d|0)!=0?(c[d+32>>2]|0)!=0:0))b=3;if((b|0)==3?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function Ui(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function Vi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+572>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if((e|0)>=5){l=(e|0)>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+8|0;r=b+708|0;s=b+696|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(N(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[s>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=N(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+16>>2]|0)!=27){Wi(c[r>>2]|0,k,0);f=c[h>>2]|0}w=(Od[c[q>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-(Od[c[q>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function Wi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;f=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){e=c[a>>2]|0;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;Uf(e,48,131082,h)}e=f+184|0;kX(e|0)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;wc(a|0,e|0)|0}lX(e|0)|0}l=j;return}function Xi(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ma=l;l=l+128|0;if((l|0)>=(m|0))W(128);ia=ma;Z=ma+116|0;_=ma+112|0;aa=ma+48|0;ba=ma+16|0;la=e+564|0;ga=c[la>>2]|0;t=e+556|0;ha=c[t>>2]|0;h=c[e+560>>2]|0;s=e+704|0;f=c[s>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ka=(c[g+72>>2]|0)+15>>4;ka=(f|0)>(ka|0)?ka:f}else ka=f;x=c[e+584>>2]|0;U=N(h,ga)|0;y=x+(U<<3)|0;U=y+(U<<3)|0;bj(e,Z,_);i=e+712|0;if(c[i>>2]|0)Wi(c[e+708>>2]|0,ka+-1|0,0);V=N(ka,ha)|0;j=e+548|0;q=e+580|0;r=e+696|0;k=c[_>>2]|0;n=c[Z>>2]|0;X=e+680|0;o=e+720|0;Y=e+688|0;h=0;f=0;while(1){if((h|0)>=(V|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;T=(a[(c[q>>2]|0)+g>>0]&8)==0?8:(c[(c[r>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[U+g>>0]=T;if((T|0)!=8){if((c[c[s>>2]>>2]|0)!=0?(p=c[i>>2]|0,(p|0)!=0):0){T=c[la>>2]|0;T=N((N(k,(g|0)/(T|0)|0)|0)+((g|0)%(T|0)|0)|0,n)|0;S=c[X>>2]|0;b[S+(T<<2)>>1]=b[p+(T<<2)>>1]|0;b[S+(T<<2)+2>>1]=b[p+(T<<2)+2>>1]|0;T=g<<2;a[(c[Y>>2]|0)+T>>0]=a[(c[o>>2]|0)+T>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((f|0)>((ha|0)/2|0|0)?(c[(c[e>>2]|0)+572>>2]&1|0)!=0:0){f=0;j=0;b:while(1){if((j|0)>=(ka|0))break;k=N(j,ga)|0;n=(j|0)==0;o=j+1|0;p=(o|0)<(ka|0);q=j+-1|0;g=0;while(1){while(1){if((g|0)>=(ha|0)){j=o;continue b}h=g+k|0;if((a[U+h>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(u=U+(h+-1)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[x+(f<<3)>>2]=g+-1;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!n?(v=U+(h-ga)|0,(a[v>>0]|0)==0):0){a[v>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=q;f=f+1|0}i=g+1|0;if((i|0)<(ha|0)?(w=U+(h+1)|0,(a[w>>0]|0)==0):0){a[w>>0]=1;c[x+(f<<3)>>2]=i;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!p){g=i;continue}h=U+(h+ga)|0;if(a[h>>0]|0){g=i;continue}a[h>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=o;g=i;f=f+1|0}}P=aa+4|0;Q=e+672|0;R=e+608|0;S=e+612|0;T=e+800|0;O=e+804|0;M=f;while(1){f=1;L=0;g=1;while(1){if(!((L|0)<10&((L|0)<2|(f|0)!=0)))break;K=(L|0)>1;J=0;f=0;while(1){if((J|0)>=(M|0))break;G=c[x+(J<<3)>>2]|0;H=c[x+(J<<3)+4>>2]|0;I=(N(H,ga)|0)+G|0;c:do if(!((G^L^H)&1)){B=(G|0)>0;if(B)h=d[U+(I+-1)>>0]|0;else h=0;C=(G+1|0)<(ha|0);if(C)h=h|d[U+(I+1)>>0];A=(H|0)>0;if(A)h=h|d[U+(I-ga)>>0];z=(H+1|0)<(ka|0);if(z)h=h|d[U+(I+ga)>>0];if(!(K&(h&4|0)==0)){D=c[_>>2]|0;F=(N(D,H)|0)+G|0;E=c[Z>>2]|0;F=N(F,E)|0;if(B?($=I+-1|0,(d[U+$>>0]|0)>1):0){e=c[X>>2]|0;g=F-E|0;c[aa>>2]=b[e+(g<<2)>>1];c[P>>2]=b[e+(g<<2)+2>>1];c[ba>>2]=a[(c[Y>>2]|0)+($<<2)>>0];g=1}else g=0;do if(C){h=I+1|0;if((d[U+h>>0]|0)<=1)break;w=c[X>>2]|0;e=E+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(A){if((d[U+(I-ga)>>0]|0)<=1)break;w=c[X>>2]|0;e=F-(N(E,D)|0)|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(I-(c[la>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(z){if((d[U+(I+ga)>>0]|0)<=1){ja=73;break}w=c[X>>2]|0;e=(N(E,D)|0)+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+((c[la>>2]|0)+I<<2)>>0];g=g+1|0}else ja=73;while(0);if((ja|0)==73){ja=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[aa+(k<<3)>>2]|0)+j|0;i=(c[aa+(k<<3)+4>>2]|0)+i|0;e=c[ba+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[ba+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[aa+(g<<3)>>2]=(j|0)/(k|0)|0;c[aa+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[ba+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;n=k?-99999:0;k=k?99999:0;r=k;s=n;p=k;q=n;o=0;while(1){if((o|0)==(g|0))break;e=c[aa+(o<<3)>>2]|0;w=c[aa+(o<<3)+4>>2]|0;v=c[ba+(o<<2)>>2]|0;r=(r|0)>(v|0)?v:r;s=(s|0)>(v|0)?s:v;p=(p|0)>(w|0)?w:p;k=(k|0)>(e|0)?e:k;q=(q|0)>(w|0)?q:w;n=(n|0)>(e|0)?n:e;o=o+1|0}n=j-n-k|0;e=g+1|0;o=aa+(e<<3)|0;c[o>>2]=n;j=i-q-p|0;k=aa+(e<<3)+4|0;c[k>>2]=j;h=h-s-r|0;i=ba+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[o>>2]=(n|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[ba+(g<<2)>>2]=0;c[aa+(g<<3)+4>>2]=0;c[aa+(g<<3)>>2]=0;o=g+1|0;e=c[X>>2]|0;w=b[e+(F<<2)>>1]|0;e=b[e+(F<<2)+2>>1]|0;p=a[(c[Y>>2]|0)+(I<<2)>>0]|0;c[aa+(o<<3)>>2]=w;c[aa+(o<<3)+4>>2]=e;c[ba+(o<<2)>>2]=p;o=g+2|0;p=G<<4;q=H<<4;r=U+(I+-1)|0;s=U+(I+1)|0;t=U+(I-ga)|0;u=U+(I+ga)|0;v=0;g=1073741824;n=0;while(1){if((n|0)>=(o|0))break;k=c[Q>>2]|0;j=k+32|0;k=(c[k>>2]|0)+p+(N(q,c[j>>2]|0)|0)|0;i=c[aa+(n<<3)>>2]|0;c[R>>2]=i;h=c[X>>2]|0;b[h+(F<<2)>>1]=i;i=c[aa+(n<<3)+4>>2]|0;c[S>>2]=i;b[h+(F<<2)+2>>1]=i;h=c[ba+(n<<2)>>2]|0;if((h|0)<0)h=v;else{Yd[c[T>>2]&1](c[O>>2]|0,h,1,0,R,G,H,0,0);e:do if(B){if((d[r>>0]|0)>1){h=0;i=0}else{i=0;break}while(1){if((h|0)==16)break e;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+-1)>>0]|0)-(d[k+na>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}else i=0;while(0);f:do if(C){if((d[s>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break f;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+15)>>0]|0)-(d[k+(na+16)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);g:do if(A){if((d[t>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break g;na=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);h:do if(z){if((d[u>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break h;na=c[j>>2]|0;na=(d[k+((na*15|0)+h)>>0]|0)-(d[k+((na<<4)+h)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);na=(i|0)>(g|0);h=na?v:n;g=na?g:i}v=h;n=n+1|0}i=c[aa+(v<<3)>>2]|0;c[R>>2]=i;j=c[aa+(v<<3)+4>>2]|0;c[S>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(E|0))break;k=g+F|0;h=0;while(1){if((h|0)==(E|0))break;C=c[X>>2]|0;na=(N(D,h)|0)+k|0;b[C+(na<<2)>>1]=i;b[C+(na<<2)+2>>1]=j;h=h+1|0}g=g+1|0}Yd[c[T>>2]&1](c[O>>2]|0,c[ba+(v<<2)>>2]|0,1,0,R,G,H,0,0);do if((c[R>>2]|0)==(w|0)){if((c[S>>2]|0)!=(e|0))break;a[U+I>>0]=2;g=0;break c}while(0);a[U+I>>0]=4;g=0;f=f+1|0}}while(0);J=J+1|0}L=L+1|0}if(!g){f=0;k=0}else break a;while(1){if((k|0)>=(M|0))break;i=c[x+(k<<3)>>2]|0;h=c[x+(k<<3)+4>>2]|0;j=(N(h,ga)|0)+i|0;g=U+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?(ca=U+(j+-1)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[y+(f<<3)>>2]=i+-1;c[y+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(da=U+(j-ga)|0,(a[da>>0]|0)==0):0){a[da>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(ha|0)?(ea=U+(j+1)|0,(a[ea>>0]|0)==0):0){a[ea>>0]=1;c[y+(f<<3)>>2]=g;c[y+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ka|0)?(fa=U+(j+ga)|0,(a[fa>>0]|0)==0):0){a[fa>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(V|0))break;else{na=y;M=f;y=x;x=na}}c[ia>>2]=131036;c[ia+4>>2]=128655;c[ia+8>>2]=716;Uf(0,0,159675,ia);Ub()}else{k=e+608|0;n=e+612|0;o=e+800|0;i=e+804|0;h=0;while(1){if((h|0)<(ka|0))g=0;else break a;while(1){if((g|0)>=(c[t>>2]|0))break;j=(N(c[la>>2]|0,h)|0)+g|0;f=c[s>>2]|0;if(!f)f=2;else f=c[f>>2]|0?1:2;if((c[(c[r>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[q>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[n>>2]=0;Yd[c[o>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);l=ma;return}function Yi(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=C;A=C+8|0;B=C+4|0;z=Jh(h,g<<3)|0;c[A>>2]=z;x=Jh(h,g<<4)|0;c[B>>2]=x;a:do if((x|0)!=0&(z|0)!=0){x=d+564|0;z=d+696|0;w=d+580|0;p=0;while(1){if((p|0)>=(g|0)){p=0;break}q=p>>i;r=N(p,h)|0;n=0;j=1024;d=-1;while(1){if((n|0)>=(f|0)){k=f;j=1024;d=-1;break}v=(N(c[x>>2]|0,q)|0)+(n>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=n+r|0;else{k=n+r|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+2>>1]=j;c[(c[B>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,q)|0)+(o>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=o+r|0}else{j=o+r|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)>>1]=n;c[(c[B>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((p|0)>=(f|0)){k=0;break}q=p>>i;j=1024;d=-1;n=0;while(1){if((n|0)>=(g|0)){k=g;j=1024;d=-1;break}v=(N(c[x>>2]|0,n>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=(N(n,h)|0)+p|0;else{k=(N(n,h)|0)+p|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+6>>1]=j;c[(c[B>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,o>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=(N(o,h)|0)+p|0}else{j=(N(o,h)|0)+p|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)+4>>1]=n;c[(c[B>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((k|0)>=(g|0))break a;n=k>>i;o=N(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;v=(N(c[x>>2]|0,n)|0)+(d>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&120|0)==0?a[(c[w>>2]|0)+v>>0]&4:0){p=c[B>>2]|0;q=d+o|0;r=c[A>>2]|0;j=0;s=0;t=0;u=0;v=0;while(1){if((j|0)==4)break;D=c[p+(q<<4)+(j<<2)>>2]|0;D=268435456/((D>>>0>1?D:1)>>>0)|0;F=b[r+(q<<3)+(j<<1)>>1]|0;F=ZW(F|0,((F|0)<0)<<31>>31|0,D|0,0)|0;F=TW(F|0,y|0,s|0,t|0)|0;E=y;D=TW(u|0,v|0,D|0,0)|0;j=j+1|0;s=F;t=E;u=D;v=y}F=XW(u|0,v|0,2,0)|0;F=TW(F|0,y|0,s|0,t|0)|0;F=XW(F|0,y|0,u|0,v|0)|0;b[e+(q<<1)>>1]=F}d=d+1|0}k=k+1|0}}else Uf(c[d>>2]|0,16,131007,j);while(0);Qf(A);Qf(B);l=C;return}function Zi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0)){c=1;break}g=N(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;b[l>>1]=((((j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;j=a+((N(f,e)|0)+c<<1)|0;k=b[j>>1]|0;l=f+1|0;b[j>>1]=((((k<<3)-d-(b[a+((N(l,e)|0)+c<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=l}c=c+1|0}return}function _i(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>1;p=b[(c[u>>2]|0)+((N(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)>>1]|0;p=p<<16>>16>0?((p<<16>>16<2040?p:2040)&65535)>>>3&255:0;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;a[e+(j+q+(N(c[t>>2]|0,s)|0))>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(N(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;a:do if(g|0){m=j<<16>>16>0?((j<<16>>16<2040?j:2040)&65535)>>>3&255:0;n=v+36|0;e=k<<16>>16>0?((k<<16>>16<2040?k:2040)&65535)>>>3&255:0;l=v+40|0;k=0;while(1){if((k|0)==8)break a;else j=0;while(1){if((j|0)==8)break;a[f+((N(c[n>>2]|0,k)|0)+j)>>0]=m;a[g+((N(c[l>>2]|0,k)|0)+j)>>0]=e;j=j+1|0}k=k+1|0}}while(0);return}function $i(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0;Q=l;l=l+16|0;if((l|0)>=(m|0))W(16);O=Q+4|0;J=Q;bj(e,O,J);P=c[O>>2]>>j;c[O>>2]=P;O=N(c[J>>2]|0,P)|0;c[J>>2]=O;J=g+-1|0;K=e+580|0;L=e+564|0;M=e+696|0;E=e+680|0;D=0;while(1){if((D|0)>=(h|0))break;F=D>>j;G=N(D,i)|0;H=N(O,D)|0;g=0;a:while(1){if((g|0)>=(J|0))break;z=c[K>>2]|0;n=N(c[L>>2]|0,F)|0;k=n+(g>>j)|0;A=a[z+k>>0]|0;I=g+1|0;n=n+(I>>j)|0;z=a[z+n>>0]|0;o=c[M>>2]|0;q=g+G<<3;p=c[E>>2]|0;g=(N(P,g)|0)+H|0;e=(N(P,I)|0)+H|0;B=(A&14)!=0;C=(z&14)!=0;if(!((z|A)&14)){g=I;continue}if(((c[o+(k<<2)>>2]|c[o+(n<<2)>>2])&7|0)==0?(A=(b[p+(g<<2)>>1]|0)-(b[p+(e<<2)>>1]|0)|0,z=(b[p+(e<<2)+2>>1]|0)+(b[p+(g<<2)+2>>1]|0)|0,(((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)|0)<2):0){g=I;continue}t=q|7;u=q|6;v=q+8|0;w=q+9|0;A=B&C;x=q|5;y=q|4;z=q+10|0;n=q+11|0;e=0;while(1){if((e|0)==8){g=I;continue a}o=N(e,i)|0;p=f+(o+t)|0;q=d[p>>0]|0;r=f+(o+u)|0;S=q-(d[r>>0]|0)|0;s=f+(v+o)|0;g=d[s>>0]|0;R=g-q|0;k=f+(w+o)|0;g=(d[k>>0]|0)-g|0;g=((R|0)>-1?R:0-R|0)-(((S|0)>-1?S:0-S|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(R|0)<0?0-g|0:g;if(g|0){g=A?g:(g<<4|0)/9|0;if(B){a[p>>0]=a[129709+((g*7>>4)+q)>>0]|0;a[r>>0]=a[129709+((g*5>>4)+(d[r>>0]|0))>>0]|0;S=f+(o+x)|0;a[S>>0]=a[129709+((g*3>>4)+(d[S>>0]|0))>>0]|0;S=f+(o+y)|0;a[S>>0]=a[129709+((g>>4)+(d[S>>0]|0))>>0]|0}if(C){a[s>>0]=a[129709+((d[s>>0]|0)-(g*7>>4))>>0]|0;a[k>>0]=a[129709+((d[k>>0]|0)-(g*5>>4))>>0]|0;S=f+(z+o)|0;a[S>>0]=a[129709+((d[S>>0]|0)-(g*3>>4))>>0]|0;S=f+(n+o)|0;a[S>>0]=a[129709+((d[S>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}D=D+1|0}l=Q;return}function aj(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;T=l;l=l+16|0;if((l|0)>=(m|0))W(16);R=T+4|0;M=T;bj(e,R,M);S=c[R>>2]>>j;c[R>>2]=S;R=N(c[M>>2]|0,S)|0;c[M>>2]=R;M=h+-1|0;O=e+580|0;P=e+564|0;Q=e+696|0;z=e+680|0;A=i*7|0;B=i*6|0;C=i<<3;D=i*9|0;E=i*5|0;F=i<<2;G=i*10|0;H=i*11|0;h=0;a:while(1){if((h|0)>=(M|0))break;I=h>>j;J=h+1|0;K=J>>j;L=N(h,i)|0;u=N(R,h)|0;v=N(R,J)|0;t=0;while(1){if((t|0)>=(g|0)){h=J;continue a}U=c[O>>2]|0;e=t>>j;k=c[P>>2]|0;h=(N(k,I)|0)+e|0;s=a[U+h>>0]|0;e=(N(k,K)|0)+e|0;U=a[U+e>>0]|0;k=c[Q>>2]|0;w=t+L<<3;n=c[z>>2]|0;q=N(S,t)|0;o=q+u|0;p=n+(o<<2)|0;q=q+v|0;r=n+(q<<2)|0;x=(s&14)!=0;y=(U&14)!=0;b:do if((U|s)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(U=(b[p>>1]|0)-(b[r>>1]|0)|0,s=(b[n+(q<<2)+2>>1]|0)+(b[n+(o<<2)+2>>1]|0)|0,(((s|0)>-1?s:0-s|0)+((U|0)>-1?U:0-U|0)|0)<2):0)break;s=x&y;e=0;while(1){if((e|0)==8)break b;n=e+w|0;o=f+(n+A)|0;p=d[o>>0]|0;q=f+(n+B)|0;V=p-(d[q>>0]|0)|0;r=f+(n+C)|0;h=d[r>>0]|0;U=h-p|0;k=f+(n+D)|0;h=(d[k>>0]|0)-h|0;h=((U|0)>-1?U:0-U|0)-(((V|0)>-1?V:0-V|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(U|0)<0?0-h|0:h;if(h|0){h=s?h:(h<<4|0)/9|0;if(x){a[o>>0]=a[129709+((h*7>>4)+p)>>0]|0;a[q>>0]=a[129709+((h*5>>4)+(d[q>>0]|0))>>0]|0;V=f+(n+E)|0;a[V>>0]=a[129709+((h*3>>4)+(d[V>>0]|0))>>0]|0;V=f+(n+F)|0;a[V>>0]=a[129709+((h>>4)+(d[V>>0]|0))>>0]|0}if(y){a[r>>0]=a[129709+((d[r>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[129709+((d[k>>0]|0)-(h*5>>4))>>0]|0;V=f+(n+G)|0;a[V>>0]=a[129709+((d[V>>0]|0)-(h*3>>4))>>0]|0;V=f+(n+H)|0;a[V>>0]=a[129709+((d[V>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);t=t+1|0}}l=T;return}function bj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;do if((c[(c[a>>2]|0)+16>>2]|0)==27)if(!(c[a+788>>2]|0)){c[f>>2]=130989;c[f+4>>2]=128655;c[f+8>>2]=47;Uf(0,0,159675,f);Ub()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;l=g;return}function cj(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116064+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){Uf(0,16,151423,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122033+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122545+a>>0]|0}while(0);l=i;return a|0}function dj(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122033+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122545+a>>0]|0|0}function ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;rj(0,a,b,f);l=e;return}function fj(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function gj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function hj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122033+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123057+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116064+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function ij(a){a=a|0;return c[a+8>>2]|0}function jj(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{Uf(b,40,131679,d);a=0}break}default:a=1}l=d;return a|0}function kj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=(e|0)!=0;if(j)h=0;else h=(c[b+668>>2]|0)!=0;i=h?b+768|0:131411;k=h?b+960|0:131475;if(!(fj(a)|0))return 0;l=qj(a,f,16,131539,h?b+672|0:131539)|0;m=f+16|0;l=qj(a,m,16,131539,f)|0|l;m=l|(qj(a,f+32|0,16,131539,m)|0);l=f+48|0;m=m|(qj(a,l,16,131555,h?b+720|0:131555)|0);h=f+64|0;l=m|(qj(a,h,16,131555,l)|0);h=l|(qj(a,f+80|0,16,131555,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=qj(a,g,64,131411,i)|0|h;f=g+192|0;h=h|(qj(a,f,64,131475,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=qj(a,m,64,131411,g)|0|h;h=g+256|0;l=l|(qj(a,h,64,131475,f)|0);m=l|(qj(a,g+128|0,64,131411,m)|0);h=m|(qj(a,g+320|0,64,131475,h)|0)}}return ((h|0)==0?e:h)|0}function lj(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(123928+(f*88|0))>>0]|0;e=e+1|0}return}function mj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;oj(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)pj(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function nj(a,b){a=a|0;b=b|0;zg(a+128+(b<<2)|0);return}function oj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(IT(a+68+(e<<4)|0,b,16)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+4828+(e*5632|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=(d[123840+g>>0]|0)+2|0;f=d[123752+g>>0]|0;b=0;while(1){if((b|0)==16)break;j=b>>2;c[a+4828+(h*5632|0)+(g<<6)+((b<<2&12|j)<<2)>>2]=(N(d[a+68+(h<<4)+b>>0]|0,d[(j&1)+(b&1)+(123682+(f*3|0))>>0]|0)|0)<>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(IT(a+164+(e<<6)|0,b,64)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+38620+(e*22528|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=d[123840+g>>0]|0;f=d[123752+g>>0]|0;b=0;while(1){if((b|0)==64)break;c[a+38620+(h*22528|0)+(g<<8)+((b<<3&56|b>>3)<<2)>>2]=(N(d[a+164+(h<<6)+b>>0]|0,d[(d[123700+(b>>>1&12|b&3)>>0]|0)+(123716+(f*6|0))>>0]|0)|0)<=(m|0))W(16);n=o;k=(f|0)==16?131571:131588;a:do if(fj(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=hj(b)|0;if((h+128|0)>>>0>255){i=7;break}h=h+j&255}if(!(h|i)){i=9;break}p=h|0?h:j;a[e+(d[k+i>>0]|0)>>0]=p;i=i+1|0;j=p}if((i|0)==7){c[n>>2]=h;Uf(0,16,131652,n);h=-1094995529;break}else if((i|0)==9){gX(e|0,g|0,f|0)|0;h=0;break}}else{gX(e|0,h|0,f|0)|0;h=0}while(0);l=o;return h|0}function rj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);Vf(b,24,c,d);Uf(b,24,131744,e);if(a|0)Uf(b,24,131920,e+8|0);l=e;return}function sj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function tj(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=n+24|0;i=n+16|0;h=n+8|0;f=n;do if(fj(a)|0){e=gj(a,8)|0;if((e|0)==255){c[d+100>>2]=gj(a,16)|0;c[d+104>>2]=gj(a,16)|0;g=8;break}if(e>>>0<17){e=105068+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{Uf(b,16,132722,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(fj(a)|0)fj(a)|0;g=fj(a)|0;c[d+108>>2]=g;if(g|0?(gj(a,3)|0,c[d+112>>2]=fj(a)|0,g=fj(a)|0,c[d+116>>2]=g,g|0):0){e=d+120|0;c[e>>2]=gj(a,8)|0;f=d+124|0;c[f>>2]=gj(a,8)|0;g=d+128|0;c[g>>2]=gj(a,8)|0;if(!(xj(c[e>>2]|0)|0))c[e>>2]=2;if(!(yj(c[f>>2]|0)|0))c[f>>2]=2;if(!(zj(c[g>>2]|0)|0))c[g>>2]=2}if(fj(a)|0){c[b+332>>2]=(cj(a)|0)+1;cj(a)|0}if(Aj(a)|0?(vj(a)|0)<10:0){Uf(b,24,132744,h);e=0;break}h=fj(a)|0;e=d+132|0;c[e>>2]=h;if(h|0){f=Bj(a,32)|0;g=Bj(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;Uf(b,16,132759,i);c[e>>2]=0}c[d+144>>2]=fj(a)|0}i=fj(a)|0;e=d+1152|0;c[e>>2]=i;if(i|0?(Cj(a,b,d)|0)<0:0){e=-1094995529;break}i=fj(a)|0;f=d+1156|0;c[f>>2]=i;if(i|0?(Cj(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))fj(a)|0;c[d+1160>>2]=fj(a)|0;if((vj(a)|0)!=0?(i=fj(a)|0,j=d+660|0,c[j>>2]=i,(i|0)!=0):0){fj(a)|0;cj(a)|0;cj(a)|0;cj(a)|0;cj(a)|0;f=d+664|0;c[f>>2]=cj(a)|0;cj(a)|0;if((vj(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;Uf(b,16,132820,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);l=n;return e|0}function vj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(ij(a)|0)|0}function wj(a,b){a=a|0;b=b|0;zg(a+(b<<2)|0);return}function xj(a){a=a|0;if(a>>>0<23)a=c[102368+(a<<2)>>2]|0;else a=0;return a|0}function yj(a){a=a|0;if(a>>>0<19)a=c[102292+(a<<2)>>2]|0;else a=0;return a|0}function zj(a){a=a|0;if(a>>>0<15)a=c[102232+(a<<2)>>2]|0;else a=0;return a|0}function Aj(a){a=a|0;return Gj(a)|0}function Bj(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=gj(a,b)|0;break}else{b=b+-16|0;c=(gj(a,16)|0)<=(m|0))W(16);e=h;f=dj(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;Uf(b,16,132860,e);b=-1094995529}else{gj(a,4)|0;gj(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;Dj(a);Dj(a);fj(a)|0;b=b+1|0}c[d+1172>>2]=(gj(a,5)|0)+1;c[d+1176>>2]=(gj(a,5)|0)+1;c[d+1180>>2]=(gj(a,5)|0)+1;c[d+1164>>2]=gj(a,5)|0;c[d+1168>>2]=g;b=0}l=h;return b|0}function Dj(a){a=a|0;var b=0,c=0,e=0;e=Ej(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Fj(a,b);Bj(a,b+1|0)|0;return}function Ej(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Bj(d,32)|0;l=b;return a|0}function Fj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Gj(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function Hj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Kj(a)|0)|0}function Ij(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Jj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Kj(a){a=a|0;return c[a+8>>2]|0}function Lj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){c[a+16>>2]=$j(b,c[g+1176>>2]|0)|0;c[a+12>>2]=$j(b,c[g+1180>>2]|0)|0}if(c[g+1160>>2]|0){h=Jj(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[133375+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Jj(b,1)|0){i=1<<(Jj(b,2)|0);c[k>>2]=c[k>>2]|i;Wj(b,1);Wj(b,5);i=Jj(b,1)|0;Wj(b,1);Wj(b,1);Wj(b,8);if(!i){if((Jj(b,1)|0?(Wj(b,6),Jj(b,1)|0):0)?(Wj(b,6),Jj(b,1)|0):0)Wj(b,5)}else{Wj(b,6);Wj(b,6);Wj(b,5)}i=c[h>>2]|0;if((i|0)>0)Wj(b,i)}g=g+1|0}b=c[j>>2]|0;c[n>>2]=c[k>>2];c[n+4>>2]=b;Uf(f,48,133384,n)}c[a>>2]=1;g=0}else{Uf(f,16,133333,j);g=-1397768184}while(0);l=o;return g|0}function Mj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Jj(b,8)|0)==255){Wj(b,8);c=c+-8|0}else c=c+-7|0;Wj(b,8);Wj(b,8);d=$j(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=bk(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=ck(a+28|0,b,c)|0;break a}while(0);Wj(b,c<<3);c=0}while(0);return c|0}function Nj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=j+4|0;if((e+-16|0)>>>0<=2147483614){f=e+16|0;i=ag(e+17|0)|0;if(!i)e=-12;else{e=0;while(1){if((e|0)>=(f|0))break;a[i+e>>0]=Jj(d,8)|0;e=e+1|0}a[i+e>>0]=0;f=i+16|0;c[g>>2]=h;d=(_U(f,133301,g)|0)==1;e=c[h>>2]|0;if(d&(e|0)>0)c[b>>2]=e;if(d&(e|0)==1?(JT(f,133316,16)|0)==0:0)c[b>>2]=67;Rf(i);e=0}}else e=-1094995529;l=j;return e|0}function Oj(a,b){a=a|0;b=b|0;c[a>>2]=Yj(b)|0;Wj(b,4);return}function Pj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;f=ak(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;c[a+4+(d<<2)>>2]=$j(b,c[f>>2]|0)|0;Wj(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;c[a+4+(d<<2)>>2]=$j(b,c[e>>2]|0)|0;Wj(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;Uf(e,16,133249,i);d=g?-1094995529:-1397768184}l=j;return d|0}function Qj(a,b){a=a|0;b=b|0;var d=0,e=0;c[a+4>>2]=Yj(b)|0;d=Xj(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){d=a+12|0;c[d>>2]=Jj(b,7)|0;e=a+24|0;c[e>>2]=Xj(b)|0;c[a+20>>2]=Jj(b,6)|0;Wj(b,3);c[a+28>>2]=Xj(b)|0;Wj(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)Wj(b,16);Wj(b,8);c[a+16>>2]=Yj(b)|0}Zj(b);return}function Rj(a,b){a=a|0;b=b|0;var d=0;d=(Xj(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=Xj(b)|0;c[a+12>>2]=Xj(b)|0;c[a+4>>2]=Jj(b,16)|0;Yj(b)|0;Zj(b)}return}function Sj(c,d){c=c|0;d=d|0;var e=0;e=(Jj(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Jj(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{b[c+2>>1]=Jj(d,16)|0;break}case 3:{b[c+4>>1]=Jj(d,16)|0;break}default:{}}a[c+6>>0]=Jj(d,8)|0;a[c+7>>0]=Jj(d,8)|0;a[c+8>>0]=Jj(d,8)|0;a[c+9>>0]=Jj(d,8)|0;break}case 1:{a[c+10>>0]=Jj(d,8)|0;b[c+12>>1]=Jj(d,16)|0;break}default:{}}return}function Tj(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=Jj(b,8)|0;return}function Uj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Vj(a){a=a|0;var b=0;b=0-(Kj(a)|0)&7;if(b|0)Wj(a,b);return}function Wj(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Xj(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function Yj(a){a=a|0;var b=0,c=0,e=0;e=_j(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Uj(a,b);return ($j(a,b+1|0)|0)+-1|0}function Zj(a){a=a|0;Wj(a,1);return}function _j(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=$j(d,32)|0;l=b;return a|0}function $j(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Jj(a,b)|0;break}else{b=b+-16|0;c=(Jj(a,16)|0)<>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122033+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122545+a>>0]|0|0}function bk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){Wj(d,1);f=Jj(d,1)|0;Wj(d,6);if(f)if((e|0)<2)b=-1094995529;else{Wj(d,4);a[b+4>>0]=Jj(d,4)|0;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function ck(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Jj(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}Wj(d,8);e=e+1|0}}Wj(d,1);if(((Jj(d,1)|0)!=0?(Wj(d,1),g=Jj(d,5)|0,Wj(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=ZW(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=TW(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=dk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Jj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Jj(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Jj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}Wj(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function dk(b,c){b=b|0;c=c|0;do if(c){c=$f(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){Qf(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{Qf(b);c=0}while(0);return c|0}function ek(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;if((l|0)>=(m|0))W(64);r=D+56|0;q=D+48|0;w=D+32|0;u=D+24|0;v=D+16|0;f=D;z=c[d>>2]|0;C=d+21788|0;t=c[C>>2]|0;A=d+868|0;B=c[A>>2]|0;y=c[c[z+24312>>2]>>2]|0;b=c[y+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[y+36>>2];b=kk(d,b)|0;a:do if((b|0)>=0){p=d+21816|0;c[p>>2]=-1;if((c[z+26036>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<>2])|0)){c[f>>2]=134505;c[f+4>>2]=133479;c[f+8>>2]=2536;Uf(0,0,159675,f);Ub()}if(c[z+25708>>2]|0)c[A>>2]=0;x=z+26376|0;if(!(c[x>>2]|0))b=(c[z+26380>>2]|0)!=3;else b=1;c[d+21820>>2]=b&1;y=z+4|0;if(((((c[(c[y>>2]|0)+696>>2]&2|0)==0?(c[z+26380>>2]|0)==3:0)?(h=c[z+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(s=(N(c[z+27012>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[z+27020>>2]|0)+-1|0,g=(s|0)>(g|0)?g:s,!((s|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[z+28212>>2]|0)+4>>2]|0)){o=d+21792|0;f=z+27012|0;i=d+21812|0;n=d+4|0;j=z+26380|0;k=z+27008|0;e=t;while(1){w=(N(c[f>>2]|0,c[o>>2]|0)|0)+(c[C>>2]|0)|0;b=c[i>>2]|0;if((w|0)>=(b|0)){f=46;break}b=wk(z,d)|0;if((b|0)<=-1){f=52;break}sk(z,d);if(c[x>>2]|0){c[o>>2]=(c[o>>2]|0)+1;b=wk(z,d)|0;if((b|0)<=-1){f=50;break}sk(z,d);c[o>>2]=(c[o>>2]|0)+-1}b=(c[C>>2]|0)+1|0;c[C>>2]=b;if((b|0)>=(c[f>>2]|0)){fk(z,d,e,b);c[C>>2]=0;uk(z,d);b=c[o>>2]|0;e=b+1|0;c[o>>2]=e;if(!(c[x>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[o>>2]=e}}else{b=b+2|0;c[o>>2]=b;if((b|0)<(c[k>>2]|0)){vk(z,d);e=c[o>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=nk(n)|0;if((g|0)>=1){e=h;continue}if((c[p>>2]|0)<1){f=68;break}else e=h}if((f|0)==46){B=c[y>>2]|0;c[q>>2]=b;Uf(B,16,134632,q);qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[o>>2]|0)+-1|0;c[o>>2]=e}else if((f|0)==52)e=c[o>>2]|0;else if((f|0)==61){b=nk(n)|0;do if(b|0){if((b|0)>0?(c[(c[y>>2]|0)+580>>2]&262144|0)==0:0)break;qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,e,112);b=-1094995529;break a}while(0);qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,e,112);break}else if((f|0)==68){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[C>>2]|0;if(g|0){qk(d,b,e,f,c[o>>2]|0,14);b=-1094995529;break a}qk(d,b,e,f+-1|0,c[o>>2]|0,112);b=c[C>>2]|0;if((b|0)<=(h|0))break;fk(z,d,h,b);break}B=c[y>>2]|0;c[r>>2]=c[C>>2];c[r+4>>2]=e;Uf(B,16,134736,r);qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);break a}else{b=d+4|0;lk(b);q=d+32856|0;s=c[b>>2]|0;s=s+((mk(b)|0)/8|0)|0;b=ok(q,s,((nk(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;pk(z,d);s=d+21792|0;i=z+27012|0;j=d+21812|0;k=z+25700|0;r=d+32872|0;p=d+32876|0;n=z+27008|0;o=z+26380|0;h=t;b=c[s>>2]|0;while(1){t=(N(c[i>>2]|0,b)|0)+(c[C>>2]|0)|0;b=c[j>>2]|0;if((t|0)>=(b|0)){f=19;break}b=rk(z,d)|0;if((b|0)>-1?(sk(z,d),(c[x>>2]|0)!=0):0){c[s>>2]=(c[s>>2]|0)+1;b=rk(z,d)|0;if((b|0)>-1)sk(z,d);c[s>>2]=(c[s>>2]|0)+-1}g=tk(q)|0;e=c[r>>2]|0;f=c[p>>2]|0;if((c[k>>2]&16384|0)!=0&e>>>0>(f+2|0)>>>0){f=26;break}if(e>>>0>(f+2|0)>>>0){t=c[y>>2]|0;c[u>>2]=f-e;Uf(t,48,134664,u)}if((b|0)<0){f=31;break}b=c[r>>2]|0;e=c[p>>2]|0;if(b>>>0>(e+4|0)>>>0){f=33;break}b=(c[C>>2]|0)+1|0;c[C>>2]=b;do if((b|0)>=(c[i>>2]|0)){fk(z,d,h,b);c[C>>2]=0;uk(z,d);b=c[s>>2]|0;c[s>>2]=b+1;if(!(c[x>>2]|0)){if((c[o>>2]|0)==3){e=0;break}c[s>>2]=b+2;e=0;break}else{t=b+2|0;c[s>>2]=t;if((t|0)>=(c[n>>2]|0)){e=0;break}vk(z,d);e=0;break}}else e=h;while(0);b=c[s>>2]|0;if(g|0){f=43;break}if((b|0)>=(c[n>>2]|0)){f=43;break}else h=e}if((f|0)==19){B=c[y>>2]|0;c[v>>2]=b;Uf(B,16,134632,v);qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}else if((f|0)==26){qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,c[s>>2]|0,112);b=c[C>>2]|0;if((b|0)<(h|0))break;fk(z,d,h,b+1|0);break}else if((f|0)==31){e=c[p>>2]|0;b=c[r>>2]|0}else if((f|0)!=33)if((f|0)==43){qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,b,112);b=c[C>>2]|0;if((b|0)<=(e|0))break;fk(z,d,e,b);break}B=c[y>>2]|0;A=c[s>>2]|0;c[w>>2]=c[C>>2];c[w+4>>2]=A;c[w+8>>2]=e-b;Uf(B,16,134689,w);qk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}while(0);c[A>>2]=B;b=0}while(0);l=D;return b|0}function fk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;aa=e+21792|0;_=b+26376|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25664|0;Y=c[X>>2]|0;Z=16>>>(c[b+25680>>2]|0);if(!(c[b+25708>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28212|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{I=b+27016|0;J=e+21796|0;K=b+24364|0;i=e+21788|0;L=b+24316|0;M=e+21772|0;O=b+28216|0;P=e+21776|0;Q=e+21828|0;R=e+21780|0;S=e+21784|0;l=b+28212|0;T=b+24340|0;k=e+852|0;j=e+856|0;U=e+21832|0;V=e+27796|0;W=1-Z|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;H=f<(ba|0))break;F=(N(c[I>>2]|0,E)|0)+f|0;c[J>>2]=F;G=c[(c[K>>2]|0)+(F<<2)>>2]|0;t=(c[_>>2]|0)==0;h=G>>>7&1;if(t)h=c[Q>>2]|0;else{c[Q>>2]=h;c[U>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[L>>2]|0;p=c[M>>2]|0;m=(c[C>>2]|0)+((N(p,E)|0)+H<<4)|0;s=c[(c[O>>2]|0)+12>>2]|0;z=(s|0)==3;D=N(8<<(z&1),H)|0;r=c[P>>2]|0;o=N(N(E,Z)|0,r)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(h){h=p<<1;c[R>>2]=h;q=r<<1;c[S>>2]=q;if(!(E&1)){D=n;C=o;p=h}else{C=N(W,r)|0;m=m+(N(p,-15)|0)|0;D=n+C|0;C=o+C|0;p=h}}else{c[R>>2]=p;c[S>>2]=r;D=n;C=o;q=r}w=c[X>>2]|0;x=(s|0)==2;v=m+(0-p)|0;B=0-q|0;y=D+B|0;B=C+B|0;do if(!t){h=(c[U>>2]|0)!=0;if(!(E&1))if(h){h=0;u=f;A=33;break}else break;if(!h){t=c[V>>2]|0;h=v+(p*15|0)|0;s=h;A=c[s+4>>2]|0;u=t+(f*96|0)|0;c[u>>2]=c[s>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;s=t+(f*96|0)+8|0;c[s>>2]=c[u>>2];c[s+4>>2]=A;s=(w|0)!=0;h=h+16|0;if(s){A=h;u=c[A+4>>2]|0;r=t+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=t+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}do if(z){h=q*15|0;n=y+h|0;r=n;o=c[r>>2]|0;r=c[r+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=o;c[A+4>>2]=r;A=n+8|0;u=c[A+4>>2]|0;s=t+(f*96|0)+40|0;c[s>>2]=c[A>>2];c[s+4>>2]=u;n=n+16|0;s=n;u=c[s+4>>2]|0;A=t+(f*96|0)+48|0;c[A>>2]=c[s>>2];c[A+4>>2]=u;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+56|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+64|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=h+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+72|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=h+16|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+80|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=88;h=h+8|0;break}else{A=t+(f*96|0)+16|0;c[A>>2]=o;c[A+4>>2]=r;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+24|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+32|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=40;h=h+8|0;break}}else if(x){r=q*15|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q*7|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);A=h;u=c[A+4>>2]|0;h=t+(f*96|0)+n|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=1;u=c[i>>2]|0;A=33}else{h=1;u=f;A=33}}else{h=1;u=f;A=33}while(0);if((A|0)==33){A=0;t=c[e+27796+(h<<2)>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;o=t+(u*96|0)|0;c[o>>2]=c[s>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[o>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;o=t+(u*96|0)+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[o>>2];c[w+4>>2]=v}do if(z){h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;z=h+8|0;y=c[z+4>>2]|0;n=t+(u*96|0)+40|0;c[n>>2]=c[z>>2];c[n+4>>2]=y;n=h+16|0;y=n;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;n=n+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+64|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=h+8|0;B=c[n+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[n>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+80|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=88;h=h+8|0;break}else{z=t+(u*96|0)+16|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+32|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=40;h=h+8|0;break}}else if(x){r=q<<4;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q<<3;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+n|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(gk(b,e,G)|0)){G=c[l>>2]|0;F=(c[T>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){ik(b,e,f,E,m,D,C,p,q);break}else{hk(b,e,f,E,m,D,C,p,q);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return} +function sR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=$h(c[b>>2]|0,262540,f,2)|0;if(!f){d=7;break}h=f+4|0;e=RQ(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=ai(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=6;break}}if((d|0)==6){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;Uf(a,16,159424,i);Dg(g);break}else if((d|0)==7){Dg(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);l=j;return e|0}function tR(a,b){a=a|0;b=b|0;return sR(a,b,0)|0}function uR(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[101804+(a*20|0)+16>>2]|0}else a=-1;return a|0}function vR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=o;if((f|0)<=-1){c[g>>2]=159462;c[g+4>>2]=159478;c[g+8>>2]=102;Uf(0,0,159675,g);Ub()}if(!f){f=LQ()|0;f=(f|0)>1?f+1|0:1}k=(e|0)==0;j=f+(k<<31>>31)|0;n=Lg(120)|0;c[a>>2]=n;a:do if(!n)f=-12;else{if(j|0?(i=QQ(j,88)|0,c[n>>2]=i,(i|0)==0):0){Qf(a);f=-12;break}c[n+108>>2]=b;c[n+112>>2]=d;c[n+116>>2]=e;b=n+4|0;c[b>>2]=f;g=n+8|0;c[n+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;Cc(n+24|0,0)|0;uc(n+52|0,0)|0;c[n+100>>2]=0;g=0;while(1){if((g|0)>=(j|0))break a;p=c[n>>2]|0;i=p+(g*88|0)|0;c[i>>2]=n;d=p+(g*88|0)+4|0;Cc(d|0,0)|0;e=p+(g*88|0)+32|0;uc(e|0,0)|0;kX(d|0)|0;h=p+(g*88|0)+84|0;c[h>>2]=0;i=xc(p+(g*88|0)+80|0,0,20,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;wc(e|0,d|0)|0}lX(d|0)|0;g=g+1|0}c[b>>2]=g+(k&1);lX(d|0)|0;tc(e|0)|0;Bc(d|0)|0;xR(a);f=0-i|0}while(0);l=o;return f|0}function wR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;kX(h|0)|0;i=a+32|0;vc(i|0)|0;j=g+104|0;b=a+84|0;d=g+24|0;e=g+100|0;f=g+52|0;while(1){c[b>>2]=1;a=1;while(1){if(!a)break;wc(i|0,h|0)|0;a=c[b>>2]|0}if(c[j>>2]|0)break;if(!(yR(g)|0))continue;kX(d|0)|0;c[e>>2]=1;vc(f|0)|0;lX(d|0)|0}lX(h|0)|0;return 0}function xR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(e=c[a>>2]|0,e|0):0){d=(c[e+4>>2]|0)+(((c[e+116>>2]|0)==0)<<31>>31)|0;c[e+104>>2]=1;b=0;while(1){if((b|0)>=(d|0)){b=0;break}g=c[e>>2]|0;f=g+(b*88|0)+4|0;kX(f|0)|0;c[g+(b*88|0)+84>>2]=0;vc(g+(b*88|0)+32|0)|0;lX(f|0)|0;b=b+1|0}while(1){if((b|0)>=(d|0))break;g=c[e>>2]|0;zc(c[g+(b*88|0)+80>>2]|0,0)|0;tc(g+(b*88|0)+32|0)|0;Bc(g+(b*88|0)+4|0)|0;b=b+1|0}tc(e+52|0)|0;Bc(e+24|0)|0;Qf(e);Qf(a)}return}function yR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{Vd[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0>>0);return (a|0)==(d+-1+e|0)|0}function zR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;if((b|0)<=0){c[e>>2]=159502;c[e+4>>2]=159478;c[e+8>>2]=168;Uf(0,0,159675,e);Ub()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;kX(i|0)|0;c[j+(e*88|0)+84>>2]=0;vc(j+(e*88|0)+32|0)|0;lX(i|0)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(yR(a)|0))g=9}else{Rd[b&31](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;kX(e|0)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;wc(b|0,e|0)|0}c[d>>2]=0;lX(e|0)|0}l=h;return}function AR(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107748+(d<<2)>>2]|0;Dc(185648,4)|0;if(!d)c[a>>2]=1;return b|0}function BR(){var a=0,b=0;a=0;while(1){b=c[107748+(a<<2)>>2]|0;if(a|0)break;a=c[b+76>>2]|0;if(!a){a=1;continue}Rd[a&31](b);a=1}return}function CR(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a=0;while(1){d=AR(b)|0;if(!d)break;if(!a){a=d;continue}c[a+60>>2]=d;a=d}l=e;return}function DR(a){a=a|0;Dc(185652,5)|0;if(!a)a=101632;else a=c[a+60>>2]|0;return a|0}function ER(a){a=a|0;return GR(a,21)|0}function FR(a){a=a|0;if(a)if((c[a+84>>2]|0)==0?(c[a+88>>2]|0)==0:0)a=(c[a+100>>2]|0)!=0&1;else a=1;else a=0;return a|0}function GR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;c[f>>2]=0;d=HR(a)|0;a=0;a:while(1){while(1){e=AR(f)|0;if(!e)break a;if(!(Kd[b&31](e)|0))continue;if((c[e+12>>2]|0)==(d|0))break}if(a|0?1:(c[e+16>>2]&512|0)==0){a=e;break}else a=e}l=g;return a|0}function HR(a){a=a|0;return a|0}function IR(a){a=a|0;return GR(a,22)|0}function JR(a){a=a|0;if(a)if(!(c[a+92>>2]|0))a=(c[a+108>>2]|0)!=0&1;else a=1;else a=0;return a|0}function KR(a){a=a|0;var b=0;b=ag(896)|0;if(b){if((VR(b,a)|0)<0){Rf(b);b=0}}else b=0;return b|0}function LR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(MR(a)|0){f=a+28|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if(c[b+20>>2]|0)NR(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+96>>2]|0,d|0):0)Kd[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;Qf(b+44|0);Dh((c[f>>2]|0)+12|0);Dh((c[f>>2]|0)+100|0);Dh((c[f>>2]|0)+76|0);ug((c[f>>2]|0)+68|0);ug((c[f>>2]|0)+40|0);ug((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;Wg(e+(b<<2)|0);b=b+1|0}Qf((c[f>>2]|0)+16|0);b=c[a+592>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Kd[g&31](a)|0;Qf((c[f>>2]|0)+60|0);OR(a);Qf(f)}d=a+856|0;e=a+852|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Qf((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}Qf(e);c[d>>2]=0;zg(a+860|0);zg(a+880|0);d=a+24|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)tg(e);tg(a);Qf(d);if(FR(c[b>>2]|0)|0){Qf(a+68|0);Dh(a+684|0)}c[b>>2]=0;c[a+696>>2]=0}return 0}function MR(a){a=a|0;return (c[a+28>>2]|0)!=0|0}function NR(a){a=a|0;if(!(c[a+696>>2]&1))QR(a);else PR(a,c[a+688>>2]|0);return}function OR(a){a=a|0;var b=0,d=0;d=c[a+28>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;sg((c[d>>2]|0)+(a<<2)|0);a=a+1|0}Qf(d);c[b>>2]=0;return}function PR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=r;k=a+28|0;n=c[(c[k>>2]|0)+20>>2]|0;p=a+12|0;e=c[p>>2]|0;RR(n,b);f=n+4|0;g=c[f>>2]|0;if((g|0?(d=c[n>>2]|0,(g|0)!=(d|0)):0)?(SR(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){Uf(a,16,159514,h);h=c[(c[(c[n>>2]|0)+212>>2]|0)+28>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+28>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+96|0;e=0;while(1){if((e|0)>=(b|0)){d=0;break}g=c[n>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;kX(d|0)|0;c[g+(e*352|0)+332>>2]=1;vc(g+(e*352|0)+12|0)|0;lX(d|0)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)zc(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Kd[d&31](i)|0;TR(h);Dh(g+(e*352|0)+288|0);e=e+1|0}while(1){if((d|0)>=(b|0))break;e=c[n>>2]|0;Bc(e+(d*352|0)+156|0)|0;Bc(e+(d*352|0)+184|0)|0;tc(e+(d*352|0)+12|0)|0;tc(e+(d*352|0)+60|0)|0;tc(e+(d*352|0)+108|0)|0;xg(e+(d*352|0)+216|0);Qf(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){Qf(f+24|0);Qf((c[e>>2]|0)+184|0);o=17}}else o=17;if((o|0)==17?(o=0,j=c[e>>2]|0,j|0):0){Qf(j+28|0);zg((c[e>>2]|0)+860|0)}Qf(e);d=d+1|0}Qf(n);Bc(n+8|0)|0;Bc(n+36|0)|0;Bc(n+64|0)|0;tc(n+92|0)|0;Qf((c[k>>2]|0)+20|0);d=c[a+24>>2]|0;if((d|0?(q=c[p>>2]|0,q|0):0)?c[q+44>>2]|0:0)tg(d);c[p>>2]=0;l=r;return}function QR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+28|0;d=c[(c[b>>2]|0)+20>>2]|0;xR(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;Bc((c[f>>2]|0)+(a*28|0)|0)|0;tc((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}Qf(d+28|0);Qf(f);Qf(g);Qf((c[b>>2]|0)+20|0);return}function RR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;UR(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;kX(g|0)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}lX(g|0)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}Rl(a);return}function SR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;do if((a|0)==(b|0))k=10;else{if((d|0)==0?c[(c[b+780>>2]|0)+16>>2]&1|0:0){k=12;break}e=b+76|0;f=c[e+4>>2]|0;g=a+76|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+760|0;f=c[g+4>>2]|0;e=a+760|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+92>>2]=c[b+92>>2];c[a+96>>2]=c[b+96>>2];c[a+112>>2]=c[b+112>>2];c[a+768>>2]=c[b+768>>2];c[a+100>>2]=c[b+100>>2];c[a+104>>2]=c[b+104>>2];c[a+140>>2]=c[b+140>>2];c[a+668>>2]=c[b+668>>2];c[a+672>>2]=c[b+672>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+188|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+716>>2]=c[b+716>>2];c[a+720>>2]=c[b+720>>2];c[a+676>>2]=c[b+676>>2];c[a+84>>2]=c[b+84>>2];c[a+316>>2]=c[b+316>>2];c[a+320>>2]=c[b+320>>2];c[a+324>>2]=c[b+324>>2];c[a+328>>2]=c[b+328>>2];c[a+332>>2]=c[b+332>>2];c[a+592>>2]=c[b+592>>2];c[a+596>>2]=c[b+596>>2];c[a+348>>2]=c[b+348>>2];c[a+344>>2]=c[b+344>>2];c[a+352>>2]=c[b+352>>2];g=b+376|0;f=c[g+4>>2]|0;e=a+376|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+28>>2]|0)+60>>2]=c[(c[b+28>>2]|0)+60>>2];e=a+860|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+860|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(zg(e),j=c[h>>2]|0,j|0):0)?(j=Bh(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+884>>2]=c[b+884>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+88>>2]=(c[b+688>>2]|0)+-1;c[a+684>>2]=c[b+684>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+68>>2]|0;if(!e)e=0;else e=Ld[e&15](a,b)|0}return e|0}function TR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}kX(d|0)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*408|0)|0;c[j+(i*408|0)+64>>2]=h;_g(h);lX(d|0)|0}if((a|0)==4){c[f>>2]=159542;c[f+4>>2]=159631;c[f+8>>2]=371;Uf(0,0,159675,f);Ub()}else if((a|0)==6){l=g;return}}function UR(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=a+64|0;kX(b|0)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=159658;c[e+4>>2]=159631;c[e+8>>2]=155;Uf(0,0,159675,e);Ub()}else{c[d>>2]=0;jX(a+92|0)|0;lX(b|0)|0;l=f;return}}function VR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;iX(a|0,0,896)|0;c[a>>2]=107756;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+16>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;rR(a,d,d);c[a+76>>2]=0;c[a+80>>2]=1;c[a+760>>2]=0;c[a+764>>2]=1;c[a+772>>2]=0;c[a+776>>2]=1;c[a+400>>2]=12;c[a+120>>2]=9;c[a+704>>2]=4;c[a+708>>2]=41;c[a+188>>2]=0;c[a+192>>2]=1;c[a+112>>2]=-1;c[a+768>>2]=-1;c[a+352>>2]=-1;f=a+584|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+56>>2]|0;if(e|0){f=a+24|0;d=c[f>>2]|0;if(!d){d=Lg(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;qR(c[f>>2]|0)}}d=c[b+72>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((RQ(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=159705;c[h+4>>2]=159714;c[h+8>>2]=142;Uf(0,0,159675,h);Ub()}else g=0}else g=0;while(0);l=i;return g|0}function WR(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(N(h,g)|0)|0;i=Ld[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function XR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=Nd[b&3](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function YR(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=170826;return b|0}function ZR(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+24>>2]|0,(d|0)!=0):0))d=0;return d|0}function _R(a){a=a|0;var b=0;a:do if(!a)a=0;else{b=0;while(1){b=DR(b)|0;if(!b){a=0;break a}if((c[b+44>>2]|0)==(a|0)){a=b;break}}}while(0);do{a=DR(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function $R(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+92>>2]|0)!=0:0)a=6;else a=5;return a|0}function aS(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483582){e=bQ(b,d+64|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function bS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;Rf(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=24){a=$f(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function cS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(d>>>0<=2147483583?(e=Lg(d+64|0)|0,c[f>>2]=e,(e|0)!=0):0){if((bS(a,b,e,d)|0)<0){Qf(f);e=0}}else e=0;l=g;return e|0}function dS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];c[a+40>>2]=0;c[a+44>>2]=0;h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=cS(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}gX(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){yg(a);b=-12}return b|0}function eS(a,b){a=a|0;b=b|0;var d=0,e=0;d=dS(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=aS(a,c[e>>2]|0)|0;if((d|0)<0)b=10;else{d=c[e>>2]|0;if(d|0)gX(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;d=(c[a>>2]|0)+4|0;b=9}}else{e=Bh(d)|0;c[a>>2]=e;if(!e){d=-12;b=10}else{e=b+28|0;d=b+24|0;b=9}}if((b|0)==9){c[a+24>>2]=c[d>>2];c[a+28>>2]=c[e>>2];d=0;break}else if((b|0)==10){yg(a);break}}while(0);return d|0}function fS(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107800+(d<<2)>>2]|0;if(!d)c[a>>2]=1;return b|0}function gS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;do{b=fS(d)|0;if(!b){b=0;break}}while((HT(c[b>>2]|0,a)|0)!=0);l=e;return b|0}function hS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=Lg(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=107808;c[e+4>>2]=a;f=e+16|0;c[f>>2]=jS()|0;k=jS()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=Lg(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=KP()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){qR(g);d=c[a+12>>2]|0;if(d|0){f=Lg(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;qR(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);sg(h);d=-12}while(0);l=j;return d|0}function iS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;wg(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+16>>2];c[a+8>>2]=c[b+20>>2];g=b+40|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+672>>2];c[a+36>>2]=c[b+676>>2];c[a+40>>2]=c[b+716>>2];c[a+44>>2]=c[b+720>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+112>>2];c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];c[a+64>>2]=c[b+340>>2];c[a+68>>2]=c[b+328>>2];c[a+72>>2]=c[b+316>>2];c[a+76>>2]=c[b+320>>2];c[a+80>>2]=c[b+324>>2];c[a+84>>2]=c[b+332>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+140>>2];break}case 1:{c[a+20>>2]=c[b+352>>2];e=b+376|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+348>>2];c[a+108>>2]=c[b+344>>2];c[a+112>>2]=c[b+364>>2];c[a+116>>2]=c[b+356>>2];c[a+120>>2]=c[b+756>>2];c[a+124>>2]=c[b+868>>2];c[a+128>>2]=c[b+828>>2];break}case 3:{c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];break}default:{}}e=b+68|0;if(c[e>>2]|0){b=b+72|0;d=Lg((c[b>>2]|0)+64|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;gX(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function jS(){var a=0;a=Lg(136)|0;if(!a)a=0;else wg(a);return a|0}function kS(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function lS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;a:do if(a|0)do{b=fS(d)|0;if(!b)break a}while((c[b+8>>2]|0)!=(a|0));while(0);do{a=fS(d)|0;if(!a){a=0;break}a=c[a+8>>2]|0}while(!(a|0));l=e;return a|0}function mS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+28|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=nS(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=oS(c[e>>2]|0,b)|0;if((d|0)>=0){d=pS(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+108>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}xg(b)}}else d=-541478725;while(0);return d|0}function nS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;h=c[a+28>>2]|0;g=h+36|0;h=h+32|0;f=(c[g>>2]|0)+-1|0;while(1){if((f|0)<=-1){d=-11;break}d=Eg(c[(c[h>>2]|0)+(f<<2)>>2]|0,b)|0;if((d|0)==-11){f=f+-1|0;continue}e=(d|0)<0;if(e&(d|0)!=-541478725)break;if((f|0)==((c[g>>2]|0)+-1|0))break;f=f+1|0;d=Fg(c[(c[h>>2]|0)+(f<<2)>>2]|0,e?0:b)|0;if((d|0)<0){j=8;break}}if((j|0)==8){Uf(a,16,171049,i);xg(b)}l=k;return d|0}function oS(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;xg(c[d>>2]|0);if(b){a=dS(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function pS(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);o=p+32|0;n=p+24|0;j=p+16|0;h=p+8|0;e=p;k=p+36|0;c[k>>2]=0;g=oi(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){Uf(a,16,170844,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){Uf(a,16,170937,h);b=-1094995529;e=a;break b}else{c[a+348>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+376|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){Uf(a,16,170959,j);b=-1094995529;e=a;break b}else{c[a+344>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){n=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+92>>2]=j;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;c[a+96>>2]=n;c[k>>2]=b+-8;b=qS(a,j,n)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);Uf(a,16,170979,n);b=-1094995529;e=a}while(0);Uf(e,16,171014,o);b=(c[a+580>>2]&8|0)==0?0:b}while(0);l=p;return b|0}function qS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+872|0;e=Wh(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+100>>2]=b;c[a+104>>2]=f;d=c[a+680>>2]|0;c[a+92>>2]=0-(0-b>>d);c[a+96>>2]=0-(0-f>>d);return e|0}function rS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+28|0;g=c[d>>2]|0;a:do if((MR(a)|0)!=0?(JR(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=sS(a)|0;if((d|0)>=0){f=g+68|0;xg(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=eS(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=Fg(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){xg(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=tS(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function sS(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;h=o+8|0;i=o+4|0;d=c[b+28>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+120>>2]|0;f=(f|0)==0?171619:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=VP(h,171624)|0;c[i>>2]=d;if(!d){d=-12;break}d=gS(d)|0;if(!d){n=8;break}Qf(i);e=xN(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=hS(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=iS(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Hg(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=Ig(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((n|0)==8){c[k>>2]=c[i>>2];Uf(b,16,171626,k);Qf(i);d=-558323010}OR(b)}else d=0;while(0);l=o;return d|0}function tS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;d=i;e=c[a+28>>2]|0;if(c[b+248>>2]|0){c[d>>2]=171096;c[d+4>>2]=124617;c[d+8>>2]=607;Uf(0,0,159675,d);Ub()}f=a+12|0;d=c[(c[f>>2]|0)+108>>2]|0;if(!d)d=uS(a,b)|0;else d=Ld[d&15](a,b)|0;a:do if((d|0)>=0){switch(d|0){case 0:break;default:{h=16;break a}}d=c[b+400>>2]|0;e=(d|0)==0;if(!(!e?(c[d+8>>2]|0)==20:0))h=10;do if((h|0)==10)if(!(c[(c[f>>2]|0)+16>>2]&2))if(e){d=0;h=16;break a}else break;else{c[g>>2]=171111;c[g+4>>2]=124617;c[g+8>>2]=621;Uf(0,0,159675,g);Ub()}while(0);d=c[c[d+4>>2]>>2]|0;if(d){d=Ld[d&15](a,b)|0;if((d|0)<0)_g(b);else h=16}else{d=0;h=16}}else{switch(d|0){case -541478725:break;default:{h=16;break a}}c[e+80>>2]=1;d=-541478725;h=16}while(0);if((h|0)==16)zg(b+400|0);l=i;return d|0}function uS(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=vS(a,b)|0}while((d|0)>=0);return d|0}function vS(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+144|0;if((l|0)>=(m|0))W(144);M=Z+128|0;L=Z+120|0;Y=Z+64|0;S=Z+56|0;J=Z+48|0;H=Z+40|0;E=Z+32|0;A=Z+24|0;t=Z+16|0;q=Z+8|0;j=Z;V=Z+96|0;i=Z+76|0;s=Z+112|0;D=Z+104|0;P=Z+88|0;Q=Z+80|0;R=b+28|0;X=c[R>>2]|0;T=c[X+24>>2]|0;U=T+24|0;if(!(((c[U>>2]|0)==0?(c[X+64>>2]|0)==0:0)?(xg(T),f=mS(b,T)|0,(f|0)<0&(f|0)!=-541478725):0))k=4;do if((k|0)==4){O=X+80|0;if(!(c[O>>2]|0)){if(((c[U>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+696>>2]&1|0)==0:0){f=-541478725;break}c[V>>2]=0;K=b+696|0;if(!(c[K>>2]&1)){h=b+12|0;f=Nd[c[(c[h>>2]|0)+92>>2]&3](b,e,V,T)|0;g=c[h>>2]|0;if(!(c[g+116>>2]&4)){w=T+16|0;x=c[w+4>>2]|0;z=e+120|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+8>>2]|0)){if(!(c[b+140>>2]|0)){w=T+56|0;x=c[w+4>>2]|0;z=e+328|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){w=b+188|0;x=c[w+4>>2]|0;z=g;c[z>>2]=c[w>>2];c[z+4>>2]=x}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+92>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+96>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+112>>2];x=h}else x=h}else x=h}else x=h}else{f=wS(b,e,V,T)|0;x=b+12|0}z=c[V>>2]|0;a:do switch(c[(c[x>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[V>>2]=0;break a}if(z|0){H=e+104|0;G=e+120|0;G=xS(b,c[H>>2]|0,c[H+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;H=e+320|0;c[H>>2]=G;c[H+4>>2]=y}break}case 1:{if((f|0)>-1&(z|0)!=0){g=e+104|0;w=e+120|0;w=xS(b,c[g>>2]|0,c[g+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;g=e+320|0;c[g>>2]=w;c[g+4>>2]=y;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+352>>2];g=e+240|0;w=g;if((c[w>>2]|0)==0&(c[w+4>>2]|0)==0){u=b+376|0;v=c[u+4>>2]|0;w=g;c[w>>2]=c[u>>2];c[w+4>>2]=v}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+348>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+344>>2]}g=oi(c[X+40>>2]|0,11,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){v=c[R>>2]|0;w=N(c[v+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[v+56>>2]=w;v=g+4|0;v=d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24;c[j>>2]=w;c[j+4>>2]=v;Uf(b,48,171231,j);w=a[g+8>>0]|0;u=a[g+9>>0]|0}else{v=0;w=0;u=0}g=c[V>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+64>>2]&536870912|0)==0:0){n=(c[R>>2]|0)+56|0;j=(c[n>>2]|0)-(c[e+76>>2]|0)|0;c[n>>2]=(j|0)>0?j:0;c[V>>2]=0}else k=43;do if(((k|0)==43?(o=(c[R>>2]|0)+56|0,p=c[o>>2]|0,(p|0)>0&(g|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){n=e+76|0;g=c[n>>2]|0;if((g|0)<=(p|0)){c[V>>2]=0;A=p-g|0;c[o>>2]=A;c[q>>2]=A;Uf(b,48,171278,q);break}q=c[e+64>>2]|0;Mh(q,q,0,p,g-p|0,c[b+348>>2]|0,c[e+80>>2]|0)|0;g=b+772|0;if((c[g>>2]|0)!=0?(r=c[b+344>>2]|0,(r|0)!=0):0){j=c[(c[R>>2]|0)+56>>2]|0;c[s>>2]=1;c[s+4>>2]=r;c[L>>2]=c[s>>2];c[L+4>>2]=c[s+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];j=PQ(j,((j|0)<0)<<31>>31,L,M)|0;k=y;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=TW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=TW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=TW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(k|0)|(i|0)==(k|0)&h>>>0>>0)){s=UW(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}}else Uf(b,24,171311,t);t=c[n>>2]|0;c[A>>2]=c[(c[R>>2]|0)+56>>2];c[A+4>>2]=t;Uf(b,48,171361,A);A=(c[R>>2]|0)+56|0;c[n>>2]=(c[n>>2]|0)-(c[A>>2]|0);c[A>>2]=0}while(0);do if((v|0?(F=e+76|0,B=c[F>>2]|0,B>>>0>=v>>>0&(c[V>>2]|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){if((B|0)==(v|0)){c[V>>2]=0;break}g=b+772|0;if((c[g>>2]|0)!=0?(C=c[b+344>>2]|0,(C|0)!=0):0){c[D>>2]=1;c[D+4>>2]=C;c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];E=PQ(B-v|0,0,L,M)|0;g=e+336|0;c[g>>2]=E;c[g+4>>2]=y;g=b}else{Uf(b,24,171381,E);g=b}E=c[F>>2]|0;c[H>>2]=v;c[H+4>>2]=E;Uf(g,48,171433,H);c[F>>2]=(c[F>>2]|0)-v}while(0);if((c[V>>2]|0?(c[b+64>>2]&536870912|0)!=0:0)?(G=Zh(e,9,10)|0,G|0):0){F=c[(c[R>>2]|0)+56>>2]|0;H=G+4|0;G=c[H>>2]|0;a[G>>0]=F;a[G+1>>0]=F>>8;a[G+2>>0]=F>>16;a[G+3>>0]=F>>24;G=(c[H>>2]|0)+4|0;a[G>>0]=v;a[G+1>>0]=v>>8;a[G+2>>0]=v>>16;a[G+3>>0]=v>>24;a[(c[H>>2]|0)+8>>0]=w;a[(c[H>>2]|0)+9>>0]=u;c[(c[R>>2]|0)+56>>2]=0}break}default:{}}while(0);g=c[x>>2]|0;if((((c[g+8>>2]|0)==1?(I=X+104|0,(f|0)>-1&(c[I>>2]|0)==0):0)?(f|0)!=(c[T+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){Uf(b,24,171456,J);c[I>>2]=1}if(!(c[V>>2]|0))_g(e);if(((f|0)>-1?(c[(c[x>>2]|0)+8>>2]|0)==0:0)?(c[b+60>>2]&65536|0)==0:0)f=c[T+28>>2]|0;g=b+760|0;if((c[g>>2]|0)>0?(c[b+764>>2]|0)>0:0){c[Q>>2]=c[b+84>>2];c[Q+4>>2]=1;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[M>>2]=c[Q>>2];c[M+4>>2]=c[Q+4>>2];$N(P,L,M);M=c[P>>2]|0;Q=b+76|0;c[Q>>2]=c[P+4>>2];c[Q+4>>2]=M}do if(!(z|0?1:(c[(c[R>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[O>>2]=1;break}if(!(c[K>>2]&1))g=21;else g=(c[b+688>>2]|0)+20|0;Q=X+112|0;R=c[Q>>2]|0;c[Q>>2]=R+1;if((R|0)>=(g|0)){Uf(b,16,171486,S);c[O>>2]=1;f=-558323010}}while(0);g=X+92|0;c[g>>2]=(c[g>>2]|0)+f;g=T+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))xg(T);else{c[U>>2]=(c[U>>2]|0)+f;c[g>>2]=h-f;X=c[X+40>>2]|0;U=X+28|0;c[U>>2]=(c[U>>2]|0)-f;U=T+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=T+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=X+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;X=X+16|0;c[X>>2]=0;c[X+4>>2]=-2147483648}if(c[V>>2]|0?(c[e+248>>2]|0)==0:0){c[Y>>2]=171562;c[Y+4>>2]=124617;c[Y+8>>2]=584;Uf(0,0,159675,Y);Ub()}f=i?f:0}else f=-541478725}while(0);l=Z;return f|0}function wS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[(c[a+28>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;UR(p);n=p+144|0;f=yS((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+688|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+16>>2]|0)==33)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;kX(g|0)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}lX(g|0)|0}$g(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}SR(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);Rl(p);return f|0}function xS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(e|0)==0&(f|0)==-2147483648;if(k)if((b|0)==0&(d|0)==-2147483648)g=0;else{l=a+808|0;c[l>>2]=b;c[l+4>>2]=d;l=6}else{l=a+808|0;i=l;h=c[i+4>>2]|0;j=a+792|0;g=j;i=TW(c[g>>2]|0,c[g+4>>2]|0,((h|0)>(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;c[j>>2]=i;c[j+4>>2]=y;c[l>>2]=e;c[l+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){h=a+800|0;g=0;i=e;j=f;l=7}else l=6}if((l|0)==6){h=a+800|0;i=h;j=c[i+4>>2]|0;g=a+784|0;m=g;i=TW(c[m>>2]|0,c[m+4>>2]|0,((j|0)>(d|0)|((j|0)==(d|0)?(c[i>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;c[g>>2]=i;c[g+4>>2]=y;g=1;i=b;j=d;l=7}if((l|0)==7){m=h;c[m>>2]=i;c[m+4>>2]=j}l=a+784|0;j=c[l+4>>2]|0;m=a+792|0;a=c[m+4>>2]|0;m=g&(k|((j|0)<(a|0)|((j|0)==(a|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));y=m?d:f;return (m?b:e)|0}function yS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=q;k=c[a>>2]|0;n=k+4|0;g=c[n>>2]|0;o=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[o>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else p=3;do if((p|0)==3){i=a+156|0;kX(i|0)|0;b=zS(c[o>>2]|0,b)|0;if(b|0){lX(i|0)|0;break}c[a+344>>2]=(c[(c[o>>2]|0)+576>>2]|0)>>>16&1;TR(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;kX(e|0)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;wc(f|0,e|0)|0}lX(e|0)|0}b=SR(c[o>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){lX(i|0)|0;break}}b=a+216|0;xg(b);b=eS(b,d)|0;if((b|0)<0){lX(i|0)|0;Uf(c[o>>2]|0,16,171576,h);break}j=a+300|0;c[j>>2]=1;vc(a+12|0)|0;lX(i|0)|0;b=c[o>>2]|0;a:do if(!(c[b+700>>2]|0)){if((c[b+120>>2]|0)==9?(c[b+400>>2]|0)==12:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;kX(b|0)|0;while(1){if((c[j>>2]|0)!=1)break;wc(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{c[d>>2]=sn(c[o>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;p=27;break}case 3:{c[i>>2]=OM(c[o>>2]|0,c[h>>2]|0)|0;p=27;break}default:{}}if((p|0)==27){p=0;c[j>>2]=1;vc(e|0)|0}lX(b|0)|0}}while(0);c[n>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);l=q;return b|0}function zS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+60>>2]=c[b+60>>2];c[a+116>>2]=c[b+116>>2];c[a+400>>2]=c[b+400>>2];c[a+32>>2]=c[b+32>>2];c[a+576>>2]=c[b+576>>2];c[a+832>>2]=c[b+832>>2];c[a+240>>2]=c[b+240>>2];c[a+64>>2]=c[b+64>>2];f=a+724|0;d=b+724|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+360>>2]=c[b+360>>2];f=b+584|0;d=c[f+4>>2]|0;g=a+584|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+700>>2]=c[b+700>>2];g=b+176|0;d=c[g>>2]|0;do if(d){e=b+184|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+184|0;if((c[a+176>>2]|0)<(d|0)){d=GN(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}gX(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+176>>2]=d;d=0}return d|0}function AS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+28>>2]|0;_g(b);do if((MR(a)|0)!=0?(JR(c[a+12>>2]|0)|0)!=0:0){d=sS(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=tS(a,b)|0;if((d|0)<0)break}else $g(b,d);if((c[a+8>>2]|0)==0?(f=BS(a,b)|0,(f|0)<0):0){_g(b);d=f;break}d=a+360|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function BS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+888>>2]|0))a=0;else a=MQ(b,c[a+60>>2]&1)|0;else{p=c[b+68>>2]|0;b=c[b+72>>2]|0;c[n>>2]=g;c[n+4>>2]=i;c[n+8>>2]=k;c[n+12>>2]=e;c[n+16>>2]=p;c[n+20>>2]=b;Uf(a,24,171719,n);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}l=o;return a|0}function CS(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){LR(b)|0;Qf(b+68|0);Qf(b+736|0);Qf(b+248|0);Qf(b+252|0);Qf(b+436|0);Qf(a)}return}function DS(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;d=c[107852+(b<<2)>>2]|0;if((b|0)!=3)c[a>>2]=b+1;return d|0}function ES(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a:do if(!a)a=0;else{do{d=DS(b)|0;if(!d){a=0;break a}if((c[d>>2]|0)==(a|0))break;if((c[d+4>>2]|0)==(a|0))break;if((c[d+8>>2]|0)==(a|0))break;if((c[d+12>>2]|0)==(a|0))break}while((c[d+16>>2]|0)!=(a|0));a=Lg(344)|0;if(a|0){c[a+4>>2]=d;b=Lg(c[d+20>>2]|0)|0;c[a>>2]=b;do if(b|0){c[a+72>>2]=1;c[a+32>>2]=1;b=c[d+24>>2]|0;if(b|0?Kd[b&31](a)|0:0)break;c[a+224>>2]=-1;d=a+232|0;c[d>>2]=0;c[d+4>>2]=0;c[a+240>>2]=-2147483648;c[a+244>>2]=-2147483648;c[a+248>>2]=-2147483648;c[a+336>>2]=-1;break a}while(0);Qf(a)}Rf(a);a=0}while(0);l=e;return a|0}function FS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=(e|0)!=0;if(u){n=a+48|0;o=a+40|0;p=a+288|0;q=a+184|0}else{o=a+40|0;n=o;c[n>>2]=0;c[n+4>>2]=-2147483648;n=a+48|0;p=n;c[p>>2]=0;c[p+4>>2]=-2147483648;p=a+288|0;q=p;c[q>>2]=-1;c[q+4>>2]=-1;q=a+184|0;t=q;c[t>>2]=0;c[t+4>>2]=0}r=a+16|0;s=((b|0)<0)<<31>>31;t=a+8|0;l=(d|0)==0;m=a+24|0;k=0;a:while(1){if((k|0)>=4)break;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0;i=TW(d|0,e|0,b|0,s|0)|0;h=y;j=a+80+(k<<3)|0;g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;do if(!((h|0)<(g|0)|(h|0)==(g|0)&i>>>0>>0)){i=t;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(g|0)|(i|0)==(g|0)&h>>>0>>0)){if(!((h|0)==0&(i|0)==0))break;i=m;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0))break}h=a+192+(k<<3)|0;i=h;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0)){g=a+144+(k<<3)|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!(u&((f|0)==0&(g|0)==-2147483648))){i=n;c[i>>2]=f;c[i+4>>2]=g;i=a+112+(k<<3)|0;g=c[i+4>>2]|0;f=o;c[f>>2]=c[i>>2];c[f+4>>2]=g;f=a+256+(k<<3)|0;g=c[f+4>>2]|0;i=p;c[i>>2]=c[f>>2];c[i+4>>2]=g;i=m;g=j;g=UW(c[i>>2]|0,c[i+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=q;c[i>>2]=g;c[i+4>>2]=y}if(!l){e=j;c[e>>2]=-1;c[e+4>>2]=2147483647;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0}i=TW(d|0,e|0,b|0,s|0)|0;g=y;j=h;h=c[j+4>>2]|0;if((g|0)<(h|0)|((g|0)==(h|0)?i>>>0<(c[j>>2]|0)>>>0:0))break a}}while(0);k=k+1|0}return}function GS(b,d,e,f,g,h,i,j,k,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0;A=l;l=l+80|0;if((l|0)>=(m|0))W(80);z=A;q=A+16|0;r=b+176|0;s=c[r>>2]|0;if(!(s&4)){v=b+16|0;c[v>>2]=o;c[v+4>>2]=p;v=b+24|0;c[v>>2]=o;c[v+4>>2]=p;c[r>>2]=s|4}if(h){r=b+16|0;q=c[r>>2]|0;r=c[r+4>>2]|0;s=TW(q|0,r|0,h|0,((h|0)<0)<<31>>31|0)|0;t=y;u=b+76|0;v=c[u>>2]|0;B=b+192+(v<<3)|0;if((s|0)==(c[B>>2]|0)?(t|0)==(c[B+4>>2]|0):0)q=g;else{B=v+1&3;c[u>>2]=B;v=b+80+(B<<3)|0;c[v>>2]=q;c[v+4>>2]=r;q=b+192+(B<<3)|0;c[q>>2]=s;c[q+4>>2]=t;q=b+112+(B<<3)|0;c[q>>2]=i;c[q+4>>2]=j;q=b+144+(B<<3)|0;c[q>>2]=k;c[q+4>>2]=n;q=b+256+(B<<3)|0;c[q>>2]=o;c[q+4>>2]=p;q=g}}else{r=q;s=r+64|0;do{a[r>>0]=0;r=r+1|0}while((r|0)<(s|0))}r=b+72|0;if(c[r>>2]|0){c[r>>2]=0;k=b+40|0;n=c[k+4>>2]|0;B=b+56|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;B=b+48|0;n=c[B+4>>2]|0;k=b+64|0;c[k>>2]=c[B>>2];c[k+4>>2]=n;k=b+288|0;n=c[k+4>>2]|0;B=b+296|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;FS(b,0,0,0)}t=Pd[c[(c[b+4>>2]|0)+28>>2]&7](b,d,e,f,q,h)|0;if((t|0)<=-536870912){c[z>>2]=171835;c[z+4>>2]=116642;c[z+8>>2]=253;Uf(0,0,159675,z);Ub()}if(((c[d+8>>2]|0)==0?(w=c[b+308>>2]|0,w|0):0)?(x=d+340|0,(c[x>>2]|0)==0):0)c[x>>2]=w;if(!(c[f>>2]|0)){q=b+16|0;s=q;r=c[s>>2]|0;s=c[s+4>>2]|0}else{z=b+24|0;B=z;s=c[B+4>>2]|0;q=b+8|0;c[q>>2]=c[B>>2];c[q+4>>2]=s;q=b+16|0;s=q;B=c[s>>2]|0;s=c[s+4>>2]|0;f=TW(B|0,s|0,t|0,((t|0)<0)<<31>>31|0)|0;c[z>>2]=f;c[z+4>>2]=y;c[r>>2]=1;r=B}B=(t|0)>0?t:0;f=TW(r|0,s|0,B|0,0)|0;z=q;c[z>>2]=f;c[z+4>>2]=y;l=A;return B|0}function HS(a){a=a|0;var b=0;if(a|0){b=c[(c[a+4>>2]|0)+32>>2]|0;if(b|0)Rd[b&31](a);Qf(a);Rf(a)}return}function IS(a){a=a|0;var b=0;JS(a);b=c[a+696>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=LS(a)|0;else a=KS(a)|0;return a|0}function JS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;f=c[(c[a+12>>2]|0)+16>>2]|0;if((f&4096|0)!=0?(c[a+60>>2]&589824|0)==0:0)e=(c[a+64>>2]&32768|0)==0;else e=0;d=a+688|0;b=c[d>>2]|0;do if((b|0)!=1){if(e?c[a+692>>2]&1|0:0){d=1;h=11;break}if(f&8192|0?c[a+692>>2]&2|0:0){d=2;h=11;break}if(!(f&32768)){c[d>>2]=1;d=0;b=1;h=11}}else{d=0;b=1;h=11}while(0);if((h|0)==11)c[a+696>>2]=d;if((b|0)>16){c[g>>2]=b;c[g+4>>2]=16;Uf(a,24,171973,g)}l=i;return}function KS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+688|0;b=c[i>>2]|0;h=a+12|0;if(((FR(c[h>>2]|0)|0)!=0?(c[a+16>>2]|0)==1:0)?(c[a+96>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=LQ()|0;d=c[a+96>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=Lg(48)|0;g=a+28|0;b=c[g>>2]|0;c[b+20>>2]=f;d=c[(c[h>>2]|0)+116>>2]&32|0?24:0;c[46414]=d;do if(f){b=vR(f,a,79,d,e)|0;if((b|0)<2){xR(f);b=c[g>>2]|0;break}else{c[i>>2]=b;c[a+704>>2]=5;c[a+708>>2]=42;break a}}while(0);Qf(b+20|0);c[i>>2]=1;c[a+696>>2]=0}}while(0);if((j|0)==10)c[a+696>>2]=0;return 0}function LS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=v;b=a+688|0;d=c[b>>2]|0;e=c[a+12>>2]|0;if(!d){s=LQ()|0;d=s+1|0;d=(s|0)>1?((d|0)<16?d:16):1;c[b>>2]=d}a:do if((d|0)>=2){s=Lg(156)|0;b=a+28|0;c[(c[b>>2]|0)+20>>2]=s;if(!s)b=-12;else{r=hh(d,352)|0;c[s>>2]=r;if(!r){Qf((c[b>>2]|0)+20|0);b=-12;break}Cc(s+8|0,0)|0;Cc(s+36|0,0)|0;Cc(s+64|0,0)|0;uc(s+92|0,0)|0;c[s+140>>2]=1;c[s+152>>2]=1;p=e+80|0;q=e+56|0;n=e+64|0;b=0;r=0;f=a;while(1){if((r|0)>=(d|0)){b=0;break a}c[t>>2]=ag(896)|0;o=c[s>>2]|0;j=o+(r*352|0)|0;Cc(o+(r*352|0)+156|0,0)|0;Cc(o+(r*352|0)+184|0,0)|0;uc(o+(r*352|0)+12|0,0)|0;uc(o+(r*352|0)+60|0,0)|0;uc(o+(r*352|0)+108|0,0)|0;k=Ch()|0;c[o+(r*352|0)+288>>2]=k;if(!k){u=11;break}c[j>>2]=s;e=c[t>>2]|0;c[o+(r*352|0)+212>>2]=e;k=e;if(!e){b=-12;u=23;break}gX(e|0,f|0,896)|0;e=ag(116)|0;i=k+28|0;c[i>>2]=e;if(!e){u=14;break}g=c[f+28>>2]|0;h=e+116|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=c[i>>2]|0;c[h+20>>2]=j;c[h+40>>2]=o+(r*352|0)+216;if(r){e=ag(c[q>>2]|0)|0;c[k+24>>2]=e;if(!e){b=-12;u=23;break}gX(e|0,c[f+24>>2]|0,c[q>>2]|0)|0;c[c[i>>2]>>2]=1;e=c[n>>2]|0;if(e)b=Kd[e&31](k)|0}else{e=c[p>>2]|0;if(e)b=Kd[e&31](k)|0;SR(a,k,1)|0;f=k}if(b|0){u=23;break}c[o+(r*352|0)+344>>2]=(c[k+576>>2]|0)>>>16&1;k=xc(o+(r*352|0)+4|0,0,23,j|0)|0;b=0-k|0;k=(k|0)==0;c[o+(r*352|0)+8>>2]=k&1;if(!k)break;r=r+1|0}if((u|0)==11){Qf(t);b=-12;u=23}else if((u|0)==14){c[k+24>>2]=0;b=-12;u=23}PR(a,r+1|0)}}else{c[a+696>>2]=0;b=0}while(0);l=v;return b|0}function MS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+32|0;if((l|0)>=(m|0))W(32);B=D+16|0;A=D;p=c[a+212>>2]|0;j=c[p+12>>2]|0;v=a+156|0;kX(v|0)|0;w=a+332|0;x=a+300|0;y=a+12|0;z=j+68|0;d=p+700|0;e=p+400|0;f=a+336|0;g=p+592|0;h=a+288|0;i=a+292|0;j=j+92|0;k=a+216|0;n=a+296|0;o=p+28|0;q=a+340|0;r=a+184|0;s=a+60|0;t=a+108|0;a:while(1){while(1){b=(c[w>>2]|0)==0;if(c[x>>2]|0)break;if(!b){C=28;break a}wc(y|0,v|0)|0}if(!b){C=28;break}do if(!(c[z>>2]|0)){if((c[d>>2]|0)==0?(c[e>>2]|0)!=12:0)break;Ji(p)}while(0);if(c[f>>2]|0){C=12;break}if(c[g>>2]|0){kX((c[a>>2]|0)+36|0)|0;c[f>>2]=1}_g(c[h>>2]|0);c[i>>2]=0;b=Nd[c[j>>2]&3](p,c[h>>2]|0,i,k)|0;c[n>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))C=17;if((C|0)==17?(C=0,u=c[h>>2]|0,c[u+248>>2]|0):0){if(!(c[(c[o>>2]|0)+4>>2]|0))b=u;else{Uf(p,16,171879,B);b=c[h>>2]|0}_g(b)}if((c[x>>2]|0)==1)Ji(p);if(c[f>>2]|0){c[f>>2]=0;lX((c[a>>2]|0)+36|0)|0}if(c[q>>2]|0){c[q>>2]=0;UR(c[a>>2]|0)}kX(r|0)|0;c[x>>2]=0;jX(s|0)|0;vc(t|0)|0;lX(r|0)|0}if((C|0)==12){c[A>>2]=171855;c[A+4>>2]=159631;c[A+8>>2]=190;Uf(0,0,159675,A);Ub()}else if((C|0)==28){lX(v|0)|0;l=D;return 0}return 0}function NS(a){a=a|0;Kd[c[(c[(c[a+28>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function OS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+28>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=Nd[c[g+8>>2]&3](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(N(c[g+24>>2]|0,b)|0)|0;f=Ld[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function PS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&2|0)!=0?(c[a+688>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;zR(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=WR(a,b,d,e,f,g)|0;return a|0}function QS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+28>>2]|0)+20>>2]|0)+8>>2]=b;return PS(a,0,d,e,f,0)|0}function RS(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)lX(185660)|0;return}function SS(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=l;l=l+848|0;if((l|0)>=(m|0))W(848);$=ja+336|0;_=ja+328|0;da=ja+288|0;Z=ja+280|0;Y=ja+272|0;X=ja+264|0;V=ja+248|0;S=ja+240|0;R=ja+232|0;Q=ja+224|0;O=ja+208|0;N=ja+192|0;M=ja+184|0;L=ja+176|0;K=ja+168|0;J=ja+152|0;H=ja+144|0;F=ja+136|0;D=ja+128|0;C=ja+120|0;B=ja+112|0;A=ja+104|0;z=ja+96|0;x=ja+88|0;t=ja+80|0;s=ja+72|0;r=ja+64|0;q=ja+48|0;ca=ja+40|0;p=ja+32|0;o=ja+24|0;n=ja+16|0;j=ja+8|0;i=ja;ia=ja+312|0;aa=ja+320|0;ba=ja+304|0;c[ia>>2]=0;do if(!(MR(a)|0)){ha=a+12|0;g=c[ha>>2]|0;h=(g|0)==0;if(!b)if(h){Uf(a,16,172069,i);f=-22;break}else fa=g;else if(h|(g|0)==(b|0))fa=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;Uf(a,16,172107,j);f=-22;break}if((c[a+72>>2]|0)>>>0<=268435391){ga=(e|0)!=0;if(ga)Yh(ia,c[e>>2]|0,0)|0;TS(fa);U=Lg(116)|0;ea=a+28|0;c[ea>>2]=U;a:do if(!U)f=-12;else{U=Lg(88)|0;c[(c[ea>>2]|0)+16>>2]=U;b:do if(((((((U|0)!=0?(U=Ch()|0,c[(c[ea>>2]|0)+12>>2]=U,(U|0)!=0):0)?(U=Ch()|0,c[(c[ea>>2]|0)+100>>2]=U,(U|0)!=0):0)?(U=Ch()|0,c[(c[ea>>2]|0)+76>>2]=U,(U|0)!=0):0)?(U=KP()|0,c[(c[ea>>2]|0)+68>>2]=U,(U|0)!=0):0)?(U=KP()|0,c[(c[ea>>2]|0)+24>>2]=U,(U|0)!=0):0)?(U=KP()|0,k=c[ea>>2]|0,c[k+40>>2]=U,(U|0)!=0):0){c[k+108>>2]=1;T=fa+56|0;b=c[T>>2]|0;U=a+24|0;do if((b|0)>0){if(!(c[U>>2]|0)){g=Lg(b)|0;c[U>>2]=g;if(!g){f=-12;break a}b=fa+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;qR(g)}else b=fa+44|0;if(c[b>>2]|0?(f=tR(c[U>>2]|0,ia)|0,(f|0)<0):0)break b}else c[U>>2]=0;while(0);f=tR(a,ia)|0;if((f|0)>=0){b=a+844|0;g=c[b>>2]|0;if(g|0?(_P(c[fa>>2]|0,g,44)|0)<1:0){f=c[b>>2]|0;c[n>>2]=c[fa>>2];c[n+4>>2]=f;Uf(a,16,172183,n);f=-22;break}i=a+100|0;b=c[i>>2]|0;c:do if(!b)P=37;else{g=c[a+104>>2]|0;if(!g){P=37;break}do if(c[a+92>>2]|0){if(!(c[a+96>>2]|0))break;switch(c[a+16>>2]|0){case 189:case 92:case 27:{P=43;break c}default:{}}}while(0);f=qS(a,b,g)|0;P=40}while(0);do if((P|0)==37){g=c[a+92>>2]|0;if(!g){P=42;break}h=c[a+96>>2]|0;if(!h){P=42;break}f=qS(a,g,h)|0;P=40}while(0);if((P|0)==40){if((f|0)<0)break;b=c[i>>2]|0;P=42}do if((P|0)==42){if(b|0){P=43;break}g=c[a+104>>2]|0;if(g|0){b=0;P=47;break}b=a+92|0;if(c[b>>2]|0){b=0;g=0;P=47;break}if(!(c[a+96>>2]|0))u=b;else{b=0;g=0;P=47}}while(0);if((P|0)==43){g=c[a+104>>2]|0;P=47}do if((P|0)==47){h=a+872|0;I=h;i=a+92|0;if((Wh(b,g,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0?(I=h,(Wh(c[i>>2]|0,c[a+96>>2]|0,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0):0){u=i;break}Uf(a,24,172217,o);qS(a,0,0)|0;u=i}while(0);b=c[u>>2]|0;do if((b|0)>0){g=c[a+96>>2]|0;if((g|0)<=0)break;h=a+188|0;c[$>>2]=c[h>>2];c[$+4>>2]=c[h+4>>2];if((zn(b,g,$)|0)>=0)break;I=a+192|0;G=c[I>>2]|0;c[p>>2]=c[h>>2];c[p+4>>2]=G;Uf(a,24,172255,p);c[a+188>>2]=0;c[I>>2]=1}while(0);if(JR(fa)|0)Qf(a+736|0);G=a+348|0;if((c[G>>2]|0)>>>0>64){f=-22;break}c[ha>>2]=fa;I=a+8|0;h=c[I>>2]|0;do if((h|0)==-1)P=60;else{if((h|0)==(c[fa+8>>2]|0)){P=60;break}g=a+16|0;n=g;g=c[g>>2]|0;b=h}while(0);do if((P|0)==60){b=a+16|0;g=c[b>>2]|0;if(g|0){n=b;b=h;break}E=c[fa+8>>2]|0;c[I>>2]=E;g=c[fa+12>>2]|0;c[b>>2]=g;n=b;b=E}while(0);h=fa+12|0;do if((g|0)==(c[h>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[fa+8>>2]|0)))break;c[a+360>>2]=0;E=a+780|0;c[E>>2]=Jg(g)|0;b=c[ha>>2]|0;do if(c[b+16>>2]&512|0){if((c[a+568>>2]|0)<=-2)break;b=(FR(fa)|0)!=0;b=b?172313:172321;da=c[fa>>2]|0;c[q>>2]=b;c[q+4>>2]=da;c[q+8>>2]=-2;Uf(a,16,172329,q);da=(FR(fa)|0)==0;f=c[h>>2]|0;if(da)f=IR(f)|0;else f=ER(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[r>>2]=b;c[r+4>>2]=f;Uf(a,16,172439,r);f=-733130664;break b}while(0);do if((c[I>>2]|0)==1){h=a+76|0;g=a+80|0;if(c[h>>2]|0?c[g>>2]|0:0)break;c[h>>2]=1;c[g>>2]=c[a+344>>2]}while(0);if(!((c[(c[ea>>2]|0)+52>>2]|0)!=0?(c[a+696>>2]&1|0)!=0:0)){f=IS(a)|0;if((f|0)<0)break b;b=c[ha>>2]|0}g=d[b+40>>0]|0;h=a+680|0;if((c[h>>2]|0)>>>0>g>>>0){c[s>>2]=g;Uf(a,24,172488,s);b=c[ha>>2]|0;c[h>>2]=d[b+40>>0]}d:do if(FR(b)|0){s=Ch()|0;c[a+684>>2]=s;if(!s){f=-12;break b}o=a+76|0;do if((c[o>>2]|0)>=1){p=a+80|0;if((c[p>>2]|0)<1)break;g=c[ha>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+352|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[G>>2]|0)==1){t=uR(i)|0;t=(t|0)==(uR(c[(c[(c[ha>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);v=c[ha>>2]|0;w=c[v+32>>2]|0;if(t){P=94;break}else{g=v;b=w}}j=j+1|0}if((P|0)==94?(w=w+(j<<2)|0,c[k>>2]=c[w>>2],(c[w>>2]|0)!=-1):0){j=v;break}c[x>>2]=c[k>>2];KU($,128,172583,x)|0;c[z>>2]=US(pR(c[k>>2]|0)|0,$)|0;Uf(a,16,172586,z);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+112|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){P=103;break}else b=b+1|0}if((P|0)==103){switch(i|0){case 14:case 32:case 13:case 140:case 12:break;default:break f}c[a+328>>2]=2;break}switch(c[n>>2]|0){case 9:case 7:{if((c[a+568>>2]|0)<0)break f;break}default:{}}c[A>>2]=c[h>>2];KU($,128,172583,A)|0;c[B>>2]=US(oh(c[h>>2]|0)|0,$)|0;Uf(a,16,172642,B);f=-22;break b}while(0);h=c[j+28>>2]|0;b=c[a+344>>2]|0;g:do if(h){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break;if((b|0)==(i|0))break g;else g=g+1|0}c[C>>2]=b;Uf(a,16,172697,C);f=-22;break b}while(0);if((b|0)<0){c[D>>2]=b;Uf(a,16,172697,D);f=-22;break b}i=c[j+36>>2]|0;n=a+376|0;h:do if(i|0){k=n;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){Uf(a,24,172740,F);break}else b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}hQ($,512,-1,j,k);c[H>>2]=$;Uf(a,16,172770,H);f=-22;break b}while(0);h=n;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[G>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=Uh(g,h)|0;if(!b){c[G>>2]=g;b=g;break}if((g|0)==(c[G>>2]|0)){b=g;break}f=n;hQ($,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[G>>2]|0;c[J>>2]=$;c[J+4>>2]=g;c[J+8>>2]=f;Uf(a,16,172818,J);f=-22;break b}while(0);if((b|0)<0){c[K>>2]=b;Uf(a,16,172903,K);f=-22;break b}b=c[I>>2]|0;i:do if(!b){b=nh(c[a+112>>2]|0)|0;h=a+676|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)P=129}else{g=b+32|0;b=g;g=c[g>>2]|0;P=129}while(0);if((P|0)==129){c[L>>2]=i;c[L+4>>2]=g;Uf(a,24,172953,L);c[h>>2]=c[b>>2]}do if((c[u>>2]|0)>=1){if((c[a+96>>2]|0)<1)break;b=c[I>>2]|0;break i}while(0);Uf(a,16,173032,M);f=-22;break b}while(0);do if(b>>>0<2){g=a+40|0;b=c[g>>2]|0;g=c[g+4>>2]|0;M=TW(b|0,g|0,-1,-1)|0;L=y;if(!(L>>>0<0|(L|0)==0&M>>>0<999))break;M=N;c[M>>2]=b;c[M+4>>2]=g;M=N+8|0;c[M>>2]=b;c[M+4>>2]=g;Uf(a,24,173052,N)}while(0);b=a+464|0;if(!(c[b>>2]|0)){N=c[a+428>>2]|0;N=ZW(N|0,((N|0)<0)<<31>>31|0,3,0)|0;N=XW(N|0,y|0,4,0)|0;c[b>>2]=N}g=c[a+84>>2]|0;do if(g|0){b=c[o>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;da=c[p>>2]|0;c[O>>2]=g;c[O+4>>2]=b;c[O+8>>2]=da;Uf(a,16,173105,O);break b}while(0);f=c[a+860>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+112>>2]|0)){Uf(a,16,173158,Q);f=-22;break b}h=a+768|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}da=oh(g)|0;f=oh(c[b>>2]|0)|0;c[R>>2]=da;c[R+4>>2]=f;Uf(a,16,173223,R);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);Uf(a,16,172549,t);f=-22;break b}while(0);R=a+784|0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;R=a+808|0;c[R>>2]=0;c[R+4>>2]=-2147483648;R=a+800|0;c[R>>2]=0;c[R+4>>2]=-2147483648;do if(c[a+60>>2]&8192|0){if(c[(c[E>>2]|0)+4>>2]|0)break;Uf(a,24,173304,S)}while(0);f=c[ha>>2]|0;b=c[f+80>>2]|0;do if(b){if(c[a+696>>2]&1|0?(c[(c[ea>>2]|0)+52>>2]|0)==0:0)break;f=Kd[b&31](a)|0;if((f|0)<0)break b;f=c[ha>>2]|0}while(0);do if(JR(f)|0){f=a+40|0;S=f;if((c[S>>2]|0)==0&(c[S+4>>2]|0)==0){R=VS(a)|0;S=f;c[S>>2]=R;c[S+4>>2]=y}g=a+376|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)P=166;else{f=Uh(f,b)|0;b=c[G>>2]|0;if(!b){c[G>>2]=f;break}if((f|0)==(b|0))break;P=g;hQ($,512,-1,c[P>>2]|0,c[P+4>>2]|0);P=c[G>>2]|0;c[V>>2]=$;c[V+4>>2]=f;c[V+8>>2]=P;Uf(a,24,173367,V);P=g;c[P>>2]=0;c[P+4>>2]=0;P=166}while(0);if((P|0)==166)f=c[G>>2]|0;if(f>>>0>64){f=-22;break b}b=a+816|0;g=c[b>>2]|0;j:do if(g|0){if((c[I>>2]|0)!=3){Uf(a,16,173487,X);f=-22;break b}f=c[E>>2]|0;if(c[f+16>>2]&65536|0){c[Y>>2]=c[f+8>>2];Uf(a,24,173547,Y);c[a+820>>2]=-1;break}f=a+820|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}if((EU(173621,g)|0)==(-1|0)){f=0-(c[(mT()|0)>>2]|0)|0;c[Z>>2]=c[b>>2];Uf(a,16,173627,Z);break b}else break}while(0);f=a+760|0;if((c[f>>2]|0)<=0)break;if((c[a+764>>2]|0)<=0)break;c[ba>>2]=c[a+84>>2];c[ba+4>>2]=1;c[_>>2]=c[f>>2];c[_+4>>2]=c[f+4>>2];c[$>>2]=c[ba>>2];c[$+4>>2]=c[ba+4>>2];$N(aa,_,$);$=c[aa>>2]|0;ba=a+76|0;c[ba>>2]=c[aa+4>>2];c[ba+4>>2]=$}while(0);if((c[T>>2]|0)<=0){f=0;break a}f=c[U>>2]|0;if(!f){f=0;break a}b=c[fa+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[da>>2]=173692;c[da+4>>2]=127077;c[da+8>>2]=995;Uf(0,0,159675,da);Ub()}while(0);Uf(a,16,172284,ca);f=-22}}else f=-12;while(0);b=c[ha>>2]|0;if(b|0?c[b+116>>2]&2|0:0)Kd[c[b+96>>2]&31](a)|0;if(c[fa+44>>2]|0?c[fa+56>>2]|0:0)tg(c[a+24>>2]|0);tg(a);Dh(a+684|0);Dg(ia);Qf(a+24|0);b=c[ea>>2]|0;if(b|0){Dh(b+12|0);Dh((c[ea>>2]|0)+100|0);Dh((c[ea>>2]|0)+76|0);ug((c[ea>>2]|0)+68|0);ug((c[ea>>2]|0)+40|0);ug((c[ea>>2]|0)+24|0);Qf((c[ea>>2]|0)+16|0)}Qf(ea);c[ha>>2]=0}while(0);RS(fa);if(ga){Dg(e);c[e>>2]=c[ia>>2]}}else f=-22}else f=0;while(0);l=ja;return f|0}function TS(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)kX(185660)|0;return}function US(a,b){a=a|0;b=b|0;return (a|0?a:b)|0}function VS(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=WS(c[a+16>>2]|0)|0;if(!b){b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+344>>2]|0;a=c[a+348>>2]|0;b=ZW(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=ZW(b|0,y|0,a|0,((a|0)<0)<<31>>31|0)|0;a=y;break a}}default:{a=0;b=0}}while(0);y=a;return b|0}function WS(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=XS(a)|0}return a|0}function XS(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86070)switch(a|0){case 86071:case 86070:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function YS(){ZS(0);return}function ZS(a){a=a|0;yb(52696,173749);nb(52712,173754,1,1,0);ub(52720,173759,1,-128,127);ub(52736,173764,1,-128,127);ub(52728,173776,1,0,255);ub(52744,173790,2,-32768,32767);ub(52752,173796,2,0,65535);ub(52760,173811,4,-2147483648,2147483647);ub(52768,173815,4,0,-1);ub(52776,173828,4,-2147483648,2147483647);ub(52784,173833,4,0,-1);tb(52792,173847,4);tb(52800,173853,8);wb(16,173860);wb(48312,173872);xb(48336,4,173905);sb(40,173918);vb(48360,0,173934);vb(48368,0,173964);vb(48376,1,174001);vb(48384,2,174040);vb(48392,3,174071);vb(48400,4,174111);vb(48408,5,174140);vb(48416,4,174178);vb(48424,5,174208);vb(48368,0,174247);vb(48376,1,174279);vb(48384,2,174312);vb(48392,3,174345);vb(48400,4,174379);vb(48408,5,174412);vb(48432,6,174446);vb(48440,7,174477);vb(48448,7,174509);return}function _S(a){a=a|0;return VU(c[a+4>>2]|0)|0}function $S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=y;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;o=c[46422]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=185728+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[46422]=o&~(1<>2]=a;c[d>>2]=g}x=b<<3;c[e+4>>2]=x|3;x=e+x+4|0;c[x>>2]=c[x>>2]|1;x=f;l=y;return x|0}n=c[46424]|0;if(k>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=185728+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}x=e<<3;h=x-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+x>>2]=h;if(n|0){e=c[46427]|0;b=n>>>3;d=185728+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46424]=h;c[46427]=f;x=i;l=y;return x|0}g=c[46423]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[185992+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=185992+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46423]=g&~(1<>2]|0)==(i|0)?x:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){x=j+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(n|0){e=c[46427]|0;b=n>>>3;d=185728+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46424]=j;c[46427]=h}x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[46423]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;s=a<>>16&4;s=s<>>16&2;j=14-(i|o|j)+(s<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[185992+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;s=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=d;f=0;s=65;break a}else{a=d;f=h}s=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(s|0)==0|(s|0)==(d|0)?g:s;if(!d){d=g;s=61;break}else i=i<<1}}while(0);if((s|0)==61){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>h;g=o>>>5&8;o=o>>>g;i=o>>>2&4;o=o>>>i;j=o>>>1&2;o=o>>>j;d=o>>>1&1;a=0;d=c[185992+((g|h|i|j|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else s=65}if((s|0)==65){g=d;while(1){o=(c[g+4>>2]&-8)-k|0;d=o>>>0>>0;f=d?o:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[46424]|0)-k|0)>>>0:0)?(n=i+k|0,n>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{x=c[i+8>>2]|0;c[x+12>>2]=b;c[b+8>>2]=x}while(0);do if(g){a=c[i+28>>2]|0;d=185992+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<>2]|0)==(i|0)?x:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){x=h+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[n+4>>2]=h|1;c[n+h>>2]=h;b=h>>>3;if(h>>>0<256){d=185728+(b<<1<<2)|0;a=c[46422]|0;b=1<>2]|0}c[a>>2]=n;c[b+12>>2]=n;c[n+8>>2]=b;c[n+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;d=14-(v|w|d)+(x<>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=185992+(d<<2)|0;c[n+28>>2]=d;a=n+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break b}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=n;c[w>>2]=n;c[n+8>>2]=x;c[n+12>>2]=b;c[n+24>>2]=0}while(0);x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=-1;while(0);d=c[46424]|0;if(d>>>0>=o>>>0){b=d-o|0;a=c[46427]|0;if(b>>>0>15){x=a+o|0;c[46427]=x;c[46424]=b;c[x+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=o|3}else{c[46424]=0;c[46427]=0;c[a+4>>2]=d|3;x=a+d+4|0;c[x>>2]=c[x>>2]|1}x=a+8|0;l=y;return x|0}h=c[46425]|0;if(h>>>0>o>>>0){v=h-o|0;c[46425]=v;x=c[46428]|0;w=x+o|0;c[46428]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}if(!(c[46540]|0)){c[46542]=4096;c[46541]=4096;c[46543]=-1;c[46544]=-1;c[46545]=0;c[46533]=0;c[46540]=p&-16^1431655768;a=4096}else a=c[46542]|0;i=o+48|0;j=o+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=o>>>0){x=0;l=y;return x|0}a=c[46532]|0;if(a|0?(n=c[46530]|0,p=n+k|0,p>>>0<=n>>>0|p>>>0>a>>>0):0){x=0;l=y;return x|0}d:do if(!(c[46533]&4)){d=c[46428]|0;e:do if(d){e=186136;while(1){p=c[e>>2]|0;if(p>>>0<=d>>>0?(p+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){s=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=mX(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;s=145;break d}}else{e=a;s=136}}else b=0}else s=128;while(0);do if((s|0)==128){d=mX(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[46541]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+k|0,q=c[46530]|0,r=b+q|0,b>>>0>o>>>0&b>>>0<2147483647):0){p=c[46532]|0;if(p|0?r>>>0<=q>>>0|r>>>0>p>>>0:0){b=0;break}a=mX(b|0)|0;if((a|0)==(d|0)){h=b;g=d;s=145;break d}else{e=a;s=136}}else b=0}while(0);do if((s|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;s=145;break d}a=c[46542]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;s=145;break d}if((mX(a|0)|0)==(-1|0)){mX(d|0)|0;b=0;break}else{h=a+b|0;g=e;s=145;break d}}while(0);c[46533]=c[46533]|4;s=143}else{b=0;s=143}while(0);if(((s|0)==143?k>>>0<2147483647:0)?(v=mX(k|0)|0,r=mX(0)|0,t=r-v|0,u=t>>>0>(o+40|0)>>>0,!((v|0)==(-1|0)|u^1|v>>>0>>0&((v|0)!=(-1|0)&(r|0)!=(-1|0))^1)):0){h=u?t:b;g=v;s=145}if((s|0)==145){b=(c[46530]|0)+h|0;c[46530]=b;if(b>>>0>(c[46531]|0)>>>0)c[46531]=b;j=c[46428]|0;f:do if(j){b=186136;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){s=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((s|0)==154?(w=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[w>>2]=d+h;x=(c[46425]|0)+h|0;v=j+8|0;v=(v&7|0)==0?0:0-v&7;w=j+v|0;v=x-v|0;c[46428]=w;c[46425]=v;c[w+4>>2]=v|1;c[j+x+4>>2]=40;c[46429]=c[46544];break}if(g>>>0<(c[46426]|0)>>>0)c[46426]=g;d=g+h|0;b=186136;while(1){if((c[b>>2]|0)==(d|0)){s=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((s|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;n=b+4|0;c[n>>2]=(c[n>>2]|0)+h;n=g+8|0;n=g+((n&7|0)==0?0:0-n&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=n+o|0;i=b-n-o|0;c[n+4>>2]=o|3;g:do if((j|0)==(b|0)){x=(c[46425]|0)+i|0;c[46425]=x;c[46428]=k;c[k+4>>2]=x|1}else{if((c[46427]|0)==(b|0)){x=(c[46424]|0)+i|0;c[46424]=x;c[46427]=k;c[k+4>>2]=x|1;c[k+x>>2]=x;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[46422]=c[46422]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{x=c[b+8>>2]|0;c[x+12>>2]=a;c[a+8>>2]=x}while(0);if(!g)break;d=c[b+28>>2]|0;e=185992+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){x=g+16|0;c[((c[x>>2]|0)==(b|0)?x:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[46423]=c[46423]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=185728+(b<<1<<2)|0;a=c[46422]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=185992+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46423]|0;d=1<>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=k;c[w>>2]=k;c[k+8>>2]=x;c[k+12>>2]=b;c[k+24>>2]=0}while(0);x=n+8|0;l=y;return x|0}b=186136;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(x=a+(c[b+4>>2]|0)|0,x>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=x+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=d-v|0;c[46428]=w;c[46425]=v;c[w+4>>2]=v|1;c[g+d+4>>2]=40;c[46429]=c[46544];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46534];c[b+4>>2]=c[46535];c[b+8>>2]=c[46536];c[b+12>>2]=c[46537];c[46534]=g;c[46535]=h;c[46537]=0;c[46536]=b;b=a+24|0;do{w=b;b=b+4|0;c[b>>2]=7}while((w+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=185728+(b<<1<<2)|0;a=c[46422]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=185992+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[46423]|0;a=1<>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=j;c[w>>2]=j;c[j+8>>2]=x;c[j+12>>2]=b;c[j+24>>2]=0}}else{x=c[46426]|0;if((x|0)==0|g>>>0>>0)c[46426]=g;c[46534]=g;c[46535]=h;c[46537]=0;c[46431]=c[46540];c[46430]=-1;c[46435]=185728;c[46434]=185728;c[46437]=185736;c[46436]=185736;c[46439]=185744;c[46438]=185744;c[46441]=185752;c[46440]=185752;c[46443]=185760;c[46442]=185760;c[46445]=185768;c[46444]=185768;c[46447]=185776;c[46446]=185776;c[46449]=185784;c[46448]=185784;c[46451]=185792;c[46450]=185792;c[46453]=185800;c[46452]=185800;c[46455]=185808;c[46454]=185808;c[46457]=185816;c[46456]=185816;c[46459]=185824;c[46458]=185824;c[46461]=185832;c[46460]=185832;c[46463]=185840;c[46462]=185840;c[46465]=185848;c[46464]=185848;c[46467]=185856;c[46466]=185856;c[46469]=185864;c[46468]=185864;c[46471]=185872;c[46470]=185872;c[46473]=185880;c[46472]=185880;c[46475]=185888;c[46474]=185888;c[46477]=185896;c[46476]=185896;c[46479]=185904;c[46478]=185904;c[46481]=185912;c[46480]=185912;c[46483]=185920;c[46482]=185920;c[46485]=185928;c[46484]=185928;c[46487]=185936;c[46486]=185936;c[46489]=185944;c[46488]=185944;c[46491]=185952;c[46490]=185952;c[46493]=185960;c[46492]=185960;c[46495]=185968;c[46494]=185968;c[46497]=185976;c[46496]=185976;x=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=x-v|0;c[46428]=w;c[46425]=v;c[w+4>>2]=v|1;c[g+x+4>>2]=40;c[46429]=c[46544]}while(0);b=c[46425]|0;if(b>>>0>o>>>0){v=b-o|0;c[46425]=v;x=c[46428]|0;w=x+o|0;c[46428]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}}c[(mT()|0)>>2]=12;x=0;l=y;return x|0}function aT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[46426]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[46427]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46424]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[46422]=c[46422]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=185992+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46423]=c[46423]&~(1<>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[46428]|0)==(j|0)){j=(c[46425]|0)+b|0;c[46425]=j;c[46428]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46427]|0))return;c[46427]=0;c[46424]=0;return}if((c[46427]|0)==(j|0)){j=(c[46424]|0)+b|0;c[46424]=j;c[46427]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[46422]=c[46422]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=185992+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46423]=c[46423]&~(1<>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[46427]|0)){c[46424]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=185728+(a<<1<<2)|0;b=c[46422]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;e=14-(g|h|e)+(j<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=185992+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46423]|0;d=1<>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[46430]|0)+-1|0;c[46430]=j;if(j|0)return;a=186144;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46430]=-1;return}function bT(a,b){a=a|0;b=b|0;var d=0;if(a){d=N(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=$S(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;iX(a|0,0,d|0)|0;return a|0}function cT(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=$S(b)|0;return b|0}if(b>>>0>4294967231){c[(mT()|0)>>2]=12;b=0;return b|0}d=dT(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=$S(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;gX(d|0,a|0,(e>>>0>>0?e:b)|0)|0;aT(a);b=d;return b|0}function dT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[46542]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;eT(k,d);return a|0}if((c[46428]|0)==(i|0)){k=(c[46425]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[46428]=e;c[46425]=d;return a|0}if((c[46427]|0)==(i|0)){e=(c[46424]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[46424]=d;c[46427]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[46422]=c[46422]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=185992+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46423]=c[46423]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;eT(i,k);return a|0}return 0}function eT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[46427]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46424]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[46422]=c[46422]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=185992+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46423]=c[46423]&~(1<>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[46428]|0)==(i|0)){i=(c[46425]|0)+b|0;c[46425]=i;c[46428]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46427]|0))return;c[46427]=0;c[46424]=0;return}if((c[46427]|0)==(i|0)){i=(c[46424]|0)+b|0;c[46424]=i;c[46427]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[46422]=c[46422]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=185992+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46423]=c[46423]&~(1<>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[46427]|0)){c[46424]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=185728+(b<<1<<2)|0;a=c[46422]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;e=14-(d|g|e)+(i<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=185992+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46423]|0;d=1<>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function fT(a,b){a=a|0;b=b|0;if(a>>>0<9){b=$S(b)|0;return b|0}else{b=gT(a,b)|0;return b|0}return 0}function gT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){c[(mT()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=$S(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;eT(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;eT(f,i)}i=b+8|0;return i|0}function hT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{b=gT(b>>>0>16?b:16,d)|0;break}}else b=$S(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function iT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=nT(c[a+60>>2]|0)|0;a=lT(lb(6,d|0)|0)|0;l=b;return a|0}function jT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=o+16|0;g=o;f=o+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=lT(gb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;q=c[f+4>>2]|0;p=g>>>0>q>>>0;f=p?f+8|0:f;b=b+(p<<31>>31)|0;q=g-(p?q:0)|0;c[f>>2]=(c[f>>2]|0)+q;p=f+4|0;c[p>>2]=(c[p>>2]|0)-q;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=lT(gb(146,k|0)|0)|0;if((e|0)==(g|0)){n=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else n=3;while(0);if((n|0)==3){q=c[a+44>>2]|0;c[a+16>>2]=q+(c[a+48>>2]|0);c[i>>2]=q;c[j>>2]=q}l=o;return d|0}function kT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((lT(fb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function lT(a){a=a|0;if(a>>>0>4294963200){c[(mT()|0)>>2]=0-a;a=-1}return a|0}function mT(){return 186248}function nT(a){a=a|0;return a|0}function oT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,kb(54,f|0)|0):0)a[b+75>>0]=-1;f=jT(b,d,e)|0;l=g;return f|0}function pT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;qT(h,0);d=rT(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function qT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function rT(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(mT()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0}while((tT(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=sT(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0;if((d[175045+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){qT(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[175045+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;qT(b,0);c[(mT()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=sT(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=ZW(i|0,m|0,10,0)|0;k=y;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=TW(f|0,k|0,e|0,l|0)|0;m=y;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=sT(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[175301+((o*23|0)>>>5&7)>>0]|0;f=a[175045+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=sT(b)|0;f=a[175045+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=bX(-1,-1,n|0)|0;m=y;if(o>>>0<=k>>>0|(m>>>0>>0|(m|0)==(e|0)&l>>>0>>0)){f=o;n=76;break}while(1){i=cX(i|0,e|0,n|0)|0;e=y;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=sT(b)|0;f=a[175045+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[175045+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(N(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=sT(b)|0;e=a[175045+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=$W(-1,-1,o|0,0)|0;n=y;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=ZW(i|0,e|0,o|0,0)|0;l=y;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=TW(k|0,l|0,f|0,0)|0;e=y;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=sT(b)|0;f=a[175045+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[175045+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0}while(f>>>0>(d[175045+i>>0]|0)>>>0);c[(mT()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(mT()|0)>>2]=34;g=TW(g|0,h|0,-1,-1)|0;h=y;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(mT()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=UW(i^j|0,e^g|0,j|0,g|0)|0;h=y}while(0);y=h;return g|0}function sT(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=uT(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function tT(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function uT(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;if((vT(a)|0)==0?(Md[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function vT(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Md[c[b+36>>2]&15](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function wT(a,b,c){a=a|0;b=b|0;c=c|0;c=pT(a,b,c,0,-2147483648)|0;return c|0}function xT(a,b,c){a=a|0;b=b|0;c=c|0;c=pT(a,b,c,-1,0)|0;return c|0}function yT(a,b,c){a=a|0;b=b|0;c=c|0;c=pT(a,b,c,-2147483648,0)|0;return c|0}function zT(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;o=r+16|0;p=r+8|0;q=r;h[j>>3]=a;u=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0>>0|(g|0)==(f|0)&u>>>0>>0;t=i?e:u;s=i?f:g;e=i?u:e;f=i?g:f;g=bX(t|0,s|0,52)|0;i=bX(e|0,f|0,52)|0;c[j>>2]=t;c[j+4>>2]=s;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{u=(i|0)<573;d=u?1.90109156629516e-211:1.0;b=u?a*5260135901548373507240989.0e186:a;a=u?k*5260135901548373507240989.0e186:k}AT(n,o,b);AT(p,q,a);a=d*+B(+(+h[q>>3]+ +h[o>>3]+ +h[p>>3]+ +h[n>>3]))}}else a=k;while(0);l=r;return +a}function AT(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function BT(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function CT(a){a=+a;var b=0;h[j>>3]=a;b=c[j+4>>2]&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+ET(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+K(+a);a=(a+1.0/a)*.5;break}else{a=+FT(a);break}while(0);return +a}function DT(a){a=+a;var b=0.0,d=0,e=0.0;h[j>>3]=a;d=c[j+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=d;b=+h[j>>3];do if(d>>>0<1082535490){b=+ET(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+FT(b);while(0);return +a}function ET(a){a=+a;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0,k=0,l=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;d=bX(c[j>>2]|0,d|0,63)|0;do if(b>>>0>1078159481){i=GT(a)|0;b=y&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&i>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{g=0.0;i=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){g=e-f;a=g;g=e-g-f;i=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!i){a=a-(a*f-e);break}f=a*(f-g)-g-e;switch(i|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=cX(i+1023|0,0,52)|0;k=y;c[j>>2]=d;c[j+4>>2]=k;g=+h[j>>3];if(i>>>0>56){a=a-f+1.0;a=((i|0)==1024?a*2.0*8988465674311579538646525.0e283:a*g)+-1.0;break a}b=cX(1023-i|0,0,52)|0;d=y;if((i|0)<20){c[j>>2]=b;c[j+4>>2]=d;e=1.0-+h[j>>3];a=a-f}else{c[j>>2]=b;c[j+4>>2]=d;e=a-(f+ +h[j>>3]);a=1.0}a=(e+a)*g;break a}}}while(0);return +a}function FT(a){a=+a;return +(+K(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function GT(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function HT(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function IT(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function JT(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function KT(a){a=a|0;return (a+-48|0)>>>0<10|0}function LT(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=o+124|0;n=o;h=n;i=108328;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(mT()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[n+48>>2]=k;g=n+20|0;c[g>>2]=b;c[n+44>>2]=b;d=b+k|0;b=n+16|0;c[b>>2]=d;c[n+28>>2]=d;d=MT(n,e,f)|0;if(k){n=c[g>>2]|0;a[n+(((n|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=o;return d|0}function MT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+224|0;if((l|0)>=(m|0))W(224);o=t+120|0;p=t+80|0;r=t;s=t+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((NT(0,d,o,r,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)q=OT(b)|0;else q=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=s;i=b+28|0;c[i>>2]=s;j=b+20|0;c[j>>2]=s;c[f>>2]=80;k=b+16|0;c[k>>2]=s+80;e=NT(b,d,o,r,p)|0;if(h){Md[c[b+36>>2]&15](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=NT(b,d,o,r,p)|0;f=c[b>>2]|0;c[b>>2]=f|n;if(q|0)PT(b);e=(f&32|0)==0?e:-1}l=t;return e|0}function NT(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+64|0;if((l|0)>=(m|0))W(64);E=J+16|0;F=J;B=J+24|0;H=J+8|0;I=J+20|0;c[E>>2]=e;x=(d|0)!=0;z=B+40|0;A=z;B=B+39|0;C=H+4|0;j=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(mT()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);t=c[E>>2]|0;j=a[t>>0]|0;if(!(j<<24>>24)){w=94;break a}k=t;b:while(1){switch(j<<24>>24){case 37:{w=10;break b}case 0:{j=k;break b}default:{}}v=k+1|0;c[E>>2]=v;j=a[v>>0]|0;k=v}c:do if((w|0)==10){w=0;j=k;do{if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[E>>2]=k}while((a[k>>0]|0)==37)}while(0);j=j-t|0;if(x)QT(d,t,j)}while((j|0)!=0);v=(KT(a[(c[E>>2]|0)+1>>0]|0)|0)==0;k=c[E>>2]|0;if(!v?(a[k+2>>0]|0)==36:0){r=(a[k+1>>0]|0)+-48|0;p=1;j=3}else{r=-1;p=n;j=1}j=k+j|0;c[E>>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0;if(n>>>0>31|(1<>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0}while(!(n>>>0>31|(1<>24==42){if((KT(a[j+1>>0]|0)|0)!=0?(G=c[E>>2]|0,(a[G+2>>0]|0)==36):0){j=G+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;n=1;k=G+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);j=c[v>>2]|0;c[f>>2]=v+4}else j=0;n=0;k=(c[E>>2]|0)+1|0}c[E>>2]=k;v=(j|0)<0;u=v?0-j|0:j;o=v?o|8192:o;v=n}else{j=RT(E)|0;if((j|0)<0){e=-1;break}u=j;v=p;k=c[E>>2]|0}do if((a[k>>0]|0)==46){j=k+1|0;if((a[j>>0]|0)!=42){c[E>>2]=j;j=RT(E)|0;k=c[E>>2]|0;break}if(KT(a[k+2>>0]|0)|0?(D=c[E>>2]|0,(a[D+3>>0]|0)==36):0){j=D+2|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=D+4|0;c[E>>2]=k;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);j=c[s>>2]|0;c[f>>2]=s+4}else j=0;k=(c[E>>2]|0)+2|0;c[E>>2]=k}else j=-1;while(0);s=0;while(1){if(((a[k>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=k;k=k+1|0;c[E>>2]=k;n=a[(a[n>>0]|0)+-65+(175310+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(r|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(r<<2)>>2]=p;q=g+(r<<3)|0;r=c[q+4>>2]|0;w=F;c[w>>2]=c[q>>2];c[w+4>>2]=r;w=54;break}if(!x){e=0;break a}ST(F,p,f);k=c[E>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else j=0}d:do if((w|0)==55){w=0;k=a[k+-1>>0]|0;k=(s|0)!=0&(k&15|0)==3?k&-33:k;n=o&-65537;r=(o&8192|0)==0?o:n;e:do switch(k|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[F>>2]>>2]=e;j=0;break d}case 1:{c[c[F>>2]>>2]=e;j=0;break d}case 2:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}case 3:{b[c[F>>2]>>1]=e;j=0;break d}case 4:{a[c[F>>2]>>0]=e;j=0;break d}case 6:{c[c[F>>2]>>2]=e;j=0;break d}case 7:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}default:{j=0;break d}}case 112:{k=120;j=j>>>0>8?j:8;n=r|8;w=67;break}case 88:case 120:{n=r;w=67;break}case 111:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;q=UT(k,n,z)|0;w=A-q|0;o=0;p=175774;j=(r&8|0)==0|(j|0)>(w|0)?j:w+1|0;w=73;break}case 105:case 100:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){k=UW(0,0,k|0,n|0)|0;n=y;o=F;c[o>>2]=k;c[o+4>>2]=n;o=1;p=175774;w=72;break e}else{o=(r&2049|0)!=0&1;p=(r&2048|0)==0?((r&1|0)==0?175774:175776):175775;w=72;break e}}case 117:{n=F;o=0;p=175774;k=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[B>>0]=c[F>>2];s=B;o=0;p=175774;q=1;j=A;break}case 109:{k=WT(c[(mT()|0)>>2]|0)|0;w=77;break}case 115:{k=c[F>>2]|0;k=(k|0)==0?175784:k;w=77;break}case 67:{c[H>>2]=c[F>>2];c[C>>2]=0;c[F>>2]=H;p=-1;w=81;break}case 83:{if(!j){YT(d,32,u,0,r);j=0;w=91}else{p=j;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=_T(d,+h[F>>3],u,j,r,k)|0;break d}default:{s=t;o=0;p=175774;q=j;n=r;j=A}}while(0);f:do if((w|0)==67){t=F;s=c[t>>2]|0;t=c[t+4>>2]|0;q=TT(s,t,z,k&32)|0;p=(n&8|0)==0|(s|0)==0&(t|0)==0;o=p?0:2;p=p?175774:175774+(k>>>4)|0;r=n;k=s;n=t;w=73}else if((w|0)==72){q=VT(k,n,z)|0;w=73}else if((w|0)==77){w=0;t=XT(k,0,j)|0;r=(t|0)==0;s=k;o=0;p=175774;q=r?j:t-k|0;j=r?k+j|0:t}else if((w|0)==81){w=0;o=c[F>>2]|0;j=0;while(1){k=c[o>>2]|0;if(!k)break;k=ZT(I,k)|0;n=(k|0)<0;if(n|k>>>0>(p-j|0)>>>0){w=85;break}j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((w|0)==85){w=0;if(n){e=-1;break a}}YT(d,32,u,j,r);if(!j){j=0;w=91}else{n=c[F>>2]|0;o=0;while(1){k=c[n>>2]|0;if(!k){w=91;break f}k=ZT(I,k)|0;o=k+o|0;if((o|0)>(j|0)){w=91;break f}QT(d,I,k);if(o>>>0>=j>>>0){w=91;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;n=(k|0)!=0|(n|0)!=0;t=(j|0)!=0|n;n=A-q+((n^1)&1)|0;s=t?q:z;q=t?((j|0)>(n|0)?j:n):0;n=(j|0)>-1?r&-65537:r;j=A}else if((w|0)==91){w=0;YT(d,32,u,j,r^8192);j=(u|0)>(j|0)?u:j;break}r=j-s|0;q=(q|0)<(r|0)?r:q;t=q+o|0;j=(u|0)<(t|0)?t:u;YT(d,32,j,t,n);QT(d,p,o);YT(d,48,j,t,n^65536);YT(d,48,q,r,0);QT(d,s,r);YT(d,32,j,t,n^8192)}while(0);n=v}g:do if((w|0)==94)if(!d)if(!n)e=0;else{e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;ST(g+(e<<3)|0,j,f);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);l=J;return e|0}function OT(a){a=a|0;return 0}function PT(a){a=a|0;return}function QT(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))lU(b,d,a)|0;return}function RT(b){b=b|0;var d=0,e=0;if(!(KT(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((KT(a[e>>0]|0)|0)!=0)}return d|0}function ST(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function TT(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[175822+(b&15)>>0]|0|f;b=bX(b|0,c|0,4)|0;c=y}while(!((b|0)==0&(c|0)==0));return e|0}function UT(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=bX(b|0,c|0,3)|0;c=y}while(!((b|0)==0&(c|0)==0));return d|0}function VT(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=$W(b|0,c|0,10,0)|0;f=c;c=y;g=ZW(b|0,c|0,10,0)|0;g=UW(e|0,f|0,g|0,y|0)|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function WT(a){a=a|0;return gU(a,c[(fU()|0)+188>>2]|0)|0}function XT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=N(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function YT(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;if((l|0)>=(m|0))W(256);f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;iX(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{QT(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}QT(a,f,e)}l=g;return}function ZT(a,b){a=a|0;b=b|0;if(!a)a=0;else a=cU(a,b,0)|0;return a|0}function _T(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+560|0;if((l|0)>=(m|0))W(560);n=I+8|0;w=I;H=I+524|0;G=H;o=I+512|0;c[w>>2]=0;F=o+12|0;$T(e)|0;j=y;if((j|0)<0){e=-e;$T(e)|0;E=1;D=175791;j=y}else{E=(h&2049|0)!=0&1;D=(h&2048|0)==0?((h&1|0)==0?175792:175797):175794}do if(0==0&(j&2146435072|0)==2146435072){H=(i&32|0)!=0;j=E+3|0;YT(b,32,f,j,h&-65537);QT(b,D,E);QT(b,e!=e|0.0!=0.0?(H?177741:175818):H?175810:175814,3);YT(b,32,f,j,h^8192)}else{s=+aU(e,w)*2.0;j=s!=0.0;if(j)c[w>>2]=(c[w>>2]|0)+-1;v=i|32;if((v|0)==97){q=i&32;t=(q|0)==0?D:D+9|0;r=E|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[t>>0]|0)==45){e=-(e+(-s-e));break}else{e=s+e-e;break}}else e=s;while(0);k=c[w>>2]|0;j=(k|0)<0?0-k|0:k;j=VT(j,((j|0)<0)<<31>>31,F)|0;if((j|0)==(F|0)){j=o+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;p=j+-2|0;a[p>>0]=i+15;k=(g|0)<1;n=(h&8|0)==0;o=H;do{E=~~e;j=o+1|0;a[o>>0]=q|d[175822+E>>0];e=(e-+(E|0))*16.0;if((j-G|0)==1?!(n&(k&e==0.0)):0){a[j>>0]=46;o=o+2|0}else o=j}while(e!=0.0);if((g|0)!=0?(-2-G+o|0)<(g|0):0){k=F;n=p;j=g+2+k-n|0}else{k=F;n=p;j=k-G-n+o|0}F=j+r|0;YT(b,32,f,F,h);QT(b,t,r);YT(b,48,f,F,h^65536);G=o-G|0;QT(b,H,G);H=k-n|0;YT(b,48,j-(G+H)|0,0,0);QT(b,p,H);YT(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[w>>2]|0)+-28|0;c[w>>2]=j;e=s*268435456.0}else{e=s;j=c[w>>2]|0}C=(j|0)<0?n:n+288|0;n=C;do{A=~~e>>>0;c[n>>2]=A;n=n+4|0;e=(e-+(A>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){q=C;while(1){p=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=q>>>0){o=0;do{x=cX(c[j>>2]|0,0,p|0)|0;x=TW(x|0,y|0,o|0,0)|0;z=y;o=$W(x|0,z|0,1e9,0)|0;A=ZW(o|0,y|0,1e9,0)|0;A=UW(x|0,z|0,A|0,y|0)|0;c[j>>2]=A;j=j+-4|0}while(j>>>0>=q>>>0);if(o){A=q+-4|0;c[A>>2]=o;o=A}else o=q}else o=q;a:do if(n>>>0>o>>>0){j=n;while(1){n=j+-4|0;if(c[n>>2]|0){n=j;break a}if(n>>>0>o>>>0)j=n;else break}}while(0);j=(c[w>>2]|0)-p|0;c[w>>2]=j;if((j|0)>0)q=o;else break}}else o=C;if((j|0)<0){g=((k+25|0)/9|0)+1|0;u=(v|0)==102;do{t=0-j|0;t=(t|0)<9?t:9;if(o>>>0>>0){p=(1<>>t;r=0;j=o;do{A=c[j>>2]|0;c[j>>2]=(A>>>t)+r;r=N(A&p,q)|0;j=j+4|0}while(j>>>0>>0);o=(c[o>>2]|0)==0?o+4|0:o;if(r){c[n>>2]=r;n=n+4|0}}else o=(c[o>>2]|0)==0?o+4|0:o;j=u?C:o;n=(n-j>>2|0)>(g|0)?j+(g<<2)|0:n;j=(c[w>>2]|0)+t|0;c[w>>2]=j}while((j|0)<0);u=o}else u=o;A=C;if(u>>>0>>0){j=(A-u>>2)*9|0;p=c[u>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else j=0;x=(v|0)==103;z=(k|0)!=0;o=k-((v|0)==102?0:j)+((z&x)<<31>>31)|0;if((o|0)<(((n-A>>2)*9|0)+-9|0)){w=o+9216|0;o=(w|0)/9|0;g=C+4+(o+-1024<<2)|0;o=w-(o*9|0)|0;if((o|0)<8){p=10;while(1){p=p*10|0;if((o|0)<7)o=o+1|0;else break}}else p=10;r=c[g>>2]|0;o=(r>>>0)/(p>>>0)|0;t=r-(N(o,p)|0)|0;q=(g+4|0)==(n|0);if(!(q&(t|0)==0)){s=(o&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;e=t>>>0>>0?.5:q&(t|0)==(w|0)?1.0:1.5;if(E){w=(a[D>>0]|0)==45;e=w?-e:e;s=w?-s:s}o=r-t|0;c[g>>2]=o;if(s+e!=s){w=o+p|0;c[g>>2]=w;if(w>>>0>999999999){p=g;j=u;while(1){o=p+-4|0;c[p>>2]=0;if(o>>>0>>0){j=j+-4|0;c[j>>2]=0}w=(c[o>>2]|0)+1|0;c[o>>2]=w;if(w>>>0>999999999)p=o;else{p=j;break}}}else{o=g;p=u}j=(A-p>>2)*9|0;r=c[p>>2]|0;if(r>>>0>=10){q=10;do{q=q*10|0;j=j+1|0}while(r>>>0>=q>>>0)}}else{o=g;p=u}}else{o=g;p=u}w=o+4|0;n=n>>>0>w>>>0?w:n}else p=u;g=0-j|0;b:do if(n>>>0>p>>>0)while(1){o=n+-4|0;if(c[o>>2]|0){w=n;v=1;break b}if(o>>>0>p>>>0)n=o;else{w=o;v=0;break}}else{w=n;v=0}while(0);do if(x){k=k+((z^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){q=i+-1|0;k=k+-1-j|0}else{q=i+-2|0;k=k+-1|0}if(!(h&8)){if(v?(B=c[w+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){o=0;n=10;do{n=n*10|0;o=o+1|0}while(!((B>>>0)%(n>>>0)|0|0))}else o=0;else o=9;n=((w-A>>2)*9|0)+-9|0;if((q|32|0)==102){i=n-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=n+j-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else q=i;while(0);u=(k|0)!=0;r=u?1:h>>>3&1;t=(q|32|0)==102;if(t){x=0;j=(j|0)>0?j:0}else{n=(j|0)<0?g:j;n=VT(n,((n|0)<0)<<31>>31,F)|0;o=F;if((o-n|0)<2)do{n=n+-1|0;a[n>>0]=48}while((o-n|0)<2);a[n+-1>>0]=(j>>31&2)+43;j=n+-2|0;a[j>>0]=q;x=j;j=o-j|0}j=E+1+k+r+j|0;YT(b,32,f,j,h);QT(b,D,E);YT(b,48,f,j,h^65536);if(t){r=p>>>0>C>>>0?C:p;t=H+9|0;p=t;q=H+8|0;o=r;do{n=VT(c[o>>2]|0,0,t)|0;if((o|0)==(r|0)){if((n|0)==(t|0)){a[q>>0]=48;n=q}}else if(n>>>0>H>>>0){iX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}QT(b,n,p-n|0);o=o+4|0}while(o>>>0<=C>>>0);if(!((h&8|0)==0&(u^1)))QT(b,175838,1);if(o>>>0>>0&(k|0)>0)while(1){n=VT(c[o>>2]|0,0,t)|0;if(n>>>0>H>>>0){iX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}QT(b,n,(k|0)<9?k:9);o=o+4|0;n=k+-9|0;if(!(o>>>0>>0&(k|0)>9)){k=n;break}else k=n}YT(b,48,k+9|0,9,0)}else{w=v?w:p+4|0;if(p>>>0>>0&(k|0)>-1){g=H+9|0;u=(h&8|0)==0;v=g;r=0-G|0;t=H+8|0;q=p;do{n=VT(c[q>>2]|0,0,g)|0;if((n|0)==(g|0)){a[t>>0]=48;n=t}do if((q|0)==(p|0)){o=n+1|0;QT(b,n,1);if(u&(k|0)<1){n=o;break}QT(b,175838,1);n=o}else{if(n>>>0<=H>>>0)break;iX(H|0,48,n+r|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}while(0);G=v-n|0;QT(b,n,(k|0)>(G|0)?G:k);k=k-G|0;q=q+4|0}while(q>>>0>>0&(k|0)>-1)}YT(b,48,k+18|0,18,0);QT(b,x,F-x|0)}YT(b,32,f,j,h^8192)}while(0);l=I;return ((j|0)<(f|0)?f:j)|0}function $T(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function aU(a,b){a=+a;b=b|0;return +(+bU(a,b))}function bU(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=bX(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+bU(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function cU(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(dU()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(mT()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(mT()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function dU(){return eU()|0}function eU(){return 108452}function fU(){return eU()|0}function gU(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[175840+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=175928;else{b=f;g=5}if((g|0)==5){f=175928;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return hU(f,c[e+20>>2]|0)|0}function hU(a,b){a=a|0;b=b|0;return iU(a,b)|0}function iU(a,b){a=a|0;b=b|0;if(!b)b=0;else b=jU(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function jU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=kU(c[b+8>>2]|0,o)|0;f=kU(c[b+12>>2]|0,o)|0;g=kU(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=kU(c[b+(g<<2)>>2]|0,o)|0;g=kU(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=HT(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}l=f?l:k;h=f?j:h-j|0}f=i+m|0;g=kU(c[b+(f<<2)>>2]|0,o)|0;f=kU(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function kU(a,b){a=a|0;b=b|0;var c=0;c=eX(a|0)|0;return ((b|0)==0?a:c)|0}function lU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(mU(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Md[c[e+36>>2]&15](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=Md[c[e+36>>2]&15](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);gX(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function mU(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function nU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;gX(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function oU(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=nT(a)|0;a=lb(6,d|0)|0;a=lT((a|0)==-4?0:a)|0;l=b;return a|0}function pU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+192|0;if((l|0)>=(m|0))W(192);i=t+152|0;h=t+136|0;s=t+120|0;r=t+104|0;q=t+96|0;n=t+80|0;k=t+64|0;f=t+48|0;o=t+32|0;g=t+16|0;e=t;u=t+176|0;j=t+168|0;c[u>>2]=d;d=(c[u>>2]|0)+(4-1)&~(4-1);p=c[d>>2]|0;c[u>>2]=d+4;p=(b|0)==4?p|32768:p;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=p;d=lT(hb(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=hb(221,g|0)|0;switch(d|0){case -22:{c[o>>2]=a;c[o+4>>2]=9;c[o+8>>2]=p;d=hb(221,o|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=lT(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=p;d=hb(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;hb(221,k|0)|0}d=lT(d)|0;break a}c[n>>2]=a;c[n+4>>2]=1030;c[n+8>>2]=0;d=hb(221,n|0)|0;if((d|0)==-22){c[r>>2]=a;c[r+4>>2]=0;c[r+8>>2]=p;d=hb(221,r|0)|0;if((d|0)>-1){c[s>>2]=d;c[s+4>>2]=2;c[s+8>>2]=1;hb(221,s|0)|0}d=lT(d)|0;break a}else{if((d|0)>-1){c[q>>2]=d;lb(6,q|0)|0}d=lT(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=p;d=lT(hb(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=p;d=lT(hb(221,i|0)|0)|0}}while(0);l=t;return d|0}function qU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=jb(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;hb(221,g|0)|0}i=lT(e)|0;l=h;return i|0}function rU(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=sT(b)|0}while((tT(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=sT(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[177732+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=sT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[177741+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=sT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=sT(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=sT(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(mT()|0)>>2]=22;qT(b,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=sT(b)|0;if((e|32|0)==120){g=+sU(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+tU(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(mT()|0)>>2]=22;qT(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function sU(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=a+4|0;i=c[z>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=sT(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=sT(a)|0;j=1}if((w|0)==10){i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=sT(a)|0;if((i|0)==48){l=0;j=0;do{i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=sT(a)|0;l=TW(l|0,j|0,-1,-1)|0;j=y}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=TW(m|0,u|0,1,0)|0;q=i;r=1;p=y}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=sT(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[z>>2]=(c[z>>2]|0)+-1;if(g){if(!i?(c[z>>2]=(c[z>>2]|0)+-1,!((s|0)==0|i)):0)c[z>>2]=(c[z>>2]|0)+-1}else qT(a,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;w=m;m=TW(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&w>>>0<7)){m=j;break}else l=y}}else m=v;if((i|32|0)==112){j=uU(a,g)|0;i=y;if((j|0)==0&(i|0)==-2147483648){if(!g){qT(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}l=cX(p|0,o|0,2)|0;l=TW(l|0,y|0,-32,-1)|0;l=TW(l|0,y|0,j|0,i|0)|0;i=y;if(!m){h=+(f|0)*0.0;break}z=0-e|0;g=((z|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>z>>>0){c[(mT()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=e+-106|0;g=((z|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(mT()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(h>=.5);j=j<<1|(z^1)&1;h=h+(z?h:h+-1.0);l=TW(l|0,i|0,-1,-1)|0;i=y}while((j|0)>-1);n=h;m=j}else n=h;z=((b|0)<0)<<31>>31;e=UW(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=TW(e|0,y|0,l|0,i|0)|0;e=y;if((e|0)<(z|0)|(e|0)==(z|0)&i>>>0>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+wU(+vU(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(mT()|0)>>2]=34;h=+yU(h,l)}while(0);return +h}function tU(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;if((l|0)>=(m|0))W(512);G=J;H=f+e|0;I=0-H|0;F=a+4|0;E=a+100|0;j=0;a:while(1){switch(b|0){case 46:{C=7;break a}case 48:break;default:{w=0;r=j;j=0;q=0;break a}}b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=sT(a)|0;j=1}if((C|0)==7){b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=sT(a)|0;if((b|0)==48){j=0;b=0;while(1){j=TW(j|0,b|0,-1,-1)|0;q=y;b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=sT(a)|0;if((b|0)==48)b=q;else{w=1;r=1;break}}}else{w=1;r=j;j=0;q=0}}c[G>>2]=0;p=b+-48|0;o=(b|0)==46;b:do if(o|p>>>0<10){D=G+496|0;x=0;n=0;u=0;z=w;B=r;C=p;r=0;p=0;c:while(1){do if(o)if(!z){z=1;j=r;q=p}else break c;else{r=TW(r|0,p|0,1,0)|0;p=y;w=(b|0)!=48;if((n|0)>=125){if(!w)break;c[D>>2]=c[D>>2]|1;break}o=G+(n<<2)|0;if(!x)b=C;else b=b+-48+((c[o>>2]|0)*10|0)|0;c[o>>2]=b;x=x+1|0;B=(x|0)==9;x=B?0:x;n=n+(B&1)|0;u=w?r:u;B=1}while(0);b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=sT(a)|0;C=b+-48|0;o=(b|0)==46;if(!(o|C>>>0<10)){w=z;o=B;C=31;break b}}b=x;o=(B|0)!=0;C=39}else{x=0;n=0;u=0;o=r;r=0;p=0;C=31}while(0);do if((C|0)==31){D=(w|0)==0;j=D?r:j;q=D?p:q;o=(o|0)!=0;if(!(o&(b|32|0)==101))if((b|0)>-1){b=x;C=39;break}else{b=x;C=41;break}o=uU(a,h)|0;b=y;if((o|0)==0&(b|0)==-2147483648){if(!h){qT(a,0);i=0.0;break}if(!(c[E>>2]|0)){o=0;b=0}else{c[F>>2]=(c[F>>2]|0)+-1;o=0;b=0}}j=TW(o|0,b|0,j|0,q|0)|0;b=x;q=y;C=43}while(0);if((C|0)==39)if(c[E>>2]|0){c[F>>2]=(c[F>>2]|0)+-1;if(o)C=43;else C=42}else C=41;if((C|0)==41)if(o)C=43;else C=42;do if((C|0)==42){c[(mT()|0)>>2]=22;qT(a,0);i=0.0}else if((C|0)==43){o=c[G>>2]|0;if(!o){i=+(g|0)*0.0;break}if(((p|0)<0|(p|0)==0&r>>>0<10)&((j|0)==(r|0)&(q|0)==(p|0))?(e|0)>30|(o>>>e|0)==0:0){i=+(g|0)*+(o>>>0);break}a=(f|0)/-2|0;F=((a|0)<0)<<31>>31;if((q|0)>(F|0)|(q|0)==(F|0)&j>>>0>a>>>0){c[(mT()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;F=((a|0)<0)<<31>>31;if((q|0)<(F|0)|(q|0)==(F|0)&j>>>0>>0){c[(mT()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){p=G+(n<<2)|0;o=c[p>>2]|0;while(1){o=o*10|0;if((b|0)>=8)break;else b=b+1|0}c[p>>2]=o}n=n+1|0}if((u|0)<9?(u|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[108696+(8-j<<2)>>2]|0);break}a=e+27+(N(j,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[108696+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)o=0;else{u=(j|0)>-1?b:b+9|0;q=c[108696+(8-u<<2)>>2]|0;if(n){r=1e9/(q|0)|0;p=0;o=0;b=0;do{E=G+(b<<2)|0;F=c[E>>2]|0;a=(F>>>0)/(q>>>0)|0;F=F-(N(a,q)|0)|0;a=a+p|0;c[E>>2]=a;p=N(r,F)|0;a=(b|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(n|0));if(!p)b=n;else{c[G+(n<<2)>>2]=p;b=n+1|0}}else{o=0;b=0}n=b;j=9-u+j|0}b=0;d:while(1){w=(j|0)<18;x=(j|0)==18;z=G+(o<<2)|0;while(1){if(!w){if(!x)break d;if((c[z>>2]|0)>>>0>=9007199){j=18;break d}}p=0;B=n;n=n+127|0;while(1){r=n&127;q=G+(r<<2)|0;n=cX(c[q>>2]|0,0,29)|0;n=TW(n|0,y|0,p|0,0)|0;p=y;if(p>>>0>0|(p|0)==0&n>>>0>1e9){u=$W(n|0,p|0,1e9,0)|0;a=ZW(u|0,y|0,1e9,0)|0;n=UW(n|0,p|0,a|0,y|0)|0}else u=0;c[q>>2]=n;a=(r|0)==(o|0);q=(r|0)!=(B+127&127|0)|a?B:(n|0)==0?r:B;if(a)break;else{p=u;B=q;n=r+-1|0}}b=b+-29|0;if(!u)n=B;else break}o=o+127&127;n=q+127&127;p=G+((q+126&127)<<2)|0;if((o|0)==(q|0))c[p>>2]=c[p>>2]|c[G+(n<<2)>>2];else n=B;c[G+(o<<2)>>2]=u;j=j+9|0}e:while(1){x=n+1&127;z=G+((n+127&127)<<2)|0;while(1){r=(j|0)==18;w=(j|0)>27?9:1;B=o;while(1){q=0;while(1){o=q+B&127;if((o|0)==(n|0)){C=92;break}o=c[G+(o<<2)>>2]|0;p=c[108728+(q<<2)>>2]|0;if(o>>>0

>>0){C=92;break}if(o>>>0>p>>>0)break;if((q+1|0)>>>0<2)q=1;else{C=92;break}}if((C|0)==92?(C=0,r):0)break e;b=w+b|0;if((B|0)==(n|0))B=n;else break}r=(1<>>w;q=0;o=B;p=B;do{E=G+(p<<2)|0;F=c[E>>2]|0;a=(F>>>w)+q|0;c[E>>2]=a;q=N(F&r,u)|0;a=(p|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;p=p+1&127}while((p|0)!=(n|0));if(q|0){if((x|0)!=(o|0))break;c[z>>2]=c[z>>2]|1}}c[G+(n<<2)>>2]=q;n=x}i=0.0;j=n;o=0;do{p=o+B&127;n=j+1&127;if((p|0)==(j|0)){c[G+(n+-1<<2)>>2]=0;j=n}i=i*1.0e9+ +((c[G+(p<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);v=+(g|0);k=i*v;p=b+53|0;q=p-f|0;r=(q|0)<(e|0);o=r?((q|0)>0?q:0):e;if((o|0)<53){K=+wU(+vU(1.0,105-o|0),k);s=+xU(k,+vU(1.0,53-o|0));t=K;i=s;s=K+(k-s)}else{t=0.0;i=0.0;s=k}n=B+2&127;if((n|0)!=(j|0)){n=c[G+(n<<2)>>2]|0;do if(n>>>0>=5e8){if((n|0)!=5e8){i=v*.75+i;break}if((B+3&127|0)==(j|0)){i=v*.5+i;break}else{i=v*.75+i;break}}else{if((n|0)==0?(B+3&127|0)==(j|0):0)break;i=v*.25+i}while(0);if((53-o|0)>1?!(+xU(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=s+k-t;do if((p&2147483647|0)>(-2-H|0)){H=!(+A(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(k!=0.0&(r&((o|0)!=(q|0)|H))):0)break;c[(mT()|0)>>2]=34}while(0);i=+yU(i,b)}while(0);l=J;return +i}function uU(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=sT(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=sT(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=sT(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=ZW(f|0,h|0,10,0)|0;b=y;e=TW(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=TW(e|0,y|0,l|0,b|0)|0;h=y;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=sT(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=sT(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;l=(g|0)==0;j=UW(0,0,f|0,e|0)|0;f=l?f:j;e=l?e:y}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}y=e;return f|0}function vU(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=cX(b+1023|0,0,52)|0;e=y;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function wU(a,b){a=+a;b=+b;return +(+BT(a,b))}function xU(a,b){a=+a;b=+b;return +(+zU(a,b))}function yU(a,b){a=+a;b=b|0;return +(+vU(a,b))}function zU(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=bX(i|0,l|0,52)|0;e=e&2047;m=bX(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=cX(n|0,o|0,1)|0;k=y;a:do if(!((g|0)==0&(k|0)==0)?(f=AU(b)|0,d=y&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=cX(i|0,l|0,1)|0;f=y;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=cX(i|0,l|0,12)|0;f=y;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=cX(d|0,f|0,1)|0;f=y}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=cX(i|0,l|0,1-e|0)|0;g=y}else g=l&1048575|1048576;if(!m){f=cX(n|0,o|0,12)|0;k=y;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=cX(f|0,k|0,1)|0;k=y}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=cX(n|0,o|0,1-d|0)|0;m=d;l=y}else l=o&1048575|1048576;f=UW(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=cX(f|0,d|0,1)|0;g=y;e=e+-1|0;f=UW(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=cX(f|0,d|0,1)|0;d=y;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=TW(f|0,d|0,0,-1048576)|0;d=y;e=cX(e|0,0,52)|0;d=d|y;e=o|e}else{e=bX(f|0,d|0,1-e|0)|0;d=y}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function AU(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function BU(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function CU(b,c){b=b|0;c=c|0;b=DU(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function DU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(BU(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=N(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function EU(a,b){a=a|0;b=b|0;var e=0;a=FU(a)|0;if(((a|0)!=-1?(e=FU(b)|0,(e|0)!=-1):0)?(d[177745+a>>0]|0)<=207:0)a=e<<16|a;else{c[(mT()|0)>>2]=22;a=-1}return a|0}function FU(b){b=b|0;var c=0,d=0,e=0;d=(a[b>>0]|0)==0?177745:b;b=177745;while(1){if(!(GU(d,b)|0)){e=3;break}b=b+((BU(b)|0)+1)|0;c=a[b>>0]|0;if(!(c<<24>>24)){c=a[b+1>>0]|0;if((c&255)>128)c=2;else c=(((128-(c&255)|0)>>>2)*5|0)+2|0;c=b+c|0;b=c;c=a[c>>0]|0}if(!(c<<24>>24)){b=-1;break}}if((e|0)==3){if(a[b>>0]|0)do b=b+((BU(b)|0)+1)|0;while((a[b>>0]|0)!=0);b=b+1-177745|0}return b|0}function GU(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;a:do if(!(d<<24>>24)){d=0;g=9}else while(1){f=a[c>>0]|0;if(!(f<<24>>24)){g=9;break a}e=d;d=d&255;while(1){if(!((d+-48|0)>>>0>10&((d|32)+-97|0)>>>0>26)){d=e;break}b=b+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;break}else{e=d;d=d&255}}if((d|32)<<24>>24!=f<<24>>24){d=1;break a}b=b+1|0;c=c+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;g=9;break}}while(0);if((g|0)==9)d=d<<24>>24!=(a[c>>0]|0)&1;return d|0}function HU(a){a=a|0;return 0}function IU(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=n;j=(g|0)==0?186252:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(c[c[(JU()|0)+188>>2]>>2]|0)==0;g=a[e>>0]|0;if(h){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[107868+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;o=b>>>3;if((o+-16|o+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[(mT()|0)>>2]=84;g=-1}l=n;return g|0}function JU(){return eU()|0}function KU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=e;e=LT(a,b,d,g)|0;l=f;return e|0}function LU(a,b){a=a|0;b=b|0;MU(a,b)|0;return a|0}function MU(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function NU(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(c[j>>2]|0)>>>0>4294967295;if(b&d>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|b){e=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(d>>>0<1016070144)a=a+1.0;else e=9;while(0);if((e|0)==9){g=a+26388279066624.0;h[j>>3]=g;e=(c[j>>2]|0)+128|0;d=e<<1&510;f=+h[48456+(d<<3)>>3];a=a-(g+-26388279066624.0)-+h[48456+((d|1)<<3)>>3];a=+vU(f+f*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(e&-256|0)/256|0)}return +a}function OU(a){a=+a;a=+PU(a);y=+A(a)>=1.0?(a>0.0?~~+O(+z(a/4294967296.0),4294967295.0)>>>0:~~+M((a-+(~~a>>>0))/4294967296.0)>>>0):0;return ~~a>>>0|0}function PU(a){a=+a;var b=0,d=0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function QU(a){a=+a;var b=0,d=0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+ET(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+ET(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+ET(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function RU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=lT(ib(3,f|0)|0)|0;l=e;return d|0}function SU(a,b){a=a|0;b=b|0;var c=0;c=BU(a)|0;return ((TU(a,1,c,b)|0)!=(c|0))<<31>>31|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=N(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(OT(e)|0)==0;a=lU(a,f,e)|0;if(!g)PT(e)}else a=lU(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function UU(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(mU(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Md[c[b+36>>2]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=n;return f|0}function VU(a){a=a|0;var b=0,c=0;b=(BU(a)|0)+1|0;c=$S(b)|0;if(!c)a=0;else a=gX(c|0,a|0,b|0)|0;return a|0}function WU(){cb(186256);return 186264}function XU(){mb(186256);return} +function kl(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;x=c[O>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){U=d[146266+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=38;else{M=x;x=5}}else if((x|0)==1){y=f+21792|0;M=y;y=c[y>>2]|0;x=5}else x=38;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;L=c[u>>2]|0;K=c[u+4>>2]|0;P=c[e+25664>>2]|0;Q=o<<1;U=f+21780|0;E=c[U>>2]|0;S=k+((N(E,Q)|0)+(n<<1<>2]|0;Q=(N(x,Q)|0)+(n<>2]<<3)+n|0;r=f+21828|0;l=c[r>>2]|0;y=(y>>l<<3)+o|0;if(!(z&A)){B=A&1;z=d[146266+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;v=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;u=z<<2&12|v&3;x=v>>2;A=z>>2;t=(N(A,E)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;y=m<<4;l=c[e+27008>>2]<<4>>l;n=v&7;M=(n|0)==0?0:-3;O=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(A|0)<(0-O|0))?(x+16|0)<=(M+y|0):0)?(A+16|0)<=(l+O|0):0){k=0;y=E}else{O=f+27792|0;k=2<>2]&3](c[O>>2]|0,t+(0-k)+(0-(E<<1))|0,E,E,21,21,x+-2|0,A+-2|0,y,l);y=c[U>>2]|0;t=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;Td[c[x>>2]&1023](S,t,y);if(!h)Td[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);v=v>>3;u=v<>2]|0;x=N(y,A)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+u+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+u+x|0;u=f+27792|0;if(!k){e=z<<1&6;Wd[q&63](R,t,y,i,n,e);y=e}else{j=m<<3;h=e+8|0;Zd[c[h>>2]&3](c[u>>2]|0,t,y,y,9,17,v,A,j,l);y=z<<1&6;Wd[q&63](R,c[u>>2]|0,c[T>>2]|0,i,n,y);e=c[T>>2]|0;Zd[c[h>>2]&3](c[u>>2]|0,x,e,e,9,17,v,A,j,l);x=c[u>>2]|0}Wd[q&63](Q,x,c[T>>2]|0,i,n,y);Wd[D&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;Wd[C&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Wd[C&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}I=c[f+27788>>2]|0;J=I+(16<>0]|0;w=a[f+28272+C>>0]|0;G=a[f+28312+C>>0]|0;o=t<<3;k=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;m=B+(b[f+27952+(C<<2)+2>>1]|0)|0;u=m<<2&12|k&3;x=k>>2;z=m>>2;y=(N(z,E)|0)+(x<>2]|0)+y|0;D=e+27012|0;A=c[D>>2]|0;t=A<<4;s=e+27008|0;l=c[s>>2]<<4>>l;n=k&7;F=(n|0)==0?0:-3;g=(m&7|0)==0?0:-3;if((!((x|0)<(0-F|0)|(z|0)<(0-g|0))?(x+16|0)<=(F+t|0):0)?(z+16|0)<=(l+g|0):0){t=y;v=0;y=E}else{g=f+27792|0;v=2<>2]&3](c[g>>2]|0,y+(0-v)+(0-(E<<1))|0,E,E,21,21,x+-2|0,z+-2|0,t,l);y=c[U>>2]|0;t=(c[g>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;Td[c[x>>2]&1023](S,t,y);E=(h|0)!=0;if(!E)Td[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);y=k>>3;F=y<>2]|0;x=N(t,z)|0;u=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!v){y=m<<1&6;Wd[q&63](R,u,t,i,n,y)}else{g=A<<3;A=e+8|0;Zd[c[A>>2]&3](c[F>>2]|0,u,t,t,9,17,y,z,g,l);h=m<<1&6;Wd[q&63](R,c[F>>2]|0,c[T>>2]|0,i,n,h);m=c[T>>2]|0;Zd[c[A>>2]&3](c[F>>2]|0,x,m,m,9,17,y,z,g,l);x=c[F>>2]|0;y=h}Wd[q&63](Q,x,c[T>>2]|0,i,n,y);z=o+(b[f+28112+(C<<2)>>1]|0)|0;n=B+(b[f+28112+(C<<2)+2>>1]|0)|0;k=n<<2&12|z&3;u=z>>2;o=n>>2;y=c[U>>2]|0;t=(N(o,y)|0)+(u<>2]|0)+t|0;A=c[D>>2]|0;x=A<<4;l=c[s>>2]<<4>>c[r>>2];m=z&7;g=(m|0)==0?0:-3;h=(n&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(o|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(o+16|0)<=(l+h|0):0)v=0;else{v=2<>2]&3](c[F>>2]|0,t+(0-v)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,x,l);y=c[U>>2]|0;t=(c[F>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!E)Td[c[x>>2]&1023](H+j|0,t+j|0,c[U>>2]|0);u=z>>3;j=u<>2]|0;x=N(y,o)|0;t=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=n<<1&6;Wd[q&63](I,t,y,i,m,e);y=e}else{j=A<<3;h=e+8|0;Zd[c[h>>2]&3](c[F>>2]|0,t,y,y,9,17,u,o,j,l);y=n<<1&6;Wd[q&63](I,c[F>>2]|0,c[T>>2]|0,i,m,y);e=c[T>>2]|0;Zd[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,u,o,j,l);x=c[F>>2]|0}Wd[q&63](J,x,c[T>>2]|0,i,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[M>>2]&1)<<2)>>2]|0;f=64-e|0;Xd[L&31](S,H,c[U>>2]|0,i,5,e,f,0);Xd[K&31](R,I,c[T>>2]|0,i,5,e,f,0);Xd[K&31](Q,J,c[T>>2]|0,i,5,e,f,0);break}else{Xd[L&31](S,H,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;Xd[K&31](R,I,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Xd[K&31](Q,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==38){I=c[e+25664>>2]|0;K=o<<1;H=f+21780|0;y=c[H>>2]|0;G=k+((N(y,K)|0)+(n<<1<>2]|0,K)|0)+(n<>2]<<3)+n|0;F=f+21828|0;x=c[F>>2]|0;E=(c[f+21792>>2]>>x<<3)+o|0;if(v){n=d[146266+g>>0]|0;A=a[f+28272+n>>0]|0;l=(D<<3)+(b[f+27952+(n<<2)>>1]|0)|0;n=(E<<3)+(b[f+27952+(n<<2)+2>>1]|0)|0;k=n<<2&12|l&3;u=l>>2;o=n>>2;t=(N(o,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;v=B<<4;m=c[e+27008>>2]<<4>>x;C=l&7;T=(C|0)==0?0:-3;U=(n&7|0)==0?0:-3;if((!((u|0)<(0-T|0)|(o|0)<(0-U|0))?(u+16|0)<=(T+v|0):0)?(o+16|0)<=(m+U|0):0)z=0;else{U=f+27792|0;z=2<>2]&3](c[U>>2]|0,t+(0-z)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,v,m);y=c[H>>2]|0;t=(c[U>>2]|0)+z+(y<<1)|0;z=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!h)Td[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);t=l>>3;y=t<>2]|0;x=N(u,o)|0;v=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!z){y=n<<1&6;Wd[q&63](J,v,u,i,C,y)}else{T=B<<3;R=e+8|0;Zd[c[R>>2]&3](c[y>>2]|0,v,u,u,9,17,t,o,T,m);U=n<<1&6;Wd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,C,U);S=c[L>>2]|0;Zd[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,t,o,T,m);x=c[y>>2]|0;y=U}Wd[q&63](K,x,c[L>>2]|0,i,C,y);q=s;p=r}if(w|0){m=d[146266+g>>0]|0;A=a[f+28312+m>>0]|0;l=(D<<3)+(b[f+28112+(m<<2)>>1]|0)|0;m=(E<<3)+(b[f+28112+(m<<2)+2>>1]|0)|0;v=m<<2&12|l&3;x=l>>2;n=m>>2;y=c[H>>2]|0;t=(N(n,y)|0)+(x<>2]|0)+t|0;o=c[e+27012>>2]|0;u=o<<4;z=c[e+27008>>2]<<4>>c[F>>2];B=l&7;T=(B|0)==0?0:-3;U=(m&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(n|0)<(0-U|0))?(x+16|0)<=(u+T|0):0)?(n+16|0)<=(z+U|0):0)k=0;else{U=f+27792|0;k=2<>2]&3](c[U>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,n+-2|0,u,z);y=c[H>>2]|0;t=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!h)Td[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);v=l>>3;y=v<>2]|0;x=N(t,n)|0;u=(c[f+25336+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=m<<1&6;Wd[q&63](J,u,t,i,B,y)}else{j=o<<3;h=e+8|0;Zd[c[h>>2]&3](c[y>>2]|0,u,t,t,9,17,v,n,j,z);f=m<<1&6;Wd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,B,f);e=c[L>>2]|0;Zd[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,v,n,j,z);x=c[y>>2]|0;y=f}Wd[q&63](K,x,c[L>>2]|0,i,B,y)}}while(0);return}function ll(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)gl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){A=q<<24>>24;B=c[f+21788>>2]|0;B=((B<<4|8)+(b[f+28e3>>1]>>2)<>2]<<4|B<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;C=f+21772|0;Td[c[z>>2]&1023]((c[f+23416+(A*40|0)>>2]|0)+B|0,c[C>>2]|0,4);Td[c[z>>2]&1023]((c[f+23416+(A*40|0)+4>>2]|0)+B|0,c[C>>2]|0,4);Td[c[z>>2]&1023]((c[f+23416+(A*40|0)+8>>2]|0)+B|0,c[C>>2]|0,4)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;ml(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);ml(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}A=f+21780|0;if(D&32|0){w=j+64|0;x=k+4|0;y=l+64|0;z=m+4|0;B=n+4|0;C=o+4|0;ml(d,f,0,0,16,c[A>>2]<<3,g,h,i,0,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&4096,D&16384);ml(d,f,4,0,16,c[A>>2]<<3,g,h,i,4,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&8192,D&32768);break}B=j+128|0;C=k+8|0;w=l+128|0;x=m+8|0;y=n+8|0;z=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;ml(d,f,n,0,4,4<>2],g,h,i,o,j,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);ml(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;ml(d,f,n,0,8,c[A>>2]<<2,g,h,i,o,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);ml(d,f,n|1,0,8,c[A>>2]<<2,g,h,i,o|2,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;ml(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,l,q);p=p+1|0}}else ml(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else ml(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){G=F<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;i=f+21772|0;Td[c[g>>2]&1023]((c[f+25336+(G*40|0)>>2]|0)+h|0,c[i>>2]|0,4);Td[c[g>>2]&1023]((c[f+25336+(G*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);Td[c[g>>2]&1023]((c[f+25336+(G*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function ml(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0;K=f+880|0;q=c[K>>2]|0;x=(v|0)!=0;y=(w|0)!=0;if(y&(x&(q|0)==2)){Q=d[146266+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=59;else{J=q;q=5}}else if((q|0)==1){s=f+21792|0;J=s;s=c[s>>2]|0;q=5}else q=59;do if((q|0)==5){z=c[t>>2]|0;I=c[u>>2]|0;L=c[e+25664>>2]|0;Q=f+21780|0;w=c[Q>>2]|0;M=(N(o<<1,w)|0)+(n<<1<>2]<<3)+n|0;B=f+21828|0;u=c[B>>2]|0;q=(s>>u<<3)+o|0;if(!(x&y)){o=y&1;K=d[146266+g>>0]|0;n=a[f+28272+(o*40|0)+K>>0]|0;J=(t<<3)+(b[f+27952+(o*160|0)+(K<<2)>>1]|0)|0;K=(q<<3)+(b[f+27952+(o*160|0)+(K<<2)+2>>1]|0)|0;t=K<<2&12|J&3;y=J>>2;l=K>>2;v=(N(l,w)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>u;J=(J&7|0)==0?0:-3;K=(K&7|0)==0?0:-3;if((!((y|0)<(0-J|0)|(l|0)<(0-K|0))?(y+16|0)<=(J+m|0):0)?(l+16|0)<=(k+K|0):0){u=0;s=w}else{K=f+27792|0;u=2<>2]&3](c[K>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){K=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](O,q,s);if(!p)Td[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+8>>2]|0)+v|0;if(t){K=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](M,q,s);if(!p)Td[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);Wd[z&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(n<<4)+(o<<3)>>2]|0,c[f+912+(n<<4)+(o<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;Wd[z&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)>>2]|0,c[f+1680+(n<<5)+(o<<4)+4>>2]|0);Wd[z&63](M,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)+8>>2]|0,c[f+1680+(n<<5)+(o<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<>2]<<4)|0;z=d[146266+g>>0]|0;C=a[f+28272+z>>0]|0;D=a[f+28312+z>>0]|0;o=t<<3;x=o+(b[f+27952+(z<<2)>>1]|0)|0;n=q<<3;g=n+(b[f+27952+(z<<2)+2>>1]|0)|0;t=g<<2&12|x&3;l=x>>2;m=g>>2;k=(N(m,w)|0)+(l<>2]|0)+k|0;A=e+27012|0;y=c[A>>2]<<4;r=e+27008|0;v=c[r>>2]<<4>>u;x=(x&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((l|0)<(0-x|0)|(m|0)<(0-g|0))?(l+16|0)<=(x+y|0):0)?(m+16|0)<=(v+g|0):0){u=0;s=w}else{g=f+27792|0;u=2<>2]&3](c[g>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](P,q,s);w=(h|0)!=0;if(!w)Td[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](O,q,s);if(!w)Td[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+8>>2]|0)+k|0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[x>>2]&1023](M,q,s);if(!w)Td[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);g=o+(b[f+28112+(z<<2)>>1]|0)|0;h=n+(b[f+28112+(z<<2)+2>>1]|0)|0;u=h<<2&12|g&3;y=g>>2;l=h>>2;q=c[Q>>2]|0;v=(N(l,q)|0)+(y<>2]|0)+v|0;k=c[A>>2]<<4;x=c[r>>2]<<4>>c[B>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(l|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(l+16|0)<=(x+h|0):0)t=0;else{h=f+27792|0;t=2<>2]&3](c[h>>2]|0,s+(0-t)+(0-(q<<1))|0,q,q,21,21,y+-2|0,l+-2|0,k,x);q=c[Q>>2]|0;s=(c[h>>2]|0)+t+(q<<1)|0;t=1}u=p+(u<<2)|0;Td[c[u>>2]&1023](H,s,q);if(!w)Td[c[u>>2]&1023](H+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;t=(t|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[u>>2]&1023](E,q,s);if(!w)Td[c[u>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(t){g=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Td[c[u>>2]&1023](F,q,s);if(!w)Td[c[u>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[K>>2]|0)==2){f=c[f+3216+(C*384|0)+(D<<3)+((c[J>>2]&1)<<2)>>2]|0;j=64-f|0;Xd[I&31](P,H,c[Q>>2]|0,i,5,f,j,0);Xd[I&31](O,E,c[G>>2]|0,i,5,f,j,0);Xd[I&31](M,F,c[G>>2]|0,i,5,f,j,0);break}else{Xd[I&31](P,H,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(C<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(C<<4)+4>>2]|0)|0);j=f+892|0;Xd[I&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(C<<5)+4>>2]|0)|0);Xd[I&31](M,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(C<<5)+12>>2]|0)|0);break}}else if((q|0)==59){E=c[e+25664>>2]|0;F=f+21780|0;x=c[F>>2]|0;D=(N(o<<1,x)|0)+(n<<1<>2]<<3)+n|0;A=f+21828|0;s=c[A>>2]|0;o=(c[f+21792>>2]>>s<<3)+o|0;if(v){i=d[146266+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(z<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;l=Q>>2;m=i>>2;k=(N(m,x)|0)+(l<>2]|0)+k|0;n=c[e+27012>>2]<<4;y=c[e+27008>>2]<<4>>s;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((l|0)<(0-Q|0)|(m|0)<(0-i|0))?(l+16|0)<=(Q+n|0):0)?(m+16|0)<=(y+i|0):0){u=0;s=x}else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(x<<1))|0,x,x,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){Q=f+27792|0;i=2<>2]|0;Zd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](C,q,s);if(!p)Td[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(t){Q=f+27792|0;i=2<>2]|0;Zd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](D,q,s);if(p)p=r;else{Td[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0);p=r}}if(w|0){i=d[146266+g>>0]|0;n=a[f+28312+i>>0]|0;Q=(z<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;y=Q>>2;l=i>>2;s=c[F>>2]|0;v=(N(l,s)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>c[A>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(l|0)<(0-i|0))?(y+16|0)<=(m+Q|0):0)?(l+16|0)<=(k+i|0):0)u=0;else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Td[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Td[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){i=f+27792|0;h=2<>2]|0;Zd[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](C,q,s);if(!p)Td[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+8>>2]|0)+v|0;if(t){h=f+27792|0;f=2<>2]|0;Zd[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[F>>2]|0;Td[c[x>>2]&1023](D,q,s);if(!p)Td[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0)}}while(0);return}function nl(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26376>>2]|0){j=c[a+27016>>2]|0;h=(N(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(N(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27016>>2]<<((c[a+26380>>2]|0)!=3&1))|0}while(0);i=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return rl(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function ol(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27016>>2]<<1)|0;return rl(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0}function pl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D+4|0;A=D;B=g+21796|0;C=c[B>>2]|0;c[A>>2]=0;h=(c[f+25972>>2]|0)+(C*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));x=g+21828|0;if(!(c[x>>2]|0))h=0;else{c[A>>2]=128;h=128}z=g+840|0;if((c[z>>2]|0)==3){h=h|63744;c[A>>2]=h;if(c[g+21844>>2]|0){ql(f,g,h);tl(f,g,h)}Kk(f,g,A);k=c[A>>2]|2048;c[A>>2]=k;h=f+26368|0}else{k=h|14344;c[A>>2]=k;ql(f,g,k);r=c[f+24384>>2]|0;s=c[f+24352>>2]|0;h=f+26368|0;t=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;n=c[g+21740>>2]|0;if(!(n&12288))if(!n)i=0;else{w=183584;u=-1;o=16}else{i=c[g+21720>>2]|0;w=d[c[g+21748>>2]>>0]|0;j=a[r+((w&254)+(i<<2|1))>>0]|0;i=s+((N(t,w)|0)+3+(c[(c[f+26360>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=i>>16<<1;i=y;j=j>>1;break}else{if(n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=y;j=j<<1;break}}while(0);if(!(c[i>>2]|j))i=0;else{w=i;u=j;o=16}}do if((o|0)==16){n=c[g+21732>>2]|0;if(!(n&12288))if(!n){i=0;break}else{p=-1;q=183584}else{j=c[g+21712>>2]|0;i=a[r+(j<<2|2)>>0]|0;j=s+((c[(c[f+26360>>2]|0)+(j<<2)>>2]|0)+(t*3|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=q>>16<<1;i=i>>1;break}else{if(n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=((q>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[j>>2]|i)){i=0;break}else{p=i;q=j}}j=c[g+21736>>2]|0;do if(!(j&12288))if((j|0)==0?(v=c[g+21728>>2]|0,(v&12288|0)!=0):0){n=c[g+21708>>2]|0;o=c[g+21752>>2]|0;i=a[r+(n<<2|o&2|1)>>0]|0;n=s+(t+3+(o&t<<1)+(c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)<<2)|0;if(c[f+26376>>2]|0){j=(v&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}else{o=183584;i=-1}else{n=c[g+21716>>2]|0;i=a[r+(n<<2|2)>>0]|0;n=s+((c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)+(t*3|0)<<2)|0;if(c[f+26376>>2]|0){j=(j&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}while(0);n=(p|0)!=0;j=(u|0)!=0;i=((n^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=zl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=zl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0;break}if(!j){j=b[w+2>>1]|0;i=b[w>>1]|0;break}if(n){j=b[o+2>>1]|0;i=b[o>>1]|0;break}else{j=b[q+2>>1]|0;i=b[q>>1]|0;break}}else{i=zl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=zl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0}while(0);i=j<<16|i&65535}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i}h=c[h>>2]|0;i=(N(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[B>>2]<<2;if(!(k&12288)){y=(c[f+24384>>2]|0)+j|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[f+24352>>2]|0)+(i<<2)|0;w=g+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24384>>2]|0)+j|0;a[y>>0]=a[g+28284>>0]|0;a[y+1>>0]=a[g+28286>>0]|0;a[y+2>>0]=a[g+28300>>0]|0;a[y+3>>0]=a[g+28302>>0]|0}if(k&49152|0){y=(c[f+24356>>2]|0)+(i<<2)|0;w=g+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24388>>2]|0)+j|0;a[y>>0]=a[g+28324>>0]|0;a[y+1>>0]=a[g+28326>>0]|0;a[y+2>>0]=a[g+28340>>0]|0;a[y+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[z>>2]|0)!=3)){B=(c[f+26408>>2]|0)+(c[B>>2]<<2)|0;a[B+1>>0]=(e[g+28554>>1]|0)>>>1;a[B+2>>0]=(e[g+28556>>1]|0)>>>1;a[B+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(C<<2)>>2]=c[A>>2];a[(c[f+24340>>2]|0)+C>>0]=c[g+848>>2];b[(c[f+26372>>2]|0)+(C<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;l=D;return}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=135853;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?135949:135917;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=135885;h=i}else d=135949;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function rl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121202+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[121842+f>>0]|0;h=c[g>>2]|0;e=d[120690+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Jl(b);return f&1|0}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(rl(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(rl(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(Kl(e)|0)){b=(rl(e,f+1|0)|0)*12|1;if(rl(e,f+2|0)|0)b=b+4+((rl(e,f+(d+2)|0)|0)<<2)|0;b=((rl(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(rl(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function tl(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ja=l;l=l+16|0;if((l|0)>=(m|0))W(16);za=Ja+8|0;Aa=Ja;Ba=c[g+21748>>2]|0;Ha=c[g+21708>>2]|0;qa=c[g+21712>>2]|0;ra=c[g+21716>>2]|0;sa=c[g+21720>>2]|0;c[za>>2]=sa;ta=c[g+21724>>2]|0;c[za+4>>2]=ta;ua=c[g+21728>>2]|0;va=c[g+21732>>2]|0;wa=c[g+21736>>2]|0;xa=c[g+21740>>2]|0;c[Aa>>2]=xa;ya=c[g+21744>>2]|0;c[Aa+4>>2]=ya;if(!(h&2048)){v=(h&7|0)!=0;a:do if(v){r=c[(c[f+28212>>2]|0)+56>>2]|0?7:-1;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;o=g+21756|0;c[o>>2]=65535;p=g+21764|0;c[p>>2]=61162;q=(r&va|0)!=0;if(q){i=65535;n=60138}else{c[o>>2]=46079;c[i>>2]=13311;c[p>>2]=9962;i=46079;n=8938}j=h&128;do if((j|0)==(xa&128|0)){if(!(xa&r)){i=i&57183;c[o>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((xa&r|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27016>>2]|0)+sa<<2)>>2]&r|0)==0))break;i=i&57183;c[o>>2]=i;c[k>>2]=24415;break}if(!(xa&r)){i=i&57343;c[o>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(ya&r)){i=i&65375;c[o>>2]=i;c[k>>2]=j}}while(0);if(!(r&ua))c[o>>2]=i&32767;if(!(r&wa))c[p>>2]=n;if(h&1|0){if(!(va&1)){iX(g+21668|0,(q?2:-1)|0,4)|0;n=g+21704|0;o=f+26364|0}else{n=g+21704|0;o=f+26364|0;c[g+21668>>2]=c[(c[n>>2]|0)+(c[(c[o>>2]|0)+(qa<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[Aa+(k<<2)>>2]|0;if(!(i&1)){i=(i&r|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{pa=(c[n>>2]|0)+(c[(c[o>>2]|0)+(c[za+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[pa+(6-(d[Ba+i>>0]|0))>>0]|0;i=a[pa+(6-(d[Ba+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);u=(va|0)!=0;if(u){t=f+25972|0;i=c[t>>2]|0;c[g+27828>>2]=c[i+(qa*48|0)+12>>2];pa=(c[f+25680>>2]|0)==0;c[g+27868>>2]=c[(pa?28:20)+(i+(qa*48|0))>>2];i=c[(pa?44:36)+(i+(qa*48|0))>>2]|0}else{i=v?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;t=f+25972|0}c[g+27908>>2]=i;r=v?64:0;s=f+28216|0;q=0;while(1){if((q|0)==2)break;if(!(c[Aa+(q<<2)>>2]|0)){j=q<<4;a[j+99+(g+27824)>>0]=r;a[j+91+(g+27824)>>0]=r;a[j+59+(g+27824)>>0]=r;a[j+51+(g+27824)>>0]=r;a[j+19+(g+27824)>>0]=r;j=j|11;i=r}else{o=c[t>>2]|0;p=c[za+(q<<2)>>2]|0;i=q<<1;k=Ba+(i+8)|0;j=q<<4;a[(j|11)+(g+27824)>>0]=a[(d[k>>0]|0)+(o+(p*48|0))>>0]|0;n=Ba+(i+9)|0;a[j+19+(g+27824)>>0]=a[(d[n>>0]|0)+(o+(p*48|0))>>0]|0;switch(c[(c[s>>2]|0)+12>>2]|0){case 3:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+32+(o+(p*48|0))>>0]|0;n=(d[n>>0]|0)+32|0;i=j+99|0;break}case 2:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+30+(o+(p*48|0))>>0]|0;i=(d[n>>0]|0)+30|0;k=99;w=39;break}default:{j=q<<3;a[j+51+(g+27824)>>0]=a[(d[Ba+(i+12)>>0]|0)+(o+(p*48|0))>>0]|0;i=d[Ba+(i+13)>>0]|0;k=91;w=39}}if((w|0)==39){w=0;n=i;i=k+j|0}j=i;i=a[o+(p*48|0)+n>>0]|0}a[g+27824+j>>0]=i;q=q+1|0}if(u)i=e[(c[f+26392>>2]|0)+(qa<<1)>>1]|0;else i=v?1999:15;c[g+21860>>2]=i;if(!xa)i=v?1999:15;else{i=c[f+26392>>2]|0;pa=e[i+(sa<<1)>>1]|0;i=pa>>>(a[Ba>>0]&-2&255)&2|pa&2032|(e[i+(ta<<1)>>1]|0)>>>(a[Ba+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)w=53}else w=53;b:do if((w|0)==53){y=c[f+26368>>2]|0;z=g+23412|0;A=f+26360|0;B=y*3|0;D=qa<<2;C=D|2;D=D|3;E=(h&80|0)==0;F=xa|0?-1:-2;G=sa<<2|1;H=wa|0?-1:-2;I=ua|0?-1:-2;J=g+21752|0;K=y<<1;L=y+3|0;M=Ha<<2;O=(h&2304|0)==0;P=f+26364|0;Q=g+840|0;R=g+28524|0;S=f+26408|0;T=g+28532|0;U=g+28548|0;V=g+28540|0;X=(va&256|0)==0;Y=(va&64|0)==0;Z=g+28516|0;_=g+28518|0;$=g+28523|0;aa=ta<<2|1;ba=Ba+2|0;ca=g+28539|0;da=Ba+3|0;ea=Ba+1|0;fa=f+26376|0;ga=g+21828|0;ha=(ua&128|0)!=0;ia=(va&128|0)==0;ja=(wa&128|0)==0;ka=(xa&128|0)==0;la=(ya&128|0)==0;ma=ra<<2|2;na=va|0?-1:-16843010;oa=(xa&320|0)==64;w=xa&256|0?-128:4;pa=(ya&320|0)==64;x=ya&256|0?-128:4;v=0;while(1){if(v>>>0>=(c[z>>2]|0)>>>0)break b;p=g+28272+(v*40|0)+12|0;r=c[f+24384+(v<<2)>>2]|0;q=g+27952+(v*160|0)+48|0;s=c[f+24352+(v<<2)>>2]|0;u=12288<<(v<<1);do if(u&h|0){t=(u&va|0)!=0;if(t){k=(c[(c[A>>2]|0)+(qa<<2)>>2]|0)+B|0;j=s+(k<<2)|0;o=c[j+4>>2]|0;n=g+27952+(v*160|0)+16|0;c[n>>2]=c[j>>2];c[n+4>>2]=o;k=s+(k<<2)+8|0;n=c[k+4>>2]|0;o=g+27952+(v*160|0)+24|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;o=a[r+C>>0]|0;a[g+28272+(v*40|0)+5>>0]=o;a[g+28272+(v*40|0)+4>>0]=o;o=a[r+D>>0]|0;a[g+28272+(v*40|0)+7>>0]=o;a[g+28272+(v*40|0)+6>>0]=o}else{o=g+27952+(v*160|0)+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[g+28272+(v*40|0)+4>>2]=na}c:do if(E){if(!(xa&u)){c[g+27952+(v*160|0)+44>>2]=0;i=F}else{c[g+27952+(v*160|0)+44>>2]=c[s+((c[(c[A>>2]|0)+(sa<<2)>>2]|0)+3+(N(y,d[Ba>>0]|0)|0)<<2)>>2];i=a[r+(G+(a[Ba>>0]&-2&255))>>0]|0}a[g+28272+(v*40|0)+11>>0]=i}else{o=0;while(1){if((o|0)==2)break c;j=o<<1;k=o<<4;i=k+-1|0;n=c[Aa+(o<<2)>>2]|0;if(!(n&u)){c[q+(i<<2)>>2]=0;k=k|7;c[q+(k<<2)>>2]=0;j=n|0?-1:-2;a[p+k>>0]=j}else{Ka=c[za+(o<<2)>>2]|0;Ma=(c[(c[A>>2]|0)+(Ka<<2)>>2]|0)+3|0;Ka=Ka<<2|1;La=Ba+j|0;c[q+(i<<2)>>2]=c[s+((N(y,d[La>>0]|0)|0)+Ma<<2)>>2];j=Ba+(j|1)|0;n=k|7;c[q+(n<<2)>>2]=c[s+((N(y,d[j>>0]|0)|0)+Ma<<2)>>2];a[p+i>>0]=a[r+(Ka+(a[La>>0]&-2&255))>>0]|0;j=a[r+(Ka+(a[j>>0]&-2&255))>>0]|0;i=n}a[p+i>>0]=j;o=o+1|0}}while(0);if(!(u&wa)){c[g+27952+(v*160|0)+32>>2]=0;i=H}else{c[g+27952+(v*160|0)+32>>2]=c[s+((c[(c[A>>2]|0)+(ra<<2)>>2]|0)+B<<2)>>2];i=a[r+ma>>0]|0}o=g+28272+(v*40|0)+8|0;a[o>>0]=i;n=g+28272+(v*40|0)+6|0;if((a[n>>0]|i)<<24>>24<0){if(!(u&ua)){c[g+27952+(v*160|0)+12>>2]=0;i=I}else{i=c[J>>2]|0;c[g+27952+(v*160|0)+12>>2]=c[s+(L+(c[(c[A>>2]|0)+(Ha<<2)>>2]|0)+(i&K)<<2)>>2];i=a[r+(M|i&2|1)>>0]|0}a[g+28272+(v*40|0)+3>>0]=i}if(O){k=c[g+32848+(v<<2)>>2]|0;a[g+28272+(v*40|0)+30>>0]=-2;a[g+28272+(v*40|0)+14>>0]=-2;c[g+27952+(v*160|0)+56>>2]=0;c[g+27952+(v*160|0)+120>>2]=0;if(t){j=k+(c[(c[P>>2]|0)+(qa<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ma=g+28352+(v*80|0)+8|0;c[Ma>>2]=i;c[Ma+4>>2]=j;if(!(xa&u)){b[g+28352+(v*80|0)+22>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(sa<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+22>>1]=b[k+(i-(d[Ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[ea>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+38>>1]=i;if(!(ya&u)){b[g+28352+(v*80|0)+54>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(ta<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+54>>1]=b[k+(i-(d[ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[da>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+70>>1]=i;b[g+28352+(v*80|0)+28>>1]=0;b[g+28352+(v*80|0)+60>>1]=0;if((c[Q>>2]|0)==3){j=c[S>>2]|0;c[R>>2]=67372036;c[T>>2]=67372036;c[V>>2]=67372036;c[U>>2]=67372036;do if(X)if(Y){c[Z>>2]=67372036;break}else{a[Z>>0]=a[j+C>>0]|0;a[_>>0]=a[j+D>>0]|0;break}else c[Z>>2]=-2139062144;while(0);if(oa)i=a[j+(G+(a[Ba>>0]&-2&255))>>0]|0;else i=w;a[$>>0]=i;if(pa)i=a[j+(aa+(a[ba>>0]&-2&255))>>0]|0;else i=x;a[ca>>0]=i}if(!(c[fa>>2]|0))break}else if(!(c[fa>>2]|0))break;if(!(c[ga>>2]|0)){if(ha?(Fa=g+28272+(v*40|0)+3|0,Ga=a[Fa>>0]|0,Ga<<24>>24>-1):0){a[Fa>>0]=(Ga&255)>>>1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=d[Ma>>0]<<1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=(i&255)>>>1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(!ja?(Ia=a[o>>0]|0,Ia<<24>>24>-1):0){a[o>>0]=(Ia&255)>>>1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=d[Ma>>0]<<1;break}else{if(!ha?(Ca=g+28272+(v*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=Da<<24>>24<<1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=i<<24>>24<<1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(ja?(Ea=a[o>>0]|0,Ea<<24>>24>-1):0){a[o>>0]=Ea<<24>>24<<1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(!la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1;break}}while(0);v=v+1|0}}while(0);c[g+21840>>2]=(xa>>>24&1)+(va>>>24&1);l=Ja;return}function ul(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Dl(c,a+32972|0)|0)){a=a+32973|0;d=Dl(c,a)|0;d=((Dl(c,a)|0)<<1)+d|0;c=d+((Dl(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function vl(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26396>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26396>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(rl(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(rl(b,e)|0))e=1;else{e=(rl(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function wl(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Dl(d,a+32940|0)|0))a=0;else{do if(!(Dl(d,a+32941|0)|0)){b=Dl(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Dl(d,a+32942|0)|0)if(!(Dl(d,c)|0))a=7;else{b=Dl(d,c)|0;a=11;break}else a=3;b=((Dl(d,c)|0)<<1)+a|0;a=Dl(d,c)|0}while(0);a=b+a|0}return a|0}function xl(a){a=a|0;var b=0;b=a+32856|0;if(!(Dl(b,a+32925|0)|0))if(!(Dl(b,a+32926|0)|0))a=1;else{a=(Dl(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function yl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[146266+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Dl(g,e+54+(b+32904)|0)|0))break;if((f|0)>30){f=-1;break}else{f=f+1|0;e=(e>>2)+4|0}}return f|0}function zl(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Al(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;i=a+32856|0;do if(!(Dl(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if((f|0)>=9){d=3;h=7;break}if(!(Dl(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+((f|0)<4&1)|0;f=f+1|0;d=b}if((h|0)==7){while(1){h=0;if(!(Il(i)|0)){b=d;break}f=(1<23){h=12;break}else{d=d+1|0;h=7}}if((h|0)==12){Uf(c[(c[a>>2]|0)+4>>2]|0,16,135820,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((Il(i)|0)<>2]=d;d=c[i>>2]<<1;c[i>>2]=d;if(!(d&65534)){Hl(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);l=j;return d|0}function Bl(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=rl(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((rl(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((rl(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((rl(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function Cl(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a+21864>>2]|0)>>>4&3;e=(c[a+21860>>2]|0)>>>4&3;f=(b|0)!=0&1;d=a+32856|0;f=(rl(d,((e|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;b=(b|0)==2?5:4;if(f)b=0;else b=(rl(d,((e|0)==2?b|2:b)+77+(a+32904)|0)|0)+1|0;return b|0}function Dl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121202+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[121842+f>>0]|0;h=c[g>>2]|0;e=d[120690+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Jl(b);return f&1|0}function El(f,g,h,i,j,k,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;B=g+32860|0;t=w+4|0;c[t>>2]=c[B>>2];y=g+32856|0;c[w>>2]=c[y>>2];z=g+32872|0;A=w+16|0;c[A>>2]=c[z>>2];s=c[g+21828>>2]|0;r=(c[102572+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[102684+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;u=(c[102796+(i<<2)>>2]|0)+(g+32904)|0;q=n+-1|0;p=0;o=0;while(1){if((p|0)>=(q|0)){x=6;break}if(Dl(w,r+p|0)|0){n=o+1|0;c[v+(o<<2)>>2]=p;if(!(Dl(w,s+p|0)|0))o=n;else{o=n;break}}p=p+1|0}if((x|0)==6)if((p|0)==(q|0)){c[v+(o<<2)>>2]=q;o=o+1|0}s=(i|0)==3;i=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(s?64:256)<<(s?-49:-48)+j|(e[i>>1]|0);a[(d[146266+j>>0]|0)+(g+27824)>>0]=o;if(!(c[f+25664>>2]|0)){s=o;n=0;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Dl(w,u+(d[135654+n>>0]|0)|0)|0)){o=d[135662+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Hl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135678+n>>0]|0)|0;r=d[135670+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=34;break}if(!(Dl(w,o)|0))break;n=n+1|0}if((x|0)==34){while(1){x=0;if((n|0)<23&(Il(w)|0)!=0){n=n+1|0;x=34}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Il(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Hl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}b[h+(f<<1)>>1]=p-q;if(!s)break;else n=r}}else{n=0;s=o;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Dl(w,u+(d[135654+n>>0]|0)|0)|0)){o=d[135662+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Hl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135678+n>>0]|0)|0;r=d[135670+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=18;break}if(!(Dl(w,o)|0))break;n=n+1|0}if((x|0)==18){while(1){x=0;if((n|0)<23&(Il(w)|0)!=0){n=n+1|0;x=18}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Il(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Hl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}c[h+(f<<2)>>2]=p-q;if(!s)break;else n=r}}c[B>>2]=o;c[y>>2]=n;c[z>>2]=c[A>>2];l=C;return}function Fl(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;y=f+32860|0;u=w+4|0;c[u>>2]=c[y>>2];z=f+32856|0;c[w>>2]=c[z>>2];A=f+32872|0;B=w+16|0;c[B>>2]=c[A>>2];p=c[f+21828>>2]|0;q=(c[102572+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[102684+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;t=(c[102796+(h<<2)>>2]|0)+(f+32904)|0;s=(n|0)==64;a:do if(s){o=0;n=0;while(1){if((o|0)>=63)break;if(Dl(w,q+(d[135694+(p*63|0)+o>>0]|0)|0)|0){D=r+(d[121970+o>>0]|0)|0;h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Dl(w,D)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==63){c[v+(n<<2)>>2]=63;n=n+1|0}}else{p=n+-1|0;o=0;n=0;while(1){if((o|0)>=(p|0))break;if(Dl(w,q+o|0)|0){h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Dl(w,r+o|0)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==(p|0)){c[v+(n<<2)>>2]=p;n=n+1|0}}while(0);if(s){D=(d[146266+i>>0]|0)+(f+27824)|0;i=n*257&65535;b[D>>1]=i;b[D+8>>1]=i}else a[(d[146266+i>>0]|0)+(f+27824)>>0]=n;if(!(c[e+25664>>2]|0)){q=n;h=0;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Dl(w,t+(d[135654+h>>0]|0)|0)|0)){n=d[135662+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Hl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135678+h>>0]|0)|0;p=d[135670+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=44;break}if(!(Dl(w,n)|0))break;h=h+1|0}if((x|0)==44){while(1){x=0;if((h|0)<23&(Il(w)|0)!=0){h=h+1|0;x=44}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Il(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Hl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}b[g+(r<<1)>>1]=o>>>6;if(!q)break;else h=p}}else{h=0;q=n;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Dl(w,t+(d[135654+h>>0]|0)|0)|0)){n=d[135662+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Hl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135678+h>>0]|0)|0;p=d[135670+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=28;break}if(!(Dl(w,n)|0))break;h=h+1|0}if((x|0)==28){while(1){x=0;if((h|0)<23&(Il(w)|0)!=0){h=h+1|0;x=28}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Il(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Hl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}c[g+(r<<2)>>2]=o>>6;if(!q)break;else h=p}}c[y>>2]=n;c[z>>2]=h;c[A>>2]=c[B>>2];l=C;return}function Gl(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+304|0;if((l|0)>=(m|0))W(304);s=A+48|0;t=A;y=g+32860|0;u=t+4|0;c[u>>2]=c[y>>2];z=g+32856|0;c[t>>2]=c[z>>2];w=g+32872|0;x=t+16|0;c[x>>2]=c[w>>2];q=c[g+21828>>2]|0;p=(c[102572+(q*56|0)+12>>2]|0)+(g+32904)|0;q=(c[102684+(q*56|0)+12>>2]|0)+(g+32904)|0;r=g+33161|0;o=0;k=0;while(1){if((o|0)>=7){v=6;break}j=d[135647+o>>0]|0;if(Dl(t,p+j|0)|0){n=k+1|0;c[s+(k<<2)>>2]=o;if(!(Dl(t,q+j|0)|0))k=n;else{k=n;break}}o=o+1|0}if((v|0)==6)if((o|0)==7){c[s+(k<<2)>>2]=7;k=k+1|0}q=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[q>>1]=64<>1]|0);a[(d[146266+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25664>>2]|0)){q=k;j=0;while(1){q=q+-1|0;f=d[123674+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Dl(t,r+(d[135654+j>>0]|0)|0)|0)){k=d[135662+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Hl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135686+j>>0]|0)|0;p=d[135670+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=34;break}if(!(Dl(t,k)|0))break;j=j+1|0}if((v|0)==34){while(1){v=0;if((j|0)<23&(Il(t)|0)!=0){j=j+1|0;v=34}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Il(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Hl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}b[h+(f<<1)>>1]=n-o;if(!q)break;else j=p}}else{j=0;q=k;while(1){q=q+-1|0;f=d[123674+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Dl(t,r+(d[135654+j>>0]|0)|0)|0)){k=d[135662+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Hl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135686+j>>0]|0)|0;p=d[135670+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=18;break}if(!(Dl(t,k)|0))break;j=j+1|0}if((v|0)==18){while(1){v=0;if((j|0)<23&(Il(t)|0)!=0){j=j+1|0;v=18}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Il(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Hl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}c[h+(f<<2)>>2]=n-o;if(!q)break;else j=p}}c[y>>2]=k;c[z>>2]=j;c[w>>2]=c[x>>2];l=A;return}function Hl(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function Il(a){a=a|0;var b=0,d=0;b=c[a>>2]<<1;c[a>>2]=b;if(!(b&65534)){Hl(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function Jl(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[120690+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function Kl(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){Ll(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function Ll(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))Hl(a);return}function Ml(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=u;s=b+556|0;p=c[s>>2]|0;q=(N(p,f)|0)+e|0;r=b+552|0;n=c[r>>2]|0;o=n+-1|0;q=(q|0)<0?0:(q|0)>(o|0)?o:q;h=(N(p,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(n|0)?n:h;n=b+548|0;p=c[n>>2]|0;o=c[p+(q<<2)>>2]|0;p=c[p+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+592>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((p|0)<(o|0)|(q|0)>(h|0)){Uf(e,16,135981,j);break}if(c[e+572>>2]|0){if(!(i&18))e=-2;else{e=b+572|0;c[e>>2]=(c[e>>2]|0)+(q+~h);e=-20}if(i&36){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-38}if(i&72){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-73}if(i&14|0){c[b+576>>2]=1;c[b+572>>2]=2147483647}g=b+580|0;a:do if((e|0)==-128)iX((c[g>>2]|0)+o|0,0,p-o|0)|0;else{f=o;while(1){if((f|0)>=(p|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[r>>2]|0))c[b+572>>2]=2147483647;else{r=(c[g>>2]|0)+p|0;a[r>>0]=e&(d[r>>0]|0);r=(c[g>>2]|0)+p|0;a[r>>0]=d[r>>0]|0|i}i=(c[g>>2]|0)+o|0;a[i>>0]=a[i>>0]|1;if(((((o|0)>0?(t=c[b>>2]|0,(c[t+696>>2]&2|0)==0):0)?Ti(b)|0:0)?(N(c[s>>2]|0,c[t+268>>2]|0)|0)<(q|0):0)?(a[(c[g>>2]|0)+(c[(c[n>>2]|0)+(q+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;c[b+572>>2]=2147483647}}}while(0);l=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Ol(a,b,c){a=a|0;b=b|0;c=c|0;Ql(a,b,c,0);return}function Pl(a,b,c){a=a|0;b=b|0;c=c|0;Ql(a,b,c,1);return}function Ql(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148516;c[h+4>>2]=144213;c[h+8>>2]=33;Uf(0,0,159675,h);Ub()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;Qf(b);if(!g)f=ag(h)|0;else f=Lg(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}l=i;return}function Rl(a){a=a|0;var b=0,d=0;b=a+64|0;kX(b|0)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;wc(a|0,b|0)|0}c[d>>2]=1;lX(b|0)|0;return}function Sl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+112|0;if((l|0)>=(m|0))W(112);E=F+96|0;D=F+88|0;B=F+80|0;A=F+72|0;s=F+64|0;r=F+56|0;o=F+48|0;n=F+40|0;k=F+32|0;j=F+24|0;i=F+16|0;g=F;if((c[b+25628>>2]|0)==(e|0)?(c[b+29560>>2]|0)==0:0)if(!(c[b+29588>>2]|0))p=1;else{c[g>>2]=147377;c[g+4>>2]=133479;c[g+8>>2]=1681;Uf(0,0,159675,g);Ub()}else p=0;C=e+4|0;g=e+21808|0;c[g>>2]=SM(C)|0;h=TM(C)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[123569+(i?h+-5|0:h)>>0]|0;w=i&255;x=e+836|0;c[x>>2]=w;w=w&3;u=e+840|0;c[u>>2]=w;t=f+44|0;if(!((w|0)==1|(c[t>>2]|0)!=5)){Uf(c[b+4>>2]|0,16,147427,j);g=-1094995529;break}h=UM(C)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;Uf(g,16,150812,k);g=-1094995529;break}g=c[b+27180+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[n>>2]=h;Uf(g,16,150836,n);g=-1094995529;break}w=c[g+4>>2]|0;g=c[w>>2]|0;h=c[b+27052+(g<<2)>>2]|0;if(!h){E=c[b+4>>2]|0;c[o>>2]=g;Uf(E,16,150868,o);g=-1094995529;break}o=c[h+4>>2]|0;j=o+20|0;g=VM(C,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!p?(q=c[b+28244>>2]|0,(q|0)!=(g|0)):0){E=c[b+4>>2]|0;c[r>>2]=q;c[r+4>>2]=g;Uf(E,16,147466,r);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[o+64>>2]|0)){if(i<<24>>24==3&(c[o+72>>2]|0)==0){Uf(c[b+4>>2]|0,16,147498,s);g=-1;break}if(WM(C)|0)n=(WM(C)|0)+1|0;else n=3}else n=3;c[e+21824>>2]=n;c[e+21828>>2]=(n|0)!=3&1;i=(n|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<>2]|0)==5)SM(C)|0;h=o+24|0;g=c[h>>2]|0;if(!g){c[e+34736>>2]=VM(C,c[o+28>>2]|0)|0;if(i&(c[w+8>>2]|0)==1)c[e+34740>>2]=XM(C)|0;g=c[h>>2]|0}if(((g|0)==1?(c[o+32>>2]|0)==0:0)?(c[e+34744>>2]=XM(C)|0,i&(c[w+8>>2]|0)==1):0)c[e+34748>>2]=XM(C)|0;g=e+21836|0;c[g>>2]=0;if(c[w+60>>2]|0)c[g>>2]=UM(C)|0;g=c[u>>2]|0;if((g|0)==3){c[e+21844>>2]=WM(C)|0;g=c[u>>2]|0}i=e+23404|0;k=b+4|0;g=YM(e+23412|0,i,C,w,g,n,c[k>>2]|0)|0;if((g|0)>=0){if((c[u>>2]|0)!=1?(v=ZM(e,c[k>>2]|0)|0,(v|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=v;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[w+28>>2]|0)!=0?(c[u>>2]|0)==2:0){y=2;g=51}else g=49;if(((g|0)==49?(c[w+32>>2]|0)==1:0)?(c[u>>2]|0)==3:0){y=3;g=51}if((g|0)==51?(z=_M(C,o,i,y,h,n,c[k>>2]|0)|0,(z|0)<0):0){g=z;break}c[e+34728>>2]=0;do if(c[f+64>>2]|0){if(($M(e,C,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+580>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[u>>2]|0)!=1){if(!(c[w+4>>2]|0))break;g=TM(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[A>>2]=g;Uf(E,16,147568,A);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[w+36>>2]|0;g=(XM(C)|0)+g|0;if(g>>>0>(((c[o+1184>>2]|0)*6|0)+3|0)>>>0){E=c[k>>2]|0;c[B>>2]=g;Uf(E,16,147596,B);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[w+548+g>>0];c[e+856>>2]=d[w+636+g>>0];g=c[x>>2]|0;if((g|0)==6){WM(C)|0;g=c[x>>2]|0}if((g+-5|0)>>>0<2)XM(C)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[w+52>>2]|0)){g=0;break}g=TM(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[D>>2]=g;Uf(E,16,147616,D);g=-1094995529;break}D=(g|0)==2?2:g^1;c[h>>2]=D;if(!D){g=0;break}h=XM(C)|0;g=XM(C)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){D=c[k>>2]|0;c[E>>2]=h;c[E+4>>2]=g;Uf(D,16,147655,E);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{E=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;Uf(E,16,147396,i);g=-1094995529}while(0);l=F;return g|0}function Tl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+96|0;if((l|0)>=(m|0))W(96);z=G+72|0;y=G+56|0;w=G+48|0;q=G+40|0;r=G+32|0;n=G+16|0;k=G;e=im(a,b,e)|0;a:do if((e|0)>=0){B=a+28216|0;s=c[B>>2]|0;o=a+25684|0;p=c[o>>2]|0;F=a+26380|0;x=c[F>>2]|0;D=d+64|0;c[o>>2]=(c[D>>2]|0)==0&1;e=c[b+21824>>2]|0;c[F>>2]=e;f=c[b+34732>>2]|0;A=a+28224|0;E=a+28244|0;c[E>>2]=f;c[A>>2]=c[b+34736>>2];c[a+28232>>2]=c[b+34740>>2];c[a+28236>>2]=c[b+34744>>2];c[a+28240>>2]=c[b+34748>>2];t=a+28264|0;g=c[t>>2]|0;if((f|0)!=(g|0)?(h=1<>2],C=c[s+48>>2]|0,i=f-C|0,(f-g+((f|0)<(g|0)?h:0)|0)>(C|0)):0)c[t>>2]=i+-1+((i|0)<1?h:0);C=a+26384|0;do if(c[C>>2]|0){i=(x|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=145177;c[k+4>>2]=133479;c[k+8>>2]=1446;Uf(0,0,159675,k);Ub()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[n>>2]=145192;c[n+4>>2]=133479;c[n+8>>2]=1447;Uf(0,0,159675,n);Ub()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){yi(g+4|0,2147483647,f);e=c[F>>2]|0}if((e|0)==3|(e|0)==(x|0)){if((x|0)==3){p=j;break}yi((c[j>>2]|0)+4|0,2147483647,(x|0)==1&1);p=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[E>>2]|0)){if((x|0)==3){p=j;break}yi(f+4|0,2147483647,(x|0)==1&1);p=j;break}if(!((x|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[r>>2]=x;c[r+4>>2]=e;Uf(a,16,145218,r);c[F>>2]=x;c[o>>2]=p;e=-1094995529;break a}if((p|0)==(c[o>>2]|0))p=j;else{Li(c[h>>2]|0,145256,q);c[F>>2]=x;c[o>>2]=p;e=-1163346256;break a}}else{h=a+4|0;p=a+24312|0}while(0);k=s+20|0;n=a+29556|0;g=s+52|0;o=a+29548|0;j=a+28348|0;while(1){i=c[E>>2]|0;e=c[t>>2]|0;f=(c[C>>2]|0)==0;if((i|0)==(e|0)){g=45;break}if(!f){g=46;break}if((i|0)==((e+1|0)%(1<>2]|0)|0|0)){g=57;break}if(!(c[n>>2]|0))f=0;else f=c[j>>2]|0;s=c[h>>2]|0;c[w>>2]=i;c[w+4>>2]=e;Uf(s,48,145322,w);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=jm(a)|0;if((e|0)<0){g=33;break}s=((c[t>>2]|0)+1|0)%(1<>2]|0)|0;c[t>>2]=s;e=c[p>>2]|0;c[e+88>>2]=s;c[e+648>>2]=(c[g>>2]|0)==0&1;yi(e+4|0,2147483647,0);yi((c[p>>2]|0)+4|0,2147483647,1);c[o>>2]=0;e=xi(a)|0;if((e|0)<0?c[(c[h>>2]|0)+580>>2]&8|0:0)break a;if(!(c[n>>2]|0))continue;e=c[j>>2]|0;if((((f|0)!=0?(u=c[e>>2]|0,v=c[f>>2]|0,(c[u+68>>2]|0)==(c[v+68>>2]|0)):0)?(c[u+72>>2]|0)==(c[v+72>>2]|0):0)?(c[u+80>>2]|0)==(c[v+80>>2]|0):0){e=f+4|0;Wi(e,2147483647,0);if(c[f+636>>2]|0)Wi(e,2147483647,1);s=c[c[j>>2]>>2]|0;e=c[f>>2]|0;Oh(s,s+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[t>>2]}if((g|0)==33){c[C>>2]=0;break}else if((g|0)==45)if(f)g=57;else g=46;do if((g|0)==46){g=c[p>>2]|0;if(!g){c[y>>2]=145177;c[y+4>>2]=133479;c[y+8>>2]=1553;Uf(0,0,159675,y);Ub()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[z>>2]=145192;c[z+4>>2]=133479;c[z+8>>2]=1554;Uf(0,0,159675,z);Ub()}e=c[F>>2]|0;f=a+29584|0;if((e|0)==3|(e|0)==(x|0)){c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=0;f=(e|0)!=3&1;c[C>>2]=f;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){yi(g+4|0,2147483647,(e|0)==2&1);c[C>>2]=1;c[p>>2]=0;e=c[F>>2]|0;f=1;break}if(!(c[g+640>>2]&4)){c[C>>2]=0;f=0;break}else{c[C>>2]=1;c[p>>2]=0;f=1;break}}else if((g|0)==57){e=c[F>>2]|0;f=(e|0)!=3&1;c[C>>2]=f}while(0);if(!((e|0)!=3&(f|0)==0)){if((jm(a)|0)<0){c[C>>2]=0;e=-1094995529;break}}else{km(a,0);c[(c[p>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[F>>2]|0;c:do if((e|0)==3)iX(c[a+26372>>2]|0,-1,(N(c[a+27008>>2]<<1,c[a+27016>>2]|0)|0)+-2|0)|0;else{g=a+27008|0;h=a+26372|0;i=a+27016|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;y=c[i>>2]|0;z=e+1|0;iX((c[h>>2]|0)+((N(y,e)|0)<<1)|0,-1,y-((z|0)==(f|0)&1)<<1|0)|0;e=z}}while(0);e=c[p>>2]|0;e=lm(e+76|0,e+84|0,c[B>>2]|0,A,c[F>>2]|0,c[D>>2]|0)|0;if((e|0)>=0){k=b+34724|0;gX(a+28748|0,b+33932|0,(c[k>>2]|0)*12|0)|0;c[a+29540>>2]=c[k>>2];c[o>>2]=c[b+34728>>2];k=(c[d+44>>2]|0)==5;j=k&1;c[a+25712>>2]=j;h=c[a+29716>>2]|0;do if((h|0)>-1){i=c[E>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29568>>2]=1;g=a+29572|0;f=c[g>>2]|0;if((f|0)>=0){e=c[(c[B>>2]|0)+20>>2]|0;if(((1<>>0<=h>>>0)break}else e=c[(c[B>>2]|0)+20>>2]|0;B=(1<>2]=B;c[g>>2]=(c[a+29568>>2]|0)==0?i:B}while(0);f=c[p>>2]|0;e=(c[f>>2]|0)+84|0;c[e>>2]=c[e>>2]|j;e=a+29572|0;if(k){c[e>>2]=-1;c[f+644>>2]=1;E=a+29576|0;e=c[E>>2]|1;c[E>>2]=e}else{if((c[e>>2]|0)==(c[E>>2]|0)?c[D>>2]|0:0){c[e>>2]=-1;c[f+644>>2]=1}e=c[a+29576>>2]|0}E=f+644|0;c[E>>2]=c[E>>2]|e;if(((c[F>>2]|0)!=3?c[C>>2]|0:0)?(c[a+29584>>2]|0)<=1:0){e=0;break}mm(a);nm(a);e=0}}while(0);l=G;return e|0}function Ul(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+160|0;if((l|0)>=(m|0))W(160);F=G+24|0;o=G+16|0;g=G+8|0;f=G;x=G+96|0;if((c[a+25712>>2]|0)!=0?(c[e+44>>2]|0)!=5:0){Uf(c[a+4>>2]|0,16,144502,f);f=-1094995529}else y=4;do if((y|0)==4){h=c[d+21808>>2]|0;j=a+26376|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26380>>2]|0)!=3;else f=1;E=c[a+27020>>2]|0;if(!(h<<(f&1)>>>0>>0&h>>>0>>0)){Uf(c[a+4>>2]|0,16,144541,g);f=-1094995529;break}A=a+27012|0;f=c[A>>2]|0;w=(h>>>0)%(f>>>0)|0;B=d+21788|0;c[B>>2]=w;c[d+21800>>2]=w;w=a+26380|0;E=c[w>>2]|0;f=((h>>>0)/(f>>>0)|0)<<(((E|0)!=3|i^1)&1);v=d+21792|0;c[v>>2]=f;n=d+21804|0;c[n>>2]=f;if((E|0)==2){E=f+1|0;c[v>>2]=E;c[n>>2]=E}f=Vl(a,d)|0;if((f|0)>=0){h=a+28212|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){Wl(a,d,-1);if(!(c[j>>2]|0))y=15;else{Wl(a,d,0);Wl(a,d,1);y=15}}}else y=15;if(((y|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)Xl(a,d);if(!(c[a+29588>>2]|0))Yl(a,d);u=a+4|0;k=c[u>>2]|0;f=c[k+724>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27028>>2]|0)==5)y=24;else{y=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){y=29;break a}else break;else if((f|0)>7)break;else break a;else y=24;while(0);if((y|0)==24?(c[g>>2]|0)!=1:0){y=29;break}if(!(c[e+64>>2]|0))y=29}else y=29;while(0);if((y|0)==29)c[d+868>>2]=0;C=d+868|0;do if((c[C>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[k+64>>2]&1)){c[a+25708>>2]=1;break}else{c[C>>2]=2;break}while(0);D=d+872|0;i=c[D>>2]|0;E=d+876|0;j=c[E>>2]|0;g=c[h>>2]|0;f=g+44|0;h=c[f>>2]|0;z=(h|0)<0;g=g+48|0;h=((z?0:h)|0)<=(c[g>>2]|0);if(h|z^1)f=c[(h?g:f)>>2]|0;else f=0;c[d+860>>2]=-33-((i|0)>(j|0)?j:i)-f+((c[(c[a+28216>>2]|0)+1184>>2]|0)*6|0);t=a+29560|0;g=c[t>>2]|0;h=g+1|0;c[t>>2]=h;t=d+832|0;c[t>>2]=h;if(!h)f=c[n>>2]|0;else{f=c[n>>2]|0;b[a+29600+((g&31)<<1)>>1]=f}z=b[a+29600+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(z|0)&(z+3|0)>=(f|0))){c[o>>2]=h;c[o+4>>2]=32;Uf(k,24,144569,o)}p=d+23412|0;q=a+29556|0;r=a+29552|0;o=0;while(1){if((o|0)==2)break;s=c[t>>2]&31;k=d+23404+(o<<2)|0;j=0;while(1){if((j|0)==16)break;n=x+(j<<2)|0;c[n>>2]=60;b:do if(o>>>0<(c[p>>2]|0)>>>0?j>>>0<(c[k>>2]|0)>>>0:0){f=c[(c[c[d+23416+(o*1920|0)+(j*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!f)break;h=c[f>>2]|0;i=c[q>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;if((c[c[(c[c[a+28348+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(h|0)){y=53;break}f=f+1|0}if((y|0)==53){y=0;c[n>>2]=f}g=c[r>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;z=c[a+28476+(f<<2)>>2]|0;if(z|0?(c[c[(c[z>>2]|0)+248>>2]>>2]|0)==(h|0):0)break;f=f+1|0}c[n>>2]=i+f}while(0);j=j+1|0}c[a+29940+(s<<9)+(o<<8)+4>>2]=-1;c[a+29940+(s<<9)+(o<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29940+(s<<9)+(o<<8)+(f+2<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f<<2)>>2]<<2;f=f+1|0}c[a+29940+(s<<9)+(o<<8)+76>>2]=-1;c[a+29940+(s<<9)+(o<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29940+(s<<9)+(o<<8)+(f+4<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f+-16>>1<<2)>>2]<<2;f=f+1|0}o=o+1|0}z=c[u>>2]|0;if(!(c[z+576>>2]&1))f=0;else{y=c[t>>2]|0;x=c[w>>2]|0;u=N(c[A>>2]|0,c[v>>2]|0)|0;u=u+(c[B>>2]|0)|0;f=d+836|0;v=(Ui(c[f>>2]|0)|0)<<24>>24;w=c[d+844>>2]|0?144670:262540;s=(c[e+44>>2]|0)==5?144675:262540;t=c[a+28244>>2]|0;o=c[a+24312>>2]|0;n=c[o+76>>2]|0;o=c[o+80>>2]|0;p=c[d+23404>>2]|0;q=c[d+23408>>2]|0;r=c[d+848>>2]|0;k=c[C>>2]|0;j=c[D>>2]|0;g=c[E>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=c[d+884>>2]|0?144680:262540;else i=262540;if((c[f>>2]|0)==3)f=c[d+21844>>2]|0?144682:144687;else f=262540;c[F>>2]=y;c[F+4>>2]=(x|0)==3?144668:(x|0)==1?144664:144666;c[F+8>>2]=u;c[F+12>>2]=v;c[F+16>>2]=w;c[F+20>>2]=s;c[F+24>>2]=t;c[F+28>>2]=n;c[F+32>>2]=o;c[F+36>>2]=p;c[F+40>>2]=q;c[F+44>>2]=r;c[F+48>>2]=k;c[F+52>>2]=j;c[F+56>>2]=g;c[F+60>>2]=h;c[F+64>>2]=i;c[F+68>>2]=f;Uf(z,48,144692,F);f=0}}}while(0);l=G;return f|0}function Vl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+64|0;if((l|0)>=(m|0))W(64);I=K+48|0;J=K+40|0;E=K+32|0;D=K+16|0;C=K+8|0;B=K;w=K+60|0;Ei(b);Fi(b);$l(b,d);F=d+23412|0;x=d+34752|0;z=d+34756|0;A=b+29556|0;G=b+4|0;H=b+26380|0;u=0;a:while(1){e=c[F>>2]|0;if(u>>>0>=e>>>0){p=0;r=29;break}s=d+27768+(u<<2)|0;t=d+23404+(u<<2)|0;p=0;e=c[x>>2]|0;while(1){if((p|0)>=(c[s>>2]|0))break;f=a[d+27256+(u<<8)+(p<<3)>>0]|0;i=c[d+27256+(u<<8)+(p<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[z>>2]|0;if(g>>>0>h>>>0){r=11;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;g=Ai(b,e,w)|0;i=c[w>>2]|0;f=c[A>>2]|0;while(1){r=f;f=f+-1|0;if((r|0)<=0){r=18;break b}h=c[b+28348+(f<<2)>>2]|0;if((c[h+88>>2]|0)!=(g|0))continue;if(i&c[h+640>>2]|0){o=e;r=15;break}}break}case 2:{f=Ai(b,i,w)|0;if(f>>>0>31){r=16;break a}f=c[b+28476+(f<<2)>>2]|0;if((f|0)!=0?(y=c[w>>2]|0,(y&c[f+640>>2]|0)!=0):0){o=e;h=f;e=i;i=y;r=15}else r=18;break}default:{r=17;break a}}while(0);if((r|0)==15){c[h+96>>2]=e;f=h+96|0;g=c[t>>2]|0;j=h+100|0;e=p;while(1){k=e+1|0;if(k>>>0>=g>>>0)break;n=c[d+23416+(u*1920|0)+(e*40|0)+36>>2]|0;if(!n){e=k;continue}if((c[j>>2]|0)!=(c[n+100>>2]|0)){e=k;continue}if((c[f>>2]|0)==(c[d+23416+(u*1920|0)+(e*40|0)+32>>2]|0))break;else e=k}while(1){if((e|0)<=(p|0))break;g=e+-1|0;f=d+23416+(u*1920|0)+(e*40|0)|0;e=d+23416+(u*1920|0)+(g*40|0)|0;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=g}e=d+23416+(u*1920|0)+(p*40|0)|0;am(e,h);if((c[H>>2]|0)==3)e=o;else{bm(e,i);e=o}}else if((r|0)==18){Uf(c[G>>2]|0,16,144960,E);f=d+23416+(u*1920|0)+(p*40|0)|0;q=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(q|0))}p=p+1|0}u=u+1|0}c:do if((r|0)==11){Uf(c[G>>2]|0,16,144905,B);v=-1094995529}else if((r|0)==16){Uf(c[G>>2]|0,16,144932,C);v=-1094995529}else if((r|0)==17){c[D>>2]=165680;c[D+4>>2]=127758;c[D+8>>2]=373;Uf(0,0,159675,D);Ub()}else if((r|0)==29){d:while(1){r=0;if(p>>>0>=e>>>0)break;i=d+23404+(p<<2)|0;j=b+28268+(p*40|0)|0;k=b+28268+(p*40|0)+28|0;n=b+28268+(p*40|0)+36|0;o=b+28268+(p*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(p*1920|0)+(h*40|0)|0;g=d+23416+(p*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[H>>2]|0)==3?(c[d+23416+(p*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)r=35}else r=35;if((r|0)==35){r=0;e=c[G>>2]|0;c[J>>2]=c[k>>2];Uf(e,16,145002,J);e=0;while(1){if((e|0)==16)break;c[b+28676+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[n>>2]|0)){v=-1;break c}if((c[H>>2]|0)==3?(c[o>>2]&3|0)!=3:0){v=-1;break c}e=j;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=c[g>>2]|0}if((cm(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{r=43;break d}}p=p+1|0;e=c[F>>2]|0;r=29}if((r|0)==43){c[I>>2]=145044;c[I+4>>2]=127758;c[I+8>>2]=411;Uf(0,0,159675,I);Ub()}if(!(c[b+26376>>2]|0))v=0;else{dm(d);v=0}}while(0);l=K;return v|0}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26380>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26376>>2]|0)==0?(l=c[b+23444>>2]|0,m=c[b+25364>>2]|0,l=TW(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0,m=g<<1,(l|0)==(m|0)&(y|0)==(((m|0)<0)<<31>>31|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(p=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,p=(p+128|0)>>>0>255?p>>31^127:p,o=p&255,p=p<<24>>24,o<<24>>24!=0):0){i=(N((((o<<24>>24>-1?p:0-p|0)>>1)+16384|0)/(p|0)|0,l)|0)+32>>8;i=(i+64|0)>>>0<193?64-i|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=c[a+26380>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26376>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;c[b+21996+(e<<7)+((a^e)<<2)>>2]=_l(b,g,h,a+16|0)|0;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;c[b+21868+(a<<2)>>2]=_l(b,j,k,a)|0;a=a+1|0}return}function Yl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;j=s;o=a+24312|0;h=c[o>>2]|0;n=a+26380|0;q=c[n>>2]&1^1;p=b+25360|0;f=c[p>>2]&1;k=b+23412|0;d=0;while(1){if(d>>>0>=(c[k>>2]|0)>>>0)break;g=b+23404+(d<<2)|0;c[h+616+(q<<3)+(d<<2)>>2]=c[g>>2];e=0;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break;c[h+104+(q<<8)+(d<<7)+(e<<2)>>2]=c[b+23416+(d*1920|0)+(e*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(e*40|0)+36>>2]|0)+88>>2]<<2;e=e+1|0}d=d+1|0}i=f^1;if((c[n>>2]|0)==3){e=h+616|0;f=c[e+4>>2]|0;g=h+624|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;gX(h+360|0,h+104|0,256)|0}if(c[a+29560>>2]|0){if((c[h+632>>2]|0)!=(c[a+26376>>2]|0)){c[j>>2]=144782;c[j+4>>2]=144814;c[j+8>>2]=144;Uf(0,0,159675,j);Ub()}}else c[h+632>>2]=c[a+26376>>2];f=b+21852|0;c[f>>2]=0;a:do if((c[k>>2]|0)==2?c[b+23408>>2]|0:0){e=c[n>>2]|0;if((e|0)!=3){d=c[p>>2]|0;if((d&e|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0){c[f>>2]=(d<<1)+-3;d=q}else d=q}else{d=c[(c[o>>2]|0)+84>>2]|0;f=c[b+25372>>2]|0;e=c[f+76>>2]|0;f=c[f+80>>2]|0;if((e|0)==2147483647&(f|0)==2147483647){Uf(c[a+4>>2]|0,16,144839,r);d=1}else{r=e-d|0;d=f-d|0;d=(((r|0)>-1?r:0-r|0)|0)>=(((d|0)>-1?d:0-d|0)|0)&1}c[b+21848>>2]=d;i=d}if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26376|0;f=0;while(1){if((f|0)==2)break a;Zl(a,b,g,f,d,i,0);b:do if(c[h>>2]|0){e=0;while(1){if((e|0)==2)break b;Zl(a,b,b+22636+(e*384|0)|0,f,e,e,1);e=e+1|0}}while(0);f=f+1|0}}}while(0);l=s;return}function Zl(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26380>>2]|0)!=3;iX(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;a:while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0)){h=m;continue a}h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=13;break}h=h+1|0}if((t|0)==13){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}}return}function _l(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;h=c[a+23416+(e*40|0)+28>>2]|0;i=((h|0)<0)<<31>>31;d=UW(d|0,((d|0)<0)<<31>>31|0,h|0,i|0)|0;g=(d+128|0)>>>0>255?d>>31^127:d;f=g&255;g=g<<24>>24;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))Li(c[(c[a>>2]|0)+4>>2]|0,144868,k);if(f<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=UW(b|0,((b|0)<0)<<31>>31|0,h|0,i|0)|0;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))Uf(c[(c[a>>2]|0)+4>>2]|0,48,144886,j);j=(N((((f<<24>>24>-1?g:0-g|0)>>1)+16384|0)/(g|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=j>>6;d=(d+1024|0)>>>0>2047?j>>31^1023:d}else d=256;l=k;return d|0}function $l(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+240|0;if((l|0)>=(m|0))W(240);t=u+48|0;d=u+32|0;p=u+16|0;o=u;n=u+104|0;q=u+96|0;r=u+56|0;s=b+840|0;do if((c[s>>2]|0)==3){k=a+26380|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28348|0;i=a+29556|0;j=a+28476|0;f=0;while(1){if((f|0)>=2){d=11;break}d=em(n,h,c[i>>2]|0,g,f^1)|0;d=(em(n+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=fm(b+23416+(f*1920|0)|0,48,n,d,0,c[k>>2]|0)|0;d=(fm(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)iX(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[q+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[o>>2]=145117;c[o+4>>2]=127758;c[o+8>>2]=153;Uf(0,0,159675,o);Ub()}else if((d|0)==7){c[p>>2]=145117;c[p+4>>2]=127758;c[p+8>>2]=160;Uf(0,0,159675,p);Ub()}else if((d|0)==11){e=c[q>>2]|0;q=c[q+4>>2]|0;if((e|0)==(q|0)&(q|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=r;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=r;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{r=a+26380|0;e=fm(b+23416|0,48,a+28348|0,c[a+29556>>2]|0,0,c[r>>2]|0)|0;e=(fm(b+23416+(e*40|0)|0,48-e|0,a+28476|0,16,1,c[r>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=145117;c[d+4>>2]=127758;c[d+8>>2]=181;Uf(0,0,159675,d);Ub()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)iX(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if((f|0)>=(((c[s>>2]|0)==3?2:1)|0))break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;e=b+23416+(f*1920|0)+(g*40|0)|0;d=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(d|0?gm(a,d)|0:0){Uf(c[h>>2]|0,16,145127,t);j=e;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28268+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}l=u;return}function am(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function cm(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function dm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+23412|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;k=a+23404+(g<<2)|0;h=0;while(1){if(h>>>0>=(c[k>>2]|0)>>>0)break;f=(h<<1)+16|0;j=a+23416+(g*1920|0)+(f*40|0)|0;b=j;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=j+40|0;d=j;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=j+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[j+64>>2]=2;c[j+68>>2]=c[(c[j+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function em(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f|0?-2147483648:2147483647;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function fm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;q=s;p=g^3;o=(f|0)==0;j=0;f=0;h=0;while(1){if(!((f|0)<(e|0)|(h|0)<(e|0))){f=24;break}while(1){if((f|0)>=(e|0)){i=0;break}n=c[d+(f<<2)>>2]|0;if(n|0?c[n+640>>2]&g|0:0){i=1;break}f=f+1|0}n=h;while(1){if((n|0)>=(e|0)){k=0;break}k=c[d+(n<<2)>>2]|0;if(k|0?c[k+640>>2]&p|0:0){k=1;break}n=n+1|0}if(i){if((j|0)>=(b|0)){f=14;break}i=c[d+(f<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=f;c[i+96>>2]=h;hm(a+(j*40|0)|0,i,g,1);j=j+1|0;f=f+1|0}if(!k){h=n;continue}if((j|0)>=(b|0)){f=20;break}i=c[d+(n<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=n;c[i+96>>2]=h;hm(a+(j*40|0)|0,i,p,0);j=j+1|0;h=n+1|0}if((f|0)==14){c[q>>2]=145161;c[q+4>>2]=127758;c[q+8>>2]=90;Uf(0,0,159675,q);Ub()}else if((f|0)==20){c[r>>2]=145161;c[r+4>>2]=127758;c[r+8>>2]=95;Uf(0,0,159675,r);Ub()}else if((f|0)==24){l=s;return j|0}return 0}function gm(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function hm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(am(a,b),(d|0)!=3):0){bm(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function im(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;if((l|0)>=(m|0))W(64);o=t+56|0;n=t+48|0;s=t+40|0;r=t+24|0;q=t;k=(d|0)!=0;if(k){i=a+28204|0;zg(i);f=a+28212|0;c[f>>2]=0;d=Bh(c[a+27180+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28212|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28216|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27052+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28208|0;zg(i);c[h>>2]=0;d=Bh(c[a+27052+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+27012>>2]|0)==(c[g+56>>2]|0)?(c[a+27008>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29596>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27044>>2]|0)==(e|0)?(c[a+27048>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25692|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+100>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+104>>2]|0)):0)?(c[a+29596>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)?(c[a+27012>>2]|0)==(f|0):0)f=(c[a+27008>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+112>>2]|0;if(!((e|0)!=-1?(j=Cn(e)|0,(j|0)==(Cn(Dn(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+188|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];o=(En(n,o)|0)==0;f=o?f:1}if(((c[a+29588>>2]|0)==0?(o=Fn(g)|0,n=c[h>>2]|0,c[n+716>>2]=o,c[n+720>>2]=c[g+8>>2],c[n+300>>2]=c[g+48>>2],n=c[g+56>>2]|0,c[a+27012>>2]=n,o=c[g+60>>2]|0,c[a+27008>>2]=o,c[a+27020>>2]=N(o,n)|0,c[a+27016>>2]=n+1,c[a+26368>>2]=n<<2,c[a+25680>>2]=(c[g+12>>2]|0)<2&1,c[a+25668>>2]=n<<4,c[a+25672>>2]=o<<4,Gn(a),(c[g+108>>2]|0)!=0):0)?(p=c[h>>2]|0,c[p+328>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){o=p+324|0;n=c[g+128>>2]|0;d=(c[o>>2]|0)==(n|0)?d:1;c[p+316>>2]=c[g+120>>2];c[p+320>>2]=c[g+124>>2];c[o>>2]=n}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;p=c[d+100>>2]|0;b=c[a+25672>>2]|0;r=c[d+104>>2]|0;s=(c[a+29560>>2]|0)+1|0;c[q>>2]=c[a+25668>>2];c[q+4>>2]=p;c[q+8>>2]=b;c[q+12>>2]=r;c[q+16>>2]=s;Uf(d,16,145911,q);d=-1094995529;break}if(!e)Sg(a);d=Dn(a,1)|0;if((d|0)>=0){q=c[h>>2]|0;c[q+112>>2]=d;p=c[a+25668>>2]|0;b=c[a+25672>>2]|0;d=oh(d)|0;c[r>>2]=p;c[r+4>>2]=b;c[r+8>>2]=d;Uf(q,40,145966,r);d=Hn(a)|0;if((d|0)<0)Uf(c[h>>2]|0,16,146004,s);else d=0}}else d=0}while(0);l=t;return d|0}function jm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=p+8|0;f=p+16|0;n=c[b+25664>>2]|0;o=b+28216|0;g=c[o>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(rm(c[g>>2]|0)|0){km(b,1);k=b+24312|0;c[k>>2]=0;d=sm(b)|0;if((d|0)<0){Uf(c[g>>2]|0,16,145471,e);break}i=b+696+(d*656|0)|0;j=b+26380|0;h=c[j>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25684>>2]|0)==0?h:0;e=b+25688|0;q=c[e>>2]|0;c[e>>2]=q+1;e=c[i>>2]|0;c[e+128>>2]=q;c[b+696+(d*656|0)+636>>2]=(h|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28244>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29716>>2];h=b+25628|0;c[e+88>>2]=c[(c[h>>2]|0)+836>>2];c[e+392>>2]=c[b+25716>>2];c[e+396>>2]=c[b+25720>>2];c[e+384>>2]=c[b+25724>>2];c[e+388>>2]=c[b+25728>>2];d=tm(b,i)|0;if((d|0)>=0){if((c[b+29576>>2]|0)==0?(c[(c[g>>2]|0)+592>>2]|0)==0:0)um(c[i>>2]|0,f);c[k>>2]=i;d=b+24316|0;Ug(b,d);Ri((c[h>>2]|0)+696|0,0);d=ii(b,d,c[k>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;g=c[c[k>>2]>>2]|0;q=c[h>>2]|0;c[q+(d*34768|0)+21772>>2]=c[g+32>>2];c[q+(d*34768|0)+21776>>2]=c[g+36>>2];d=d+1|0}if(!(c[b+29672>>2]|0))d=0;else{vm((c[h>>2]|0)+24|0);Ri((c[h>>2]|0)+728|0,0);Ri((c[h>>2]|0)+760|0,0);d=0}while(1){if((d|0)==16){d=0;break}q=a[146266+d>>0]|0;h=((q<<2&255)+16&28)<>3;c[b+25976+(d<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<2,q)|0);c[b+25976+(d+48<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<3,q)|0);d=d+1|0}while(1){if((d|0)==16)break;q=a[146266+d>>0]|0;h=((q<<2&255)+16&28)<>3;g=h+(N(c[(c[i>>2]|0)+36>>2]<<2,q)|0)|0;c[b+25976+(d+32<<2)>>2]=g;c[b+25976+(d+16<<2)>>2]=g;q=h+(N(c[(c[i>>2]|0)+36>>2]<<3,q)|0)|0;c[b+25976+(d+80<<2)>>2]=q;c[b+25976+(d+64<<2)>>2]=q;d=d+1|0}q=c[k>>2]|0;c[q+640>>2]=0;c[q+80>>2]=2147483647;c[q+76>>2]=2147483647;c[b+28740>>2]=0;c[b+25708>>2]=0;if(!(c[(c[o>>2]|0)+68>>2]|0))d=0;else d=(c[j>>2]|0)==3&1;c[b+26376>>2]=d;d=c[b+29712>>2]|0;if((d|0)>-1){c[b+25704>>2]=d;d=0}else d=0}}}else{Uf(c[g>>2]|0,16,145425,p);d=-1}while(0);l=p;return d|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;Ug(a,f)}while(0);b=b+1|0}return}function lm(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=k+i|0;l=((j|0)<0)<<31>>31;if((g|0)==3){k=c[f+8>>2]|0;k=TW(k|0,((k|0)<0)<<31>>31|0,j|0,l|0)|0;i=j;h=l;j=y}else{i=j;h=l;k=j;j=l}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:l+i|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){i=i+-1|0;k=(i|0)%(m|0)|0;i=N((i|0)/(m|0)|0,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;i=(c[f+12>>2]|0)+i|0;l=((i|0)<0)<<31>>31;k=c[e+40>>2]|0;k=TW(i|0,l|0,k|0,((k|0)<0)<<31>>31|0)|0;j=y;if((g|0)==3){h=c[f+16>>2]|0;k=TW(k|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=l;j=y}else h=l;break}default:{k=(l+i<<1)+(((h|0)==0)<<31>>31)|0;j=((k|0)<0)<<31>>31;i=k;h=j}}if((i|0)==(i|0)&(h|0)==(((i|0)<0)<<31>>31|0)?(k|0)==(k|0)&(j|0)==(((k|0)<0)<<31>>31|0):0){if((g|0)!=2?(c[a>>2]=i,(g|0)==1):0)j=a+4|0;else{j=a+4|0;c[j>>2]=k;i=c[a>>2]|0}c[d>>2]=c[a+(((i|0)>(c[j>>2]|0)&1)<<2)>>2];i=0}else i=-1094995529;return i|0}function mm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+28216>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;g=j+212|0;c[g>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29676>>2]|0)!=0:0){f=c[b+29680>>2]|0;switch(f|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[g>>2]=1;d=1;break}case 4:case 3:{if((c[b+26376>>2]|0)==0?(c[b+26380>>2]|0)==3:0)d=c[b+29564>>2]|0;else d=1;c[g>>2]=d;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}e=c[b+29684>>2]|0;if((e&3|0)!=0&f>>>0<5){d=e>>>1&1;h=17}}else{if(!(c[b+26376>>2]|0))d=(c[b+26380>>2]|0)!=3;else d=1;d=d&1;h=17}if((h|0)==17)c[g>>2]=d;c[b+29564>>2]=d;e=c[q+76>>2]|0;f=c[q+80>>2]|0;do if((e|0)==(f|0)){if(!i?c[b+29676>>2]|0:0){switch(c[b+29680>>2]|0){case 5:case 3:{d=1;break}default:d=0}c[j+216>>2]=d;break}c[j+216>>2]=(d|0)!=0&1}else c[j+216>>2]=(e|0)<(f|0)&1;while(0);if(((c[b+29852>>2]|0?(k=b+29864|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29872|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=om(j)|0,m|0):0){switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:{c[m>>2]=c[b+29876>>2]|0?5:1;break}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}if((c[l>>2]|0)==2)c[m+4>>2]=1;if((c[k>>2]|0)==5)c[m+8>>2]=c[b+29880>>2]|0?1:2}do if(c[b+29884>>2]|0){d=c[b+29888>>2]|0;if(((d|0)==0?(c[b+29892>>2]|0)==0:0)?(c[b+29896>>2]|0)==0:0)break;e=Zh(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;pm(c[m>>2]|0,+(d*360|0)*.0000152587890625);qm(c[m>>2]|0,c[b+29892>>2]|0,c[b+29896>>2]|0)}}while(0);d=b+29696|0;if(c[d>>2]|0?(n=Zh(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29700>>0]|0;c[d>>2]=0}d=b+29708|0;if(c[d>>2]|0){e=b+29704|0;f=Zh(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)gX(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;Qf(d);c[e>>2]=0;n=(c[b+4>>2]|0)+848|0;c[n>>2]=c[n>>2]|2}if((c[b+29916>>2]|0?(o=b+29920|0,yj(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+320>>2]=p}return}function nm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);r=s+32|0;o=s+16|0;k=s+8|0;h=s;d=c[a+28216>>2]|0;n=c[a+24312>>2]|0;j=a+29544|0;i=n+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=d+660|0;b=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[b+568>>2]|0)<=0:0)){p=b+140|0;f=c[p>>2]|0;g=c[d+664>>2]|0;c[p>>2]=(f|0)>(g|0)?f:g}g=n+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;p=8;break}d=c[a+28676+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){p=7;break}if(!e)c[a+28676+(b+-1<<2)>>2]=d;b=b+1|0}if((p|0)==7)if(e)b=0;else p=8;if((p|0)==8)c[a+28676+(b+-1<<2)>>2]=f;e=16-b|0;if((c[(c[n>>2]|0)+88>>2]|0)==3)if((e|0)>1)p=17;else p=16;else{p=c[a+28732>>2]|0;if((p|0)!=-2147483648?!((e|0)>1?1:((c[a+28736>>2]|0)-p|0)<3):0)p=16;else p=17}if((p|0)==16){b=a+4|0;e=1;d=c[b>>2]|0;p=22}else if((p|0)==17){f=a+4|0;d=c[f>>2]|0;if(!b){e=a+28676|0;b=c[e>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;Uf(d,40,145343,h);b=1;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}c[e>>2]=c[g>>2];c[i>>2]=1;h=f}else{b=f;p=22}}if((p|0)==22)if((c[d+140>>2]|0)<(e|0)?(c[j>>2]|0)==0:0){h=(c[d+360>>2]|0)>1?24:40;c[k>>2]=e;Uf(d,h,145362,k);c[(c[b>>2]|0)+140>>2]=e;h=b}else h=b;k=0;while(1){b=a+28604+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if((k|0)>=17){c[o>>2]=145395;c[o+4>>2]=133479;c[o+8>>2]=1337;Uf(0,0,159675,o);Ub()}c[b>>2]=n;b=n+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28604|0;f=c[j>>2]|0;n=f;i=0;b=1;while(1){d=c[a+28604+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;p=(c[d+84>>2]|0)<(c[n+84>>2]|0);n=p?d:n;i=p?b:i;b=b+1|0}b=c[h>>2]|0;e=c[b+140>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28744>>2]=-2147483648}while(0);d=c[n+84>>2]|0;g=a+28744|0;f=(d|0)<(c[g>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=n+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28604+(i<<2)>>2]|0;while(1){if(!e)break;p=b+1|0;e=c[a+28604+(p<<2)>>2]|0;c[a+28604+(b<<2)>>2]=e;b=p}if(f){b=c[h>>2]|0;p=61;break}else{e=c[h>>2]|0;b=e;e=c[e+140>>2]|0;p=47;break}}else p=47;while(0);do if((p|0)==47){if((k|0)<(e|0)){p=61;break}h=a+28740|0;c[h>>2]=n;if((i|0)==0?(q=c[j>>2]|0,(q|0)!=0):0)if((c[(c[q>>2]|0)+84>>2]|0)==0?(c[q+92>>2]|0)==0:0)p=53;else d=-2147483648;else p=53;c[g>>2]=d;f=n+644|0;g=c[f>>2]|0;e=a+29576|0;d=c[e>>2]|0;if(g){d=d|2;c[e>>2]=d}a=d>>>1&1|g;c[f>>2]=a;if(!a){if((c[b+60>>2]&8|0)==0?(c[b+64>>2]&4194304|0)==0:0){c[h>>2]=0;break}a=(c[n>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((p|0)==61){c[r>>2]=f?145406:262540;Uf(b,48,145410,r)}l=s;return}function om(b){b=b|0;var d=0,e=0;b=Zh(b,2,12)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d+12|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));b=c[b>>2]|0}return b|0}function pm(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+D(+b);b=+E(+b);d=a+8|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function qm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;c[d>>2]=N(c[d>>2]|0,c[e+(((b|0)%3|0)<<2)>>2]|0)|0;b=b+1|0}}while(0);l=f;return}function rm(a){a=a|0;var b=0;if((c[a+696>>2]&1|0)!=0?(c[(c[(c[a+28>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+68>>2]|0))if((c[a+700>>2]|0)==0?(c[a+400>>2]|0)!=12:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function sm(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function tm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=145521;c[e+4>>2]=133479;c[e+8>>2]=192;Uf(0,0,159675,e);Ub()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=pn(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+592>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=145538;c[g+4>>2]=133479;c[g+8>>2]=202;Uf(0,0,159675,g);Ub()}e=c[e+40>>2]|0;if(e|0){e=th(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29924|0;e=c[f>>2]|0;if(!e){d=qn(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}f=b+20|0;c[f>>2]=ih(e)|0;e=ih(c[a+29928>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27016>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29932|0;g=a+29936|0;e=0;while(1){if((e|0)>=2){d=0;break a}i=b+28+(e<<2)|0;c[i>>2]=ih(c[f>>2]|0)|0;h=ih(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){Ug(a,b);d=(d|0)<0?d:-12}l=k;return d|0}function um(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=v;g=nh(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=145498;c[f+4>>2]=127077;c[f+8>>2]=410;Uf(0,0,159675,f);Ub()}q=g+4|0;r=a+68|0;s=g+5|0;t=a+72|0;u=g+6|0;o=g+32|0;n=0;while(1){if((n|0)>=(d[q>>0]|0|0))break;f=c[r>>2]|0;if((n+-1|0)>>>0<2){p=0-(0-(c[t>>2]|0)>>(d[u>>0]|0))|0;f=0-(0-f>>(d[s>>0]|0))|0}else p=c[t>>2]|0;j=a+32+(n<<2)|0;k=e+(n<<2)|0;g=0;i=c[a+(n<<2)>>2]|0;while(1){if((g|0)>=(p|0))break;a:do if((c[o>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[k>>2];h=h+1|0}}else iX(i|0,c[k>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[j>>2]|0)|0}n=n+1|0}l=v;return}function vm(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+572>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){wm(a+4|0,b);c[d>>2]=1}iX(c[a+580>>2]|0,127,N(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function wm(a,b){a=a|0;b=b|0;c[a>>2]=17;c[a+484>>2]=2;c[a+488>>2]=3;c[a+492>>2]=4;c[a+496>>2]=5;c[a+500>>2]=6;c[a+504>>2]=7;c[a+508>>2]=8;c[a+512>>2]=9;c[a+52>>2]=10;c[a+56>>2]=11;c[a+68>>2]=12;c[a+72>>2]=13;c[a+76>>2]=14;c[a+80>>2]=15;c[a+292>>2]=16;c[a+296>>2]=17;c[a+316>>2]=18;c[a+320>>2]=19;c[a+4>>2]=2;c[a+8>>2]=6;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function xm(a){a=a|0;var c=0,d=0,e=0,f=0;c=0;d=0;while(1){if((c|0)==64)break;f=b[a+(c<<1)>>1]|0;e=f<<16>>16;c=c+1|0;d=(f<<16>>16>-1?e:0-e|0)+d|0}return d|0}function ym(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function zm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=d[a+1>>0]|0;w=(d[b>>0]|0)-(((d[a>>0]|0)+1+v|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+1+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Am(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Bm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;y=d[a+1>>0]|0;w=d[c+1>>0]|0;x=(d[b>>0]|0)-(((d[a>>0]|0)+2+y+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+2+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Cm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Dm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=d[a+1>>0]|0;o=(d[b>>0]|0)-(((d[a>>0]|0)+1+n|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Em(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Fm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;q=d[a+1>>0]|0;o=d[c+1>>0]|0;p=(d[b>>0]|0)-(((d[a>>0]|0)+2+q+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+2+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Gm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Hm(a,b,c,d,8)|0;f=(Hm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Hm(a,g,b,d,8)|0)+f|0;f=f+(Hm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Hm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;i=l;l=l+256|0;if((l|0)>=(m|0))W(256);h=i;a=0;while(1){if((a|0)==8){a=0;g=0;break}j=N(a,f)|0;r=j+1|0;t=d[e+r>>0]|0;r=d[b+r>>0]|0;k=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;q=k+t-r|0;g=a<<3;r=k-t+r|0;t=j+2|0;k=j+3|0;s=d[e+k>>0]|0;k=d[b+k>>0]|0;t=(d[e+t>>0]|0)-(d[b+t>>0]|0)|0;o=t+s-k|0;k=t-s+k|0;s=j+4|0;t=j+5|0;u=d[e+t>>0]|0;t=d[b+t>>0]|0;s=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;p=s+u-t|0;t=s-u+t|0;u=j+6|0;j=j+7|0;s=d[e+j>>0]|0;j=d[b+j>>0]|0;u=(d[e+u>>0]|0)-(d[b+u>>0]|0)|0;n=u+s-j|0;j=u-s+j|0;s=o+q|0;o=q-o|0;q=k+r|0;k=r-k|0;r=n+p|0;n=p-n|0;p=j+t|0;j=t-j|0;c[h+(g<<2)>>2]=r+s;c[h+((g|4)<<2)>>2]=s-r;c[h+((g|1)<<2)>>2]=p+q;c[h+((g|5)<<2)>>2]=q-p;c[h+((g|2)<<2)>>2]=n+o;c[h+((g|6)<<2)>>2]=o-n;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}while(1){if((g|0)==8)break;y=h+(g<<2)|0;s=c[y>>2]|0;w=h+(g+8<<2)|0;v=c[w>>2]|0;x=v+s|0;v=s-v|0;s=h+(g+16<<2)|0;b=c[s>>2]|0;n=h+(g+24<<2)|0;k=c[n>>2]|0;u=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;p=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+p|0;j=p-j|0;p=h+(g+48<<2)|0;q=c[p>>2]|0;o=h+(g+56<<2)|0;t=c[o>>2]|0;r=t+q|0;t=q-t|0;q=u+x|0;c[y>>2]=q;u=x-u|0;c[s>>2]=u;s=k+v|0;c[w>>2]=s;k=v-k|0;c[n>>2]=k;n=r+e|0;c[b>>2]=n;r=e-r|0;c[p>>2]=r;p=t+j|0;c[f>>2]=p;t=j-t|0;c[o>>2]=t;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=r+u|0;r=u-r|0;u=k+t|0;t=k-t|0;a=((n|0)>-1?n:0-n|0)+a+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)+((t|0)>-1?t:0-t|0)+((u|0)>-1?u:0-u|0)|0;g=g+1|0}l=i;return a|0}function Im(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Jm(a,b,c,d,8)|0;f=(Jm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Jm(a,g,b,d,8)|0)+f|0;f=f+(Jm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Jm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=l;l=l+256|0;if((l|0)>=(m|0))W(256);g=h;a=0;while(1){if((a|0)==8){a=0;e=0;break}i=N(a,f)|0;r=d[b+i>>0]|0;q=d[b+(i+1)>>0]|0;p=q+r|0;e=a<<3;q=r-q|0;r=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;n=j+r|0;j=r-j|0;r=d[b+(i+4)>>0]|0;s=d[b+(i+5)>>0]|0;o=s+r|0;s=r-s|0;r=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+r|0;i=r-i|0;r=n+p|0;n=p-n|0;p=j+q|0;j=q-j|0;q=k+o|0;k=o-k|0;o=i+s|0;i=s-i|0;c[g+(e<<2)>>2]=q+r;c[g+((e|4)<<2)>>2]=r-q;c[g+((e|1)<<2)>>2]=o+p;c[g+((e|5)<<2)>>2]=p-o;c[g+((e|2)<<2)>>2]=k+n;c[g+((e|6)<<2)>>2]=n-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}while(1){if((e|0)==8)break;y=g+(e<<2)|0;q=c[y>>2]|0;w=g+(e+8<<2)|0;v=c[w>>2]|0;x=v+q|0;v=q-v|0;q=g+(e+16<<2)|0;u=c[q>>2]|0;j=g+(e+24<<2)|0;i=c[j>>2]|0;s=i+u|0;i=u-i|0;u=g+(e+32<<2)|0;n=c[u>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;t=f+n|0;f=n-f|0;n=g+(e+48<<2)|0;o=c[n>>2]|0;k=g+(e+56<<2)|0;r=c[k>>2]|0;p=r+o|0;r=o-r|0;o=s+x|0;c[y>>2]=o;s=x-s|0;c[q>>2]=s;q=i+v|0;c[w>>2]=q;i=v-i|0;c[j>>2]=i;j=p+t|0;c[u>>2]=j;p=t-p|0;c[n>>2]=p;n=r+f|0;c[b>>2]=n;r=f-r|0;c[k>>2]=r;k=j+o|0;j=o-j|0;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=i+r|0;r=i-r|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;e=e+1|0}y=(c[g+128>>2]|0)+(c[g>>2]|0)|0;l=h;return a-((y|0)>-1?y:0-y|0)|0}function Km(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Lm(a,b,c,d,8)|0;f=(Lm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Lm(a,g,b,d,8)|0)+f|0;f=f+(Lm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Lm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=f;Ud[c[a+2964>>2]&255](g,b,d,e);Rd[c[a+2032>>2]&31](g);e=Kd[c[a+2372>>2]&31](g)|0;l=f;return e|0}function Mm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Nm(a,b,c,d,8)|0;f=(Nm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Nm(a,g,b,d,8)|0)+f|0;f=f+(Nm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Nm(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Ud[c[a+2964>>2]&255](h,d,e,f);Rd[c[a+2032>>2]&31](h);g=0;a=0;while(1){if((g|0)==64)break;e=b[h+(g<<1)>>1]|0;f=e<<16>>16;f=e<<16>>16>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}l=i;return a|0}function Om(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Pm(a,b,c,d,8)|0;f=(Pm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Pm(a,g,b,d,8)|0)+f|0;f=f+(Pm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Pm(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Ud[c[a+2964>>2]&255](h,d,e,f);g=0;while(1){if((g|0)==8){g=0;a=0;break}w=h+(g<<4)|0;A=b[w>>1]|0;f=h+(g<<4)+14|0;p=b[f>>1]|0;C=p+A|0;v=h+(g<<4)+2|0;z=b[v>>1]|0;a=h+(g<<4)+12|0;y=b[a>>1]|0;B=y+z|0;u=h+(g<<4)+4|0;o=b[u>>1]|0;n=h+(g<<4)+10|0;x=b[n>>1]|0;j=x+o|0;t=h+(g<<4)+6|0;d=b[t>>1]|0;q=h+(g<<4)+8|0;e=b[q>>1]|0;k=e+d|0;s=k+C|0;r=j+B|0;k=C-k|0;j=B-j|0;p=A-p|0;y=z-y|0;x=o-x|0;e=d-e|0;d=(p>>1)+p+y+x|0;o=p-e-((x>>1)+x)|0;p=p-y-(y>>1)+e|0;e=e+(y-x)+(e>>1)|0;b[w>>1]=s+r;b[v>>1]=(e>>>2)+d;b[u>>1]=k+(j>>>1);b[t>>1]=o+(p>>>2);b[q>>1]=s-r;b[n>>1]=p-(o>>>2);b[a>>1]=(k>>>1)-j;b[f>>1]=(d>>>2)-e;g=g+1|0}while(1){if((a|0)==8)break;y=b[h+(a<<1)>>1]|0;s=b[h+112+(a<<1)>>1]|0;p=s+y|0;w=b[h+16+(a<<1)>>1]|0;C=b[h+96+(a<<1)>>1]|0;q=C+w|0;A=b[h+32+(a<<1)>>1]|0;v=b[h+80+(a<<1)>>1]|0;z=v+A|0;u=b[h+48+(a<<1)>>1]|0;B=b[h+64+(a<<1)>>1]|0;t=B+u|0;r=t+p|0;x=z+q|0;t=p-t|0;z=q-z|0;s=y-s|0;C=w-C|0;v=A-v|0;B=u-B|0;u=(s>>1)+s+C+v|0;A=s-B-((v>>1)+v)|0;s=s-C-(C>>1)+B|0;B=B+(C-v)+(B>>1)|0;v=r+x|0;C=(B>>2)+u|0;w=t+(z>>1)|0;y=A+(s>>2)|0;x=r-x|0;A=s-(A>>2)|0;z=(t>>1)-z|0;B=(u>>2)-B|0;g=((v|0)>-1?v:0-v|0)+g+((w|0)>-1?w:0-w|0)+((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)+((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)+((B|0)>-1?B:0-B|0)+((C|0)>-1?C:0-C|0)|0;a=a+1|0}l=i;return g|0}function Qm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Rm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Sm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[103876+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[103876+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[103876+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function Tm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Um(a,b,c,d,8)|0;f=(Um(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Um(a,g,b,d,8)|0)+f|0;f=f+(Um(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Um(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+272|0;if((l|0)>=(m|0))W(272);i=k;h=k+256|0;j=i+128|0;c[a+4304>>2]=0;Ud[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;c[a+16>>2]=Od[c[a+6244>>2]&63](a,i,0,c[g>>2]|0,h)|0;Ud[c[a+6236>>2]&255](a,i,0,c[g>>2]|0);mn(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(N(a,a)|0)+g|0;d=d+1|0}l=k;return g|0}function Vm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Wm(a,b,c,d,8)|0;f=(Wm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Wm(a,g,b,d,8)|0)+f|0;f=f+(Wm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Wm(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+272|0;if((l|0)>=(m|0))W(272);r=u+128|0;s=u+64|0;t=u;p=u+256|0;q=c[a+4908>>2]|0;ln(s,e,g);ln(t,f,g);Ud[c[a+2960>>2]&255](r,s,t,8);k=a+1920|0;n=Od[c[a+6244>>2]&63](a,r,0,c[k>>2]|0,p)|0;c[a+16>>2]=n;o=(c[a+4304>>2]|0)==0;if(o){g=0;e=a+4932|0;f=a+4928|0;h=0}else{g=1;e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[r>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((n|0)>=(g|0)){f=0;while(1){c[p>>2]=g;if((g|0)>=(n|0))break;e=b[r+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=q;f=0;h=e+h|0}g=g+1|0}e=d[a+204+n>>0]|0;c[p>>2]=e;e=(b[r+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+q|0;break}}while(0);do if((n|0)>-1)if(o){Ud[c[a+6236>>2]&255](a,r,0,c[k>>2]|0);break}else{Ud[c[a+6232>>2]&255](a,r,0,c[k>>2]|0);break}while(0);Td[c[a+2300>>2]&1023](t,8,r);a=Od[c[a+2404>>2]&63](0,t,s,8,8)|0;t=c[k>>2]|0;a=((N(N(h*109|0,t)|0,t)|0)+64>>7)+a|0;l=u;return a|0}function Xm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Ym(a,b,c,d,8)|0;f=(Ym(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Ym(a,g,b,d,8)|0)+f|0;f=f+(Ym(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Ym(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+144|0;if((l|0)>=(m|0))W(144);n=q;o=q+128|0;p=c[a+4908>>2]|0;Ud[c[a+2964>>2]&255](n,e,f,g);k=Od[c[a+6244>>2]&63](a,n,0,c[a+1920>>2]|0,o)|0;c[a+16>>2]=k;if(!(c[a+4304>>2]|0)){e=a+4932|0;f=a+4928|0;h=0;g=0}else{e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[n>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[o>>2]=g;if((g|0)>=(k|0))break;e=b[n+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=p;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[o>>2]=e;e=(b[n+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+p|0;break}}while(0);l=q;return h|0}function Zm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function _m(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function $m(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function an(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function bn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function cn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function dn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function en(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function fn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function gn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function hn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(kn(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function jn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(kn(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function kn(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function ln(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function mn(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8){b=0;break}nn(a+(b<<3<<1)|0);b=b+1|0}while(1){if((b|0)==8)break;on(a+(b<<1)|0);b=b+1|0}return}function nn(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(N(e,-4520)|0)+(f*19266|0)|0;i=(N(e,-22725)|0)+(f*12873|0)|0;e=(N(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=N(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(N(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(N(y,-22725)|0)+k+(N(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function on(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;j=b[s>>1]|0;d=n+(N(j,-8867)|0)|0;r=n+(N(j,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(N(q,-4520)|0)+(c*19266|0)|0;g=(N(q,-22725)|0)+(c*12873|0)|0;c=(N(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;i=N(h,-16383)|0;h=m?0:h*16383|0;l=n+(j*21407|0)+h|0;i=m?0:i;j=n+(j*8867|0)+i|0;i=d+i|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(N(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=i;g=l}else{g=f<<16>>16;h=(N(g,-8867)|0)+h|0;k=(g*21407|0)+i|0;j=(N(g,-21407)|0)+j|0;g=(g*8867|0)+l|0}i=a+112|0;f=b[i>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(N(l,-22725)|0)+c|0;e=(N(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+j>>20;b[s>>1]=d+k>>20;b[p>>1]=c+h>>20;b[q>>1]=h-c>>20;b[r>>1]=k-d>>20;b[n>>1]=j-e>>20;b[i>>1]=g-f>>20;return}function pn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=rn(a,b,c)|0;if((b|0)<0)Uf(a,16,145568,d);l=d;return b|0}function qn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+27016|0;g=c[i>>2]|0;f=c[a+27008>>2]|0;e=(N(f+1|0,g)|0)+1|0;h=N(f<<4,c[a+27012>>2]<<2|1)|0;b=a+29924|0;c[b>>2]=uh(e+g|0,15)|0;d=a+29928|0;c[d>>2]=uh((c[i>>2]|0)+e<<2,15)|0;e=a+29932|0;c[e>>2]=uh(h+16|0,15)|0;f=uh(N(g<<2,f)|0,15)|0;a=a+29936|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{Wg(b);Wg(d);Wg(e);Wg(a);a=-12}return a|0}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;e=a+28|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;a:do if(!(c[a+696>>2]&1))e=sn(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+68>>2]|0)){if(c[a+700>>2]|0)break;if((c[a+400>>2]|0)==12)break}Uf(a,16,145596,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=yh(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}kX((c[i>>2]|0)+8|0)|0;g=a+700|0;if((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0){f=i+184|0;kX(f|0)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;jX(e|0)|0;while(1){if((c[h>>2]|0)==1)break;wc(e|0,f|0)|0}e=c[i+296>>2]|0;lX(f|0)|0}else e=sn(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0)?(c[(c[a+12>>2]|0)+68>>2]|0)==0:0)Ji(a);if(e|0)zg(b+12|0);lX((c[i>>2]|0)+8|0)|0}while(0);l=j;return e|0}function sn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=tn(a,b,d)|0;if((d|0)<0){Uf(a,16,145658,e);c[b+72>>2]=0;c[b+68>>2]=0}l=e;return d|0}function tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=o+8|0;e=o;j=c[a+592>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+92|0;g=a+96|0;f=a+872|0;if((Wh(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+112>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{q=c[h>>2]|0;h=c[a+680>>2]|0;p=0-(0-(c[a+100>>2]|0)>>h)|0;c[f>>2]=(q|0)>(p|0)?q:p;g=c[g>>2]|0;h=0-(0-(c[a+104>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;n=13;break}Uf(a,16,145723,i);e=-22;break}Uf(a,16,145679,e);e=-22}else{f=1;n=13}while(0);if((n|0)==13){e=un(a,b)|0;if((e|0)>=0){if(j){e=c[j+20>>2]|0;if(!e)n=18;else e=Ld[e&15](a,b)|0}else{c[a+768>>2]=c[a+112>>2];n=18}if((n|0)==18){e=Md[c[a+400>>2]&15](a,b,d)|0;if((e|0)>=0){vn(a,b);e=wn(b)|0}}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+116>>2]&16|0)==0:0){c[b+68>>2]=c[a+92>>2];c[b+72>>2]=c[a+96>>2]}if((e|0)<0)_g(b)}}l=o;return e|0}function un(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+24|0;k=n+16|0;j=n+8|0;i=n;g=c[(c[a+28>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=oi(g,c[104900+(d<<3)>>2]|0,h)|0;if(e|0){f=Zh(b,c[104900+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}gX(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){yn(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+584|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+316>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+320>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+324>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+328>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+332>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+112>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+188|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a};c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((zn(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;Uf(a,24,172255,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+344>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+352>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+376|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+348>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;Uf(a,16,145887,k);d=-38;break a}d=Uh(d,e)|0;if((d|0)==(c[a+348>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{Uf(a,16,145850,j);d=-22;break a}}else d=c[a+348>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);l=n;return d|0}function vn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=Nh(c[d>>2]|0)|0;d=nh(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=145766;c[g+4>>2]=124617;c[g+8>>2]=1782;Uf(0,0,159675,g);Ub()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)Uf(a,16,145781,i);c[f>>2]=0;d=d+1|0}}while(0);l=j;return}function wn(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=a+400|0;zg(b);a=Lg(20)|0;c[d>>2]=a;do if(a){a=kh(a,20,12,0,1)|0;if(!a){Qf(d);a=-12;break}else{c[b>>2]=a;a=0;break}}else a=-12;while(0);l=e;return a|0}function xn(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=b;a=c[b+8>>2]|0;if(a|0)Rd[a&31](c[b+4>>2]|0);a=c[b+16>>2]|0;if(a|0)Rd[a&31](c[b+12>>2]|0);Qf(d);l=e;return}function yn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;a=oi(a,13,e)|0;Bn(a,c[e>>2]|0,b+344|0)|0;l=d;return}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0){d=(f|0)<(e|0);if((f|0)==0|(f|0)==(e|0))d=0;else{g=d?e:f;f=d?f:e;d=An(d?a:b,0,f,((f|0)<0)<<31>>31,g,((g|0)<0)<<31>>31,0)|0;f=y;d=(f|0)>0|(f|0)==0&d>>>0>0?0:-22}}else d=-22;return d|0} +function An(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=TW(a|0,b|0,1,-2147483648)|0;i=y;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=UW(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=An(j,y,c,d,e,f,g>>>1&1^g)|0;f=UW(0,0,f|0,y|0)|0;return f|0}if((g|0)==5){g=XW(e|0,f|0,2,0)|0;h=y}else{h=(g&1|0)==0;g=TW(e|0,f|0,-1,-1)|0;g=h?0:g;h=h?0:y}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){l=aX(c|0,d|0,32)|0;k=y;j=ZW(l|0,k|0,a|0,0)|0;d=y;i=ZW(c|0,0,b|0,0)|0;i=TW(j|0,d|0,i|0,y|0)|0;d=y;c=ZW(c|0,0,a|0,0)|0;c=TW(0,i|0,c|0,y|0)|0;j=y;a=ZW(l|0,k|0,b|0,0)|0;a=TW(d|0,0,a|0,y|0)|0;a=TW(a|0,y|0,(j>>>0>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=y;j=TW(g|0,h|0,c|0,j|0)|0;c=y;b=TW(a|0,b|0,(c>>>0>>0|(c|0)==(h|0)&j>>>0>>0)&1|0,0)|0;a=63;g=y;h=d;while(1){if((a|0)<=-1)break;d=bX(j|0,c|0,a|0)|0;n=cX(b|0,g|0,1)|0;m=y;n=d&1|n;d=cX(i|0,h|0,1)|0;l=y;k=m>>>0>>0|(m|0)==(f|0)&n>>>0>>0;m=UW(n|0,m|0,(k?0:e)|0,(k?0:f)|0)|0;a=a+-1|0;b=m;g=y;i=d|(k^1)&1;h=l}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=ZW(c|0,d|0,a|0,b|0)|0;a=TW(g|0,h|0,a|0,y|0)|0;a=XW(a|0,y|0,e|0,f|0)|0;b=y;break}i=XW(a|0,b|0,e|0,f|0)|0;j=y;a=_W(a|0,b|0,e|0,f|0)|0;a=ZW(a|0,y|0,c|0,d|0)|0;a=TW(a|0,y|0,g|0,h|0)|0;a=XW(a|0,y|0,e|0,f|0)|0;b=y;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=UW(-1,2147483647,a|0,b|0)|0,n=XW(n|0,y|0,c|0,d|0)|0,m=y,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=ZW(i|0,j|0,c|0,d|0)|0;a=TW(a|0,b|0,n|0,y|0)|0;b=y}else{b=-2147483648;a=0}while(0);y=b;return a|0}function Bn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(BU(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=ai(d,e,c,0)|0;if((b|0)<0)break a;e=c+(BU(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function Cn(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function Dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;h=j+8|0;d=c[a+28216>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?75:68;g=23;break a}else{e=h+4|0;d=(d|0)==2?72:62;g=23;break a}}case 10:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?77:70;g=23;break a}else{e=h+4|0;d=(d|0)==2?66:64;g=23;break a}}case 12:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?137:133;g=23;break a}else{e=h+4|0;d=(d|0)==2?129:125;g=23;break a}}case 14:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?139:135;g=23;break a}else{e=h+4|0;d=(d|0)==2?131:127;g=23;break a}}case 8:{e=c[d+12>>2]|0;if((e|0)==3){d=c[a+4>>2]|0;if(!(c[d+324>>2]|0)){e=h+4|0;d=73;g=23;break a}else{e=h+4|0;d=(c[d+328>>2]|0)==2?14:5;g=23;break a}}d=a+4|0;f=c[d>>2]|0;if((e|0)==2){e=h+4|0;d=(c[f+328>>2]|0)==2?13:4;g=23;break a}e=c[(c[f+12>>2]|0)+24>>2]|0;if(!e){e=h+4|0;d=(c[f+328>>2]|0)==2?12:0;g=23}else{i=e;e=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;Uf(d,16,146064,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=d;i=h;d=a+4|0;g=24}b:do if((g|0)==24){c[e>>2]=-1;g=c[d>>2]|0;h=g+112|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=MM(g,i)|0}while(0);l=j;return d|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=ZW(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=y;e=c[b>>2]|0;b=c[a+4>>2]|0;a=ZW(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=UW(h|0,d|0,a|0,y|0)|0;d=y;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=aX(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;b=b|1}return b|0}function Fn(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function Gn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=q+16|0;h=q;f=c[a+28216>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;o=c[a+25668>>2]|0;r=d+b|0;k=o-r|0;p=c[a+25672>>2]|0;g=f+e|0;j=p-g|0;if(o>>>0<=r>>>0){c[h>>2]=146622;c[h+4>>2]=133479;c[h+8>>2]=878;Uf(0,0,159675,h);Ub()}if(p>>>0<=g>>>0){c[i>>2]=146676;c[i+4>>2]=133479;c[i+8>>2]=879;Uf(0,0,159675,i);Ub()}g=a+29664|0;i=c[g>>2]|0;h=a+29668|0;if((((i|0)>0?(n=c[h>>2]|0,(e|d|0)==0&(n|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((n|0)>(j|0)|((i|0)>(k|0)|(n+15^j+15)>>>0>15)):0){h=n;g=i;f=p-n|0;e=0;d=0;b=o-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}r=c[a+4>>2]|0;c[r+100>>2]=o;c[r+104>>2]=p;c[r+92>>2]=g;c[r+96>>2]=h;c[a+25720>>2]=b;c[a+25716>>2]=d;c[a+25724>>2]=e;c[a+25728>>2]=f;l=q;return}function Hn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=p+32|0;k=p+24|0;g=p+16|0;f=p+8|0;e=c[a+28216>>2]|0;n=a+4|0;i=c[n>>2]|0;h=e+100|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];In(i,j)|0;Jn(c[(c[n>>2]|0)+112>>2]|0,a+25676|0,a+25680|0)|0;if(c[e+132>>2]|0){j=cX(c[e+140>>2]|0,0,(c[a+25704>>2]|0)>>>0<44|0)|0;i=c[n>>2]|0;Kn(i+764|0,i+760|0,N(c[i+84>>2]|0,c[e+136>>2]|0)|0,0,j,y,1073741824,0)|0}Vg(a);c[a+26384>>2]=0;c[a+29564>>2]=1;Ln(a);b=Mn(a)|0;a:do if((b|0)<0){Uf(c[n>>2]|0,16,146037,p);o=15}else{b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[(c[n>>2]|0)+676>>2]=d;c[a+29596>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29592>>2]=i;c[a+25664>>2]=(d|0)>8&1;c[a+27048>>2]=i;c[a+27044>>2]=d;Nn(a+16|0,d,i);On(a+152|0,c[e+1188>>2]|0);Pn(a+184|0,c[b>>2]|0);Qn(a+25736|0,c[(c[n>>2]|0)+16>>2]|0,c[b>>2]|0,c[j>>2]|0);Rn(a+8|0,c[b>>2]|0);if(!(c[(c[n>>2]|0)+696>>2]&2)){b=Sn(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}Uf(c[n>>2]|0,16,146090,g);o=15;break a}e=a+25632|0;f=a+25628|0;g=a+25732|0;h=a+27016|0;i=a+26400|0;j=a+26404|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}q=c[f>>2]|0;b=q+(d*34768|0)|0;c[b>>2]=a;r=N(c[h>>2]|0,d<<4)|0;c[q+(d*34768|0)+21704>>2]=(c[g>>2]|0)+r;c[q+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(r<<1);c[q+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(r<<1);b=Sn(a,b)|0;if((b|0)<0)break;else d=d+1|0}Uf(c[n>>2]|0,16,146090,k);o=15;break a}while(0);b=c[n>>2]|0;c[f>>2]=d;Uf(b,16,146064,f);b=-1094995529;o=15}while(0);if((o|0)==15){Vg(a);d=0}c[a+25692>>2]=d;l=p;return b|0}function In(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=f+8|0;e=f;h=c[a+92>>2]|0;g=c[a+96>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=zn(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;Uf(a,24,146593,e);c[a+188>>2]=0;c[a+192>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+188|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}l=f;return d|0}function Jn(a,b,e){a=a|0;b=b|0;e=e|0;a=nh(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function Kn(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0;x=g^e;k=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=UW(0,0,d|0,e|0)|0;j=k?d:j;k=k?e:y;m=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=UW(0,0,f|0,g|0)|0;l=m?f:l;m=m?g:y;n=LM(j,k,l,m)|0;o=y;if(!((n|0)==0&(o|0)==0)){d=XW(j|0,k|0,n|0,o|0)|0;e=y;f=XW(l|0,m|0,n|0,o|0)|0;g=y}w=(e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0;v=(g|0)>(i|0)|(g|0)==(i|0)&f>>>0>h>>>0;j=v|w;k=j?1:d;j=j?0:f;a:do if(!((f|0)==0&(g|0)==0|(v|w)^1)){w=0;v=1;while(1){m=XW(d|0,e|0,f|0,g|0)|0;l=y;n=ZW(m|0,l|0,f|0,g|0)|0;n=UW(d|0,e|0,n|0,y|0)|0;o=y;r=((k|0)<0)<<31>>31;p=ZW(m|0,l|0,k|0,r|0)|0;s=((w|0)<0)<<31>>31;p=TW(p|0,y|0,w|0,s|0)|0;A=y;t=((j|0)<0)<<31>>31;q=ZW(m|0,l|0,j|0,t|0)|0;u=((v|0)<0)<<31>>31;q=TW(q|0,y|0,v|0,u|0)|0;z=y;if((A|0)>(i|0)|(A|0)==(i|0)&p>>>0>h>>>0|((z|0)>(i|0)|(z|0)==(i|0)&q>>>0>h>>>0))break;if((n|0)==0&(o|0)==0){k=p;j=q;f=0;g=0;break a}else{e=g;d=f;v=j;w=k;k=p;j=q;f=n;g=o}}if(k){m=UW(h|0,i|0,w|0,s|0)|0;m=XW(m|0,y|0,k|0,r|0)|0;l=y}if(j){i=UW(h|0,i|0,v|0,u|0)|0;i=XW(i|0,y|0,j|0,t|0)|0;A=y;z=l>>>0>A>>>0|(l|0)==(A|0)&m>>>0>i>>>0;m=z?i:m;l=z?A:l}z=cX(j|0,t|0,1)|0;z=ZW(z|0,y|0,m|0,l|0)|0;z=TW(z|0,y|0,v|0,u|0)|0;z=ZW(z|0,y|0,f|0,g|0)|0;h=y;A=ZW(d|0,e|0,j|0,t|0)|0;i=y;if(h>>>0>i>>>0|(h|0)==(i|0)&z>>>0>A>>>0){j=ZW(m|0,l|0,j|0,t|0)|0;j=TW(j|0,y|0,v|0,u|0)|0;k=ZW(m|0,l|0,k|0,r|0)|0;k=TW(k|0,y|0,w|0,s|0)|0}}else{f=0;g=0}while(0);c[a>>2]=(x|0)<0?0-k|0:k;c[b>>2]=j;return (f|0)==0&(g|0)==0&1|0}function Ln(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16){e=0;break}g=d[131571+e>>0]|0;a[b+26428+e>>0]=g<<2&12|g>>>2;g=d[146317+e>>0]|0;a[b+26572+e>>0]=g<<2&12|g>>>2;e=e+1|0}while(1){if((e|0)==64)break;g=d[131588+e>>0]|0;a[b+26444+e>>0]=g<<3&56|g>>>3;g=d[146334+e>>0]|0;a[b+26508+e>>0]=g<<3&56|g>>>3;g=d[146399+e>>0]|0;a[b+26588+e>>0]=g<<3&56|g>>>3;g=d[146464+e>>0]|0;a[b+26652+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26716|0;if(!(c[(c[b+28216>>2]|0)+16>>2]|0)){f=b+26428|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26732|0;f=b+26444|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26796|0;f=b+26508|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26860|0;f=b+26572|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26876|0;f=b+26588|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26940|0;f=b+26652|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{f=131571;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26732|0;f=131588;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26796|0;f=146334;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26860|0;f=146317;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26876|0;f=146399;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26940|0;f=146464;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0))}return}function Mn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+96|0;if((l|0)>=(m|0))W(96);t=x+80|0;s=x+72|0;r=x+64|0;q=x+56|0;n=x+48|0;i=x+40|0;g=x+32|0;f=x+24|0;e=x+16|0;d=x+8|0;u=a+27016|0;h=c[u>>2]|0;v=a+27008|0;p=N((c[v>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=N((b|0)>1?b:1,h<<1)|0;b=hh(h,8)|0;c[a+25732>>2]=b;a:do if(!b){Uf(c[a+4>>2]|0,16,146114,x);w=29}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=Lg(p*48|0)|0;c[a+25972>>2]=k;o=(p|0)==0;if(!(o|(k|0)!=0)){Uf(c[a+4>>2]|0,16,146114,d);w=29;break}d=Lg((c[u>>2]|0)+p<<1)|0;k=a+28220|0;c[k>>2]=d;if((d|0)==0?(c[u>>2]|0)+p&2147483647|0:0){Uf(c[a+4>>2]|0,16,146114,e);w=29;break}d=p<<1;e=Lg(d)|0;c[a+26392>>2]=e;if(!((d|0)==0|(e|0)!=0)){Uf(c[a+4>>2]|0,16,146114,f);w=29;break}f=Lg(p)|0;c[a+26396>>2]=f;if(!(o|(f|0)!=0)){Uf(c[a+4>>2]|0,16,146114,g);w=29;break}g=hh(h,16)|0;d=a+26400|0;c[d>>2]=g;if(!g){Uf(c[a+4>>2]|0,16,146114,i);w=29;break}i=hh(h,16)|0;b=a+26404|0;c[b>>2]=i;if(!i){Uf(c[a+4>>2]|0,16,146114,n);w=29;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=p<<2;n=Lg(b)|0;c[a+26408>>2]=n;d=(b|0)==0;if(!(d|(n|0)!=0)){Uf(c[a+4>>2]|0,16,146114,q);w=29;break}q=Lg(p)|0;c[a+26388>>2]=q;if(!(o|(q|0)!=0)){Uf(c[a+4>>2]|0,16,146114,r);w=29;break}iX(c[k>>2]|0,-1,(c[u>>2]|0)+p<<1|0)|0;c[a+26372>>2]=(c[k>>2]|0)+(c[u>>2]<<1<<1)+2;r=Lg(b)|0;h=a+26360|0;c[h>>2]=r;if(!(d|(r|0)!=0)){Uf(c[a+4>>2]|0,16,146114,s);w=29;break}g=Lg(b)|0;c[a+26364>>2]=g;if(!(d|(g|0)!=0)){Uf(c[a+4>>2]|0,16,146114,t);w=29;break}f=a+27012|0;e=a+26368|0;d=0;while(1){if((d|0)<(c[v>>2]|0))b=0;else{b=0;break a}while(1){if((b|0)>=(c[f>>2]|0))break;a=(N(c[u>>2]|0,d)|0)+b|0;t=(N(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=t;c[g+(a<<2)>>2]=((a|0)%(c[u>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((w|0)==29){Vg(a);b=-12}l=x;return b|0}function Nn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?10:9;c[a+124>>2]=h?12:11;a:do switch(b|0){case 9:{c[a+84>>2]=13;c[a+88>>2]=14;c[a+92>>2]=15;c[a+96>>2]=16;c[a+100>>2]=4;c[a+104>>2]=5;e=(d|0)<2;c[a+108>>2]=e?7:6;c[a+112>>2]=8;c[a+116>>2]=17;c[a+120>>2]=e?14:13;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=9;c[a+36>>2]=10;c[a+40>>2]=11;c[a+44>>2]=8;c[a+48>>2]=9;c[a+52>>2]=10;c[a+56>>2]=12;c[a+60>>2]=e?14:13;c[a+64>>2]=e?16:15;c[a+68>>2]=11;c[a+72>>2]=e?13:12;e=e?15:14;break}case 10:{c[a+84>>2]=18;c[a+88>>2]=19;c[a+92>>2]=20;c[a+96>>2]=21;c[a+100>>2]=17;c[a+104>>2]=18;e=(d|0)<2;c[a+108>>2]=e?20:19;c[a+112>>2]=21;c[a+116>>2]=22;c[a+120>>2]=e?16:15;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=22;c[a+36>>2]=23;c[a+40>>2]=24;c[a+44>>2]=16;c[a+48>>2]=17;c[a+52>>2]=18;c[a+56>>2]=25;c[a+60>>2]=e?27:26;c[a+64>>2]=e?29:28;c[a+68>>2]=19;c[a+72>>2]=e?21:20;e=e?23:22;break}case 12:{c[a+84>>2]=23;c[a+88>>2]=24;c[a+92>>2]=25;c[a+96>>2]=26;c[a+100>>2]=30;c[a+104>>2]=31;e=(d|0)<2;c[a+108>>2]=e?33:32;c[a+112>>2]=34;c[a+116>>2]=27;c[a+120>>2]=e?18:17;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=35;c[a+36>>2]=36;c[a+40>>2]=37;c[a+44>>2]=24;c[a+48>>2]=25;c[a+52>>2]=26;c[a+56>>2]=38;c[a+60>>2]=e?40:39;c[a+64>>2]=e?42:41;c[a+68>>2]=27;c[a+72>>2]=e?29:28;e=e?31:30;break}case 14:{c[a+84>>2]=28;c[a+88>>2]=29;c[a+92>>2]=30;c[a+96>>2]=31;c[a+100>>2]=43;c[a+104>>2]=44;e=(d|0)<2;c[a+108>>2]=e?46:45;c[a+112>>2]=47;c[a+116>>2]=32;c[a+120>>2]=e?20:19;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=48;c[a+36>>2]=49;c[a+40>>2]=50;c[a+44>>2]=32;c[a+48>>2]=33;c[a+52>>2]=34;c[a+56>>2]=51;c[a+60>>2]=e?53:52;c[a+64>>2]=e?55:54;c[a+68>>2]=35;c[a+72>>2]=e?37:36;e=e?39:38;break}default:if((b|0)<9){c[a+84>>2]=33;c[a+88>>2]=34;c[a+92>>2]=35;c[a+96>>2]=36;c[a+100>>2]=56;c[a+104>>2]=57;e=(d|0)<2;c[a+108>>2]=e?59:58;c[a+112>>2]=60;c[a+116>>2]=37;c[a+120>>2]=e?22:21;c[a>>2]=21;c[a+4>>2]=22;c[a+8>>2]=23;c[a+12>>2]=24;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=61;c[a+36>>2]=62;c[a+40>>2]=63;c[a+44>>2]=40;c[a+48>>2]=41;c[a+52>>2]=42;c[a+56>>2]=64;c[a+60>>2]=e?66:65;c[a+64>>2]=e?68:67;c[a+68>>2]=43;c[a+72>>2]=e?45:44;e=e?47:46;break a}else{c[f>>2]=146226;c[f+4>>2]=146239;c[f+8>>2]=150;Uf(0,0,159675,f);Ub()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=8;l=g;return}function On(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?26:25;c[a+4>>2]=b?28:27;c[a+8>>2]=b?30:29;c[a+12>>2]=b?32:31;c[a+16>>2]=b?34:33;c[a+20>>2]=b?36:35;c[a+24>>2]=b?38:37;c[a+28>>2]=b?40:39;return}function Pn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;switch(b|0){case 9:{b=102;d=106;e=110;f=114;g=103;h=107;i=111;j=115;k=104;l=108;m=112;n=116;o=105;p=109;q=113;r=117;s=134;t=138;u=142;v=146;w=135;x=139;y=143;z=147;A=136;B=140;C=144;D=148;E=137;F=141;G=145;H=149;I=118;J=122;K=126;L=130;M=119;N=123;O=127;P=131;Q=120;R=124;S=128;T=132;U=121;V=125;W=129;X=133;Y=38;Z=42;_=46;$=50;aa=39;ba=43;ca=47;da=51;ea=40;fa=44;ga=48;ha=52;ia=41;ja=45;ka=49;la=53;ma=86;na=90;oa=94;pa=98;qa=87;ra=91;sa=95;ta=99;ua=88;va=92;wa=96;xa=100;ya=89;za=93;Aa=97;Ba=101;Ca=70;Da=74;Ea=78;Fa=82;Ga=71;Ha=75;Ia=79;Ja=83;Ka=72;La=76;Ma=80;Na=84;Oa=73;Pa=77;Qa=81;Ra=85;Sa=54;Ta=58;Ua=62;Va=66;Wa=55;Xa=59;Ya=63;Za=67;_a=56;$a=60;ab=64;bb=68;cb=57;db=61;eb=65;fb=69;break}case 10:{b=326;d=330;e=334;f=338;g=327;h=331;i=335;j=339;k=328;l=332;m=336;n=340;o=329;p=333;q=337;r=341;s=358;t=362;u=366;v=370;w=359;x=363;y=367;z=371;A=360;B=364;C=368;D=372;E=361;F=365;G=369;H=373;I=342;J=346;K=350;L=354;M=343;N=347;O=351;P=355;Q=344;R=348;S=352;T=356;U=345;V=349;W=353;X=357;Y=262;Z=266;_=270;$=274;aa=263;ba=267;ca=271;da=275;ea=264;fa=268;ga=272;ha=276;ia=265;ja=269;ka=273;la=277;ma=310;na=314;oa=318;pa=322;qa=311;ra=315;sa=319;ta=323;ua=312;va=316;wa=320;xa=324;ya=313;za=317;Aa=321;Ba=325;Ca=294;Da=298;Ea=302;Fa=306;Ga=295;Ha=299;Ia=303;Ja=307;Ka=296;La=300;Ma=304;Na=308;Oa=297;Pa=301;Qa=305;Ra=309;Sa=278;Ta=282;Ua=286;Va=290;Wa=279;Xa=283;Ya=287;Za=291;_a=280;$a=284;ab=288;bb=292;cb=281;db=285;eb=289;fb=293;break}case 12:{b=438;d=442;e=446;f=450;g=439;h=443;i=447;j=451;k=440;l=444;m=448;n=452;o=441;p=445;q=449;r=453;s=470;t=474;u=478;v=482;w=471;x=475;y=479;z=483;A=472;B=476;C=480;D=484;E=473;F=477;G=481;H=485;I=454;J=458;K=462;L=466;M=455;N=459;O=463;P=467;Q=456;R=460;S=464;T=468;U=457;V=461;W=465;X=469;Y=374;Z=378;_=382;$=386;aa=375;ba=379;ca=383;da=387;ea=376;fa=380;ga=384;ha=388;ia=377;ja=381;ka=385;la=389;ma=422;na=426;oa=430;pa=434;qa=423;ra=427;sa=431;ta=435;ua=424;va=428;wa=432;xa=436;ya=425;za=429;Aa=433;Ba=437;Ca=406;Da=410;Ea=414;Fa=418;Ga=407;Ha=411;Ia=415;Ja=419;Ka=408;La=412;Ma=416;Na=420;Oa=409;Pa=413;Qa=417;Ra=421;Sa=390;Ta=394;Ua=398;Va=402;Wa=391;Xa=395;Ya=399;Za=403;_a=392;$a=396;ab=400;bb=404;cb=393;db=397;eb=401;fb=405;break}case 14:{b=550;d=554;e=558;f=562;g=551;h=555;i=559;j=563;k=552;l=556;m=560;n=564;o=553;p=557;q=561;r=565;s=582;t=586;u=590;v=594;w=583;x=587;y=591;z=595;A=584;B=588;C=592;D=596;E=585;F=589;G=593;H=597;I=566;J=570;K=574;L=578;M=567;N=571;O=575;P=579;Q=568;R=572;S=576;T=580;U=569;V=573;W=577;X=581;Y=486;Z=490;_=494;$=498;aa=487;ba=491;ca=495;da=499;ea=488;fa=492;ga=496;ha=500;ia=489;ja=493;ka=497;la=501;ma=534;na=538;oa=542;pa=546;qa=535;ra=539;sa=543;ta=547;ua=536;va=540;wa=544;xa=548;ya=537;za=541;Aa=545;Ba=549;Ca=518;Da=522;Ea=526;Fa=530;Ga=519;Ha=523;Ia=527;Ja=531;Ka=520;La=524;Ma=528;Na=532;Oa=521;Pa=525;Qa=529;Ra=533;Sa=502;Ta=506;Ua=510;Va=514;Wa=503;Xa=507;Ya=511;Za=515;_a=504;$a=508;ab=512;bb=516;cb=505;db=509;eb=513;fb=517;break}default:{b=214;d=218;e=222;f=226;g=215;h=219;i=223;j=227;k=216;l=220;m=224;n=228;o=217;p=221;q=225;r=229;s=246;t=250;u=254;v=258;w=247;x=251;y=255;z=259;A=248;B=252;C=256;D=260;E=249;F=253;G=257;H=261;I=230;J=234;K=238;L=242;M=231;N=235;O=239;P=243;Q=232;R=236;S=240;T=244;U=233;V=237;W=241;X=245;Y=150;Z=154;_=158;$=162;aa=151;ba=155;ca=159;da=163;ea=152;fa=156;ga=160;ha=164;ia=153;ja=157;ka=161;la=165;ma=198;na=202;oa=206;pa=210;qa=199;ra=203;sa=207;ta=211;ua=200;va=204;wa=208;xa=212;ya=201;za=205;Aa=209;Ba=213;Ca=182;Da=186;Ea=190;Fa=194;Ga=183;Ha=187;Ia=191;Ja=195;Ka=184;La=188;Ma=192;Na=196;Oa=185;Pa=189;Qa=193;Ra=197;Sa=166;Ta=170;Ua=174;Va=178;Wa=167;Xa=171;Ya=175;Za=179;_a=168;$a=172;ab=176;bb=180;cb=169;db=173;eb=177;fb=181}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function Qn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;switch(d|0){case 9:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=612;g=611}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=598;c[a+12>>2]=(b|0)==23?600:599;c[a+16>>2]=601;c[a+20>>2]=602;c[a+24>>2]=603;c[a+28>>2]=d?605:604;c[a+32>>2]=606;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=609;c[a+52>>2]=610;c[a+40>>2]=611;d=14;f=612;break}default:{c[d>>2]=607;d=10;f=616}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=617;i=10}}else{c[a>>2]=611;c[a+4>>2]=612;c[a+8>>2]=598;c[a+12>>2]=613;c[a+16>>2]=601;c[a+20>>2]=602;c[a+24>>2]=603;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=607;c[a+40>>2]=616;c[a+44>>2]=617;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=10}if((i|0)==10)c[a+(d<<2)>>2]=f;c[a+60>>2]=48;c[a+64>>2]=49;c[a+68>>2]=50;c[a+72>>2]=51;c[a+76>>2]=52;c[a+80>>2]=53;c[a+84>>2]=54;c[a+88>>2]=55;c[a+92>>2]=56;c[a+96>>2]=57;c[a+100>>2]=58;c[a+104>>2]=59;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?24:23;c[a+112>>2]=e?26:25;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?28:27}a:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break a}c[a+136>>2]=45;d=8;f=170;i=20;break}default:if(e){c[d>>2]=30;c[a+124>>2]=31;c[a+128>>2]=32;c[a+136>>2]=33;c[a+140>>2]=34;c[a+144>>2]=35;d=10;f=168;i=20;break a}else{c[d>>2]=36;c[a+124>>2]=37;c[a+128>>2]=38;c[a+136>>2]=39;c[a+140>>2]=40;c[a+144>>2]=41;d=10;f=169;i=20;break a}}while(0);if((i|0)==20)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?47:46;c[a+152>>2]=48;c[a+160>>2]=49;c[a+156>>2]=50;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=52;d=8;f=173;break}default:{d=3;f=174}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=53;c[a+172>>2]=54;c[a+176>>2]=55;c[a+188>>2]=620;c[a+192>>2]=621;c[a+196>>2]=622;c[a+200>>2]=623;c[a+204>>2]=69;c[a+208>>2]=70;f=129;g=128;h=e?63:62;d=e?61:60;break}case 10:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=635;g=634}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=624;c[a+12>>2]=(b|0)==23?600:625;c[a+16>>2]=626;c[a+20>>2]=627;c[a+24>>2]=628;c[a+28>>2]=d?605:629;c[a+32>>2]=630;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=632;c[a+52>>2]=633;c[a+40>>2]=634;d=14;f=635;break}default:{c[d>>2]=631;d=10;f=636}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=637;i=34}}else{c[a>>2]=634;c[a+4>>2]=635;c[a+8>>2]=624;c[a+12>>2]=613;c[a+16>>2]=626;c[a+20>>2]=627;c[a+24>>2]=628;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=631;c[a+40>>2]=636;c[a+44>>2]=637;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=34}if((i|0)==34)c[a+(d<<2)>>2]=f;c[a+60>>2]=64;c[a+64>>2]=65;c[a+68>>2]=66;c[a+72>>2]=67;c[a+76>>2]=68;c[a+80>>2]=69;c[a+84>>2]=70;c[a+88>>2]=71;c[a+92>>2]=72;c[a+96>>2]=73;c[a+100>>2]=74;c[a+104>>2]=75;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?57:56;c[a+112>>2]=e?59:58;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?61:60}b:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break b}c[a+136>>2]=74;d=8;f=177;i=44;break}default:if(e){c[d>>2]=62;c[a+124>>2]=63;c[a+128>>2]=64;c[a+136>>2]=65;c[a+140>>2]=66;c[a+144>>2]=67;d=10;f=175;i=44;break b}else{c[d>>2]=68;c[a+124>>2]=69;c[a+128>>2]=70;c[a+136>>2]=71;c[a+140>>2]=72;c[a+144>>2]=73;d=10;f=176;i=44;break b}}while(0);if((i|0)==44)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?76:75;c[a+152>>2]=77;c[a+160>>2]=78;c[a+156>>2]=79;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=80;d=8;f=178;break}default:{d=3;f=179}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=81;c[a+172>>2]=82;c[a+176>>2]=83;c[a+188>>2]=638;c[a+192>>2]=639;c[a+196>>2]=640;c[a+200>>2]=641;c[a+204>>2]=71;c[a+208>>2]=72;f=131;g=130;h=e?79:78;d=e?77:76;break}case 12:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=653;g=652}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=642;c[a+12>>2]=(b|0)==23?600:643;c[a+16>>2]=644;c[a+20>>2]=645;c[a+24>>2]=646;c[a+28>>2]=d?605:647;c[a+32>>2]=648;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=650;c[a+52>>2]=651;c[a+40>>2]=652;d=14;f=653;break}default:{c[d>>2]=649;d=10;f=654}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=655;i=58}}else{c[a>>2]=652;c[a+4>>2]=653;c[a+8>>2]=642;c[a+12>>2]=613;c[a+16>>2]=644;c[a+20>>2]=645;c[a+24>>2]=646;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=649;c[a+40>>2]=654;c[a+44>>2]=655;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=58}if((i|0)==58)c[a+(d<<2)>>2]=f;c[a+60>>2]=80;c[a+64>>2]=81;c[a+68>>2]=82;c[a+72>>2]=83;c[a+76>>2]=84;c[a+80>>2]=85;c[a+84>>2]=86;c[a+88>>2]=87;c[a+92>>2]=88;c[a+96>>2]=89;c[a+100>>2]=90;c[a+104>>2]=91;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?85:84;c[a+112>>2]=e?87:86;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?89:88}c:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break c}c[a+136>>2]=102;d=8;f=182;i=68;break}default:if(e){c[d>>2]=90;c[a+124>>2]=91;c[a+128>>2]=92;c[a+136>>2]=93;c[a+140>>2]=94;c[a+144>>2]=95;d=10;f=180;i=68;break c}else{c[d>>2]=96;c[a+124>>2]=97;c[a+128>>2]=98;c[a+136>>2]=99;c[a+140>>2]=100;c[a+144>>2]=101;d=10;f=181;i=68;break c}}while(0);if((i|0)==68)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?104:103;c[a+152>>2]=105;c[a+160>>2]=106;c[a+156>>2]=107;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=108;d=8;f=183;break}default:{d=3;f=184}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=109;c[a+172>>2]=110;c[a+176>>2]=111;c[a+188>>2]=656;c[a+192>>2]=657;c[a+196>>2]=658;c[a+200>>2]=659;c[a+204>>2]=73;c[a+208>>2]=74;f=133;g=132;h=e?95:94;d=e?93:92;break}case 14:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=671;g=670}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=660;c[a+12>>2]=(b|0)==23?600:661;c[a+16>>2]=662;c[a+20>>2]=663;c[a+24>>2]=664;c[a+28>>2]=d?605:665;c[a+32>>2]=666;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=668;c[a+52>>2]=669;c[a+40>>2]=670;d=14;f=671;break}default:{c[d>>2]=667;d=10;f=672}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=673;i=82}}else{c[a>>2]=670;c[a+4>>2]=671;c[a+8>>2]=660;c[a+12>>2]=613;c[a+16>>2]=662;c[a+20>>2]=663;c[a+24>>2]=664;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=667;c[a+40>>2]=672;c[a+44>>2]=673;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=82}if((i|0)==82)c[a+(d<<2)>>2]=f;c[a+60>>2]=96;c[a+64>>2]=97;c[a+68>>2]=98;c[a+72>>2]=99;c[a+76>>2]=100;c[a+80>>2]=101;c[a+84>>2]=102;c[a+88>>2]=103;c[a+92>>2]=104;c[a+96>>2]=105;c[a+100>>2]=106;c[a+104>>2]=107;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?113:112;c[a+112>>2]=e?115:114;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?117:116}d:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break d}c[a+136>>2]=130;d=8;f=187;i=92;break}default:if(e){c[d>>2]=118;c[a+124>>2]=119;c[a+128>>2]=120;c[a+136>>2]=121;c[a+140>>2]=122;c[a+144>>2]=123;d=10;f=185;i=92;break d}else{c[d>>2]=124;c[a+124>>2]=125;c[a+128>>2]=126;c[a+136>>2]=127;c[a+140>>2]=128;c[a+144>>2]=129;d=10;f=186;i=92;break d}}while(0);if((i|0)==92)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?132:131;c[a+152>>2]=133;c[a+160>>2]=134;c[a+156>>2]=135;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=136;d=8;f=188;break}default:{d=3;f=189}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=137;c[a+172>>2]=138;c[a+176>>2]=139;c[a+188>>2]=674;c[a+192>>2]=675;c[a+196>>2]=676;c[a+200>>2]=677;c[a+204>>2]=75;c[a+208>>2]=76;f=135;g=134;h=e?111:110;d=e?109:108;break}default:{if((d|0)>=9){c[f>>2]=146226;c[f+4>>2]=146204;c[f+8>>2]=590;Uf(0,0,159675,f);Ub()}if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=697;g=696;break}default:{f=689;g=688}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=678;c[a+12>>2]=(b|0)==23?600:679;c[a+16>>2]=680;c[a+20>>2]=681;c[a+24>>2]=682;c[a+28>>2]=d?605:683;c[a+32>>2]=684;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=608;c[a+48>>2]=686;c[a+52>>2]=687;c[a+40>>2]=688;d=14;f=689;break}default:{c[d>>2]=685;d=10;f=690}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=691;i=108}}else{c[a>>2]=688;c[a+4>>2]=689;c[a+8>>2]=678;c[a+12>>2]=613;c[a+16>>2]=680;c[a+20>>2]=681;c[a+24>>2]=682;c[a+28>>2]=614;c[a+32>>2]=615;c[a+36>>2]=685;c[a+40>>2]=690;c[a+44>>2]=691;c[a+48>>2]=618;c[a+52>>2]=619;d=14;f=698;i=108}if((i|0)==108)c[a+(d<<2)>>2]=f;c[a+60>>2]=112;c[a+64>>2]=113;c[a+68>>2]=114;c[a+72>>2]=115;c[a+76>>2]=116;c[a+80>>2]=117;c[a+84>>2]=118;c[a+88>>2]=119;c[a+92>>2]=120;c[a+96>>2]=121;c[a+100>>2]=122;c[a+104>>2]=123;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?141:140;c[a+112>>2]=e?143:142;switch(b|0){case 139:case 179:{c[a+120>>2]=29;break}default:c[a+120>>2]=e?145:144}e:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=42;c[a+124>>2]=43;c[a+128>>2]=44;switch(b|0){case 139:case 179:break;default:break e}c[a+136>>2]=158;d=8;f=192;i=118;break}default:if(e){c[d>>2]=146;c[a+124>>2]=147;c[a+128>>2]=148;c[a+136>>2]=149;c[a+140>>2]=150;c[a+144>>2]=151;d=10;f=190;i=118;break e}else{c[d>>2]=152;c[a+124>>2]=153;c[a+128>>2]=154;c[a+136>>2]=155;c[a+140>>2]=156;c[a+144>>2]=157;d=10;f=191;i=118;break e}}while(0);if((i|0)==118)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?160:159;c[a+152>>2]=161;c[a+160>>2]=162;c[a+156>>2]=163;switch(b|0){case 23:{d=3;f=171;break}case 69:{d=3;f=172;break}case 139:case 179:{c[a+164>>2]=51;c[a+180>>2]=164;d=8;f=193;break}default:{d=3;f=194}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=165;c[a+172>>2]=166;c[a+176>>2]=167;c[a+188>>2]=692;c[a+192>>2]=693;c[a+196>>2]=694;c[a+200>>2]=695;c[a+204>>2]=77;c[a+208>>2]=78;f=137;g=136;h=e?127:126;d=e?125:124}}c[a+220>>2]=d;c[a+216>>2]=h;c[a+232>>2]=g;c[a+228>>2]=f;l=j;return}function Rn(a,b){a=a|0;b=b|0;c[a+4>>2]=699;c[a>>2]=(b|0)<9?2:1;return}function Sn(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+32|0;if((l|0)>=(m|0))W(32);v=x+24|0;p=x+16|0;o=x+8|0;g=x;f=e+24|0;k=d+27008|0;r=c[k>>2]|0;t=d+27016|0;w=c[t>>2]|0;n=N(w,r)|0;u=d+27012|0;q=N(c[u>>2]<<1|1,r<<1|1)|0;r=N(w,r+1|0)|0;w=q+(r<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){s=d+4|0;c[f>>2]=c[s>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27020|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[u>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[t>>2];c[e+592>>2]=h<<1|1;j=Lg((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){Uf(c[s>>2]|0,16,146114,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[u>>2]|0;i=N(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;c[j+(i+f<<2)>>2]=(N(c[t>>2]|0,d)|0)+f;f=f+1|0}d=d+1|0}h=N(c[t>>2]|0,g+-1|0)|0;i=c[u>>2]|0;c[j+((N(i,g)|0)<<2)>>2]=h+i;j=Lg(n)|0;c[e+604>>2]=j;if(!((n|0)==0|(j|0)!=0)){Uf(c[s>>2]|0,16,146114,o);d=-12;break}o=ag(N((c[k>>2]|0)*17|0,c[t>>2]|0)|0)|0;c[e+608>>2]=o;if((o|0)==0?N((c[k>>2]|0)*17|0,c[t>>2]|0)|0:0){Uf(c[s>>2]|0,16,146114,p);d=-12;break}p=w<<1;f=Lg(p)|0;c[e+27784>>2]=f;if(!((p|0)==0|(f|0)!=0)){Uf(c[s>>2]|0,16,146114,v);d=-12;break}c[e+612>>2]=f+(c[u>>2]<<1<<1)+4;d=f+(q<<1)+(c[t>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(r<<1);d=0;while(1){if((d|0)>=(w|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{iX(f|0,0,808)|0;d=0}while(0);l=x;return d|0}function Tn(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q+8|0;j=q;o=a+25628|0;k=c[o>>2]|0;c[k+21788>>2]=h;c[k+21792>>2]=i;n=k+21796|0;c[n>>2]=(N(c[a+27016>>2]|0,i)|0)+h;e=k+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[k+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[k+23416+(e*40|0)>>2]|0)){Uf(c[a+4>>2]|0,48,146139,j);e=0}if((c[k+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[n>>2]<<2)|0;p=e*257&65535;b[d>>1]=p;b[d+2>>1]=p;d=N(e,16843009)|0;c[k+28284>>2]=d;c[k+28292>>2]=d;c[k+28300>>2]=d;c[k+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[k+28e3>>2]=g;c[k+28004>>2]=g;c[k+28008>>2]=g;c[k+28012>>2]=g;c[k+28032>>2]=g;c[k+28036>>2]=g;c[k+28040>>2]=g;c[k+28044>>2]=g;c[k+28064>>2]=g;c[k+28068>>2]=g;c[k+28072>>2]=g;c[k+28076>>2]=g;c[k+28096>>2]=g;c[k+28100>>2]=g;c[k+28104>>2]=g;c[k+28108>>2]=g;c[k+21828>>2]=0;c[k+21832>>2]=0;sk(a,c[o>>2]|0)}else Uf(c[a+4>>2]|0,48,146185,p);l=q;return}function Un(a,b,c){a=a|0;b=b|0;c=c|0;return}function Vn(b,c,d,e,f,g,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(N(c,e)|0))|0;k=p+(N(c,d)|0)|0;h=b+p|0;l=0;while(1){if((l|0)>=(c|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((N(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if((c|0)>=(p|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Wn(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(N(c,e)|0))|0;j=p-q<<1;k=(N(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if((l|0)>=(c|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;gX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((N(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if((c|0)>=(q|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function Xn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Yn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=d[a+(0-e)>>0]|0;h=d[a+(1-e)>>0]|0;g=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;b=(i+2+(h<<1)+g|0)>>>2<<8|((d[a+~e>>0]|0)+2+(i<<1)+h|0)>>>2|(h+2+(g<<1)+f|0)>>>2<<16|(g+2+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=ZW(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=ZW(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function _n(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d[a+-1>>0]|0;i=d[a+(e+-1)>>0]|0;h=e<<1;g=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;c[a>>2]=N(((d[a+~e>>0]|0)+2+(j<<1)+i|0)>>>2,16843009)|0;c[a+e>>2]=N((j+2+(i<<1)+g|0)>>>2,16843009)|0;c[a+h>>2]=N((i+2+(g<<1)+f|0)>>>2,16843009)|0;c[a+b>>2]=N((g+2+f+(f<<1)|0)>>>2,16843009)|0;return}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ao(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return}function bo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function co(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function eo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function fo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function go(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=(n+1+m|0)>>>1;c=(m+1+l|0)>>>1&255;i=e<<1;a[b+i>>0]=c;a[b+1>>0]=c;c=(l+1+k|0)>>>1&255;a[b+(i|1)>>0]=c;a[b+2>>0]=c;c=(k+1+j|0)>>>1&255;a[b+(i+2)>>0]=c;a[b+3>>0]=c;a[b+e>>0]=(n+2+(m<<1)+l|0)>>>2;m=(m+2+(l<<1)+k|0)>>>2&255;c=e*3|0;a[b+c>>0]=m;a[b+(e+1)>>0]=m;l=(l+2+(k<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+2+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function ho(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function io(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function jo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=ZW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ko(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=129709+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function lo(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;d=a+(d*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function mo(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;d=a+(d*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function no(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=ZW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function oo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;r=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;n=d[c>>0]|0;l=d[c+1>>0]|0;i=d[c+2>>0]|0;h=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;j=e<<1;q=d[b+(j+-1)>>0]|0;c=e*3|0;o=d[b+(c+-1)>>0]|0;m=d[b+((e<<2)+-1)>>0]|0;k=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+r+(d[b+-1>>0]|0)+q+(s+t<<1)|0)>>>3;s=(t+4+p+s+o+(q+r<<1)|0)>>>3&255;a[b+e>>0]=s;a[b+1>>0]=s;q=(r+4+n+q+m+(o+p<<1)|0)>>>3&255;a[b+j>>0]=q;a[b+(e+1)>>0]=q;a[b+2>>0]=q;o=(p+4+l+o+k+(m+n<<1)|0)>>>3&255;a[b+c>>0]=o;a[b+(j|1)>>0]=o;a[b+(e+2)>>0]=o;a[b+3>>0]=o;m=(n+4+i+m+g+(k+l<<1)|0)>>>3&255;a[b+(c+1)>>0]=m;a[b+(j+2)>>0]=m;a[b+(e+3)>>0]=m;e=(l+4+h+k+f+(g+i<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(j+3)>>0]=e;a[b+(c+3)>>0]=(i+2+h+g+f|0)>>>2;return}function po(a,b,c){a=a|0;b=b|0;c=c|0;Yu(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function qo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;t=q<<1;s=t+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+u<<1)|0)>>>3;a[b+1>>0]=(u+4+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;p=(q+4+o+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+4+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function ro(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;d=a+(d*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function so(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;m=d[b+(3-e)>>0]|0;l=d[c>>0]|0;k=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;j=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+n+(d[b+-1>>0]|0)+j+(o+p<<1)|0)>>>3;o=(p+4+m+o+f+(j+n<<1)|0)>>>3&255;a[b+e>>0]=o;a[b+1>>0]=o;j=(n+4+l+(m<<1)+j+(f*3|0)|0)>>>3&255;a[b+i>>0]=j;a[b+(e+1)>>0]=j;a[b+2>>0]=j;j=f<<2;m=(m+4+k+(l<<1)+j|0)>>>3&255;a[b+c>>0]=m;a[b+(i|1)>>0]=m;a[b+(e+2)>>0]=m;a[b+3>>0]=m;l=(l+4+h+(k<<1)+j|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(i+2)>>0]=l;a[b+(e+3)>>0]=l;e=(k+4+g+(h<<1)+j|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function to(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;r=o<<1;q=r+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+s<<1)|0)>>>3;a[b+1>>0]=(s+4+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;j=(o+4+n+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+4+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+2+i+c|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function uo(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;Yu(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function vo(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function wo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=ZW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=ZW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=ZW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=ZW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=ZW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=ZW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=ZW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=ZW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function xo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function yo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function zo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Ao(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Bo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Co(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Do(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Eo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=ZW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Fo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Go(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function Ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Io(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Jo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ko(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Lo(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Mo(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+p>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+o>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function No(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=129709+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function Oo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=ZW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=ZW(k|0,l|0,65537,65537)|0;h=y;d=ZW(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Po(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=ZW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=ZW(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Qo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Ro(a,b){a=a|0;b=b|0;Qo(a,b);$n(a,0,b);return}function So(a,b){a=a|0;b=b|0;Oo(a,b);no(a,0,b);return}function To(a,b){a=a|0;b=b|0;Po(a,b);a=a+(b<<2)|0;ro(a,0,b);ro(a+8|0,0,b);return}function Uo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=ZW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=ZW(m|0,n|0,65537,65537)|0;q=y;m=ZW(f|0,o|0,65537,65537)|0;n=y;k=ZW(r|0,s|0,65537,65537)|0;l=y;i=ZW(g|0,t|0,65537,65537)|0;j=y;g=ZW(u|0,v|0,65537,65537)|0;h=y;d=ZW(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Vo(a,b){a=a|0;b=b|0;Po(a,b);Po(a+(b<<3)|0,b);return}function Wo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Xo(a,b){a=a|0;b=b|0;Wo(a,b);$n(a,0,b);return}function Yo(a,b){a=a|0;b=b|0;Uo(a,b);no(a,0,b);return}function Zo(a,b){a=a|0;b=b|0;Vo(a,b);a=a+(b<<2)|0;ro(a,0,b);ro(a+8|0,0,b);return}function _o(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=0;f=0;while(1){if((f|0)==4)break;h=d[a+((N(f,b)|0)+-1)>>0]|0;g=f+4|0;e=e+h+(d[a+(f-b)>>0]|0)+(d[a+(g-b)>>0]|0)+(d[a+((N(g,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}return}function $o(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function ap(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function dp(a,b){a=a|0;b=b|0;Vo(a,b);ro(a,0,b);ro(a+8|0,0,b);return}function ep(a,b){a=a|0;b=b|0;Po(a,b);ro(a,0,b);ro(a+8|0,0,b);return}function fp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function gp(a,b){a=a|0;b=b|0;fp(a,b);fp(a+(b<<3)|0,b);return}function hp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ip(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function jp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function kp(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=129709+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function lp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function mp(a,b){a=a|0;b=b|0;Xu(a,b);return}function np(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function op(a,b){a=a|0;b=b|0;Tu(a,b,0,1);return}function pp(a,b){a=a|0;b=b|0;Tu(a,b,1,0);return}function qp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function rp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function sp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function tp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function up(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function vp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}iX(d|0,0,256)|0;return}function wp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}iX(d|0,0,256)|0;return}function xp(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}iX(d|0,0,256)|0;l=s;return}function yp(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}iX(d|0,0,256)|0;l=k;return}function zp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;tp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ap(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}tp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;tp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Bp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;up(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Cp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}up(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;up(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Dp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Ep(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=ZW(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=ZW(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Fp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Gp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Hp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Ip(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Jp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Kp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Lp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function Mp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=ZW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Np(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;d=a+(d*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function Op(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;d=a+(d*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function Pp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=ZW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Qp(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;d=a+(d*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function Rp(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Sp(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=ZW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=ZW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=ZW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=ZW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=ZW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=ZW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=ZW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=ZW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Tp(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Up(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Vp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Wp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Xp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Yp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Zp(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function _p(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=ZW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function $p(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function aq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function bq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function dq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function eq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function fq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function gq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+p>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+o>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function hq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=ZW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=ZW(k|0,l|0,65537,65537)|0;h=y;d=ZW(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function iq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=ZW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=ZW(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function jq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function kq(a,b){a=a|0;b=b|0;jq(a,b);Fp(a,0,b);return}function lq(a,b){a=a|0;b=b|0;hq(a,b);Pp(a,0,b);return}function mq(a,b){a=a|0;b=b|0;iq(a,b);a=a+(b<<2)|0;Qp(a,0,b);Qp(a+8|0,0,b);return} +function sG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function uG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<1024?K:0-K>>31&1023;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<1024?H:0-H>>31&1023;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<1024?F:0-F>>31&1023;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;g=g+1|0;f=f+2|0;d=d+2|0}return}function vG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=vF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=vF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=vF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=vF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function wG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function xG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function yG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<4096?E:0-E>>31&4095;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;g=g+1|0;f=f+2|0;d=d+2|0}return}function zG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=vF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=vF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=vF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=vF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function AG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function BG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function CG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<16384?E:0-E>>31&16383;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;g=g+1|0;f=f+2|0;d=d+2|0}return}function DG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=vF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=vF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=vF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=vF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function EG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;J=b[h+(f<<1)>>1]|0;I=b[h>>1]|0;H=b[h+(g<<1)>>1]|0;G=b[h+(l<<1)>>1]|0;F=b[h+(m<<1)>>1]|0;E=b[h+(n<<1)>>1]|0;D=b[h+(o<<1)>>1]|0;c=b[h+(p<<1)>>1]|0;a=b[h+(q<<1)>>1]|0;B=b[h+(r<<1)>>1]|0;A=b[h+(s<<1)>>1]|0;C=b[h+(t<<1)>>1]|0;K=(b[h+(k<<1)>>1]|0)+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[j>>1]=K>>>0<512?K:0-K>>31&511;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[j+(d<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+512+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[j+(u<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+512+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>10;b[j+(v<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+512+a+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;b[j+(w<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+512+B+((c+D|0)*20|0)+(N(a+E|0,-5)|0)>>10;b[j+(x<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+512+A+((a+c|0)*20|0)+(N(B+D|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+512+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<512?c:0-c>>31&511;j=j+2|0;h=h+2|0;i=i+1|0}return}function FG(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;K=b[f+(l<<1)>>1]|0;J=b[f>>1]|0;I=b[f+(h<<1)>>1]|0;H=b[f+(m<<1)>>1]|0;G=b[f+(n<<1)>>1]|0;F=b[f+(o<<1)>>1]|0;E=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;L=(b[f+(i<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[k>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[k+g>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[k+v>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+512+B+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;a[k+w>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+512+c+((E+F|0)*20|0)+(N(B+G|0,-5)|0)>>10;a[k+x>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+512+C+((B+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;a[k+y>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+512+e+((c+B|0)*20|0)+(N(C+E|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+512+D+((C+c|0)*20|0)+(N(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function GG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;Q=b[h+(f<<1)>>1]|0;O=b[h>>1]|0;P=O+10230|0;L=b[h+(g<<1)>>1]|0;M=L+10230|0;J=b[h+(l<<1)>>1]|0;K=J+10230|0;H=b[h+(m<<1)>>1]|0;I=H+10230|0;F=b[h+(n<<1)>>1]|0;G=F+10230|0;D=b[h+(o<<1)>>1]|0;E=D+10230|0;c=(b[h+(p<<1)>>1]|0)+10230|0;a=(b[h+(q<<1)>>1]|0)+10230|0;B=(b[h+(r<<1)>>1]|0)+10230|0;A=(b[h+(s<<1)>>1]|0)+10230|0;C=b[h+(t<<1)>>1]|0;R=(b[h+(k<<1)>>1]|0)+10742+I+((M+P|0)*20|0)+(N(K+(Q+10230)|0,-5)|0)>>10;b[j>>1]=R>>>0<1024?R:0-R>>31&1023;P=Q+10742+G+((K+M|0)*20|0)+(N(I+P|0,-5)|0)>>10;b[j+(d<<1)>>1]=P>>>0<1024?P:0-P>>31&1023;M=O+10742+E+((I+K|0)*20|0)+(N(G+M|0,-5)|0)>>10;b[j+(u<<1)>>1]=M>>>0<1024?M:0-M>>31&1023;K=L+10742+c+((G+I|0)*20|0)+(N(E+K|0,-5)|0)>>10;b[j+(v<<1)>>1]=K>>>0<1024?K:0-K>>31&1023;I=J+10742+a+((E+G|0)*20|0)+(N(c+I|0,-5)|0)>>10;b[j+(w<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;G=H+10742+B+((c+E|0)*20|0)+(N(a+G|0,-5)|0)>>10;b[j+(x<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;E=F+10742+A+((a+c|0)*20|0)+(N(B+E|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+20972+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;j=j+2|0;h=h+2|0;i=i+1|0}return}function HG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;k=k+2|0;i=i+4|0;j=j+1|0}return}function IG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;k=k+2|0;i=i+4|0;j=j+1|0}return}function JG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;K=b[h+(f<<1)>>1]|0;J=b[h>>1]|0;I=b[h+(g<<1)>>1]|0;H=b[h+(l<<1)>>1]|0;G=b[h+(m<<1)>>1]|0;F=b[h+(n<<1)>>1]|0;E=b[h+(o<<1)>>1]|0;A=b[h+(p<<1)>>1]|0;B=b[h+(q<<1)>>1]|0;C=b[h+(r<<1)>>1]|0;a=b[h+(s<<1)>>1]|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=j+(d<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(u<<1)|0;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;I=I+512+A+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;H=H+512+B+((E+F|0)*20|0)+(N(A+G|0,-5)|0)>>10;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;G=G+512+C+((A+E|0)*20|0)+(N(B+F|0,-5)|0)>>10;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=F+512+a+((B+A|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+512+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<512?A:0-A>>31&511)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function KG(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;L=b[f+(l<<1)>>1]|0;K=b[f>>1]|0;J=b[f+(h<<1)>>1]|0;I=b[f+(m<<1)>>1]|0;H=b[f+(n<<1)>>1]|0;G=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;B=(b[f+(i<<1)>>1]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[B>>0]=((d[B>>0]|0)+1+((L>>>0>255?(L^-2147483648)>>31:L)&255)|0)>>>1;B=k+v|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[B>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;J=J+512+e+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;I=I+512+C+((F+G|0)*20|0)+(N(e+H|0,-5)|0)>>10;a[B>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;H=H+512+D+((e+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;a[B>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=G+512+c+((C+e|0)*20|0)+(N(D+F|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+512+E+((D+C|0)*20|0)+(N(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function LG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;R=b[h+(f<<1)>>1]|0;P=b[h>>1]|0;Q=P+10230|0;M=b[h+(g<<1)>>1]|0;O=M+10230|0;K=b[h+(l<<1)>>1]|0;L=K+10230|0;I=b[h+(m<<1)>>1]|0;J=I+10230|0;G=b[h+(n<<1)>>1]|0;H=G+10230|0;E=b[h+(o<<1)>>1]|0;F=E+10230|0;A=(b[h+(p<<1)>>1]|0)+10230|0;B=(b[h+(q<<1)>>1]|0)+10230|0;C=(b[h+(r<<1)>>1]|0)+10230|0;a=(b[h+(s<<1)>>1]|0)+10230|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+10742+J+((O+Q|0)*20|0)+(N(L+(R+10230)|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=j+(d<<1)|0;Q=R+10742+H+((L+O|0)*20|0)+(N(J+Q|0,-5)|0)>>10;b[c>>1]=((e[c>>1]|0)+1+(Q>>>0<1024?Q:0-Q>>31&1023)|0)>>>1;c=j+(u<<1)|0;O=P+10742+F+((J+L|0)*20|0)+(N(H+O|0,-5)|0)>>10;b[c>>1]=((O>>>0<1024?O:0-O>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;L=M+10742+A+((H+J|0)*20|0)+(N(F+L|0,-5)|0)>>10;b[c>>1]=((L>>>0<1024?L:0-L>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;J=K+10742+B+((F+H|0)*20|0)+(N(A+J|0,-5)|0)>>10;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;H=I+10742+C+((A+F|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=G+10742+a+((B+A|0)*20|0)+(N(C+F|0,-5)|0)>>10;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+20972+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<1024?A:0-A>>31&1023)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function MG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<4096?d:0-d>>31&4095)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<4096?B:0-B>>31&4095)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function NG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<16384?d:0-d>>31&16383)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<16384?B:0-B>>31&16383)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function OG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:0-a>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function PG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;K=d[c+t>>0]|0;J=d[c>>0]|0;I=d[c+f>>0]|0;H=d[c+u>>0]|0;G=d[c+v>>0]|0;F=d[c+w>>0]|0;E=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;y=(d[c+s>>0]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[y>>0]=((d[y>>0]|0)+1+((K>>>0>255?(K^-2147483648)>>31:K)&255)|0)>>>1;y=b+m|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[y>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;I=I+16+z+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;H=H+16+B+((E+F|0)*20|0)+(N(z+G|0,-5)|0)>>5;a[y>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;G=G+16+C+((z+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;a[y>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=F+16+A+((B+z|0)*20|0)+(N(C+E|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+16+D+((C+B|0)*20|0)+(N(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function QG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<1024?G:0-G>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:0-a>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function RG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:0-F>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:0-a>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function SG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:0-F>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:0-a>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function TG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function UG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=N((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function VG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function WG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function XG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function YG(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=vF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=vF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function ZG(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=AF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;h=a+4|0;i=b+4|0;c[h>>2]=AF(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;g=g+1|0;a=a+e|0;b=b+e|0}return}function _G(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=vF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=vF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function $G(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=vF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=vF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function aH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=vF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=vF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function bH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kG(a,b,c,d);kG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;kG(a,b,c,d);kG(a+16|0,b+16|0,c,d);return}function cH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function dH(a,b,c){a=a|0;b=b|0;c=c|0;mG(a,b,c,32);mG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;mG(a,b+256|0,c,32);mG(a+16|0,b+272|0,c,32);return}function eH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;nG(a,b,c,d,e,32,16);nG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function fH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;oG(a,b,c,d);oG(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;oG(a,b,c,d);oG(a+8|0,b+8|0,c,d);return}function gH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function hH(a,b,c){a=a|0;b=b|0;c=c|0;qG(a,b,c,16);qG(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;qG(a,b+128|0,c,16);qG(a+8|0,b+136|0,c,16);return}function iH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;rG(a,b,c,d,e,16,16);rG(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function jH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;sG(a,b,c,d);sG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;sG(a,b,c,d);sG(a+16|0,b+16|0,c,d);return}function kH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function lH(a,b,c){a=a|0;b=b|0;c=c|0;uG(a,b,c,32);uG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;uG(a,b+256|0,c,32);uG(a+16|0,b+272|0,c,32);return}function mH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vG(a,b,c,d,e,32,16);vG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function nH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wG(a,b,c,d);wG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;wG(a,b,c,d);wG(a+16|0,b+16|0,c,d);return}function oH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function pH(a,b,c){a=a|0;b=b|0;c=c|0;yG(a,b,c,32);yG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;yG(a,b+256|0,c,32);yG(a+16|0,b+272|0,c,32);return}function qH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;zG(a,b,c,d,e,32,16);zG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function rH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;AG(a,b,c,d);AG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;AG(a,b,c,d);AG(a+16|0,b+16|0,c,d);return}function sH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function tH(a,b,c){a=a|0;b=b|0;c=c|0;CG(a,b,c,32);CG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;CG(a,b+256|0,c,32);CG(a+16|0,b+272|0,c,32);return}function uH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;DG(a,b,c,d,e,32,16);DG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function vH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;EG(a,b,c,d,32,e);f=b+16|0;EG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;EG(a,b,c,d,32,e);EG(a+16|0,f,c+16|0,d,32,e);return}function wH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;FG(a,b,c,d,16,e);f=b+16|0;FG(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;FG(a,b,c,d,16,e);FG(a+8|0,f,c+8|0,d,16,e);return}function xH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;GG(a,b,c,d,32,e);f=b+16|0;GG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;GG(a,b,c,d,32,e);GG(a+16|0,f,c+16|0,d,32,e);return}function yH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;HG(a,b,c,d,32,e);f=b+32|0;HG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;HG(a,b,c,d,32,e);HG(a+16|0,f,c+16|0,d,32,e);return}function zH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;IG(a,b,c,d,32,e);f=b+32|0;IG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;IG(a,b,c,d,32,e);IG(a+16|0,f,c+16|0,d,32,e);return}function AH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;JG(a,b,c,d,32,e);f=b+16|0;JG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;JG(a,b,c,d,32,e);JG(a+16|0,f,c+16|0,d,32,e);return}function BH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;KG(a,b,c,d,16,e);f=b+16|0;KG(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;KG(a,b,c,d,16,e);KG(a+8|0,f,c+8|0,d,16,e);return}function CH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;LG(a,b,c,d,32,e);f=b+16|0;LG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;LG(a,b,c,d,32,e);LG(a+16|0,f,c+16|0,d,32,e);return}function DH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;MG(a,b,c,d,32,e);f=b+32|0;MG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;MG(a,b,c,d,32,e);MG(a+16|0,f,c+16|0,d,32,e);return}function EH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;NG(a,b,c,d,32,e);f=b+32|0;NG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;NG(a,b,c,d,32,e);NG(a+16|0,f,c+16|0,d,32,e);return}function FH(a,b,c){a=a|0;b=b|0;c=c|0;OG(a,b,c,32);OG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;OG(a,b+256|0,c,32);OG(a+16|0,b+272|0,c,32);return}function GH(a,b,c){a=a|0;b=b|0;c=c|0;PG(a,b,c,16);PG(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;PG(a,b+128|0,c,16);PG(a+8|0,b+136|0,c,16);return}function HH(a,b,c){a=a|0;b=b|0;c=c|0;QG(a,b,c,32);QG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;QG(a,b+256|0,c,32);QG(a+16|0,b+272|0,c,32);return}function IH(a,b,c){a=a|0;b=b|0;c=c|0;RG(a,b,c,32);RG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;RG(a,b+256|0,c,32);RG(a+16|0,b+272|0,c,32);return}function JH(a,b,c){a=a|0;b=b|0;c=c|0;SG(a,b,c,32);SG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;SG(a,b+256|0,c,32);SG(a+16|0,b+272|0,c,32);return}function KH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;TG(a,b,c,d);TG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;TG(a,b,c,d);TG(a+16|0,b+16|0,c,d);return}function LH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;UG(a,b,c,d);UG(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;UG(a,b,c,d);UG(a+8|0,b+8|0,c,d);return}function MH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;VG(a,b,c,d);VG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;VG(a,b,c,d);VG(a+16|0,b+16|0,c,d);return}function NH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;WG(a,b,c,d);WG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;WG(a,b,c,d);WG(a+16|0,b+16|0,c,d);return}function OH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;XG(a,b,c,d);XG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;XG(a,b,c,d);XG(a+16|0,b+16|0,c,d);return}function PH(a,b,c){a=a|0;b=b|0;c=c|0;YG(a,b,c,16);YG(a+16|0,b+16|0,c,16);return}function QH(a,b,c){a=a|0;b=b|0;c=c|0;ZG(a,b,c,16);ZG(a+8|0,b+8|0,c,16);return}function RH(a,b,c){a=a|0;b=b|0;c=c|0;_G(a,b,c,16);_G(a+16|0,b+16|0,c,16);return}function SH(a,b,c){a=a|0;b=b|0;c=c|0;$G(a,b,c,16);$G(a+16|0,b+16|0,c,16);return}function TH(a,b,c){a=a|0;b=b|0;c=c|0;aH(a,b,c,16);aH(a+16|0,b+16|0,c,16);return}function UH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:0-l>>31&511;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function VH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function WH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function XH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=vF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function YH(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=N((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function ZH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function _H(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(N(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(N(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function $H(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=c+(N(h,g)|0)|0;i=e+(h<<1)|0;b[a+(N(h,f)|0)>>1]=AF((d[j>>0]|d[j+1>>0]<<8)&65535,(d[i>>0]|d[i+1>>0]<<8)&65535)|0;h=h+1|0}return}function aI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:0-l>>31&1023;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function bI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function cI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function dI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=vF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function eI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:0-l>>31&4095;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function fI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function gI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function hI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=vF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function iI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:0-l>>31&16383;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function jI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function kI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function lI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=vF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function mI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=b[g>>1]|0;l=b[g+8>>1]|0;k=b[g+16>>1]|0;m=b[g+24>>1]|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[a>>1]=j>>>0<512?j:0-j>>31&511;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<512?n:0-n>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function nI(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=N((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function oI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=(b[g>>1]|0)+10230|0;l=(b[g+8>>1]|0)+10230|0;k=(b[g+16>>1]|0)+10230|0;m=(b[g+24>>1]|0)+10230|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(N(k+(f+10230)|0,-5)|0)>>10;b[a>>1]=j>>>0<1024?j:0-j>>31&1023;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<1024?n:0-n>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function pI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<4096?g:0-g>>31&4095;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function qI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<16384?g:0-g>>31&16383;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function rI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function sI(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function tI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function uI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function vI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function wI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=vF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function xI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;c[a+(N(h,f)|0)>>2]=AF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=h+1|0}return}function yI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=vF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function zI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=vF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function AI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=vF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function BI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function CI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function DI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function EI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function FI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function GI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=vF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function HI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;o=b+m|0;l=N(j,h)|0;n=e+l|0;k=N(j,f)|0;c[a+k>>2]=AF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;m=b+(m+4)|0;l=e+(l+4)|0;c[a+(k+4)>>2]=AF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;j=j+1|0}return}function II(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=vF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function JI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=vF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function KI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=vF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=vF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function LI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function MI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function NI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function OI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function PI(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function QI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;GI(a,b,c,d,e,32,16);GI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function RI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;HI(a,b,c,d,e,16,16);HI(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function SI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;II(a,b,c,d,e,32,16);II(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function TI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;JI(a,b,c,d,e,32,16);JI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function UI(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;KI(a,b,c,d,e,32,16);KI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function VI(a,b,c){a=a|0;b=b|0;c=c|0;LI(a,b,c,16);LI(a+16|0,b+16|0,c,16);return}function WI(a,b,c){a=a|0;b=b|0;c=c|0;MI(a,b,c,16);MI(a+8|0,b+8|0,c,16);return}function XI(a,b,c){a=a|0;b=b|0;c=c|0;NI(a,b,c,16);NI(a+16|0,b+16|0,c,16);return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;OI(a,b,c,16);OI(a+16|0,b+16|0,c,16);return}function ZI(a,b,c){a=a|0;b=b|0;c=c|0;PI(a,b,c,16);PI(a+16|0,b+16|0,c,16);return}function _I(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(s,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(s,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(s,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(s,e[c+6>>1]|0)|0)+32|0)>>>6;b[a+8>>1]=((N(s,e[c+8>>1]|0)|0)+32|0)>>>6;b[a+10>>1]=((N(s,e[c+10>>1]|0)|0)+32|0)>>>6;b[a+12>>1]=((N(s,e[c+12>>1]|0)|0)+32|0)>>>6;b[a+14>>1]=((N(s,e[c+14>>1]|0)|0)+32|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=(q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+2>>1]|0)|0;b[a+2>>1]=(q+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+4>>1]|0)|0;b[a+4>>1]=(q+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+6>>1]|0)|0;b[a+6>>1]=(q+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+8>>1]|0)|0;b[a+8>>1]=(q+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+10>>1]|0)|0;b[a+10>>1]=(q+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+12>>1]|0)|0;b[a+12>>1]=(q+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+14>>1]|0)|0;b[a+14>>1]=(q+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,e[c>>1]|0)|0;u=c+2|0;x=N(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=N(q,e[t>>1]|0)|0;w=c+(h<<1)|0;b[a>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+4|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(d<<1)|0;b[a+2>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+6|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(i<<1)|0;b[a+4>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=c+8|0;x=N(p,e[v>>1]|0)|0;u=N(q,e[u>>1]|0)|0;y=c+(j<<1)|0;b[a+6>>1]=(w+32+x+u+(N(o,e[y>>1]|0)|0)|0)>>>6;v=N(s,e[v>>1]|0)|0;u=c+10|0;x=N(p,e[u>>1]|0)|0;y=N(q,e[y>>1]|0)|0;w=c+(k<<1)|0;b[a+8>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+12|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(l<<1)|0;b[a+10>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+14|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(m<<1)|0;b[a+12>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=N(p,e[c+16>>1]|0)|0;u=N(q,e[u>>1]|0)|0;b[a+14>>1]=(w+32+v+u+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function $I(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(s,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(s,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(s,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(s,d[c+3>>0]|0)|0)+32|0)>>>6;a[b+4>>0]=((N(s,d[c+4>>0]|0)|0)+32|0)>>>6;a[b+5>>0]=((N(s,d[c+5>>0]|0)|0)+32|0)>>>6;a[b+6>>0]=((N(s,d[c+6>>0]|0)|0)+32|0)>>>6;a[b+7>>0]=((N(s,d[c+7>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=(r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6;r=N(s,d[c+1>>0]|0)|0;a[b+1>>0]=(r+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6;r=N(s,d[c+2>>0]|0)|0;a[b+2>>0]=(r+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6;r=N(s,d[c+3>>0]|0)|0;a[b+3>>0]=(r+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6;r=N(s,d[c+4>>0]|0)|0;a[b+4>>0]=(r+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6;r=N(s,d[c+5>>0]|0)|0;a[b+5>>0]=(r+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6;r=N(s,d[c+6>>0]|0)|0;a[b+6>>0]=(r+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6;r=N(s,d[c+7>>0]|0)|0;a[b+7>>0]=(r+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,d[c>>0]|0)|0;u=c+1|0;x=N(q,d[u>>0]|0)|0;t=c+e|0;y=N(r,d[t>>0]|0)|0;w=c+i|0;a[b>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+2|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+j|0;a[b+1>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+3|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+k|0;a[b+2>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=c+4|0;x=N(q,d[v>>0]|0)|0;u=N(r,d[u>>0]|0)|0;y=c+l|0;a[b+3>>0]=(w+32+x+u+(N(h,d[y>>0]|0)|0)|0)>>>6;v=N(s,d[v>>0]|0)|0;u=c+5|0;x=N(q,d[u>>0]|0)|0;y=N(r,d[y>>0]|0)|0;w=c+m|0;a[b+4>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+6|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+n|0;a[b+5>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+7|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+o|0;a[b+6>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=N(q,d[c+8>>0]|0)|0;u=N(r,d[u>>0]|0)|0;a[b+7>>0]=(w+32+v+u+(N(h,d[c+p>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=t}}while(0);return}function aJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(o,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(o,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(o,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(o,e[c+6>>1]|0)|0)+32|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=(m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+2>>1]|0)|0;b[a+2>>1]=(m+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+4>>1]|0)|0;b[a+4>>1]=(m+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+6>>1]|0)|0;b[a+6>>1]=(m+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,e[c>>1]|0)|0;q=c+2|0;t=N(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=N(m,e[p>>1]|0)|0;s=c+(h<<1)|0;b[a>>1]=(r+32+t+u+(N(k,e[s>>1]|0)|0)|0)>>>6;q=N(o,e[q>>1]|0)|0;u=c+4|0;t=N(l,e[u>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(d<<1)|0;b[a+2>>1]=(q+32+t+s+(N(k,e[r>>1]|0)|0)|0)>>>6;u=N(o,e[u>>1]|0)|0;s=c+6|0;t=N(l,e[s>>1]|0)|0;r=N(m,e[r>>1]|0)|0;q=c+(i<<1)|0;b[a+4>>1]=(u+32+t+r+(N(k,e[q>>1]|0)|0)|0)>>>6;s=N(o,e[s>>1]|0)|0;r=N(l,e[c+8>>1]|0)|0;q=N(m,e[q>>1]|0)|0;b[a+6>>1]=(s+32+r+q+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function bJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(o,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(o,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(o,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(o,d[c+3>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=(n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6;n=N(o,d[c+1>>0]|0)|0;a[b+1>>0]=(n+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6;n=N(o,d[c+2>>0]|0)|0;a[b+2>>0]=(n+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6;n=N(o,d[c+3>>0]|0)|0;a[b+3>>0]=(n+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,d[c>>0]|0)|0;q=c+1|0;t=N(m,d[q>>0]|0)|0;p=c+e|0;u=N(n,d[p>>0]|0)|0;s=c+i|0;a[b>>0]=(r+32+t+u+(N(h,d[s>>0]|0)|0)|0)>>>6;q=N(o,d[q>>0]|0)|0;u=c+2|0;t=N(m,d[u>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+j|0;a[b+1>>0]=(q+32+t+s+(N(h,d[r>>0]|0)|0)|0)>>>6;u=N(o,d[u>>0]|0)|0;s=c+3|0;t=N(m,d[s>>0]|0)|0;r=N(n,d[r>>0]|0)|0;q=c+k|0;a[b+2>>0]=(u+32+t+r+(N(h,d[q>>0]|0)|0)|0)>>>6;s=N(o,d[s>>0]|0)|0;r=N(m,d[c+4>>0]|0)|0;q=N(n,d[q>>0]|0)|0;a[b+3>>0]=(s+32+r+q+(N(h,d[c+l>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=p}}while(0);return}function cJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(m,e[c+2>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;k=N(m,e[c+2>>1]|0)|0;b[a+2>>1]=(k+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;q=c+2|0;r=N(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=N(k,e[n>>1]|0)|0;o=c+(h<<1)|0;b[a>>1]=(s+32+r+p+(N(i,e[o>>1]|0)|0)|0)>>>6;q=N(m,e[q>>1]|0)|0;p=N(j,e[c+4>>1]|0)|0;o=N(k,e[o>>1]|0)|0;b[a+2>>1]=(q+32+p+o+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function dJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(m,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(m,d[c+1>>0]|0)|0)+32|0)>>>6;b=b+e|0;c=c+e|0;g=g+1|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=(l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6;l=N(m,d[c+1>>0]|0)|0;a[b+1>>0]=(l+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;q=c+1|0;r=N(k,d[q>>0]|0)|0;n=c+e|0;p=N(l,d[n>>0]|0)|0;o=c+i|0;a[b>>0]=(s+32+r+p+(N(h,d[o>>0]|0)|0)|0)>>>6;q=N(m,d[q>>0]|0)|0;p=N(k,d[c+2>>0]|0)|0;o=N(l,d[o>>0]|0)|0;a[b+1>>0]=(q+32+p+o+(N(h,d[c+j>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=n}}while(0);return}function eJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=(p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function fJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(l,d[c>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=(k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=(p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=m}}while(0);return}function gJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+2|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+4|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+6|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+8|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+10|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+12|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+14|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;p=N(s,e[c+2>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;p=N(s,e[c+4>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;p=N(s,e[c+6>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+8|0;p=N(s,e[c+8>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+10|0;p=N(s,e[c+10>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+12|0;p=N(s,e[c+12>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+14|0;p=N(s,e[c+14>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,e[c>>1]|0)|0;v=c+2|0;z=N(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=N(q,e[t>>1]|0)|0;x=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((y+32+z+u+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+2|0;v=N(s,e[v>>1]|0)|0;z=c+4|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(d<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+4|0;z=N(s,e[z>>1]|0)|0;x=c+6|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(i<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+6|0;x=N(s,e[x>>1]|0)|0;w=c+8|0;y=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;z=c+(j<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+y+v+(N(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+8|0;w=N(s,e[w>>1]|0)|0;v=c+10|0;y=N(p,e[v>>1]|0)|0;z=N(q,e[z>>1]|0)|0;x=c+(k<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((w+32+y+z+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+10|0;v=N(s,e[v>>1]|0)|0;z=c+12|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(l<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+12|0;z=N(s,e[z>>1]|0)|0;x=c+14|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(m<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+14|0;x=N(s,e[x>>1]|0)|0;w=N(p,e[c+16>>1]|0)|0;v=N(q,e[v>>1]|0)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+w+v+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function hJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+1|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+2|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+3|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+4|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+5|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+6|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+7|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+1|0;q=N(s,d[c+1>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+2|0;q=N(s,d[c+2>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+3|0;q=N(s,d[c+3>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+4|0;q=N(s,d[c+4>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+5|0;q=N(s,d[c+5>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+6|0;q=N(s,d[c+6>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+7|0;q=N(s,d[c+7>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,d[c>>0]|0)|0;v=c+1|0;z=N(q,d[v>>0]|0)|0;t=c+e|0;u=N(r,d[t>>0]|0)|0;x=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((y+32+z+u+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+1|0;v=N(s,d[v>>0]|0)|0;z=c+2|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+j|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+2|0;z=N(s,d[z>>0]|0)|0;x=c+3|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+k|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+3|0;x=N(s,d[x>>0]|0)|0;w=c+4|0;y=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;z=c+l|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+y+v+(N(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+4|0;w=N(s,d[w>>0]|0)|0;v=c+5|0;y=N(q,d[v>>0]|0)|0;z=N(r,d[z>>0]|0)|0;x=c+m|0;a[u>>0]=((d[u>>0]|0)+1+((w+32+y+z+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+5|0;v=N(s,d[v>>0]|0)|0;z=c+6|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+n|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+6|0;z=N(s,d[z>>0]|0)|0;x=c+7|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+o|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+7|0;x=N(s,d[x>>0]|0)|0;w=N(q,d[c+8>>0]|0)|0;v=N(r,d[v>>0]|0)|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+w+v+(N(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=t}}while(0);return}function iJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+2|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+4|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+6|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+2|0;l=N(o,e[c+2>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+4|0;l=N(o,e[c+4>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+6|0;l=N(o,e[c+6>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,e[c>>1]|0)|0;r=c+2|0;v=N(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=N(m,e[p>>1]|0)|0;t=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((u+32+v+q+(N(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;r=N(o,e[r>>1]|0)|0;v=c+4|0;u=N(l,e[v>>1]|0)|0;t=N(m,e[t>>1]|0)|0;s=c+(d<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((r+32+u+t+(N(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;v=N(o,e[v>>1]|0)|0;t=c+6|0;u=N(l,e[t>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(i<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((v+32+u+s+(N(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;t=N(o,e[t>>1]|0)|0;s=N(l,e[c+8>>1]|0)|0;r=N(m,e[r>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((t+32+s+r+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function jJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+1|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+2|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+3|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+1|0;m=N(o,d[c+1>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+2|0;m=N(o,d[c+2>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+3|0;m=N(o,d[c+3>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,d[c>>0]|0)|0;r=c+1|0;v=N(m,d[r>>0]|0)|0;p=c+e|0;q=N(n,d[p>>0]|0)|0;t=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((u+32+v+q+(N(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+1|0;r=N(o,d[r>>0]|0)|0;v=c+2|0;u=N(m,d[v>>0]|0)|0;t=N(n,d[t>>0]|0)|0;s=c+j|0;a[q>>0]=((d[q>>0]|0)+1+((r+32+u+t+(N(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+2|0;v=N(o,d[v>>0]|0)|0;t=c+3|0;u=N(m,d[t>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+k|0;a[q>>0]=((d[q>>0]|0)+1+((v+32+u+s+(N(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+3|0;t=N(o,d[t>>0]|0)|0;s=N(m,d[c+4>>0]|0)|0;r=N(n,d[r>>0]|0)|0;a[q>>0]=((d[q>>0]|0)+1+((t+32+s+r+(N(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=p}}while(0);return}function kJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;k=a+2|0;b[k>>1]=((e[k>>1]|0)+1+(((N(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;k=a+2|0;j=N(m,e[c+2>>1]|0)|0;b[k>>1]=((e[k>>1]|0)+1+((j+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;r=c+2|0;q=N(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=N(k,e[n>>1]|0)|0;p=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((s+32+q+o+(N(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1;o=a+2|0;r=N(m,e[r>>1]|0)|0;q=N(j,e[c+4>>1]|0)|0;p=N(k,e[p>>1]|0)|0;b[o>>1]=((e[o>>1]|0)+1+((r+32+q+p+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function lJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;l=b+1|0;a[l>>0]=((d[l>>0]|0)+1+(((N(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;l=b+1|0;k=N(m,d[c+1>>0]|0)|0;a[l>>0]=((d[l>>0]|0)+1+((k+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;r=c+1|0;q=N(k,d[r>>0]|0)|0;n=c+e|0;o=N(l,d[n>>0]|0)|0;p=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((s+32+q+o+(N(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1;o=b+1|0;r=N(m,d[r>>0]|0)|0;q=N(k,d[c+2>>0]|0)|0;p=N(l,d[p>>0]|0)|0;a[o>>0]=((d[o>>0]|0)+1+((r+32+q+p+(N(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=n}}while(0);return}function mJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function nJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=m}}while(0);return}function oJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function pJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function qJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}iX(d|0,0,256)|0;return}function rJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function sJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:0-m>>31&511;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:0-o>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function tJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:0-r>>31&511;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:0-t>>31&511;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:0-v>>31&511;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:0-x>>31&511;g=g+1|0}iX(d|0,0,256)|0;return}function uJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function vJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return} +function wJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else uJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;sJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function xJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else vJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;tJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function yJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function zJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146266+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function AJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146266+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)uJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else sJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function BJ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146262+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function CJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function DJ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146260+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function EJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function FJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function GJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function HJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function IJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function JJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function KJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function LJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function MJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function NJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function OJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function PJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function QJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function RJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function SJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:0-u>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function TJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function UJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function VJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<1;q=g<<1;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;s=l-s|0;b[g>>1]=s>>>0<512?s:0-s>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function WJ(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function YJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function ZJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function _J(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function $J(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:0-m>>31&1023;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:0-o>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function bK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:0-r>>31&1023;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:0-t>>31&1023;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:0-v>>31&1023;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:0-x>>31&1023;g=g+1|0}iX(d|0,0,256)|0;return}function cK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function dK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function eK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else cK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;aK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function fK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else dK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;bK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function gK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)cK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else aK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function hK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)cK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else aK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146266+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)cK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else aK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function iK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146266+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)cK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else aK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function jK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146262+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function kK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function lK(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146260+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function mK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function nK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function oK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function pK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function qK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function rK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function sK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function tK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function uK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function vK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function wK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function xK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function yK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function zK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function AK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:0-u>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function BK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function CK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function DK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<2;q=g<<2;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;s=l-s|0;b[g>>1]=s>>>0<1024?s:0-s>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function EK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function FK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function GK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function HK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function IK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function JK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function KK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:0-m>>31&4095;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:0-o>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function LK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:0-r>>31&4095;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:0-t>>31&4095;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:0-v>>31&4095;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:0-x>>31&4095;g=g+1|0}iX(d|0,0,256)|0;return}function MK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function NK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function OK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else MK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;KK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function PK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else NK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;LK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function QK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)MK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else KK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function RK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)MK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else KK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146266+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)MK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else KK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function SK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146266+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)MK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else KK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function TK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146262+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function UK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function VK(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146260+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function WK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function XK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function YK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function ZK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function _K(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function $K(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function aL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function bL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function cL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function dL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function eL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function fL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function gL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function hL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function iL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:0-u>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function jL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function kL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function lL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<4;q=g<<4;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;s=l-s|0;b[g>>1]=s>>>0<4096?s:0-s>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function mL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function nL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function oL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function pL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function qL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function rL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function sL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:0-m>>31&16383;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:0-o>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function tL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:0-r>>31&16383;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:0-t>>31&16383;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:0-v>>31&16383;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:0-x>>31&16383;g=g+1|0}iX(d|0,0,256)|0;return}function uL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function vL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function wL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else uL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;sL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function xL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146266+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else vL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;tL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function yL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function zL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146266+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146266+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)uL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else sL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function AL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146266+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)uL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else sL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function BL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146262+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function CL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function DL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146260+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function EL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function FL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function GL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function HL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function IL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function JL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function KL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function LL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ML(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function NL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function OL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function PL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function QL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function RL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function SL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:0-u>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function TL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function UL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function VL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<6;q=g<<6;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;s=l-s|0;b[g>>1]=s>>>0<16384?s:0-s>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function WL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function XL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function YL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function ZL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function _L(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function $L(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function aM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function bM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}l=g<<1;m=g*3|0;n=g<<2;i=g*5|0;j=g*6|0;k=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+l)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+m)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+n)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+i)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+j)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+k)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function cM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;else e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function dM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;else e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function eM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[146266+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else cM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;aM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function fM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)>=16)break;switch(a[i+(d[146266+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else dM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;bM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return}function gM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146266+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)cM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else aM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function hM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=1;while(1){if((j|0)==3){j=1;break}k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146266+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)cM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else aM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if((k|0)>=(l|0))break;n=k+4|0;if(!(a[i+(d[146266+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)cM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else aM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function iM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[146266+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)cM(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else aM(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function jM(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=i;g=0;while(1){if((g|0)==4){g=0;break}s=g<<2;o=b[e+(s<<1)>>1]|0;p=s|1;k=b[e+(p<<1)>>1]|0;r=k+o|0;k=o-k|0;o=s|2;q=b[e+(o<<1)>>1]|0;j=s|3;t=b[e+(j<<1)>>1]|0;n=q-t|0;q=t+q|0;c[h+(s<<2)>>2]=q+r;c[h+(p<<2)>>2]=r-q;c[h+(o<<2)>>2]=k-n;c[h+(j<<2)>>2]=n+k;g=g+1|0}while(1){if((g|0)==4)break;t=d[146262+g>>0]|0;s=c[h+(g<<2)>>2]|0;p=c[h+(g+8<<2)>>2]|0;r=p+s|0;p=s-p|0;s=c[h+(g+4<<2)>>2]|0;o=c[h+(g+12<<2)>>2]|0;q=s-o|0;s=o+s|0;b[a+(t<<1)>>1]=((N(s+r|0,f)|0)+128|0)>>>8;b[a+(t+16<<1)>>1]=((N(q+p|0,f)|0)+128|0)>>>8;b[a+(t+64<<1)>>1]=((N(p-q|0,f)|0)+128|0)>>>8;b[a+(t+80<<1)>>1]=((N(r-s|0,f)|0)+128|0)>>>8;g=g+1|0}l=i;return}function kM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;b[a>>1]=(N(h+i|0,c)|0)>>>7;b[j>>1]=(N(e+f|0,c)|0)>>>7;b[g>>1]=(N(i-h|0,c)|0)>>>7;b[d>>1]=(N(f-e|0,c)|0)>>>7;return}function lM(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h;f=0;while(1){if((f|0)==4){f=0;break}j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}while(1){if((f|0)==2)break;k=d[146260+f>>0]|0;j=c[g+(f<<2)>>2]|0;o=c[g+(f+4<<2)>>2]|0;i=o+j|0;o=j-o|0;j=c[g+(f+2<<2)>>2]|0;p=c[g+(f+6<<2)>>2]|0;n=j-p|0;j=p+j|0;b[a+(k<<1)>>1]=((N(j+i|0,e)|0)+128|0)>>>8;b[a+(k+32<<1)>>1]=((N(n+o|0,e)|0)+128|0)>>>8;b[a+(k+64<<1)>>1]=((N(o-n|0,e)|0)+128|0)>>>8;b[a+(k+96<<1)>>1]=((N(i-j|0,e)|0)+128|0)>>>8;f=f+1|0}l=h;return}function mM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function nM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function oM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function pM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function qM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function rM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function sM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function tM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function uM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0-c|0;z=N(c,-2)|0;A=N(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function vM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function wM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function xM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=N(c,-3)|0;x=N(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=N(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;l=d[g>>0]|0;h=b+x|0;n=d[h>>0]|0;i=b+y|0;o=d[i>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[i>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){B=d[b+u>>0]|0;a[i>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[h>>0]=(l+2+n+o+p|0)>>>2;i=g;h=3;j=4;k=p;g=(l*3|0)+n+(B<<1)|0}else{h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}function yM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function zM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function AM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=N(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return} +function nq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=ZW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=ZW(m|0,n|0,65537,65537)|0;q=y;m=ZW(f|0,o|0,65537,65537)|0;n=y;k=ZW(r|0,s|0,65537,65537)|0;l=y;i=ZW(g|0,t|0,65537,65537)|0;j=y;g=ZW(u|0,v|0,65537,65537)|0;h=y;d=ZW(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function oq(a,b){a=a|0;b=b|0;iq(a,b);iq(a+(b<<3)|0,b);return}function pq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function qq(a,b){a=a|0;b=b|0;pq(a,b);Fp(a,0,b);return}function rq(a,b){a=a|0;b=b|0;nq(a,b);Pp(a,0,b);return}function sq(a,b){a=a|0;b=b|0;oq(a,b);a=a+(b<<2)|0;Qp(a,0,b);Qp(a+8|0,0,b);return}function tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function vq(a,b){a=a|0;b=b|0;oq(a,b);Qp(a,0,b);Qp(a+8|0,0,b);return}function wq(a,b){a=a|0;b=b|0;iq(a,b);Qp(a,0,b);Qp(a+8|0,0,b);return}function xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function yq(a,b){a=a|0;b=b|0;xq(a,b);xq(a+(b<<3)|0,b);return}function zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Bq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Cq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Dq(a,b){a=a|0;b=b|0;Wu(a,b);return}function Eq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Fq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Gq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Iq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Jq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Kq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}iX(d|0,0,256)|0;return}function Lq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}iX(d|0,0,256)|0;return}function Mq(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}iX(d|0,0,256)|0;l=s;return}function Nq(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}iX(d|0,0,256)|0;l=k;return}function Oq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Iq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Pq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Iq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Iq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Jq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Rq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Jq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Jq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Sq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Tq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=ZW(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=ZW(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Uq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Vq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Wq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Xq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Yq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Zq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function _q(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function $q(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=ZW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ar(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;d=a+(d*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function br(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;d=a+(d*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function cr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=ZW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function dr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;d=a+(d*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function er(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function fr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=ZW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=ZW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=ZW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=ZW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=ZW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=ZW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=ZW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=ZW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function gr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function hr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function ir(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function jr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function kr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function lr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function mr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function nr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=ZW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function or(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function pr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function qr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function sr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function tr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function ur(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function vr(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+p>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+o>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function wr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=ZW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=ZW(k|0,l|0,65537,65537)|0;h=y;d=ZW(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function xr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=ZW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=ZW(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function yr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function zr(a,b){a=a|0;b=b|0;yr(a,b);Uq(a,0,b);return}function Ar(a,b){a=a|0;b=b|0;wr(a,b);cr(a,0,b);return}function Br(a,b){a=a|0;b=b|0;xr(a,b);a=a+(b<<2)|0;dr(a,0,b);dr(a+8|0,0,b);return}function Cr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=ZW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=ZW(m|0,n|0,65537,65537)|0;q=y;m=ZW(f|0,o|0,65537,65537)|0;n=y;k=ZW(r|0,s|0,65537,65537)|0;l=y;i=ZW(g|0,t|0,65537,65537)|0;j=y;g=ZW(u|0,v|0,65537,65537)|0;h=y;d=ZW(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Dr(a,b){a=a|0;b=b|0;xr(a,b);xr(a+(b<<3)|0,b);return}function Er(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Fr(a,b){a=a|0;b=b|0;Er(a,b);Uq(a,0,b);return}function Gr(a,b){a=a|0;b=b|0;Cr(a,b);cr(a,0,b);return}function Hr(a,b){a=a|0;b=b|0;Dr(a,b);a=a+(b<<2)|0;dr(a,0,b);dr(a+8|0,0,b);return}function Ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function Jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function Kr(a,b){a=a|0;b=b|0;Dr(a,b);dr(a,0,b);dr(a+8|0,0,b);return}function Lr(a,b){a=a|0;b=b|0;xr(a,b);dr(a,0,b);dr(a+8|0,0,b);return}function Mr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function Nr(a,b){a=a|0;b=b|0;Mr(a,b);Mr(a+(b<<3)|0,b);return}function Or(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Pr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Qr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function Sr(a,b){a=a|0;b=b|0;Vu(a,b);return}function Tr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function Ur(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Vr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Wr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function Xr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Yr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Zr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}iX(d|0,0,256)|0;return}function _r(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}iX(d|0,0,256)|0;return}function $r(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}iX(d|0,0,256)|0;l=s;return}function as(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}iX(d|0,0,256)|0;l=k;return}function bs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Xr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function cs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Xr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Xr(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ds(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Yr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function es(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Yr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Yr(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function gs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=ZW(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=ZW(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=ZW(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function hs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function is(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function js(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function ks(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ls(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ms(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function ns(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function os(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=ZW(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ps(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;d=a+(d*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function qs(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;d=a+(d*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=ZW(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;d=a+(d*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function ts(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function us(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=ZW((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=ZW((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=ZW((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=ZW((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=ZW((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=ZW((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=ZW((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=ZW((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function vs(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function ws(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function xs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function ys(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function zs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function As(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Bs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Cs(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=ZW(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Ds(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Es(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Gs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Hs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Is(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Js(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Ks(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+p>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+o>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Ls(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=ZW(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=ZW(k|0,l|0,65537,65537)|0;h=y;d=ZW(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Ms(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=ZW(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=ZW(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Ns(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Os(a,b){a=a|0;b=b|0;Ns(a,b);hs(a,0,b);return}function Ps(a,b){a=a|0;b=b|0;Ls(a,b);rs(a,0,b);return}function Qs(a,b){a=a|0;b=b|0;Ms(a,b);a=a+(b<<2)|0;ss(a,0,b);ss(a+8|0,0,b);return}function Rs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=ZW(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=ZW(m|0,n|0,65537,65537)|0;q=y;m=ZW(f|0,o|0,65537,65537)|0;n=y;k=ZW(r|0,s|0,65537,65537)|0;l=y;i=ZW(g|0,t|0,65537,65537)|0;j=y;g=ZW(u|0,v|0,65537,65537)|0;h=y;d=ZW(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Ss(a,b){a=a|0;b=b|0;Ms(a,b);Ms(a+(b<<3)|0,b);return}function Ts(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=ZW(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=ZW(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Us(a,b){a=a|0;b=b|0;Ts(a,b);hs(a,0,b);return}function Vs(a,b){a=a|0;b=b|0;Rs(a,b);rs(a,0,b);return}function Ws(a,b){a=a|0;b=b|0;Ss(a,b);a=a+(b<<2)|0;ss(a,0,b);ss(a+8|0,0,b);return}function Xs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function Ys(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function Zs(a,b){a=a|0;b=b|0;Ss(a,b);ss(a,0,b);ss(a+8|0,0,b);return}function _s(a,b){a=a|0;b=b|0;Ms(a,b);ss(a,0,b);ss(a+8|0,0,b);return}function $s(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function at(a,b){a=a|0;b=b|0;$s(a,b);$s(a+(b<<3)|0,b);return}function bt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ct(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function dt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=ZW(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function et(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function ft(a,b){a=a|0;b=b|0;Uu(a,b);return}function gt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function ht(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function it(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=ZW(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function jt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function kt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function lt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function mt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}iX(d|0,0,256)|0;return}function nt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}iX(d|0,0,256)|0;return}function ot(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}iX(d|0,0,256)|0;l=s;return}function pt(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}iX(d|0,0,256)|0;l=k;return}function qt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;kt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function rt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}kt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;kt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function st(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;lt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function tt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}lt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;lt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ut(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function vt(a,b,e){a=a|0;b=b|0;e=e|0;c[a>>2]=N(d[a+-1>>0]|0,16843009)|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;b=e<<1;c[a+b>>2]=N(d[a+(b+-1)>>0]|0,16843009)|0;e=e*3|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;return}function wt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function xt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[b+(1-e)>>0]|0;h=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+2+h+(l<<1)|0)>>>2;c=(l+2+k+(h<<1)|0)>>>2&255;a[b+e>>0]=c;a[b+1>>0]=c;c=(h+2+j+(k<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+2+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function yt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d[b+~e>>0]|0;h=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;k=d[b+-1>>0]|0;n=d[b+(e+-1)>>0]|0;j=e<<1;i=d[b+(j+-1)>>0]|0;l=e*3|0;a[b+l>>0]=(n+2+(d[b+(l+-1)>>0]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&255;a[b+(l+1)>>0]=i;a[b+j>>0]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&255;a[b+(l+2)>>0]=n;a[b+(j|1)>>0]=n;a[b+e>>0]=n;k=((m<<1)+2+h+k|0)>>>2&255;a[b+(l+3)>>0]=k;a[b+(j+2)>>0]=k;a[b+(e+1)>>0]=k;a[b>>0]=k;i=(i+(h<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+2+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function zt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;o=(j+1+n|0)>>>1&255;a[b+(i|1)>>0]=o;a[b>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(i+2)>>0]=o;a[b+1>>0]=o;o=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=o;a[b+2>>0]=o;a[b+3>>0]=(l+1+k|0)>>>1;o=((j<<1)+2+n+h|0)>>>2&255;a[b+(c+1)>>0]=o;a[b+e>>0]=o;j=j+2|0;o=(j+(n<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+2+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function At(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;o=(k+1+j|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=((k<<1)+2+n+j|0)>>>2&255;a[b+(e+3)>>0]=o;a[b+1>>0]=o;k=k+2|0;a[b+2>>0]=(k+(n<<1)+m|0)>>>2;a[b+3>>0]=(n+2+(m<<1)+l|0)>>>2;l=(j+1+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Bt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d[b+(0-e)>>0]|0;k=d[b+(1-e)>>0]|0;j=d[b+(2-e)>>0]|0;i=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;a[b>>0]=(l+1+k|0)>>>1;m=(k+1+j|0)>>>1&255;c=e<<1;a[b+c>>0]=m;a[b+1>>0]=m;m=(j+1+i|0)>>>1&255;a[b+(c|1)>>0]=m;a[b+2>>0]=m;m=(i+1+h|0)>>>1&255;a[b+(c+2)>>0]=m;a[b+3>>0]=m;a[b+(c+3)>>0]=(h+1+g|0)>>>1;a[b+e>>0]=(l+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(e+1)>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Ct(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d[b+-1>>0]|0;j=d[b+(e+-1)>>0]|0;c=e<<1;i=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;a[b>>0]=(k+1+j|0)>>>1;a[b+1>>0]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&255;a[b+e>>0]=k;a[b+2>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=(i+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+2+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Dt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Et(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function Ft(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function Gt(a,b,e){a=a|0;b=b|0;e=e|0;b=N(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Ht(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function It(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=d[b+(0-g)>>0]|0;n=d[b+(1-g)>>0]|0;h=d[b+(2-g)>>0]|0;m=d[b+(3-g)>>0]|0;l=d[b+(4-g)>>0]|0;k=d[b+(5-g)>>0]|0;j=d[b+(6-g)>>0]|0;i=d[b+(7-g)>>0]|0;f=(j+2+(d[b+((f|0?8:7)-g)>>0]|0)+(i<<1)|0)>>>2;a[b>>0]=((d[b+((((e|0)!=0)<<31>>31)-g)>>0]|0)+2+(o<<1)+n|0)>>>2;a[b+1>>0]=(o+2+(n<<1)+h|0)>>>2;a[b+2>>0]=(n+2+(h<<1)+m|0)>>>2;a[b+3>>0]=(h+2+(m<<1)+l|0)>>>2;h=b+4|0;a[h>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+5>>0]=(l+2+(k<<1)+j|0)>>>2;a[b+6>>0]=(k+2+(j<<1)+i|0)>>>2;a[b+7>>0]=f;f=c[b>>2]|0;h=c[h>>2]|0;e=1;while(1){if((e|0)==8)break;o=b+(N(e,g)|0)|0;c[o>>2]=f;c[o+4>>2]=h;e=e+1|0}return}function Jt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;r=d[a+-1>>0]|0;p=d[a+(f+-1)>>0]|0;q=f<<1;n=d[a+(q+-1)>>0]|0;o=f*3|0;l=d[a+(o+-1)>>0]|0;m=f<<2;j=d[a+(m+-1)>>0]|0;k=f*5|0;h=d[a+(k+-1)>>0]|0;i=f*6|0;g=d[a+(i+-1)>>0]|0;b=f*7|0;e=d[a+(b+-1)>>0]|0;s=N((s+2+(r<<1)+p|0)>>>2,16843009)|0;c[a>>2]=s;c[a+4>>2]=s;r=N((r+2+(p<<1)+n|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=r;c[f+4>>2]=r;p=N((p+2+(n<<1)+l|0)>>>2,16843009)|0;f=a+q|0;c[f>>2]=p;c[f+4>>2]=p;n=N((n+2+(l<<1)+j|0)>>>2,16843009)|0;f=a+o|0;c[f>>2]=n;c[f+4>>2]=n;l=N((l+2+(j<<1)+h|0)>>>2,16843009)|0;f=a+m|0;c[f>>2]=l;c[f+4>>2]=l;j=N((j+2+(h<<1)+g|0)>>>2,16843009)|0;f=a+k|0;c[f>>2]=j;c[f+4>>2]=j;h=N((h+2+(g<<1)+e|0)>>>2,16843009)|0;f=a+i|0;c[f>>2]=h;c[f+4>>2]=h;e=N((g+2+(e*3|0)|0)>>>2,16843009)|0;f=a+b|0;c[f>>2]=e;c[f+4>>2]=e;return}function Kt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=((b|0)!=0)<<31>>31;w=d[a+((N(n,f)|0)+-1)>>0]|0;v=d[a+-1>>0]|0;u=d[a+(f+-1)>>0]|0;t=d[a+((f<<1)+-1)>>0]|0;s=d[a+((f*3|0)+-1)>>0]|0;r=d[a+((f<<2)+-1)>>0]|0;q=d[a+((f*5|0)+-1)>>0]|0;p=d[a+((f*6|0)+-1)>>0]|0;o=d[a+((f*7|0)+-1)>>0]|0;m=d[a+(0-f)>>0]|0;l=d[a+(1-f)>>0]|0;k=d[a+(2-f)>>0]|0;j=d[a+(3-f)>>0]|0;i=d[a+(4-f)>>0]|0;h=d[a+(5-f)>>0]|0;g=d[a+(6-f)>>0]|0;b=d[a+(7-f)>>0]|0;e=N(((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((d[a+(n-f)>>0]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(d[a+((e|0?8:7)-f)>>0]|0)+(b<<1)|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Lt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=d[b+(0-f)>>0]|0;q=d[b+(1-f)>>0]|0;t=d[b+(2-f)>>0]|0;r=(p+2+(q<<1)+t|0)>>>2;u=d[b+(3-f)>>0]|0;s=(q+2+(t<<1)+u|0)>>>2;v=d[b+(4-f)>>0]|0;t=(t+2+(u<<1)+v|0)>>>2;w=d[b+(5-f)>>0]|0;u=(u+2+(v<<1)+w|0)>>>2;o=d[b+(6-f)>>0]|0;v=(v+2+(w<<1)+o|0)>>>2;n=d[b+(7-f)>>0]|0;w=(w+2+(o<<1)+n|0)>>>2;m=(e|0)!=0;o=(o+2+(d[b+((m?8:7)-f)>>0]|0)+(n<<1)|0)>>>2;if(m){x=d[b+(8-f)>>0]|0;e=d[b+(9-f)>>0]|0;m=d[b+(10-f)>>0]|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+2+(l<<1)+k|0)>>>2;l=(e+2+(m<<1)+l|0)>>>2;m=(x+2+(e<<1)+m|0)>>>2;e=(n+2+(x<<1)+e|0)>>>2}else{g=n;h=n;i=n;j=n;k=n;l=n;m=n;e=n}a[b>>0]=((((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(p<<1)+q|0)>>>2)+2+(r<<1)+s|0)>>>2;r=(r+2+(s<<1)+t|0)>>>2&255;a[b+1>>0]=r;a[b+f>>0]=r;s=(s+2+(t<<1)+u|0)>>>2&255;a[b+2>>0]=s;a[b+(f+1)>>0]=s;r=f<<1;a[b+r>>0]=s;t=(t+2+(u<<1)+v|0)>>>2&255;a[b+3>>0]=t;a[b+(f+2)>>0]=t;a[b+(r|1)>>0]=t;s=f*3|0;a[b+s>>0]=t;u=(u+2+(v<<1)+w|0)>>>2&255;a[b+4>>0]=u;a[b+(f+3)>>0]=u;a[b+(r+2)>>0]=u;a[b+(s+1)>>0]=u;t=f<<2;a[b+t>>0]=u;v=(v+2+(w<<1)+o|0)>>>2&255;a[b+5>>0]=v;a[b+(f+4)>>0]=v;a[b+(r+3)>>0]=v;a[b+(s+2)>>0]=v;a[b+(t|1)>>0]=v;u=f*5|0;a[b+u>>0]=v;w=(w+2+(o<<1)+e|0)>>>2&255;a[b+6>>0]=w;a[b+(f+5)>>0]=w;a[b+(r+4)>>0]=w;a[b+(s+3)>>0]=w;a[b+(t|2)>>0]=w;a[b+(u+1)>>0]=w;v=f*6|0;a[b+v>>0]=w;w=(o+2+(e<<1)+m|0)>>>2&255;a[b+7>>0]=w;a[b+(f+6)>>0]=w;a[b+(r+5)>>0]=w;a[b+(s+4)>>0]=w;a[b+(t|3)>>0]=w;a[b+(u+2)>>0]=w;a[b+(v|1)>>0]=w;x=f*7|0;a[b+x>>0]=w;w=(e+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=w;a[b+(r+6)>>0]=w;a[b+(s+5)>>0]=w;a[b+(t+4)>>0]=w;a[b+(u+3)>>0]=w;a[b+(v+2)>>0]=w;a[b+(x+1)>>0]=w;w=(m+2+(l<<1)+k|0)>>>2&255;a[b+(r+7)>>0]=w;a[b+(s+6)>>0]=w;a[b+(t+5)>>0]=w;a[b+(u+4)>>0]=w;a[b+(v+3)>>0]=w;a[b+(x+2)>>0]=w;w=(l+2+(k<<1)+j|0)>>>2&255;a[b+(s+7)>>0]=w;a[b+(t+6)>>0]=w;a[b+(u+5)>>0]=w;a[b+(v+4)>>0]=w;a[b+(x+3)>>0]=w;w=(k+2+(j<<1)+i|0)>>>2&255;a[b+(t+7)>>0]=w;a[b+(u+6)>>0]=w;a[b+(v+5)>>0]=w;a[b+(x+4)>>0]=w;w=(j+2+(i<<1)+h|0)>>>2&255;a[b+(u+7)>>0]=w;a[b+(v+6)>>0]=w;a[b+(x+5)>>0]=w;w=(i+2+(h<<1)+g|0)>>>2&255;a[b+(v+7)>>0]=w;a[b+(x+6)>>0]=w;a[b+(x+7)>>0]=(h+2+(g*3|0)|0)>>>2;return}function Mt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;t=((c|0)!=0)<<31>>31;C=d[b+(0-f)>>0]|0;k=d[b+(1-f)>>0]|0;s=((d[b+(t-f)>>0]|0)+2+(C<<1)+k|0)>>>2;i=d[b+(2-f)>>0]|0;C=C+2|0;m=(C+(k<<1)+i|0)>>>2;h=d[b+(3-f)>>0]|0;k=(k+2+(i<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;v=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+v|0)>>>2;q=d[b+(7-f)>>0]|0;c=(c+2+(v<<1)+q|0)>>>2;e=(v+2+(d[b+((e|0?8:7)-f)>>0]|0)+(q<<1)|0)>>>2;t=d[b+((N(t,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;v=d[b+(f+-1)>>0]|0;t=(t+2+(q<<1)+v|0)>>>2;j=f<<1;w=d[b+(j+-1)>>0]|0;o=(q+2+(v<<1)+w|0)>>>2;l=f*3|0;x=d[b+(l+-1)>>0]|0;v=(v+2+(w<<1)+x|0)>>>2;n=f<<2;y=d[b+(n+-1)>>0]|0;w=(w+2+(x<<1)+y|0)>>>2;p=f*5|0;z=d[b+(p+-1)>>0]|0;x=(x+2+(y<<1)+z|0)>>>2;r=f*6|0;B=d[b+(r+-1)>>0]|0;y=(y+2+(z<<1)+B|0)>>>2;u=f*7|0;A=d[b+(u+-1)>>0]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+u>>0]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=z;a[b+r>>0]=z;y=(w+2+(x<<1)+y|0)>>>2&255;a[b+(u+2)>>0]=y;a[b+(r|1)>>0]=y;a[b+p>>0]=y;x=(v+2+(w<<1)+x|0)>>>2&255;a[b+(u+3)>>0]=x;a[b+(r+2)>>0]=x;a[b+(p+1)>>0]=x;a[b+n>>0]=x;w=(o+2+(v<<1)+w|0)>>>2&255;a[b+(u+4)>>0]=w;a[b+(r+3)>>0]=w;a[b+(p+2)>>0]=w;a[b+(n|1)>>0]=w;a[b+l>>0]=w;v=(t+2+(o<<1)+v|0)>>>2&255;a[b+(u+5)>>0]=v;a[b+(r+4)>>0]=v;a[b+(p+3)>>0]=v;a[b+(n|2)>>0]=v;a[b+(l+1)>>0]=v;a[b+j>>0]=v;o=((t<<1)+2+o+q|0)>>>2&255;a[b+(u+6)>>0]=o;a[b+(r+5)>>0]=o;a[b+(p+4)>>0]=o;a[b+(n|3)>>0]=o;a[b+(l+2)>>0]=o;a[b+(j|1)>>0]=o;a[b+f>>0]=o;o=s+2|0;t=(o+t+(q<<1)|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(r+6)>>0]=t;a[b+(p+5)>>0]=t;a[b+(n+4)>>0]=t;a[b+(l+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;a[b>>0]=t;q=((s<<1)+2+m+q|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+6)>>0]=q;a[b+(n+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+(j+3)>>0]=q;a[b+(f+2)>>0]=q;a[b+1>>0]=q;o=(o+(m<<1)+k|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(n+6)>>0]=o;a[b+(l+5)>>0]=o;a[b+(j+4)>>0]=o;a[b+(f+3)>>0]=o;a[b+2>>0]=o;m=(m+2+(k<<1)+i|0)>>>2&255;a[b+(n+7)>>0]=m;a[b+(l+6)>>0]=m;a[b+(j+5)>>0]=m;a[b+(f+4)>>0]=m;a[b+3>>0]=m;k=(k+2+(i<<1)+h|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;a[b+4>>0]=k;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(j+7)>>0]=i;a[b+(f+6)>>0]=i;a[b+5>>0]=i;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(f+7)>>0]=h;a[b+6>>0]=h;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Nt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;n=d[b+(1-f)>>0]|0;u=((d[b+(s-f)>>0]|0)+2+(A<<1)+n|0)>>>2;k=d[b+(2-f)>>0]|0;A=A+2|0;q=(A+(n<<1)+k|0)>>>2;h=d[b+(3-f)>>0]|0;n=(n+2+(k<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;k=(k+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;r=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+r|0)>>>2;t=d[b+(7-f)>>0]|0;c=(c+2+(r<<1)+t|0)>>>2;e=(r+2+(d[b+((e|0?8:7)-f)>>0]|0)+(t<<1)|0)>>>2;s=d[b+((N(s,f)|0)+-1)>>0]|0;t=d[b+-1>>0]|0;r=d[b+(f+-1)>>0]|0;s=(s+2+(t<<1)+r|0)>>>2;i=f<<1;x=d[b+(i+-1)>>0]|0;v=(t+2+(r<<1)+x|0)>>>2;j=f*3|0;w=d[b+(j+-1)>>0]|0;r=(r+2+(x<<1)+w|0)>>>2;l=f<<2;z=d[b+(l+-1)>>0]|0;x=(x+2+(w<<1)+z|0)>>>2;m=f*5|0;B=d[b+(m+-1)>>0]|0;w=(w+2+(z<<1)+B|0)>>>2;o=f*6|0;y=d[b+(o+-1)>>0]|0;z=(z+2+(B<<1)+y|0)>>>2;p=f*7|0;y=(B+2+(y<<1)+(d[b+(p+-1)>>0]|0)|0)>>>2;t=(A+t+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+o>>0]=(x+2+(w<<1)+z|0)>>>2;a[b+p>>0]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(r<<1)+x|0)>>>2&255;a[b+(o|1)>>0]=y;a[b+l>>0]=y;w=(r+2+(x<<1)+w|0)>>>2&255;a[b+(p+1)>>0]=w;a[b+m>>0]=w;w=((s<<1)+2+v+t|0)>>>2&255;a[b+(o+2)>>0]=w;a[b+(l|1)>>0]=w;a[b+i>>0]=w;r=(s+2+(v<<1)+r|0)>>>2&255;a[b+(p+2)>>0]=r;a[b+(m+1)>>0]=r;a[b+j>>0]=r;r=u+2|0;s=(r+s+(t<<1)|0)>>>2&255;a[b+(p+3)>>0]=s;a[b+(m+2)>>0]=s;a[b+(j+1)>>0]=s;a[b+f>>0]=s;s=u+1|0;v=(s+t|0)>>>1&255;a[b+(o+3)>>0]=v;a[b+(l|2)>>0]=v;a[b+(i|1)>>0]=v;a[b>>0]=v;t=((u<<1)+2+q+t|0)>>>2&255;a[b+(p+4)>>0]=t;a[b+(m+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;s=(s+q|0)>>>1&255;a[b+(o+4)>>0]=s;a[b+(l|3)>>0]=s;a[b+(i+2)>>0]=s;a[b+1>>0]=s;r=(r+(q<<1)+n|0)>>>2&255;a[b+(p+5)>>0]=r;a[b+(m+4)>>0]=r;a[b+(j+3)>>0]=r;a[b+(f+2)>>0]=r;r=(q+1+n|0)>>>1&255;a[b+(o+5)>>0]=r;a[b+(l+4)>>0]=r;a[b+(i+3)>>0]=r;a[b+2>>0]=r;q=(q+2+(n<<1)+k|0)>>>2&255;a[b+(p+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(j+4)>>0]=q;a[b+(f+3)>>0]=q;q=(n+1+k|0)>>>1&255;a[b+(o+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(i+4)>>0]=q;a[b+3>>0]=q;n=(n+2+(k<<1)+h|0)>>>2&255;a[b+(p+7)>>0]=n;a[b+(m+6)>>0]=n;a[b+(j+5)>>0]=n;a[b+(f+4)>>0]=n;n=(k+1+h|0)>>>1&255;a[b+(o+7)>>0]=n;a[b+(l+6)>>0]=n;a[b+(i+5)>>0]=n;a[b+4>>0]=n;k=(k+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;k=(h+1+g|0)>>>1&255;a[b+(l+7)>>0]=k;a[b+(i+6)>>0]=k;a[b+5>>0]=k;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(j+7)>>0]=h;a[b+(f+6)>>0]=h;h=(g+1+c|0)>>>1&255;a[b+(i+7)>>0]=h;a[b+6>>0]=h;a[b+(f+7)>>0]=(g+2+(c<<1)+e|0)>>>2;a[b+7>>0]=(c+1+e|0)>>>1;return}function Ot(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;i=d[b+(1-f)>>0]|0;n=((d[b+(o-f)>>0]|0)+2+(A<<1)+i|0)>>>2;h=d[b+(2-f)>>0]|0;A=A+2|0;j=(A+(i<<1)+h|0)>>>2;g=d[b+(3-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(4-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;m=d[b+(5-f)>>0]|0;g=(g+2+(c<<1)+m|0)>>>2;e=d[b+(6-f)>>0]|0;c=(c+2+(m<<1)+e|0)>>>2;e=(m+2+(e<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;o=d[b+((N(o,f)|0)+-1)>>0]|0;m=d[b+-1>>0]|0;k=d[b+(f+-1)>>0]|0;o=(o+2+(m<<1)+k|0)>>>2;l=f<<1;t=d[b+(l+-1)>>0]|0;q=(m+2+(k<<1)+t|0)>>>2;p=f*3|0;v=d[b+(p+-1)>>0]|0;k=(k+2+(t<<1)+v|0)>>>2;r=f<<2;x=d[b+(r+-1)>>0]|0;t=(t+2+(v<<1)+x|0)>>>2;s=f*5|0;y=d[b+(s+-1)>>0]|0;v=(v+2+(x<<1)+y|0)>>>2;u=f*6|0;B=d[b+(u+-1)>>0]|0;x=(x+2+(y<<1)+B|0)>>>2;w=f*7|0;z=d[b+(w+-1)>>0]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+w>>0]=(z+1+y|0)>>>1;a[b+(w+1)>>0]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&255;a[b+(w+2)>>0]=z;a[b+u>>0]=z;y=(v+2+(x<<1)+y|0)>>>2&255;a[b+(w+3)>>0]=y;a[b+(u|1)>>0]=y;y=(v+1+x|0)>>>1&255;a[b+(w+4)>>0]=y;a[b+(u+2)>>0]=y;a[b+s>>0]=y;x=(t+2+(v<<1)+x|0)>>>2&255;a[b+(w+5)>>0]=x;a[b+(u+3)>>0]=x;a[b+(s+1)>>0]=x;x=(t+1+v|0)>>>1&255;a[b+(w+6)>>0]=x;a[b+(u+4)>>0]=x;a[b+(s+2)>>0]=x;a[b+r>>0]=x;v=(k+2+(t<<1)+v|0)>>>2&255;a[b+(w+7)>>0]=v;a[b+(u+5)>>0]=v;a[b+(s+3)>>0]=v;a[b+(r|1)>>0]=v;v=(k+1+t|0)>>>1&255;a[b+(u+6)>>0]=v;a[b+(s+4)>>0]=v;a[b+(r|2)>>0]=v;a[b+p>>0]=v;t=(q+2+(k<<1)+t|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(s+5)>>0]=t;a[b+(r|3)>>0]=t;a[b+(p+1)>>0]=t;t=(q+1+k|0)>>>1&255;a[b+(s+6)>>0]=t;a[b+(r+4)>>0]=t;a[b+(p+2)>>0]=t;a[b+l>>0]=t;k=(o+2+(q<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=k;a[b+(r+5)>>0]=k;a[b+(p+3)>>0]=k;a[b+(l|1)>>0]=k;k=o+1|0;s=(k+q|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(l+2)>>0]=s;a[b+f>>0]=s;q=((o<<1)+2+q+m|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+5)>>0]=q;a[b+(l+3)>>0]=q;a[b+(f+1)>>0]=q;k=(k+m|0)>>>1&255;a[b+(p+6)>>0]=k;a[b+(l+4)>>0]=k;a[b+(f+2)>>0]=k;a[b>>0]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(l+5)>>0]=o;a[b+(f+3)>>0]=o;a[b+1>>0]=o;m=((n<<1)+2+j+m|0)>>>2&255;a[b+(l+6)>>0]=m;a[b+(f+4)>>0]=m;a[b+2>>0]=m;k=(k+(j<<1)+i|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(f+5)>>0]=k;a[b+3>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(f+6)>>0]=j;a[b+4>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(f+7)>>0]=i;a[b+5>>0]=i;a[b+6>>0]=(h+2+(g<<1)+c|0)>>>2;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function Pt(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=d[b+(0-f)>>0]|0;m=d[b+(1-f)>>0]|0;k=((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(l<<1)+m|0)>>>2;n=d[b+(2-f)>>0]|0;l=(l+2+(m<<1)+n|0)>>>2;o=d[b+(3-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(4-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;o=(o+2+(p<<1)+q|0)>>>2;j=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+j|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(j<<1)+c|0)>>>2;i=(e|0)!=0;j=(j+2+(d[b+((i?8:7)-f)>>0]|0)+(c<<1)|0)>>>2;if(i){s=d[b+(8-f)>>0]|0;r=d[b+(9-f)>>0]|0;i=d[b+(10-f)>>0]|0;h=d[b+(11-f)>>0]|0;g=d[b+(12-f)>>0]|0;e=(h+2+(g<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(r+2+(i<<1)+h|0)>>>2;i=(s+2+(r<<1)+i|0)>>>2;c=(c+2+(s<<1)+r|0)>>>2}else{e=c;g=c;h=c;i=c}a[b>>0]=(k+1+l|0)>>>1;a[b+f>>0]=(k+2+(l<<1)+m|0)>>>2;s=(l+1+m|0)>>>1&255;a[b+1>>0]=s;t=f<<1;a[b+t>>0]=s;s=(l+2+(m<<1)+n|0)>>>2&255;a[b+(f+1)>>0]=s;k=f*3|0;a[b+k>>0]=s;s=(m+1+n|0)>>>1&255;a[b+2>>0]=s;a[b+(t|1)>>0]=s;l=f<<2;a[b+l>>0]=s;s=(m+2+(n<<1)+o|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;m=f*5|0;a[b+m>>0]=s;s=(n+1+o|0)>>>1&255;a[b+3>>0]=s;a[b+(t+2)>>0]=s;a[b+(l|1)>>0]=s;r=f*6|0;a[b+r>>0]=s;n=(n+2+(o<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=n;a[b+(k+2)>>0]=n;a[b+(m+1)>>0]=n;s=f*7|0;a[b+s>>0]=n;n=(o+1+p|0)>>>1&255;a[b+4>>0]=n;a[b+(t+3)>>0]=n;a[b+(l|2)>>0]=n;a[b+(r|1)>>0]=n;o=(o+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=o;a[b+(k+3)>>0]=o;a[b+(m+2)>>0]=o;a[b+(s+1)>>0]=o;o=(p+1+q|0)>>>1&255;a[b+5>>0]=o;a[b+(t+4)>>0]=o;a[b+(l|3)>>0]=o;a[b+(r+2)>>0]=o;p=(p+2+(q<<1)+j|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(m+3)>>0]=p;a[b+(s+2)>>0]=p;p=(q+1+j|0)>>>1&255;a[b+6>>0]=p;a[b+(t+5)>>0]=p;a[b+(l+4)>>0]=p;a[b+(r+3)>>0]=p;q=(q+2+(j<<1)+c|0)>>>2&255;a[b+(f+6)>>0]=q;a[b+(k+5)>>0]=q;a[b+(m+4)>>0]=q;a[b+(s+3)>>0]=q;q=(j+1+c|0)>>>1&255;a[b+7>>0]=q;a[b+(t+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(r+4)>>0]=q;q=(j+2+(c<<1)+i|0)>>>2&255;a[b+(f+7)>>0]=q;a[b+(k+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(s+4)>>0]=q;f=(c+1+i|0)>>>1&255;a[b+(t+7)>>0]=f;a[b+(l+6)>>0]=f;a[b+(r+5)>>0]=f;f=(c+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(m+6)>>0]=f;a[b+(s+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(l+7)>>0]=f;a[b+(r+6)>>0]=f;f=(i+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=f;a[b+(s+6)>>0]=f;a[b+(r+7)>>0]=(h+1+g|0)>>>1;a[b+(s+7)>>0]=(h+2+(g<<1)+e|0)>>>2;return} +function wk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+208|0;if((l|0)>=(m|0))W(208);ia=qa+128|0;ba=qa+120|0;ea=qa+104|0;da=qa+88|0;t=qa+80|0;s=qa+72|0;r=qa+64|0;u=qa+56|0;p=qa+40|0;q=qa+24|0;o=qa+16|0;k=qa;ka=qa+192|0;V=qa+176|0;X=qa+144|0;na=f+28212|0;Y=c[(c[na>>2]|0)+64>>2]|0;ja=f+28216|0;ca=((c[(c[ja>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ma=c[f+25664>>2]|0;ga=g+21788|0;ha=g+21792|0;$=f+27016|0;pa=(N(c[$>>2]|0,c[ha>>2]|0)|0)+(c[ga>>2]|0)|0;oa=g+21796|0;c[oa>>2]=pa;n=g+840|0;if((c[n>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;if((h|0)==-1){h=xk(g+4|0)|0;c[j>>2]=h}i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26376>>2]|0?(c[ha>>2]&1|i|0)==0:0){pa=yk(g+4|0)|0;c[g+21828>>2]=pa;c[g+21832>>2]=pa}zk(f,g);h=0}else fa=9}else fa=9;a:do if((fa|0)==9){_=f+26376|0;if(c[_>>2]|0?(c[ha>>2]&1|0)==0:0){la=yk(g+4|0)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}c[g+21648>>2]=0;la=g+4|0;i=Ak(la)|0;c[ka>>2]=i;b:do switch(c[n>>2]|0){case 3:if(i>>>0<23){aa=a[113990+(i<<2)+2>>0]|0;h=e[113990+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-23|0;c[ka>>2]=h;fa=21;break b}case 2:if(i>>>0<5){aa=a[113954+(i<<2)+2>>0]|0;h=e[113954+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-5|0;c[ka>>2]=h;fa=21;break b}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ka>>2]=h;fa=21}else{h=i;fa=21}}}while(0);do if((fa|0)==21)if(h>>>0>25){f=c[f+4>>2]|0;oa=(Ui(c[g+836>>2]|0)|0)<<24>>24;pa=c[ga>>2]|0;g=c[ha>>2]|0;c[k>>2]=h;c[k+4>>2]=oa;c[k+8>>2]=pa;c[k+12>>2]=g;Uf(f,16,134767,k);h=-1;break a}else{aa=d[113850+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113850+(h<<2)+2>>0];h=e[113850+(h<<2)>>1]|0;c[ka>>2]=h;i=0;break}while(0);Z=g+21828|0;if(c[Z>>2]|0){h=h|128;c[ka>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[ja>>2]|0;h=N(c[h+1184>>2]|0,e[114134+(c[h+12>>2]<<1)>>1]|0)|0;c[g+27780>>2]=Bk(la)|0;if((Ck(la)|0)<(h|0)){Uf(c[f+4>>2]|0,16,134810,o);h=-1094995529;break}else{Dk(la,h);a[(c[f+24340>>2]|0)+pa>>0]=0;k=(c[f+25972>>2]|0)+(pa*48|0)|0;n=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(n|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[ka>>2];h=0;break}}Ek(f,g,h);Fk(f,g,h);c:do if(!(h&7)){if(i<<24>>24==4){d:do if((c[n>>2]|0)==3){h=0;while(1){if((h|0)>=4)break;i=Jk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>12){fa=52;break}c[V+(h<<2)>>2]=d[114082+(k<<2)+2>>0];b[j>>1]=b[114082+((i&65535)<<2)>>1]|0;h=h+1|0}if((fa|0)==52){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[q>>2]=k;c[q+4>>2]=pa;c[q+8>>2]=f;Uf(g,16,134851,q);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))fa=56;else{Kk(f,g,ka);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;fa=56}}else{h=0;while(1){if((h|0)>=4){fa=56;break d}i=Jk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>3)break;c[V+(h<<2)>>2]=d[113974+(k<<2)+2>>0];b[j>>1]=b[113974+((i&65535)<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[p>>2]=k;c[p+4>>2]=pa;c[p+8>>2]=f;Uf(g,16,134891,p)}while(0);do if((fa|0)==56){U=g+23412|0;o=g+21832|0;n=0;e:while(1){h=c[U>>2]|0;if(n>>>0>=h>>>0)break;if(!(c[ka>>2]&512))k=c[g+23404+(n<<2)>>2]<>2];else k=1;j=4096<<(n<<1);i=0;while(1){if((i|0)>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){f:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break f}case 2:{h=(yk(la)|0)^1;break f}default:{h=Jk(la)|0;if(h>>>0>>0)break f;else{fa=73;break e}}}while(0);c[X+(n<<4)+(i<<2)>>2]=h}i=i+1|0}n=n+1|0}if((fa|0)==73){g=c[f+4>>2]|0;c[u>>2]=h;Uf(g,16,134931,u);break}if(!Y)n=0;else{Y=(c[(c[ja>>2]|0)+72>>2]|0)==0;n=g+28552|0;n=(((Y?24117616:7340144)&c[n>>2]|0)==0?((Y?24117616:7340144)&c[n+4>>2]|0)==0:0)&1}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;while(1){if(O>>>0>=h>>>0)break;K=O<<1;H=4096<>1]&256)){Y=c[X+(O<<4)+(G<<2)>>2]&255;M=G<<2;i=d[146266+M>>0]|0;a[i+9+(g+28272+(O*40|0))>>0]=Y;a[i+8+(g+28272+(O*40|0))>>0]=Y;a[i+1+(g+28272+(O*40|0))>>0]=Y;a[g+28272+(O*40|0)+i>>0]=Y;h=e[h>>1]|0;if(!(H&h)){c[g+27952+(O*160|0)+(i<<2)+36>>2]=0;c[g+27952+(O*160|0)+(i<<2)+32>>2]=0;c[g+27952+(O*160|0)+(i<<2)+4>>2]=0;c[g+27952+(O*160|0)+(i<<2)>>2]=0;break}C=h&24|0?2:1;D=c[V+(G<<2)>>2]|0;E=(h&8|0)==0;F=(h&16|0)==0;z=(h&32|0)==0;y=0;while(1){if((y|0)>=(D|0))break g;h=a[146266+((N(y,C)|0)+M)>>0]|0;A=h&255;B=g+27952+(O*160|0)+(A<<2)|0;q=a[g+28272+(O*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(O*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;s=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(w<<2)|0;i=w+C|0;j=a[g+28272+(O*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[_>>2]|0)!=0))){if((a[I>>0]|0)==-2){fa=95;break}p=c[(c[P>>2]|0)+48>>2]|0;c[J>>2]=0;o=(c[Q>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=95;break}Y=c[$>>2]|0;h=Y+(c[R>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,Y)|0)+h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=b[Y+(o<<2)+2>>1]<<1;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!o){fa=95;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i&3)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=(b[Y+(o<<2)+2>>1]|0)/2|0;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else fa=95;while(0);do if((fa|0)==95){fa=0;if(j){k=A+-9|0;o=g+27952+(O*160|0)+(k<<2)|0;k=a[g+28272+(O*40|0)+k>>0]|0;break}else{o=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{i=Lk(i,b[v>>1]|0,b[o>>1]|0)|0;h=Lk(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(i){i=b[s>>1]|0;h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){i=b[v>>1]|0;h=b[g+27952+(O*160|0)+(w<<2)+2>>1]|0;break}else{i=b[o>>1]|0;h=b[o+2>>1]|0;break}}else{i=Lk(b[s>>1]|0,b[v>>1]|0,b[o>>1]|0)|0;h=Lk(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0}while(0);k=(Mk(la)|0)+i|0;i=(Mk(la)|0)+h|0;do if(E){if(!F){b[B+4>>1]=k;h=i&65535;j=1;fa=115;break}if(z)break;b[B+32>>1]=k;h=i&65535;j=8;fa=115}else{h=k&65535;b[B+36>>1]=h;b[B+32>>1]=h;b[B+4>>1]=h;h=i&65535;b[B+38>>1]=h;b[B+34>>1]=h;j=1;fa=115}while(0);if((fa|0)==115){fa=0;b[B+(j<<2)+2>>1]=h}b[B>>1]=k;b[g+27952+(O*160|0)+(A<<2)+2>>1]=i;y=y+1|0}}else{Y=d[146266+(G<<2)>>0]|0;a[g+28272+(O*40|0)+Y>>0]=a[Y+1+(g+28272+(O*40|0))>>0]|0}while(0);G=G+1|0}O=O+1|0;h=c[U>>2]|0}break c}while(0);h=-1;break a}if(h&256|0){Kk(f,g,ka);n=c[(c[ja>>2]|0)+72>>2]&Y;break}if(h&8|0){u=g+23412|0;v=c[ka>>2]|0;k=g+21832|0;j=0;h:while(1){h=c[u>>2]|0;if(j>>>0>=h>>>0){t=0;break}if(v&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];switch(i|0){case 1:{h=0;break}case 2:{h=(yk(la)|0)^1;break}default:{h=Jk(la)|0;if(h>>>0>=i>>>0){fa=132;break h}}}$=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=$;c[g+28272+(j*40|0)+20>>2]=$;c[g+28272+(j*40|0)+28>>2]=$;c[g+28272+(j*40|0)+36>>2]=$}j=j+1|0}if((fa|0)==132){g=c[f+4>>2]|0;c[r>>2]=h;Uf(g,16,134931,r);h=-1;break a}while(1){if(t>>>0>=h>>>0){n=Y;break c}if(v&4096<<(t<<1)){i=a[g+28272+(t*40|0)+12>>0]|0;p=a[g+28272+(t*40|0)+4>>0]|0;q=a[g+28272+(t*40|0)+11>>0]|0;o=g+27952+(t*160|0)+44|0;r=g+27952+(t*160|0)+16|0;h=a[g+28272+(t*40|0)+8>>0]|0;if(h<<24>>24==-2){s=g+27952+(t*160|0)+12|0;n=a[g+28272+(t*40|0)+3>>0]|0}else{s=g+27952+(t*160|0)+32|0;n=h<<24>>24}j=p<<24>>24==i<<24>>24;k=q<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[o>>1]|0;if(q<<24>>24!=-2&(p<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(t*160|0)+46>>1]|0;break}else{i=Lk(i,b[r>>1]|0,b[s>>1]|0)|0;h=Lk(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0;break}}if(k){i=b[o>>1]|0;h=b[g+27952+(t*160|0)+46>>1]|0;break}if(j){i=b[r>>1]|0;h=b[g+27952+(t*160|0)+18>>1]|0;break}else{i=b[s>>1]|0;h=b[s+2>>1]|0;break}}else{i=Lk(b[o>>1]|0,b[r>>1]|0,b[s>>1]|0)|0;h=Lk(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0}while(0);$=(Mk(la)|0)+i|0;h=(Mk(la)|0)+h<<16|$&65535;c[g+27952+(t*160|0)+48>>2]=h;c[g+27952+(t*160|0)+52>>2]=h;c[g+27952+(t*160|0)+56>>2]=h;c[g+27952+(t*160|0)+60>>2]=h;c[g+27952+(t*160|0)+80>>2]=h;c[g+27952+(t*160|0)+84>>2]=h;c[g+27952+(t*160|0)+88>>2]=h;c[g+27952+(t*160|0)+92>>2]=h;c[g+27952+(t*160|0)+112>>2]=h;c[g+27952+(t*160|0)+116>>2]=h;c[g+27952+(t*160|0)+120>>2]=h;c[g+27952+(t*160|0)+124>>2]=h;c[g+27952+(t*160|0)+144>>2]=h;c[g+27952+(t*160|0)+148>>2]=h;c[g+27952+(t*160|0)+152>>2]=h;c[g+27952+(t*160|0)+156>>2]=h;h=c[u>>2]|0}t=t+1|0}}S=g+23412|0;T=c[ka>>2]|0;p=g+21832|0;if(!(h&16))o=0;else{o=0;i:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;j:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break j}case 2:{h=(yk(la)|0)^1;break j}default:{h=Jk(la)|0;if(h>>>0>>0)break j;else{fa=161;break i}}}}while(0);X=(j<<4|12)+(g+28272+(o*40|0))|0;V=N(h,16843009)|0;c[X>>2]=V;c[X+8>>2]=V;j=j+1|0}o=o+1|0}if((fa|0)==161){g=c[f+4>>2]|0;c[s>>2]=h;Uf(g,16,134931,s);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+4|0;C=g+27952+(L*160|0)+16|0;D=g+27952+(L*160|0)+18|0;E=g+28272+(L*40|0)+11|0;F=g+27952+(L*160|0)+40|0;G=12288<>0]|0;s=r<<24>>24;do if(!z){if((a[B>>0]|0)!=r<<24>>24){fa=174;break}j=b[C>>1]|0;i=b[D>>1]|0}else{if((a[I>>0]|0)!=r<<24>>24){fa=174;break}j=b[J>>1]|0;i=b[K>>1]|0}while(0);do if((fa|0)==174){fa=0;i=a[146266+i>>0]|0;p=i&255;x=p+-8|0;u=a[g+28272+(L*40|0)+x>>0]|0;y=p+-1|0;v=a[g+28272+(L*40|0)+y>>0]|0;t=g+27952+(L*160|0)+(y<<2)|0;w=g+27952+(L*160|0)+(x<<2)|0;j=p+-4|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[E>>0]|0)==-2){fa=183;break}q=c[(c[M>>2]|0)+48>>2]|0;c[F>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=183;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=b[X+(o<<2)+2>>1]<<1;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=183;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=183;while(0);do if((fa|0)==183){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=u<<24>>24==r<<24>>24;j=v<<24>>24==r<<24>>24;i=(j&1)+(k&1)+((n|0)==(s|0)&1)|0;if(i>>>0>1){j=Lk(b[t>>1]|0,b[w>>1]|0,b[o>>1]|0)|0;i=Lk(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[t>>1]|0;if(v<<24>>24!=-2&(u<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}else{j=Lk(j,b[w>>1]|0,b[o>>1]|0)|0;i=Lk(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[t>>1]|0;i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}if(k){j=b[w>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(Mk(la)|0)+j|0;i=(Mk(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+8>>2]=i;c[g+27952+(L*160|0)+(h<<2)+12>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+40>>2]=i;c[g+27952+(L*160|0)+(h<<2)+44>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}k:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;l:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break l}case 2:{h=(yk(la)|0)^1;break l}default:{h=Jk(la)|0;if(h>>>0>>0)break l;else{fa=208;break k}}}}while(0);X=(j<<1)+12+(g+28272+(o*40|0))|0;V=h*257&65535;b[X>>1]=V;b[X+8>>1]=V;b[X+16>>1]=V;b[X+24>>1]=V;j=j+1|0}o=o+1|0}if((fa|0)==208){g=c[f+4>>2]|0;c[t>>2]=h;Uf(g,16,134931,t);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+11|0;C=g+27952+(L*160|0)+44|0;D=g+27952+(L*160|0)+46|0;E=g+27952+(L*160|0)+40|0;F=12288<>0]|0;y=v<<24>>24;do if(!z)if((a[B>>0]|0)==v<<24>>24){j=b[C>>1]|0;i=b[D>>1]|0}else fa=223;else{i=a[H>>0]|0;if(i<<24>>24==-2){k=I;i=a[J>>0]|0}else k=K;if(i<<24>>24!=v<<24>>24){fa=223;break}j=b[k>>1]|0;i=b[k+2>>1]|0}while(0);do if((fa|0)==223){fa=0;i=a[146266+j>>0]|0;p=i&255;w=p+-8|0;s=a[g+28272+(L*40|0)+w>>0]|0;x=p+-1|0;t=a[g+28272+(L*40|0)+x>>0]|0;r=g+27952+(L*160|0)+(x<<2)|0;u=g+27952+(L*160|0)+(w<<2)|0;j=p+-6|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[B>>0]|0)==-2){fa=232;break}q=c[(c[M>>2]|0)+48>>2]|0;c[E>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=232;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=b[X+(o<<2)+2>>1]<<1;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=232;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=232;while(0);do if((fa|0)==232){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=s<<24>>24==v<<24>>24;j=t<<24>>24==v<<24>>24;i=(j&1)+(k&1)+((n|0)==(y|0)&1)|0;if(i>>>0>1){j=Lk(b[r>>1]|0,b[u>>1]|0,b[o>>1]|0)|0;i=Lk(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[r>>1]|0;if(t<<24>>24!=-2&(s<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=Lk(j,b[u>>1]|0,b[o>>1]|0)|0;i=Lk(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[r>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}if(k){j=b[u>>1]|0;i=b[g+27952+(L*160|0)+(w<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(Mk(la)|0)+j|0;i=(Mk(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+64>>2]=i;c[g+27952+(L*160|0)+(h<<2)+68>>2]=i;c[g+27952+(L*160|0)+(h<<2)+96>>2]=i;c[g+27952+(L*160|0)+(h<<2)+100>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}else{if(!(h&1)){_=g+21660|0;$=Ik(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[_>>2]|0,0)|0;c[_>>2]=$;if(($|0)<0){h=-1;break a}}else{if((Y|0)!=0?(yk(la)|0)!=0:0){c[ka>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if((i|0)>=16)break;n=d[146266+i>>0]|0;h=a[n+-1+(g+21664)>>0]|0;$=a[n+-8+(g+21664)>>0]|0;h=(h|0)>($|0)?$:h;h=(h|0)<0?2:h;if(!(yk(la)|0)){$=Gk(la,3)|0;h=$+(($|0)>=(h|0)&1)|0}if(k){$=g+21664+n|0;_=h*257&65535;b[$>>1]=_;b[$+8>>1]=_}else a[g+21664+n>>0]=h;i=i+j|0}$=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[$>>2]=c[g+21700>>2];a[$+4>>0]=a[g+21695>>0]|0;a[$+5>>0]=a[g+21687>>0]|0;a[$+6>>0]=a[g+21679>>0]|0;if((Hk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<=-1){h=-1;break a}}if(ca){_=c[f+4>>2]|0;$=c[g+21760>>2]|0;h=c[g+21768>>2]|0;h=Ik(_,$,h,Jk(la)|0,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h;n=Y}while(0);h=c[ka>>2]|0;if(h&120|0){i=c[f+26368>>2]|0;j=(N(i<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;k=c[oa>>2]<<2;if(!(h&12288)){$=(c[f+24384>>2]|0)+k|0;b[$>>1]=-1;b[$+2>>1]=-1}else{$=(c[f+24352>>2]|0)+(j<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28008|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28040|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28064|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28096|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24384>>2]|0)+k|0;a[$>>0]=a[g+28284>>0]|0;a[$+1>>0]=a[g+28286>>0]|0;a[$+2>>0]=a[g+28300>>0]|0;a[$+3>>0]=a[g+28302>>0]|0}if(h&49152|0){$=(c[f+24356>>2]|0)+(j<<2)|0;Z=g+28160|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28168|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28192|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28200|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28224|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28232|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28256|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24388>>2]|0)+k|0;a[$>>0]=a[g+28324>>0]|0;a[$+1>>0]=a[g+28326>>0]|0;a[$+2>>0]=a[g+28340>>0]|0;a[$+3>>0]=a[g+28342>>0]|0}}h=c[ka>>2]|0;if(h&2)if(aa>>>0>15&(ca^1)){Uf(c[f+4>>2]|0,16,135589,ba);h=-1094995529;break}else y=aa;else{i=Ak(la)|0;do if(ca){if(i>>>0>47){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[da>>2]=i;c[da+4>>2]=f;c[da+8>>2]=g;Uf(h,16,134948,da);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=123622+i|0;break}else{i=123574+i|0;break}}else{if(i>>>0>15){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[ea>>2]=i;c[ea+4>>2]=f;c[ea+8>>2]=g;Uf(h,16,134948,ea);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=134993+i|0;break}else{i=134977+i|0;break}}while(0);y=d[i>>0]|0}w=(y&15|0)==0;if((h&7|0)==0&(((n|0)==0|w)^1)){h=(yk(la)|0)<<24;h=c[ka>>2]|h;c[ka>>2]=h}t=f+26392|0;b[(c[t>>2]|0)+(pa<<1)>>1]=y;c[g+21856>>2]=y&65535;c[(c[f+24364>>2]|0)+(pa<<2)>>2]=h;if((y|0)==0?(c[ka>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else fa=274;m:do if((fa|0)==274){i=(c[(c[ja>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;n=Mk(la)|0;h=g+848|0;j=(c[h>>2]|0)+n|0;c[h>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[h>>2]=i;if(i>>>0>k>>>0){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[ia>>2]=n;c[ia+4>>2]=pa;c[ia+8>>2]=f;Uf(g,16,135009,ia);c[h>>2]=k;h=-1;break a}else j=i}i=c[na>>2]|0;s=g+852|0;c[s>>2]=d[i+548+j>>0];u=g+856|0;c[u>>2]=d[i+636+j>>0];i=c[ka>>2]|0;ia=(i&128|0)==0;v=(j|0)!=0;x=ia?(v?f+26428|0:f+26716|0):v?f+26572|0:f+26860|0;v=ia?(v?f+26508|0:f+26796|0):v?f+26652|0:f+26940|0;n:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;i=0;p=0;while(1){if((p|0)>=4)break;o:do if(1<=4)break o;k=n+o|0;if((Nk(f,g,la,g+28560+(k<<4<>2]|0)+173788+(r<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break a}n=n+1|0;i=d[(d[146266+k>>0]|0)+(g+27824)>>0]<=4)break;if((Nk(f,g,la,n,k+o|0,v+(k<<4)|0,(c[(c[na>>2]|0)+173812+(r<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break a}}ha=(d[146266+o>>0]|0)+(g+27824)|0;ia=(d[ha+8>>0]|0)+(d[ha+1>>0]|0)+(d[ha+9>>0]|0)+(d[ha>>0]|0)&255;a[ha>>0]=ia;i=(ia<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ia+9>>0]=0;a[ia+8>>0]=0;a[ia+1>>0]=0;a[ia>>0]=0}while(0);p=p+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31632|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Nk(f,g,la,i,48,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}n=x+1|0;k=0;while(1){if((k|0)>=4){i=15;break n}o=k<<2;i=0;while(1){if((i|0)>=4)break;ia=i+o|0;if((Nk(f,g,la,g+28560+(ia<<4<>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}k=k+1|0}}while(0);t=(c[t>>2]|0)+(pa<<1)|0;b[t>>1]=i<<12|e[t>>1];t=c[(c[ja>>2]|0)+12>>2]|0;if((t|0)!=3){p:do if(y&48|0){j=t<<2;i=0;while(1){if((i|0)>=2)break p;if((Nk(f,g,la,g+28560+((i<<8)+256<>2]|0)+12>>2]|0)==2?123674:123670,0,j)|0)<0){h=-1;break a}else i=i+1|0}}while(0);if(!(y&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}p=x+1|0;q=16<=2)break m;r=i+1|0;s=(c[(c[na>>2]|0)+173788+((c[ka>>2]&7|0?0:3)+r<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;n=(i<<4)+16|0;i=g+28560+(n<<4<=(t|0)){i=r;continue q}o=(j<<3)+n|0;k=0;while(1){if((k|0)>=4)break;if((Nk(f,g,la,i,o+k|0,p,s,15)|0)<=-1){h=-1;break a}k=k+1|0;i=i+(q<<1)|0}j=j+1|0}}}i=c[ka>>2]|0;r=c[s>>2]|0;r:do if(!(i&2)){q=i&7|0?1:4;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;s:do if(1<=4)break s;j=n+k|0;if((Nk(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146266+j>>0]|0)+(g+27824)>>0]<=4)break;if((Nk(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ia=(d[146266+n>>0]|0)+(g+27824)|0;ja=(d[ia+8>>0]|0)+(d[ia+1>>0]|0)+(d[ia+9>>0]|0)+(d[ia>>0]|0)&255;a[ia>>0]=ja;i=(ja<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ja+9>>0]=0;a[ja+8>>0]=0;a[ja+1>>0]=0;a[ja>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31696|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Nk(f,g,la,i,49,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break r;n=(j<<2)+16|0;i=0;while(1){if((i|0)>=4)break;ja=n+i|0;if((Nk(f,g,la,g+28560+(ja<<4<>2]|0)+173792>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}while(0);i=c[ka>>2]|0;r=c[u>>2]|0;if(i&2|0){i=g+31760|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((Nk(f,g,la,i,50,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break m;n=(j<<2)+32|0;i=0;while(1){if((i|0)>=4)break;ka=n+i|0;if((Nk(f,g,la,g+28560+(ka<<4<>2]|0)+173796>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}q=i&7|0?2:5;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;t:do if(1<=4)break t;j=n+k|0;if((Nk(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146266+j>>0]|0)+(g+27824)>>0]<=4)break;if((Nk(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ja=(d[146266+n>>0]|0)+(g+27824)|0;ka=(d[ja+8>>0]|0)+(d[ja+1>>0]|0)+(d[ja+9>>0]|0)+(d[ja>>0]|0)&255;a[ja>>0]=ka;i=(ka<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ka+9>>0]=0;a[ka+8>>0]=0;a[ka+1>>0]=0;a[ka>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}while(0);a[(c[f+24340>>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function xk(a){a=a|0;var b=0,c=0,e=0;e=Xk(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116064+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Dk(a,b);return (Yk(a,b+1|0)|0)+-1|0}function yk(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function zk(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;if((l|0)>=(m|0))W(16);x=B+4|0;z=B;y=f+21796|0;A=c[y>>2]|0;c[z>>2]=0;g=(c[e+25972>>2]|0)+(A*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));w=f+21828|0;if(!(c[w>>2]|0))g=0;else{c[z>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[z>>2]=g;if(c[f+21844>>2]|0){Ek(e,f,g);Fk(e,f,g)}Kk(e,f,z);j=c[z>>2]|2048;c[z>>2]=j;g=e+26368|0}else{j=g|14344;c[z>>2]=j;Ek(e,f,j);q=c[e+24384>>2]|0;r=c[e+24352>>2]|0;g=e+26368|0;s=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)h=0;else{v=183584;t=-1;n=16}else{h=c[f+21720>>2]|0;v=d[c[f+21748>>2]>>0]|0;i=a[q+((v&254)+(h<<2|1))>>0]|0;h=r+((N(s,v)|0)+3+(c[(c[e+26360>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=h>>16<<1;h=x;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=x;i=i<<1;break}}while(0);if(!(c[h>>2]|i))h=0;else{v=h;t=i;n=16}}do if((n|0)==16){k=c[f+21732>>2]|0;if(!(k&12288))if(!k){h=0;break}else{o=-1;p=183584}else{i=c[f+21712>>2]|0;h=a[q+(i<<2|2)>>0]|0;i=r+((c[(c[e+26360>>2]|0)+(i<<2)>>2]|0)+(s*3|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=p>>16<<1;h=h>>1;break}else{if(k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=((p>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[i>>2]|h)){h=0;break}else{o=h;p=i}}i=c[f+21736>>2]|0;do if(!(i&12288))if((i|0)==0?(u=c[f+21728>>2]|0,(u&12288|0)!=0):0){k=c[f+21708>>2]|0;n=c[f+21752>>2]|0;h=a[q+(k<<2|n&2|1)>>0]|0;k=r+(s+3+(n&s<<1)+(c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)<<2)|0;if(c[e+26376>>2]|0){i=(u&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}else{n=183584;h=-1}else{k=c[f+21716>>2]|0;h=a[q+(k<<2|2)>>0]|0;k=r+((c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)+(s*3|0)<<2)|0;if(c[e+26376>>2]|0){i=(i&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}while(0);k=(o|0)!=0;i=(t|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=Lk(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Lk(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0;break}if(!i){i=b[v+2>>1]|0;h=b[v>>1]|0;break}if(k){i=b[n+2>>1]|0;h=b[n>>1]|0;break}else{i=b[p+2>>1]|0;h=b[p>>1]|0;break}}else{h=Lk(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Lk(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0}while(0);h=i<<16|h&65535}while(0);c[f+28e3>>2]=h;c[f+28004>>2]=h;c[f+28008>>2]=h;c[f+28012>>2]=h;c[f+28032>>2]=h;c[f+28036>>2]=h;c[f+28040>>2]=h;c[f+28044>>2]=h;c[f+28064>>2]=h;c[f+28068>>2]=h;c[f+28072>>2]=h;c[f+28076>>2]=h;c[f+28096>>2]=h;c[f+28100>>2]=h;c[f+28104>>2]=h;c[f+28108>>2]=h}h=c[g>>2]|0;i=(N(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[y>>2]<<2;if(!(j&12288)){y=(c[e+24384>>2]|0)+g|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[e+24352>>2]|0)+(i<<2)|0;w=f+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24384>>2]|0)+g|0;a[y>>0]=a[f+28284>>0]|0;a[y+1>>0]=a[f+28286>>0]|0;a[y+2>>0]=a[f+28300>>0]|0;a[y+3>>0]=a[f+28302>>0]|0}if(j&49152|0){y=(c[e+24356>>2]|0)+(i<<2)|0;w=f+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24388>>2]|0)+g|0;a[y>>0]=a[f+28324>>0]|0;a[y+1>>0]=a[f+28326>>0]|0;a[y+2>>0]=a[f+28340>>0]|0;a[y+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(A<<2)>>2]=c[z>>2];a[(c[e+24340>>2]|0)+A>>0]=c[f+848>>2];b[(c[e+26372>>2]|0)+(A<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;l=B;return}function Ak(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(eX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116064+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){Uf(0,16,151423,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[122033+a>>0]|0);a=d[122545+a>>0]|0}while(0);l=h;return a|0}function Bk(a){a=a|0;var b=0;b=0-(Wk(a)|0)&7;if(b|0)Qk(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function Ck(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Wk(a)|0)|0}function Dk(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Ek(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=135425;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?135521:135489;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=135457;h=i}else d=135521;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Fk(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ka=l;l=l+16|0;if((l|0)>=(m|0))W(16);aa=ka+8|0;ba=ka;ha=c[f+21748>>2]|0;ja=c[f+21708>>2]|0;U=c[f+21712>>2]|0;V=c[f+21716>>2]|0;X=c[f+21720>>2]|0;c[aa>>2]=X;c[aa+4>>2]=c[f+21724>>2];Y=c[f+21728>>2]|0;Z=c[f+21732>>2]|0;_=c[f+21736>>2]|0;$=c[f+21740>>2]|0;c[ba>>2]=$;t=c[f+21744>>2]|0;c[ba+4>>2]=t;a:do if(!(g&2048)){b:do if(g&7|0){q=c[(c[e+28212>>2]|0)+56>>2]|0?7:-1;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;n=f+21756|0;c[n>>2]=65535;o=f+21764|0;c[o>>2]=61162;p=(q&Z|0)!=0;if(p){h=65535;k=60138}else{c[n>>2]=46079;c[h>>2]=13311;c[o>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==($&128|0)){if(!($&q)){h=h&57183;c[n>>2]=h;c[j>>2]=24415}}else{if(!i){if(!(($&q|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27016>>2]|0)+X<<2)>>2]&q|0)==0))break;h=h&57183;c[n>>2]=h;c[j>>2]=24415;break}if(!($&q)){h=h&57343;c[n>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(t&q)){h=h&65375;c[n>>2]=h;c[j>>2]=i}}while(0);if(!(q&Y))c[n>>2]=h&32767;if(!(q&_))c[o>>2]=k;if(g&1|0){if(!(Z&1)){iX(f+21668|0,(p?2:-1)|0,4)|0;k=f+21704|0;n=e+26364|0}else{k=f+21704|0;n=e+26364|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(U<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[ba+(j<<2)>>2]|0;if(!(h&1)){h=(h&q|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{T=(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[aa+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[T+(6-(d[ha+h>>0]|0))>>0]|0;h=a[T+(6-(d[ha+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);if(!Z){c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;r=e+25972|0;h=1077952576}else{r=e+25972|0;h=c[r>>2]|0;c[f+27828>>2]=c[h+(U*48|0)+12>>2];T=(c[e+25680>>2]|0)==0;c[f+27868>>2]=c[(T?28:20)+(h+(U*48|0))>>2];h=c[(T?44:36)+(h+(U*48|0))>>2]|0}c[f+27908>>2]=h;q=e+28216|0;p=0;while(1){if((p|0)==2)break a;if(!(c[ba+(p<<2)>>2]|0)){i=p<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;i=i|11;h=64}else{n=c[r>>2]|0;o=c[aa+(p<<2)>>2]|0;h=p<<1;j=ha+(h+8)|0;i=p<<4;a[(i|11)+(f+27824)>>0]=a[(d[j>>0]|0)+(n+(o*48|0))>>0]|0;k=ha+(h+9)|0;a[i+19+(f+27824)>>0]=a[(d[k>>0]|0)+(n+(o*48|0))>>0]|0;switch(c[(c[q>>2]|0)+12>>2]|0){case 3:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+32+(n+(o*48|0))>>0]|0;k=(d[k>>0]|0)+32|0;h=i+99|0;break}case 2:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+30+(n+(o*48|0))>>0]|0;h=(d[k>>0]|0)+30|0;j=99;s=39;break}default:{i=p<<3;a[i+51+(f+27824)>>0]=a[(d[ha+(h+12)>>0]|0)+(n+(o*48|0))>>0]|0;h=d[ha+(h+13)>>0]|0;j=91;s=39}}if((s|0)==39){s=0;k=h;h=j+i|0}i=h;h=a[n+(o*48|0)+k>>0]|0}a[f+27824+i>>0]=h;p=p+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)s=46}else s=46;c:do if((s|0)==46){z=c[e+26368>>2]|0;A=f+23412|0;B=Z|0?-1:-16843010;C=(g&80|0)==0;D=$|0?-1:-2;E=e+26360|0;F=X<<2|1;G=_|0?-1:-2;H=Y|0?-1:-2;I=f+21752|0;J=z<<1;K=z+3|0;L=ja<<2;M=(g&2304|0)==0;O=e+26376|0;P=f+21828|0;Q=(Y&128|0)!=0;R=(Z&128|0)==0;S=(_&128|0)==0;T=($&128|0)==0;u=(t&128|0)==0;v=z*3|0;w=V<<2|2;y=U<<2;x=y|2;y=y|3;t=0;while(1){if(t>>>0>=(c[A>>2]|0)>>>0)break c;o=f+28272+(t*40|0)+12|0;q=c[e+24384+(t<<2)>>2]|0;p=f+27952+(t*160|0)+48|0;r=c[e+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&g|0){if(!(s&Z)){n=f+27952+(t*160|0)+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28272+(t*40|0)+4>>2]=B}else{j=(c[(c[E>>2]|0)+(U<<2)>>2]|0)+v|0;i=r+(j<<2)|0;n=c[i+4>>2]|0;k=f+27952+(t*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=n;j=r+(j<<2)+8|0;k=c[j+4>>2]|0;n=f+27952+(t*160|0)+24|0;c[n>>2]=c[j>>2];c[n+4>>2]=k;n=a[q+x>>0]|0;a[f+28272+(t*40|0)+5>>0]=n;a[f+28272+(t*40|0)+4>>0]=n;n=a[q+y>>0]|0;a[f+28272+(t*40|0)+7>>0]=n;a[f+28272+(t*40|0)+6>>0]=n}d:do if(C){if(!($&s)){c[f+27952+(t*160|0)+44>>2]=0;h=D}else{c[f+27952+(t*160|0)+44>>2]=c[r+((c[(c[E>>2]|0)+(X<<2)>>2]|0)+3+(N(z,d[ha>>0]|0)|0)<<2)>>2];h=a[q+(F+(a[ha>>0]&-2&255))>>0]|0}a[f+28272+(t*40|0)+11>>0]=h}else{n=0;while(1){if((n|0)==2)break d;i=n<<1;j=n<<4;h=j+-1|0;k=c[ba+(n<<2)>>2]|0;if(!(k&s)){c[p+(h<<2)>>2]=0;j=j|7;c[p+(j<<2)>>2]=0;i=k|0?-1:-2;a[o+j>>0]=i}else{la=c[aa+(n<<2)>>2]|0;na=(c[(c[E>>2]|0)+(la<<2)>>2]|0)+3|0;la=la<<2|1;ma=ha+i|0;c[p+(h<<2)>>2]=c[r+((N(z,d[ma>>0]|0)|0)+na<<2)>>2];i=ha+(i|1)|0;k=j|7;c[p+(k<<2)>>2]=c[r+((N(z,d[i>>0]|0)|0)+na<<2)>>2];a[o+h>>0]=a[q+(la+(a[ma>>0]&-2&255))>>0]|0;i=a[q+(la+(a[i>>0]&-2&255))>>0]|0;h=k}a[o+h>>0]=i;n=n+1|0}}while(0);if(!(s&_)){c[f+27952+(t*160|0)+32>>2]=0;h=G}else{c[f+27952+(t*160|0)+32>>2]=c[r+((c[(c[E>>2]|0)+(V<<2)>>2]|0)+v<<2)>>2];h=a[q+w>>0]|0}k=f+28272+(t*40|0)+8|0;a[k>>0]=h;j=f+28272+(t*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(s&Y)){c[f+27952+(t*160|0)+12>>2]=0;h=H}else{h=c[I>>2]|0;c[f+27952+(t*160|0)+12>>2]=c[r+(K+(c[(c[E>>2]|0)+(ja<<2)>>2]|0)+(h&J)<<2)>>2];h=a[q+(L|h&2|1)>>0]|0}a[f+28272+(t*40|0)+3>>0]=h}if(M){a[f+28272+(t*40|0)+30>>0]=-2;a[f+28272+(t*40|0)+14>>0]=-2;c[f+27952+(t*160|0)+56>>2]=0;c[f+27952+(t*160|0)+120>>2]=0;if(!(c[O>>2]|0))break}else if(!(c[O>>2]|0))break;if(!(c[P>>2]|0)){if(Q?(fa=f+28272+(t*40|0)+3|0,ga=a[fa>>0]|0,ga<<24>>24>-1):0){a[fa>>0]=(ga&255)>>>1;na=f+27952+(t*160|0)+14|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+7|0;a[na>>0]=d[na>>0]<<1}do if(!R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+18|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+9|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+22|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+11|0;a[na>>0]=d[na>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=(h&255)>>>1;na=f+27952+(t*160|0)+26|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+13|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+30|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+15|0;a[na>>0]=d[na>>0]<<1}while(0);if(!S?(ia=a[k>>0]|0,ia<<24>>24>-1):0){a[k>>0]=(ia&255)>>>1;na=f+27952+(t*160|0)+34|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+17|0;a[na>>0]=d[na>>0]<<1}do if(!T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+46|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+23|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+78|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+39|0;a[na>>0]=d[na>>0]<<1}while(0);if(u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+110|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+55|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+142|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+71|0;a[na>>0]=d[na>>0]<<1;break}else{if(!Q?(ca=f+28272+(t*40|0)+3|0,da=a[ca>>0]|0,da<<24>>24>-1):0){a[ca>>0]=da<<24>>24<<1;na=f+27952+(t*160|0)+14|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+7|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+18|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+9|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+22|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+11|0;a[na>>0]=(d[na>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;na=f+27952+(t*160|0)+26|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+13|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+30|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+15|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(S?(ea=a[k>>0]|0,ea<<24>>24>-1):0){a[k>>0]=ea<<24>>24<<1;na=f+27952+(t*160|0)+34|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+17|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+46|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+23|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+78|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+39|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(!u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+110|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+55|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+142|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+71|0;a[na>>0]=(d[na>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[f+21840>>2]=($>>>24&1)+(Z>>>24&1);l=ka;return}function Gk(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function Hk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;a:do if(!(e&32768)){e=0;while(1){if((e|0)>=4){k=8;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[135295+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;Uf(d,16,135307,j);e=-1094995529}else k=8;while(0);b:do if((k|0)==8)if((f&34952|0)==34952)e=0;else{e=0;while(1){if((e|0)>=4){e=0;break b}if(!(c[102556+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[135358+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[n>>2]=i<<24>>24;Uf(d,16,135370,n);e=-1094995529}while(0);l=o;return e|0}function Ik(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[135189+e>>0]|0;if((e|1|0)==3){Uf(b,16,135193,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){Uf(b,16,135241,h);c=-1094995529;break}else{l=i;return ((e|0)==0|(f|0)==0?a[135290+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{Uf(b,16,135152,i);c=-1094995529}while(0);l=i;return c|0}function Jk(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[122033+a>>0]|0);return d[122545+a>>0]|0|0}function Kk(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))Tk(a,b,d);else Sk(a,b,d);return}function Lk(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Mk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(eX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[122033+b>>0]|0);b=a[123057+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116064+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function Nk(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+112|0;if((l|0)>=(m|0))W(112);A=B+32|0;x=B+24|0;v=B+16|0;u=B;z=B+40|0;w=(n|0)<9;do if(!w)if((i|0)>47){t=c[182944+(c[102460+((Ok(f,(i<<4)+-768|0)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(eX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((eX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{t=c[182944+(c[102460+((Ok(f,i)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(eX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((eX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{q=(n|0)==4;y=q?c[45729]|0:c[45733]|0;o=g+8|0;t=c[o>>2]|0;p=(c[g>>2]|0)+(t>>>3)|0;p=(eX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(t&7);q=p>>>(q?24:19);p=b[y+(q<<2)>>1]|0;q=t+(b[y+(q<<2)+2>>1]|0)|0}while(0);c[o>>2]=q;y=p>>2;a[(d[146266+i>>0]|0)+(f+27824)>>0]=y;a:do if(y){if(y>>>0>n>>>0){o=c[e+4>>2]|0;A=c[f+21792>>2]|0;c[u>>2]=c[f+21788>>2];c[u+4>>2]=A;c[u+8>>2]=y;Uf(o,16,135044,u);o=-1;break}q=p&3;u=Pk(g,3)|0;Qk(g,q);c[z>>2]=1-(u>>>1&2);c[z+4>>2]=1-(u&2);c[z+8>>2]=1-(u<<1&2);b:do if((q|0)<(y|0)){r=(q|0)!=3;p=(y|0)>10&r;s=p&1;t=Pk(g,8)|0;u=a[258956+(s<<9)+(t<<1)>>0]|0;o=u<<24>>24;Qk(g,a[258956+(s<<9)+(t<<1)+1>>0]|0);if(u<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(Rk(g)|0)+8|0;do if((o|0)<14){if(p)o=(yk(g)|0)+(o<<1)|0}else{if((o|0)==14)if(p){o=(yk(g)|0)+28|0;break}else{o=(Gk(g,4)|0)+14|0;break}do if((o|0)>15)if((o|0)>28){Uf(c[e+4>>2]|0,16,135089,v);o=-1;break a}else{p=o+-3|0;o=(1<>1^0-o)+o|0}else{o=(r?o>>31|1:0)+o|0;p=(o+3|0)>>>0>6?2:1}c[z+(q<<2)>>2]=o;while(1){q=q+1|0;if((q|0)>=(y|0))break b;u=Pk(g,8)|0;v=a[258956+(p<<9)+(u<<1)>>0]|0;o=v<<24>>24;Qk(g,a[258956+(p<<9)+(u<<1)+1>>0]|0);if(v<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(Rk(g)|0)+8|0;if((o|0)>=15){r=15<28)break;v=o+-3|0;o=r+-4096+(1<>1^0-o)+o|0}c[z+(q<<2)>>2]=o;v=c[102528+(p<<2)>>2]|0;p=p+((v+o|0)>>>0>v<<1>>>0&1)|0}Uf(c[e+4>>2]|0,16,135089,x);o=-1094995529;break a}while(0);if((y|0)==(n|0))o=0;else{do if(w)if((n|0)==4){o=29;p=183008+(y<<4)+4|0;break}else{o=27;p=183072+(y<<4)+4|0;break}else{o=23;p=183200+(y<<4)+4|0}while(0);n=c[p>>2]|0;x=g+8|0;v=c[x>>2]|0;w=(c[g>>2]|0)+(v>>>3)|0;w=(eX(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(v&7)>>>o;o=b[n+(w<<2)>>1]|0;c[x>>2]=v+(b[n+(w<<2)+2>>1]|0)}q=j+(y+-1+o)|0;p=(i|0)>47;r=c[z>>2]|0;c:do if(!(c[e+25664>>2]|0))if(p){b[h+(d[q>>0]<<1)>>1]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183456+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(eX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45893]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(eX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((eX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;b[h+(d[k>>0]<<1)>>1]=c[z+(p<<2)>>2];o=o-s|0;q=k;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;b[h+(d[g>>0]<<1)>>1]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;b[h+(n<<1)>>1]=((N(c[k+(n<<2)>>2]|0,r)|0)+32|0)>>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183456+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(eX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45893]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(eX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((eX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;b[h+(j<<1)>>1]=((N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;o=o-s|0;q=i;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;b[h+(i<<1)>>1]=((N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;q=g;p=p+1|0}}else if(p){c[h+(d[q>>0]<<2)>>2]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183456+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(eX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45893]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(eX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((eX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;c[h+(d[k>>0]<<2)>>2]=c[z+(p<<2)>>2];q=k;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;c[h+(d[g>>0]<<2)>>2]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;c[h+(n<<2)>>2]=(N(c[k+(n<<2)>>2]|0,r)|0)+32>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183456+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(eX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45893]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(eX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((eX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;c[h+(j<<2)>>2]=(N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=i;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;c[h+(i<<2)>>2]=(N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=g;p=p+1|0}}while(0);if((o|0)<0){o=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[A>>2]=c[f+21788>>2];c[A+4>>2]=e;Uf(o,16,135111,A);o=-1}else o=0}else o=0;while(0);l=B;return o|0}function Ok(a,b){a=a|0;b=b|0;b=d[146266+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function Pk(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Qk(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Rk(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(eX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[116064+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function Sk(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=l;l=l+32|0;if((l|0)>=(m|0))W(32);E=V+16|0;D=V+8|0;y=V;A=c[f+26368>>2]|0;k=c[g+21796>>2]|0;C=g+21792|0;r=c[C>>2]|0;U=c[h>>2]|0;T=U&64;B=g+25336|0;Uk(f,B,(U>>>7&1)+r|0);U=(T|0)==0;i=61440;w=0;while(1){if((w|0)==2)break;o=a[g+28272+(w*40|0)+11>>0]|0;u=a[g+28272+(w*40|0)+4>>0]|0;j=a[g+28272+(w*40|0)+8>>0]|0;if(j<<24>>24==-2){s=a[g+28272+(w*40|0)+3>>0]|0;t=g+27952+(w*160|0)+12|0}else{s=j<<24>>24;t=g+27952+(w*160|0)+32|0}v=o>>>0>u>>>0?u:o;j=v>>>0>s>>>0?s:v;n=D+(w<<2)|0;c[n>>2]=j;if((j|0)>-1){p=g+27952+(w*160|0)+44|0;q=g+27952+(w*160|0)+16|0;n=(j|0)==(o|0);j=(j|0)==(u|0);do if(((j&1)+(s>>>0<=v>>>0&1)+(n&1)|0)>>>0<=1){if(n){j=c[p>>2]|0;break}if(j){j=c[q>>2]|0;break}else{j=c[t>>2]|0;break}}else{j=Vk(b[p>>1]|0,b[q>>1]|0,b[t>>1]|0)|0;j=(Vk(b[g+27952+(w*160|0)+46>>1]|0,b[g+27952+(w*160|0)+18>>1]|0,b[t+2>>1]|0)|0)<<16|j&65535}while(0);c[y+(w<<2)>>2]=j}else{j=~(12288<<(w<<1));c[y+(w<<2)>>2]=0;c[n>>2]=-1;if(U)c[h>>2]=c[h>>2]&j;i=i&j}w=w+1|0}j=c[D>>2]|0;if((j|0)<0?(x=D+4|0,(c[x>>2]|0)<0):0){c[x>>2]=0;c[D>>2]=0;if(U)c[h>>2]=c[h>>2]|61440;u=i|61440;w=0}else{u=i;w=j}i=c[y>>2]|0;j=c[y+4>>2]|0;do if(i|T|j){S=g+25372|0;t=c[(c[S>>2]|0)+48>>2]|0;q=c[t+(k<<2)>>2]|0;v=c[h>>2]|0;n=(v&128|0)!=0;do if(!(q&128))if(n){s=c[C>>2]&-2;p=c[f+27016>>2]|0;k=N(s,p)|0;k=k+(c[g+21788>>2]|0)|0;q=c[t+(k<<2)>>2]|0;c[E>>2]=q;n=c[t+(p+k<<2)>>2]|0;o=E+4|0;c[o>>2]=n;p=p<<2|2;r=A*6|0;if((q^n)&128){q=q&-129;c[E>>2]=q;n=n&-129;c[o>>2]=n}o=u|264;if(q&15|0?!((T|0)!=0|(n&15|0)==0):0){Q=r;r=s;t=o;n=272;break}Q=r;r=s;t=o;n=64}else{p=2;R=36}else{if(n){o=c[g+21852>>2]|0;p=2;q=o+r|0;n=c[f+27016>>2]|0}else{n=(c[C>>2]&-2)+(c[g+21848>>2]|0)|0;p=0;q=n;k=c[g+21788>>2]|0;o=c[f+27016>>2]|0}R=k+(N(n,o)|0)|0;k=R;r=q;q=c[t+(R<<2)>>2]|0;R=36}while(0);do if((R|0)==36){c[E+4>>2]=q;c[E>>2]=q;o=u|264;n=(T|0)!=0;if(n|(q&15|0)==0){if(!n?(z=q&48,z|0):0){Q=A;t=o;n=z|256;break}Q=A;t=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?o+56|0:o;n=64}else{Q=A;t=o;n=264}}while(0);c[h>>2]=v|n;Uk(f,B,r);s=c[S>>2]|0;o=c[(c[f+26360>>2]|0)+(k<<2)>>2]|0;n=(c[s+36>>2]|0)+(o<<2)|0;o=(c[s+40>>2]|0)+(o<<2)|0;r=k<<2;k=(c[s+68>>2]|0)+r|0;r=(c[s+72>>2]|0)+r|0;if(!p){M=(c[C>>2]&1|0)==0;O=Q<<1;P=M?n:n+(O<<2)|0;o=M?o:o+(O<<2)|0;O=M?k:k+2|0;r=M?r:r+2|0}else{P=n;O=k}k=c[h>>2]|0;if((q^k)&128|0){z=t&65535;A=(w&255)*257&65535;v=c[D+4>>2]|0;y=(v&255)*257&65535;x=(w|0)>0?i:0;v=(v|0)>0?j:0;k=0;w=0;while(1){if((w|0)==4)break;t=w&1;q=w>>1;s=(N(q,p)|0)+t|0;t=(0-t&3)+(N(q,Q)|0)|0;n=g+28552+(w<<1)|0;if(!(!U?(b[n>>1]&256)==0:0)){b[n>>1]=z;u=d[146266+(w<<2)>>0]|0;R=g+28272+u|0;b[R>>1]=A;b[R+8>>1]=A;R=g+28312+u|0;b[R>>1]=y;b[R+8>>1]=y;do if((c[E+(q<<2)>>2]&7|0)==0?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+s>>0]|0;if(!(n<<24>>24)){M=b[P+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[P+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}else{if(n<<24>>24>=0){n=j;q=i;break}if(a[r+s>>0]|0){n=j;q=i;break}M=b[o+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[o+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}n=v;q=x;k=k+1|0}else{n=j;q=i}while(0);R=g+27952+(u<<2)|0;c[R>>2]=q;c[R+4>>2]=q;c[R+32>>2]=q;c[R+36>>2]=q;R=g+28112+(u<<2)|0;c[R>>2]=n;c[R+4>>2]=n;c[R+32>>2]=n;c[R+36>>2]=n}w=w+1|0}if(k&3|T|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){n=N(w&255,16843009)|0;c[g+28284>>2]=n;c[g+28292>>2]=n;c[g+28300>>2]=n;c[g+28308>>2]=n;n=c[D+4>>2]|0;h=N(n&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((q&7|0)==0?(c[s+100>>2]|0)==0:0){k=a[O>>0]|0;if(!(k<<24>>24)){U=b[P>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[P+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[r>>0]|0)break;U=b[o>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[o+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;if((c[f+25704>>2]|0)>>>0<=33)break}j=(n|0)>0?j:0;i=(w|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}L=t&65535;M=(w&255)*257&65535;G=c[D+4>>2]|0;K=(G&255)*257&65535;J=(q&7|0)==0;H=(t&8|0)==0;I=Q*3|0;F=(w|0)==0;G=(G|0)==0;E=f+25704|0;k=0;f=0;while(1){if((f|0)==4)break;q=f&1;s=f>>1;C=g+28552+(f<<1)|0;if(!(!U?(b[C>>1]&256)==0:0))R=79;do if((R|0)==79){R=0;b[C>>1]=L;D=f<<2;B=d[146266+D>>0]|0;t=g+27952+(B<<2)|0;c[t>>2]=i;u=t+4|0;c[u>>2]=i;v=t+32|0;c[v>>2]=i;w=t+36|0;c[w>>2]=i;x=g+28112+(B<<2)|0;c[x>>2]=j;y=x+4|0;c[y>>2]=j;z=x+32|0;c[z>>2]=j;A=x+36|0;c[A>>2]=j;p=g+28272+B|0;b[p>>1]=M;b[p+8>>1]=M;B=g+28312+B|0;b[B>>1]=K;b[B+8>>1]=K;if(J?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+f>>0]|0;p=n<<24>>24==0;if(!p){if(n<<24>>24>=0)break;if(a[r+f>>0]|0)break;if((c[E>>2]|0)>>>0<=33)break}B=p?P:o;if(!H){n=(N(I,s)|0)+(0-q&3)|0;C=b[B+(n<<2)>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;C=b[B+(n<<2)+2>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;if(F){c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0}if(G){c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0}k=k+4|0;break}t=q<<1;s=s<<1;n=0;q=0;while(1){if((q|0)==4)break;p=(N((q>>1)+s|0,Q)|0)+(q&1|t)|0;z=b[B+(p<<2)>>1]|0;A=z<<16>>16;if(((z<<16>>16>-1?A:0-A|0)|0)<2?(z=b[B+(p<<2)+2>>1]|0,A=z<<16>>16,((z<<16>>16>-1?A:0-A|0)|0)<2):0){if(F)c[g+27952+(d[146266+(q+D)>>0]<<2)>>2]=0;if(G)c[g+28112+(d[146266+(q+D)>>0]<<2)>>2]=0;n=n+1|0}q=q+1|0}if(!(n&3))b[C>>1]=(e[C>>1]|0)+65480;k=n+k|0}}while(0);f=f+1|0}if(!(k&15|T))c[h>>2]=c[h>>2]&-41337|264}else{O=N(w&255,16843009)|0;c[g+28284>>2]=O;c[g+28292>>2]=O;c[g+28300>>2]=O;c[g+28308>>2]=O;O=N(c[D+4>>2]&255,16843009)|0;c[g+28324>>2]=O;c[g+28332>>2]=O;c[g+28340>>2]=O;c[g+28348>>2]=O;O=g+28e3|0;P=g+28032|0;Q=g+28064|0;R=g+28096|0;S=g+28160|0;T=g+28192|0;U=g+28224|0;g=g+28256|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);l=V;return}function Tk(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=l;l=l+16|0;if((l|0)>=(m|0))W(16);E=H;s=c[f+26368>>2]|0;i=c[g+21796>>2]|0;w=g+21792|0;o=c[w>>2]|0;u=c[h>>2]|0;x=u&64;t=g+25336|0;Uk(f,t,(u>>>7&1)+o|0);u=g+25372|0;r=c[(c[u>>2]|0)+48>>2]|0;k=c[r+(i<<2)>>2]|0;v=c[h>>2]|0;j=(v&128|0)!=0;do if(!(k&128))if(j){q=c[w>>2]&-2;n=c[f+27016>>2]|0;p=(N(n,q)|0)+(c[g+21788>>2]|0)|0;k=c[r+(p<<2)>>2]|0;c[E>>2]=k;i=c[r+(n+p<<2)>>2]|0;j=E+4|0;c[j>>2]=i;n=n<<2|2;o=s*6|0;if((k^i)&128){k=k&-129;c[E>>2]=k;i=i&-129;c[j>>2]=i}if(k&15|0?!((x|0)!=0|(i&15|0)==0):0){G=o;i=p;o=q;r=20744;j=61712;q=k;break}G=o;i=p;o=q;r=20744;j=61504;q=k}else{n=2;F=12}else{if(j){k=c[g+21852>>2]|0;n=2;o=k+o|0;j=c[f+27016>>2]|0}else{j=(c[w>>2]&-2)+(c[g+21848>>2]|0)|0;n=0;o=j;i=c[g+21788>>2]|0;k=c[f+27016>>2]|0}k=i+(N(j,k)|0)|0;i=k;k=c[r+(k<<2)>>2]|0;F=12}while(0);do if((F|0)==12){c[E+4>>2]=k;c[E>>2]=k;j=(x|0)!=0;if(j|(k&15|0)==0){if(!j?(p=k&48,p|0):0){G=s;r=20744;j=p|61696;q=k;break}G=s;r=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?20800:20744;j=61504;q=k}else{G=s;r=20744;j=20744;q=k}}while(0);c[h>>2]=v|j;Uk(f,t,o);p=c[u>>2]|0;k=c[(c[f+26360>>2]|0)+(i<<2)>>2]|0;j=(c[p+36>>2]|0)+(k<<2)|0;k=(c[p+40>>2]|0)+(k<<2)|0;o=i<<2;i=(c[p+68>>2]|0)+o|0;o=(c[p+72>>2]|0)+o|0;if(!n){B=(c[w>>2]&1|0)==0;C=G<<1;D=B?j:j+(C<<2)|0;C=B?k:k+(C<<2)|0;A=B?i:i+2|0;o=B?o:o+2|0}else{D=j;C=k;A=i}k=c[h>>2]|0;if((c[f+26376>>2]|0)==0|(k&128|0)==0){B=g+21868|0;j=g+22252|0;y=g+22444|0}else{y=c[w>>2]&1;B=g+21996+(y<<7)|0;j=g+22636+(y*384|0)|0;y=g+22636+(y*384|0)+192|0}z=q>>3&c[p+632>>2]<<4;i=k&128;a:do if((i|0)==(q&128|0)){if(k&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(q&7)){i=a[A>>0]|0;k=i<<24>>24>-1;if(!k){j=y;i=a[o>>0]|0}G=c[j+(z+(i<<24>>24)<<2)>>2]|0;E=c[B+(G<<2)>>2]|0;F=k?D:C;i=b[F>>1]|0;j=(N(E,i)|0)+128>>8;F=b[F+2>>1]|0;k=(N(E,F)|0)+128>>8;i=k-F<<16|j-i&65535;j=k<<16|j&65535;k=N(G,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}w=(x|0)==0;x=r&65535;h=(r&8|0)==0;f=G*3|0;v=(q&7|0)==0;u=0;while(1){if((u|0)==4)break a;q=u&1;r=u>>1;i=g+28552+(u<<1)|0;if(!(!w?!(b[i>>1]&256):0))F=43;b:do if((F|0)==43){F=0;b[i>>1]=x;t=u<<2;n=d[146266+t>>0]|0;E=g+28312+n|0;b[E>>1]=0;b[E+8>>1]=0;if(!v){E=g+28272+n|0;b[E>>1]=0;b[E+8>>1]=0;E=g+27952+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;E=g+28112+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;break}i=a[A+u>>0]|0;if(i<<24>>24>-1){s=D;k=j}else{s=C;i=a[o+u>>0]|0;k=y}k=c[k+(z+(i<<24>>24)<<2)>>2]|0;p=c[B+(k<<2)>>2]|0;E=g+28272+n|0;k=k*257&65535;b[E>>1]=k;b[E+8>>1]=k;if(!h){q=(N(f,r)|0)+(0-q&3)|0;t=b[s+(q<<2)>>1]|0;r=(N(p,t<<16>>16)|0)+128>>8;s=b[s+(q<<2)+2>>1]|0;q=(N(p,s<<16>>16)|0)+128>>8;E=g+27952+(n<<2)|0;p=q<<16|r&65535;c[E>>2]=p;c[E+4>>2]=p;c[E+32>>2]=p;c[E+36>>2]=p;E=g+28112+(n<<2)|0;t=q-(s&65535)<<16|r-(t&65535)&65535;c[E>>2]=t;c[E+4>>2]=t;c[E+32>>2]=t;c[E+36>>2]=t;break}n=q<<1;k=r<<1;i=0;while(1){if((i|0)==4)break b;I=(N((i>>1)+k|0,G)|0)+(i&1|n)|0;r=s+(I<<2)|0;E=d[146266+(i+t)>>0]|0;q=((N(p,b[r>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)>>1]=q;I=s+(I<<2)+2|0;J=((N(p,b[I>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)+2>>1]=J;c[g+28112+(E<<2)>>2]=J-(e[I>>1]|0)<<16|q-(e[r>>1]|0)&65535;i=i+1|0}}while(0);u=u+1|0}}else{h=i>>>6^2;v=(x|0)==0;u=r&65535;t=0;while(1){if((t|0)==4)break a;q=t&1;r=t>>1;i=g+28552+(t<<1)|0;if(!(!v?!(b[i>>1]&256):0)){b[i>>1]=u;s=d[146266+(t<<2)>>0]|0;J=g+28312+s|0;b[J>>1]=0;b[J+8>>1]=0;if(!(c[E+(r<<2)>>2]&7)){k=(N(r,n)|0)+q|0;i=a[A+k>>0]|0;if(i<<24>>24>-1){p=D;k=j}else{p=C;i=a[o+k>>0]|0;k=y}i=c[k+(z+(i<<24>>24)<<2)>>2]|0;J=c[B+(i<<2)>>2]|0;I=g+28272+s|0;i=i*257&65535;b[I>>1]=i;b[I+8>>1]=i;I=(0-q&3)+(N(r,G)|0)|0;i=(b[p+(I<<2)+2>>1]<>1]|0;F=(N(J,I<<16>>16)|0)+128>>8;J=(N(i,J)|0)+128>>8;x=g+27952+(s<<2)|0;w=J<<16|F&65535;c[x>>2]=w;c[x+4>>2]=w;c[x+32>>2]=w;c[x+36>>2]=w;i=F-(I&65535)&65535|J-i<<16}else{i=g+28272+s|0;b[i>>1]=0;b[i+8>>1]=0;i=g+27952+(s<<2)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+32>>2]=0;c[i+36>>2]=0;i=0}J=g+28112+(s<<2)|0;c[J>>2]=i;c[J+4>>2]=i;c[J+32>>2]=i;c[J+36>>2]=i}t=t+1|0}}while(0);l=H;return}function Uk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+696>>2]&1|0){a=c[a+27008>>2]<<4>>f;d=d<<4>>f;Wi(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function Vk(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Wk(a){a=a|0;return c[a+8>>2]|0}function Xk(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Yk(d,32)|0;l=b;return a|0}function Yk(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Gk(a,b)|0;break}else{b=b+-16|0;c=(Gk(a,16)|0)<=(m|0))W(32);h=n;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=d[(nh(c[i+112>>2]|0)|0)+6>>0]|0;g=c[a+26380>>2]|0;p=(g|0)!=3;r=p&1;q=f<>2]|0)-f|0;e=(q|0)>(e|0)?e:q;if(!((p?(c[a+26384>>2]|0)!=0:0)?!(c[i+240>>2]&2|0):0))k=4;if((k|0)==4?(o=c[i+116>>2]|0,o|0):0){c[h>>2]=N(c[j+32>>2]|0,f)|0;b=N(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}Wd[o&63](i,j,h,f,g,e)}l=n;return}function _k(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))$k(a);return}function $k(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function al(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ka=l;l=l+48|0;if((l|0)>=(m|0))W(48);_=ka+20|0;Y=ka;ja=ka+8|0;ca=g+21788|0;k=c[ca>>2]|0;aa=g+21792|0;q=c[aa>>2]|0;$=g+21796|0;n=c[$>>2]|0;da=c[(c[f+24364>>2]|0)+(n<<2)>>2]|0;p=f+25976|0;X=g+848|0;if(!(c[X>>2]|0))ha=(c[(c[f+28216>>2]|0)+16>>2]|0)!=0;else ha=0;i=f+24316|0;ia=f+25664|0;o=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;Z=c[ia>>2]|0;fa=c[o>>2]|0;V=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((N(fa,q)|0)+(k<>2]=V;Z=V+(N(c[ca>>2]<<2&12,fa)|0)+(64<>2]&1023](Z,fa,4);h=h+1|0}r=g+23412|0;a[(c[f+26388>>2]|0)+n>>0]=c[r>>2];Z=g+21828|0;h=c[o>>2]|0;a:do if(c[Z>>2]|0){o=h<<1;c[g+21784>>2]=o;c[g+21780>>2]=o;p=f+26168|0;b:do if(q&1|0){i=N(h,-15)|0;h=0;while(1){if((h|0)==3)break b;fa=ja+(h<<2)|0;c[fa>>2]=(c[fa>>2]|0)+i;h=h+1|0}}while(0);if(!(c[f+26376>>2]|0))fa=o;else{j=(da&8|0)==0;i=0;while(1){if(i>>>0>=(c[r>>2]|0)>>>0){fa=o;break a}c:do if(12288<<(i<<1)&da|0){if(j)h=0;else{V=g+28272+(i*40|0)+12|0;fa=N((a[V>>0]|0)+16^c[aa>>2]&1,16843009)|0;c[V>>2]=fa;c[g+28272+(i*40|0)+20>>2]=fa;c[g+28272+(i*40|0)+28>>2]=fa;c[g+28272+(i*40|0)+36>>2]=fa;break}while(1){if((h|0)>=16)break c;k=(d[146266+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){fa=(c[aa>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=fa;b[k+8>>1]=fa}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;fa=h}while(0);d:do if(!(da&4)){e:do if(da&7){V=g+868|0;i=c[V>>2]|0;f:do if(i|0){j=c[ja>>2]|0;k=c[ja+4>>2]|0;n=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=j+z|0;x=k+z|0;z=n+z|0;A=g+27796+(h<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i|0){n=(B|0)==0;do if(u){h=(8<>2]|0;T=c[T+4>>2]|0;i=s+(-7<>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(n){h=k;i=s+1|0;q=0;j=c[h>>2]|0;h=c[h+4>>2]|0;n=1;break}else{T=h+8|0;n=T;j=c[n>>2]|0;n=c[n+4>>2]|0;h=i+8|0;U=h;ea=c[U+4>>2]|0;i=T;c[i>>2]=c[U>>2];c[i+4>>2]=ea;c[h>>2]=j;c[h+4>>2]=n;h=k;n=1<>2]|0;h=c[h+4>>2]|0;ea=56;break}}else{h=k;j=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[k>>2]=c[ea>>2];c[k+4>>2]=q;k=i;c[k>>2]=j;c[k+4>>2]=h;k=v+(w*96|0)+8|0;h=k;i=s+n+8|0;q=1;j=c[h>>2]|0;h=c[h+4>>2]|0}o=i;T=c[o+4>>2]|0;U=k;c[U>>2]=c[o>>2];c[U+4>>2]=T;U=i;c[U>>2]=j;c[U+4>>2]=h;h=(8<>2]|0;U=c[U+4>>2]|0;o=9<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}h=(c[ca>>2]|0)+1|0;r=f+27012|0;if((h|0)<(c[r>>2]|0)?(ea=(c[A>>2]|0)+(h*96|0)|0,U=ea,T=c[U>>2]|0,U=c[U+4>>2]|0,C=s+(17<>2]|0,ea,c[ea>>2]=c[R>>2],c[ea+4>>2]=S,ea=C,c[ea>>2]=T,c[ea+4>>2]=U,q):0){S=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=C+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}if(u){h=(24<>2]|0;U=c[U+4>>2]|0;j=-7<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}i=(40<>2]|0;U=c[U+4>>2]|0;h=z+j|0;R=h;S=c[R+4>>2]|0;ea=i;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=h;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=i+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=h+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U;ea=68}else ea=69}else if(q)ea=68;else ea=69;if((ea|0)==68){i=(16<>2]|0;U=c[U+4>>2]|0;h=x+n|0;R=h;S=c[R+4>>2]|0;k=i;c[k>>2]=c[R>>2];c[k+4>>2]=S;k=h;c[k>>2]=T;c[k+4>>2]=U;h=h+8|0;i=i+8|0;k=1}else if((ea|0)==69){h=x+n|0;i=(16<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;c[h>>2]=S;c[h+4>>2]=T;h=(24<>2]|0;T=c[T+4>>2]|0;i=x+o|0;Q=i;R=c[Q+4>>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(k){h=h+8|0;T=h;S=c[T>>2]|0;T=c[T+4>>2]|0;i=i+8|0;R=i;Q=c[R+4>>2]|0;c[h>>2]=c[R>>2];c[h+4>>2]=Q;c[i>>2]=S;c[i+4>>2]=T;i=(32<>2]|0;T=c[T+4>>2]|0;h=z+n|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;h=h+8|0;i=i+8|0}else{h=z+n|0;i=(32<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;i=h;c[i>>2]=S;c[i+4>>2]=T;i=(40<>2]|0;T=c[T+4>>2]|0;h=z+o|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}h=(c[ca>>2]|0)+1|0;if((h|0)<(c[r>>2]|0)){i=16<>2]|0)+(h*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;j=17<>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}i=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;h=z+j|0;Q=h;R=c[Q+4>>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}}}}while(0);h=da&1;A=(h|0)==0;F=g+21660|0;B=f+132|0;C=f+28212|0;T=da&16777216;D=(T|0)==0;H=f+144|0;G=f+28216|0;I=g+21764|0;J=3-fa|0;K=3-((fa|0)/2|0)|0;L=0-fa|0;E=g+28560|0;M=f+108|0;O=f+100|0;U=f+140|0;P=f+25704|0;Q=g+21756|0;R=f+112|0;S=f+104|0;z=0;while(1){if((z|0)==3)break;x=c[ia>>2]|0;u=c[ja+(z<<2)>>2]|0;i=c[((z|0)==0?X:g+852+(z+-1<<2)|0)>>2]|0;v=z<<4;w=p+(v<<2)|0;g:do if(A){Sd[c[f+25888+(c[F>>2]<<2)>>2]&255](u,fa);if(a[(d[146266+(z+48)>>0]|0)+(g+27824)>>0]|0){if(!ha){Td[c[B>>2]&1023](g+28560+(z<<8<>2]|0)+173788+(z<<2)>>2]|0)+(i<<6)>>2]|0);break}o=g+28560+(z<<8<>0]|0;if(j)b[o+(n<<1)>>1]=b[g+31632+(z<<6)+(i<<1)>>1]|0;else c[o+(n<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!D){if(ha){n=c[U>>2]|0;k=n}else{k=c[S>>2]|0;n=c[R>>2]|0}q=z<<8;r=(x|0)==0;o=0;while(1){if((o|0)>=16)break g;s=u+(c[w+(o<<2)>>2]|0)|0;t=a[(d[146266+o>>0]|0)+(g+21664)>>0]|0;i=t<<24>>24;do if(ha?(t<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)if((c[P>>2]|0)>>>0<151){Td[c[f+25932+(i<<2)>>2]&1023](s,g+28560+((o<<4)+q<>2]&127](s,g+28560+((o<<4)+q<>2]<>2]<>0]|0)+(g+27824)>>0]|0;Ud[c[f+25796+(i<<2)>>2]&255](s,c[Q>>2]<>2]<>24){case 0:break h;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j)break i;Td[n&1023](s,g+28560+(i<>2]|0;k=n}else{k=c[O>>2]|0;n=c[M>>2]|0}q=z<<8;r=(x|0)==0;s=4<>2]|0)|0;i=a[(d[146266+o>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(ha?(i<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)Td[c[f+25924+(j<<2)>>2]&1023](t,g+28560+((o<<4)+q<>24==7){if(c[I>>2]&32768>>>o|0){i=t+s+L|0;break}if(r){c[_>>2]=N(d[t+J>>0]|0,16843009)|0;i=_;break}else{la=ZW(e[t+(K<<1)>>1]|0,0,65537,65537)|0;i=Y;c[i>>2]=la;c[i+4>>2]=y;i=Y;break}}else i=0;while(0);Td[c[f+25736+(j<<2)>>2]&1023](t,i,fa);j:do switch(a[(d[146266+(o+v)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j){ea=124;break j}Td[n&1023](t,g+28560+(i<>2]|0;if(j){k=c[ja>>2]|0;n=c[ja+4>>2]|0;q=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(i){o=1;break}else{j=T;i=U;break e}else{o=(i^1)&1;break}}else o=1;while(0);if((j|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=k+z|0;x=n+z|0;z=q+z|0;A=g+27796+(o<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i){n=(B|0)==0;do if(u){i=(8<>2]|0;aa=c[aa+4>>2]|0;j=s+(-7<>2]|0;la=i;c[la>>2]=c[Z>>2];c[la+4>>2]=_;la=j;c[la>>2]=$;c[la+4>>2]=aa;if(n){i=k;j=s+1|0;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1;n=0;break}else{$=i+8|0;o=$;ea=c[o>>2]|0;o=c[o+4>>2]|0;i=j+8|0;aa=i;la=c[aa+4>>2]|0;j=$;c[j>>2]=c[aa>>2];c[j+4>>2]=la;c[i>>2]=ea;c[i+4>>2]=o;i=k;o=1<>2]|0;i=c[i+4>>2]|0;ea=151;break}}else{i=k;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1<>2]=k;c[j+4>>2]=i;i=v+(w*96|0)+8|0;j=s+o+8|0;k=c[i>>2]|0;i=c[i+4>>2]|0;n=1}ea=j;c[ea>>2]=k;c[ea+4>>2]=i;i=(8<>2]|0;ea=c[ea+4>>2]|0;q=9<>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ea;if(n){$=i+8|0;ea=$;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ea}i=(c[ca>>2]|0)+1|0;r=f+27012|0;if((i|0)<(c[r>>2]|0)?(la=(c[A>>2]|0)+(i*96|0)|0,ea=la,aa=c[ea>>2]|0,ea=c[ea+4>>2]|0,ba=s+(17<>2]|0,la,c[la>>2]=c[_>>2],c[la+4>>2]=$,la=ba,c[la>>2]=aa,c[la+4>>2]=ea,n):0){Z=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;ea=Z;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=ba+8|0;_=la;$=c[_+4>>2]|0;ba=Z;c[ba>>2]=c[_>>2];c[ba+4>>2]=$;c[la>>2]=aa;c[la+4>>2]=ea}if(u){i=(24<>2]|0;ea=c[ea+4>>2]|0;k=-7<>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=i+8|0;ea=aa;ba=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ea}j=(40<>2]|0;ea=c[ea+4>>2]|0;i=z+k|0;$=i;aa=c[$+4>>2]|0;la=j;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=j+8|0;la=aa;ba=c[la>>2]|0;la=c[la+4>>2]|0;ea=i+8|0;_=ea;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[ea>>2]=ba;c[ea+4>>2]=la;ea=163}else ea=164}else if(n)ea=163;else ea=164;if((ea|0)==163){j=(16<>2]|0;i=x+o|0;n=i;c[n>>2]=c[ba>>2];c[n+4>>2]=la;i=i+8|0;j=j+8|0;n=1}else if((ea|0)==164){i=x+o|0;j=(16<>2]|0;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;i=(24<>2]|0;ba=c[ba+4>>2]|0;j=x+q|0;_=j;$=c[_+4>>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ba;if(n){i=i+8|0;aa=i;ba=c[aa>>2]|0;aa=c[aa+4>>2]|0;j=j+8|0;$=j;la=c[$+4>>2]|0;c[i>>2]=c[$>>2];c[i+4>>2]=la;c[j>>2]=ba;c[j+4>>2]=aa;j=(32<>2]|0;i=z+o|0;la=i;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;i=i+8|0;j=j+8|0}else{i=z+o|0;j=(32<>2]|0;j=i;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(40<>2]|0;ba=c[ba+4>>2]|0;i=z+q|0;_=i;$=c[_+4>>2]|0;la=j;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}i=(c[ca>>2]|0)+1|0;if((i|0)<(c[r>>2]|0)){j=16<>2]|0)+(i*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;k=17<>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}j=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;i=z+k|0;_=i;$=c[_+4>>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;la=$;ca=c[la>>2]|0;la=c[la+4>>2]|0;j=i+8|0;aa=j;ba=c[aa+4>>2]|0;i=$;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;c[j>>2]=ca;c[j+4>>2]=la;j=T;i=U}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{ll(f,g,c[ja>>2]|0,c[ja+4>>2]|0,c[ja+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=da&16777216;H=f+144|0;i=f+140|0;G=f+28216|0;F=g+21660|0;E=g+28560|0;h=da&1}while(0);D=(h|0)==0;A=(da&2|0)==0;B=g+21856|0;z=(j|0)!=0;C=z?4:1;z=z?i:H;q=(j|0)==0;r=f+116|0;s=f+120|0;t=f+128|0;o=0;while(1){if((o|0)==3)break d;u=c[ia>>2]|0;v=c[ja+(o<<2)>>2]|0;w=o<<4;x=p+(w<<2)|0;k:do if(D){if(A){if(!(c[B>>2]&15))break;if(!ha)if(q){Vd[c[r>>2]&127](v,x,g+28560+(o<<8<>2]&127](v,x,g+28560+(o<<8<>2]|0;j=o<<8;h=0;while(1){if((h|0)>=16)break k;if(a[(d[146266+(h+w)>>0]|0)+(g+27824)>>0]|0)Td[i&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<>2]&127](v,x,g+28560+(o<<8<>2]|0)+4>>2]|0)==244?(ga=c[F>>2]|0,(ga+-1|0)>>>0<2):0){Ud[c[f+25960+(ga<<2)>>2]&255](v,x,g+28560+(o<<8<>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(n<<1)>>1]|0;else i=c[E+(n<<2)>>2]|0;if(i|0)ea=191}else ea=191;if((ea|0)==191){ea=0;Td[c[H>>2]&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+(n<>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ja+(i<<2)|0;n=i<<8;h=0;while(1){if((h|0)==16)break;o=(c[k>>2]|0)+(N(h,fa)|0)|0;p=(c[j>>2]|0)+n+(h<<4)|0;q=o+16|0;do{a[o>>0]=a[p>>0]|0;o=o+1|0;p=p+1|0}while((o|0)<(q|0));h=h+1|0}i=i+1|0}}o=c[(c[f+28216>>2]|0)+1184>>2]|0;cl(_,c[g+27780>>2]|0,o*768|0);j=0;while(1){if((j|0)==3)break;k=ja+(j<<2)|0;i=0;while(1){if((i|0)==16)break;n=(c[k>>2]|0)+(N(i,fa)|0)|0;h=0;while(1){if((h|0)==16)break;b[n+(h<<1)>>1]=dl(_,o)|0;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);l=ka;return}function bl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;$=l;l=l+32|0;if((l|0)>=(m|0))W(32);_=$+8|0;D=$;I=g+21788|0;i=c[I>>2]|0;G=g+21792|0;k=c[G>>2]|0;F=g+21796|0;j=c[F>>2]|0;K=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;B=g+848|0;U=f+28216|0;h=c[U>>2]|0;if(!(c[B>>2]|0))R=(c[h+16>>2]|0)!=0;else R=0;v=16>>>(c[f+25680>>2]|0);V=(c[h+12>>2]|0)==2;S=c[f+24316>>2]|0;Y=f+25664|0;T=c[Y>>2]|0;E=i<>2]|0;n=(c[S>>2]|0)+((N(t,k)|0)+E<<4)|0;E=E<<3;h=g+21776|0;o=N(N(v,k)|0,c[h>>2]|0)|0;q=(c[S+4>>2]|0)+E+o|0;o=(c[S+8>>2]|0)+E+o|0;E=f+12|0;i=n+(N(i<<2&12,t)|0)+(64<>2]&1023](i,t,4);t=q+(N(c[I>>2]&7,c[h>>2]|0)|0)|0;Td[c[E>>2]&1023](t+(64<>2])|0,o-q|0,2);t=g+23412|0;a[(c[f+26388>>2]|0)+j>>0]=c[t>>2];E=g+21828|0;i=c[Z>>2]|0;a:do if(c[E>>2]|0){r=i<<1;c[g+21780>>2]=r;h=c[h>>2]|0;s=h<<1;c[g+21784>>2]=s;u=f+26168|0;if(!(k&1))p=n;else{Z=N(1-v|0,h)|0;p=n+(N(i,-15)|0)|0;q=q+Z|0;o=o+Z|0}if(!(c[f+26376>>2]|0)){O=r;Z=s;S=u;M=p;T=o}else{j=(K&8|0)==0;i=0;while(1){if(i>>>0>=(c[t>>2]|0)>>>0){O=r;Z=s;S=u;M=p;T=o;break a}b:do if(12288<<(i<<1)&K|0){if(j)h=0;else{T=g+28272+(i*40|0)+12|0;Z=N((a[T>>0]|0)+16^c[G>>2]&1,16843009)|0;c[T>>2]=Z;c[g+28272+(i*40|0)+20>>2]=Z;c[g+28272+(i*40|0)+28>>2]=Z;c[g+28272+(i*40|0)+36>>2]=Z;break}while(1){if((h|0)>=16)break b;k=(d[146266+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){Z=(c[G>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=Z;b[k+8>>1]=Z}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;Z=c[h>>2]|0;c[g+21784>>2]=Z;O=i;S=f+25976|0;M=n;T=o}while(0);c:do if(!(K&4)){J=(K&7|0)!=0;d:do if(J){C=g+868|0;i=c[C>>2]|0;e:do if(i|0){z=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[I>>2]|0}else{w=c[I>>2]|0;s=(w|0)>0;i=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}r=M+(0-(O+1+z))|0;x=0-(Z+1+z)|0;u=q+x|0;x=T+x|0;p=g+27796+(h<<2)|0;v=c[p>>2]|0;t=w+-1|0;n=v+(w*96|0)|0;if(i|0){j=(z|0)==0;do if(s){h=(8<>2]|0;k=c[k+4>>2]|0;i=r+(-7<>2]|0;o=h;c[o>>2]=c[ca>>2];c[o+4>>2]=ba;o=i;c[o>>2]=aa;c[o+4>>2]=k;if(j){h=n;i=r+1|0;j=0;k=c[h>>2]|0;h=c[h+4>>2]|0;break}else{ba=h+8|0;o=ba;j=c[o>>2]|0;o=c[o+4>>2]|0;h=i+8|0;ca=h;X=c[ca+4>>2]|0;i=ba;c[i>>2]=c[ca>>2];c[i+4>>2]=X;c[h>>2]=j;c[h+4>>2]=o;h=n;o=1<>2]|0;h=c[h+4>>2]|0;X=69;break}}else{h=n;k=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[n>>2]=c[ca>>2];c[n+4>>2]=k;n=i;c[n>>2]=j;c[n+4>>2]=h;n=v+(w*96|0)+8|0;h=n;i=r+o+8|0;j=1;k=c[h>>2]|0;h=c[h+4>>2]|0}o=i;aa=c[o+4>>2]|0;ba=n;c[ba>>2]=c[o>>2];c[ba+4>>2]=aa;ba=i;c[ba>>2]=k;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=r+(9<>2]|0;ca=h;c[ca>>2]=c[n>>2];c[ca+4>>2]=o;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){o=h+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;k=ca;n=c[k+4>>2]|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[p>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,A=r+(17<>2]|0,ca,c[ca>>2]=c[o>>2],c[ca+4>>2]=r,ca=A,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){o=(c[p>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=A+8|0;p=ca;r=c[p+4>>2]|0;A=o;c[A>>2]=c[p>>2];c[A+4>>2]=r;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[s>>2];c[ca+4>>2]=A;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=h+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;r=ca;s=c[r+4>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=s;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+k|0;t=h;A=c[t+4>>2]|0;ca=i;c[ca>>2]=c[t>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;t=j;A=c[t+4>>2]|0;c[aa>>2]=c[t>>2];c[aa+4>>2]=A;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=v+(w*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=u+1+z|0;u=h;A=c[u+4>>2]|0;ca=i;c[ca>>2]=c[u>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;t=ca;u=c[t+4>>2]|0;c[A>>2]=c[t>>2];c[A+4>>2]=u;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+1+z|0;z=h;A=c[z+4>>2]|0;ca=i;c[ca>>2]=c[z>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;x=ca;z=c[x+4>>2]|0;c[A>>2]=c[x>>2];c[A+4>>2]=z;c[ca>>2]=aa;c[ca+4>>2]=ba}}}while(0);z=g+21656|0;Sd[c[f+25844+(c[z>>2]<<2)>>2]&255](q,Z);Sd[c[f+25844+(c[z>>2]<<2)>>2]&255](T,Z);z=c[Y>>2]|0;h=c[B>>2]|0;f:do if(!(K&1)){Sd[c[f+25888+(c[g+21660>>2]<<2)>>2]&255](M,O);if(a[g+27824>>0]|0){if(!R){Td[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28212>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}n=g+28560|0;i=(z|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[135553+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[n+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(K&16777216|0){if(R){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}o=f+25704|0;p=g+21756|0;r=g+21764|0;s=(z|0)==0;t=g+28560|0;n=0;while(1){if((n|0)>=16)break f;u=M+(c[S+(n<<2)>>2]|0)|0;h=d[146266+n>>0]|0;ca=a[g+21664+h>>0]|0;i=ca<<24>>24;do if(R?(ca<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)if((c[o>>2]|0)>>>0<151){Td[c[f+25932+(i<<2)>>2]&1023](u,g+28560+(n<<4<>2]&127](u,g+28560+(n<<4<>2]<>2]<>0]|0;Ud[c[f+25796+(i<<2)>>2]&255](u,c[p>>2]<>2]<>24){case 0:break g;case 1:{h=n<<4;if(s)i=e[g+28560+(h<<1)>>1]|0;else i=c[t+(h<<2)>>2]|0;if(i){Td[k&1023](u,g+28560+(h<>2]|0;k=n}else{k=c[f+100>>2]|0;n=c[f+108>>2]|0}p=g+21764|0;r=(z|0)==0;s=3-O|0;t=3-((O|0)/2|0)|0;u=4<>2]|0)|0;i=d[146266+o>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(R?(h<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)Td[c[f+25924+(j<<2)>>2]&1023](x,g+28560+(o<<4<>24==7){if(c[p>>2]&32768>>>o|0){h=x+u+v|0;break}if(r){c[_>>2]=N(d[x+s>>0]|0,16843009)|0;h=_;break}else{ca=ZW(e[x+(t<<1)>>1]|0,0,65537,65537)|0;h=D;c[h>>2]=ca;c[h+4>>2]=y;h=D;break}}else h=0;while(0);Td[c[f+25736+(j<<2)>>2]&1023](x,h,O);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=o<<4;if(r)i=e[g+28560+(h<<1)>>1]|0;else i=c[w+(h<<2)>>2]|0;if(!i)X=126;else Td[n&1023](x,g+28560+(h<>2]|0;if(i|0){x=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){r=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;v=c[I>>2]|0}else{v=c[I>>2]|0;r=(v|0)>0;h=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}p=M+(0-(O+1+x))|0;w=0-(Z+1+x)|0;t=q+w|0;w=T+w|0;o=g+27796+(j<<2)|0;u=c[o>>2]|0;s=v+-1|0;j=u+(v*96|0)|0;if(h|0){n=(x|0)==0;do if(r){h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(-7<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(n){h=j;k=p+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=0;break}else{X=h+8|0;k=X;h=c[k>>2]|0;k=c[k+4>>2]|0;i=i+8|0;ba=i;ca=c[ba+4>>2]|0;c[X>>2]=c[ba>>2];c[X+4>>2]=ca;c[i>>2]=h;c[i+4>>2]=k;i=j;k=1<>2]|0;i=c[i>>2]|0;X=152;break}}else{h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;k=1<>2]=i;c[j+4>>2]=h;h=u+(v*96|0)+8|0;k=p+k+8|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1}ba=k;c[ba>>2]=i;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(9<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){G=h+8|0;ba=G;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;E=ca;F=c[E+4>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=F;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[o>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,H=p+(17<>2]|0,ca,c[ca>>2]=c[F>>2],c[ca+4>>2]=G,ca=H,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){I=(c[o>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=H+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=h+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+k|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;H=j;I=c[H+4>>2]|0;c[aa>>2]=c[H>>2];c[aa+4>>2]=I;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=u+(v*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=t+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;n=f+16|0;o=f+32|0;if(V){el(f,g,M,q,T,h,i,j,k,n,o);break}else{fl(f,g,M,q,T,h,i,j,k,n,o);break}}while(0);p=c[Y>>2]|0;h:do if(!(K&1)){if(!(K&2)){if(!(c[g+21856>>2]&15))break;h=K&16777216;if(!R)if(!h){Vd[c[f+116>>2]&127](M,S,g+28560|0,O,g+27824|0);break}else{Vd[c[f+120>>2]&127](M,S,g+28560|0,O,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if((h|0)>=16)break h;if(a[(d[146266+h>>0]|0)+(g+27824)>>0]|0)Td[j&1023](M+(c[S+(h<<2)>>2]|0)|0,g+28560+(h<<4<>2]&127](M,S,g+28560|0,O,g+27824|0);break}if((c[(c[U>>2]|0)+4>>2]|0)==244?(L=c[g+21660>>2]|0,(L+-1|0)>>>0<2):0){Ud[c[f+25960+(L<<2)>>2]&255](M,S,g+28560|0,O);break}j=(p|0)==0;k=g+28560|0;n=f+144|0;i=0;while(1){if((i|0)==16)break h;o=i<<4;if(!(a[(d[146266+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(o<<1)>>1]|0;else h=c[k+(o<<2)>>2]|0;if(h|0)X=183}else X=183;if((X|0)==183){X=0;Td[c[n>>2]&1023](M+(c[S+(i<<2)>>2]|0)|0,g+28560+(o<>2]&48|0){c[_>>2]=q;h=_+4|0;c[h>>2]=T;i:do if(R){if((J?(c[(c[U>>2]|0)+4>>2]|0)==244:0)?(P=g+21656|0,Q=c[P>>2]|0,(Q+-1|0)>>>0<2):0){Ud[c[f+25948+(Q<<2)>>2]&255](q,S+64|0,g+28560+(256<>2]<<1)|0,Z);Ud[c[f+25948+(c[P>>2]<<2)>>2]&255](c[h>>2]|0,S+128|0,g+28560+(512<>2]<<1)|0,Z);break}r=c[f+144>>2]|0;s=g+28560|0;q=1;while(1){if((q|0)==3)break i;j=q<<4;o=j|4;t=_+(q+-1<<2)|0;i=j;while(1){if((i|0)>=(o|0))break;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146266+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=211}else X=211;if((X|0)==211){X=0;Td[r&1023]((c[t>>2]|0)+(c[S+(i<<2)>>2]|0)|0,g+28560+(n<=(p|0))break j;j=i+4|0;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146266+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=221}else X=221;if((X|0)==221){X=0;Td[r&1023]((c[t>>2]|0)+(c[S+(j<<2)>>2]|0)|0,g+28560+(n<>2]|0;if(V){i=(c[g+856>>2]|0)+3|0;h=h+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)Sd[c[f+136>>2]&255](g+28560+(256<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)Sd[c[f+136>>2]&255](g+28560+(512<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);Vd[c[f+124>>2]&127](_,S,g+28560|0,Z,g+27824|0)}while(0)}}else{h=c[U>>2]|0;o=c[h+1184>>2]|0;if(!(c[Y>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=M+(N(h,O)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;n=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(n|0));h=h+1|0}if(!(c[(c[U>>2]|0)+12>>2]|0)){i=1<>2]|0)+256|0;j=i+(v<<3)|0;h=0;while(1){if((h|0)>=(v|0))break c;ca=N(h,Z)|0;ba=h<<3;aa=i+ba|0;Y=aa;Y=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;aa=aa+4|0;aa=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;_=q+ca|0;g=_;a[g>>0]=Y;a[g+1>>0]=Y>>8;a[g+2>>0]=Y>>16;a[g+3>>0]=Y>>24;_=_+4|0;a[_>>0]=aa;a[_+1>>0]=aa>>8;a[_+2>>0]=aa>>16;a[_+3>>0]=aa>>24;ba=j+ba|0;_=ba;_=d[_>>0]|d[_+1>>0]<<8|d[_+2>>0]<<16|d[_+3>>0]<<24;ba=ba+4|0;ba=d[ba>>0]|d[ba+1>>0]<<8|d[ba+2>>0]<<16|d[ba+3>>0]<<24;ca=T+ca|0;aa=ca;a[aa>>0]=_;a[aa+1>>0]=_>>8;a[aa+2>>0]=_>>16;a[aa+3>>0]=_>>24;ca=ca+4|0;a[ca>>0]=ba;a[ca+1>>0]=ba>>8;a[ca+2>>0]=ba>>16;a[ca+3>>0]=ba>>24;h=h+1|0}}}cl(_,c[g+27780>>2]|0,N(o,e[114134+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=M+(N(i,O)|0)|0;h=0;while(1){if((h|0)==16)break;b[j+(h<<1)>>1]=dl(_,o)|0;h=h+1|0}i=i+1|0}k:do if(!(c[(c[U>>2]|0)+12>>2]|0)){j=1<=(v|0))break k;n=N(i,Z)|0;k=q+n|0;n=T+n|0;h=0;while(1){if((h|0)==8)break;b[n+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(v|0)){i=0;break}j=q+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=dl(_,o)|0;h=h+1|0}i=i+1|0}while(1){if((i|0)>=(v|0))break k;j=T+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=dl(_,o)|0;h=h+1|0}i=i+1|0}}while(0)}while(0);l=$;return}function cl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function dl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(eX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function el(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)gl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Td[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Td[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;kl(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);kl(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;kl(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);kl(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;kl(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);kl(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;kl(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);kl(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;kl(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else kl(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else kl(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Td[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Td[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function fl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)gl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Td[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Td[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;hl(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);hl(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;hl(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);hl(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;hl(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);hl(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;hl(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);hl(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;hl(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else hl(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else hl(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Td[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Td[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function gl(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+208|0;if((l|0)>=(m|0))W(208);u=w+8|0;v=w;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;t=v;c[t>>2]=0;c[t+4>>2]=0;iX(u|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){il(a,d,u,0,8,0,f&4096,f&16384,v);il(a,d,u,8,8,8,f&8192,f&32768,v);break}if(f&32|0){il(a,d,u,0,16,0,f&4096,f&16384,v);il(a,d,u,4,16,0,f&8192,f&32768,v);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){s=f&4096;t=f&16384;il(a,d,u,h,4,i,s,t,v);il(a,d,u,h|2,4,i|4,s,t,v);break}j=f&4096;k=f&16384;if(!(f&32))f=0;else{il(a,d,u,h,8,i,j,k,v);il(a,d,u,h|1,8,i,j,k,v);break}while(1){if((f|0)==4)break b;il(a,d,u,f+h|0,4,f<<1&4|i,j,k,v);f=f+1|0}}else il(a,d,u,h,8,i,f&4096,f&16384,v);while(0);g=g+1|0}}else il(a,d,u,0,16,0,f&4096,f&16384,v);while(0);s=a+27008|0;t=d+21832|0;r=a+26380|0;f=c[d+23412>>2]|0;c:while(1){f=f+-1|0;if((f|0)<=-1)break;p=v+(f<<2)|0;o=0;while(1){if((o|0)>=48)continue c;h=c[p>>2]|0;if(!h)continue c;g=b[u+(f*96|0)+(o<<1)>>1]|0;do if(g<<16>>16>-1){q=(c[d+23416+(f*1920|0)+(o*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(o*40|0)+36|0;j=c[i>>2]|0;x=c[j+636>>2]|0;n=c[s>>2]<<4>>x;k=g<<16>>16<>2];c[p>>2]=h+-1;a=(c[r>>2]|0)==3;g=(x|0)!=0;if(g&a){x=k>>1;a=x-(k&1^1)|0;q=n+-1|0;Wi(j+4|0,(a|0)<(n|0)?a:q,1);Wi((c[i>>2]|0)+4|0,(x|0)>(q|0)?q:x,0);break}h=j+4|0;if(!(g|a)){x=(k<<1)+q|0;Wi(h,(x|0)<(n|0)?x:n+-1|0,0);break}g=n+-1|0;g=(k|0)>(g|0)?g:k;if(a){Wi(h,g,0);break}else{Wi(h,g,q);break}}while(0);o=o+1|0}}l=w;return}function hl(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;M=f+880|0;x=c[M>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){V=d[146266+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+V>>0]|0)*384|0)+(a[f+28312+V>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=44;else{P=x;x=5}}else if((x|0)==1){y=f+21792|0;P=y;y=c[y>>2]|0;x=5}else x=44;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;K=c[u>>2]|0;J=c[u+4>>2]|0;O=c[e+25664>>2]|0;V=f+21780|0;s=c[V>>2]|0;S=k+((N(o<<1,s)|0)+(n<<1<>1;U=f+21784|0;x=c[U>>2]|0;Q=(N(x,o)|0)+(n<>2]<<3)+n|0;L=f+21828|0;n=c[L>>2]|0;y=(y>>n<<3)+o|0;if(!(z&A)){B=A&1;z=d[146266+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;k=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;v=z<<2&12|k&3;x=k>>2;y=z>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;u=m<<4;A=c[e+27008>>2]<<4>>n;n=k&7;M=(n|0)==0?0:-3;g=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(y|0)<(0-g|0))?(x+16|0)<=(M+u|0):0)?(y+16|0)<=(A+g|0):0){l=0;y=s}else{g=f+27792|0;l=2<>2]&3](c[g>>2]|0,t+(0-l)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+l+(y<<1)|0;l=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](S,t,y);if(!h)Td[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){z=(1-(c[f+23416+(B*1920|0)+(o*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(A>>1|0)}k=k>>3;v=k<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+v+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+v+x|0;v=f+27792|0;if(!l){y=z&7;Wd[q&63](R,u,t,T,n,y)}else{j=A>>1;h=m<<3;O=e+8|0;Zd[c[O>>2]&3](c[v>>2]|0,u,t,t,9,9,k,y,h,j);e=z&7;Wd[q&63](R,c[v>>2]|0,c[U>>2]|0,T,n,e);P=c[U>>2]|0;Zd[c[O>>2]&3](c[v>>2]|0,x,P,P,9,9,k,y,h,j);x=c[v>>2]|0;y=e}Wd[q&63](Q,x,c[U>>2]|0,T,n,y);Wd[D&63](S,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;Wd[C&63](R,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Wd[C&63](Q,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}H=c[f+27788>>2]|0;I=H+(16<>0]|0;w=a[f+28272+C>>0]|0;F=a[f+28312+C>>0]|0;o=t<<3;z=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;l=B+(b[f+27952+(C<<2)+2>>1]|0)|0;v=l<<2&12|z&3;x=z>>2;y=l>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;E=e+27012|0;m=c[E>>2]|0;u=m<<4;r=e+27008|0;A=c[r>>2]<<4>>n;n=z&7;D=(n|0)==0?0:-3;g=(l&7|0)==0?0:-3;if((!((x|0)<(0-D|0)|(y|0)<(0-g|0))?(x+16|0)<=(D+u|0):0)?(y+16|0)<=(A+g|0):0){k=0;y=s}else{g=f+27792|0;k=2<>2]&3](c[g>>2]|0,t+(0-k)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Td[c[x>>2]&1023](S,t,y);D=(h|0)!=0;if(!D)Td[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+23416+(w*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;h=l>>3;k=h>>>31|k|(h+8|0)>=(A>>1|0)}y=z>>3;s=y<>3;u=c[U>>2]|0;x=N(u,t)|0;v=(c[f+23416+(w*40|0)+4>>2]|0)+s+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+s+x|0;s=f+27792|0;if(!k){y=l&7;Wd[q&63](R,v,u,T,n,y)}else{g=A>>1;m=m<<3;z=e+8|0;Zd[c[z>>2]&3](c[s>>2]|0,v,u,u,9,9,y,t,m,g);h=l&7;Wd[q&63](R,c[s>>2]|0,c[U>>2]|0,T,n,h);A=c[U>>2]|0;Zd[c[z>>2]&3](c[s>>2]|0,x,A,A,9,9,y,t,m,g);x=c[s>>2]|0;y=h}Wd[q&63](Q,x,c[U>>2]|0,T,n,y);A=o+(b[f+28112+(C<<2)>>1]|0)|0;l=B+(b[f+28112+(C<<2)+2>>1]|0)|0;z=l<<2&12|A&3;u=A>>2;v=l>>2;y=c[V>>2]|0;t=(N(v,y)|0)+(u<>2]|0)+t|0;n=c[E>>2]|0;x=n<<4;m=c[r>>2]<<4>>c[L>>2];o=A&7;g=(o|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(v|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(v+16|0)<=(m+h|0):0)k=0;else{k=2<>2]&3](c[s>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,x,m);y=c[V>>2]|0;t=(c[s>>2]|0)+k+(y<<1)|0;k=1}x=p+(z<<2)|0;Td[c[x>>2]&1023](G,t,y);if(!D)Td[c[x>>2]&1023](G+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+25336+(F*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;j=l>>3;k=j>>>31|k|(j+8|0)>=(m>>1|0)}v=A>>3;j=v<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+25336+(F*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(F*40|0)+8>>2]|0)+j+x|0;if(!k){y=l&7;Wd[q&63](H,u,t,T,o,y)}else{j=m>>1;h=n<<3;g=e+8|0;Zd[c[g>>2]&3](c[s>>2]|0,u,t,t,9,9,v,y,h,j);e=l&7;Wd[q&63](H,c[s>>2]|0,c[U>>2]|0,T,o,e);O=c[U>>2]|0;Zd[c[g>>2]&3](c[s>>2]|0,x,O,O,9,9,v,y,h,j);x=c[s>>2]|0;y=e}Wd[q&63](I,x,c[U>>2]|0,T,o,y);if((c[M>>2]|0)==2){e=c[f+3216+(w*384|0)+(F<<3)+((c[P>>2]&1)<<2)>>2]|0;f=64-e|0;Xd[K&31](S,G,c[V>>2]|0,i,5,e,f,0);Xd[J&31](R,H,c[U>>2]|0,T,5,e,f,0);Xd[J&31](Q,I,c[U>>2]|0,T,5,e,f,0);break}else{Xd[K&31](S,G,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(F<<4)+8>>2]|0,(c[f+912+(F<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);i=f+892|0;Xd[J&31](R,H,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(F<<5)+16>>2]|0,(c[f+1680+(F<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Xd[J&31](Q,I,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(F<<5)+24>>2]|0,(c[f+1680+(F<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==44){J=c[e+25664>>2]|0;I=f+21780|0;y=c[I>>2]|0;H=k+((N(o<<1,y)|0)+(n<<1<>2]|0,o)|0)+(n<>2]<<3)+n|0;F=f+21792|0;G=f+21828|0;x=c[G>>2]|0;E=(c[F>>2]>>x<<3)+o|0;if(v){z=d[146266+g>>0]|0;n=a[f+28272+z>>0]|0;m=(D<<3)+(b[f+27952+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+27952+(z<<2)+2>>1]|0)|0;A=z<<2&12|m&3;u=m>>2;v=z>>2;t=(N(v,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;k=B<<4;o=c[e+27008>>2]<<4>>x;C=m&7;U=(C|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((u|0)<(0-U|0)|(v|0)<(0-V|0))?(u+16|0)<=(U+k|0):0)?(v+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,k,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(A<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!h)Td[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+23416+(n*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;V=z>>3;l=V>>>31|l|(V+8|0)>=(o>>1|0)}t=m>>3;y=t<>3;v=c[M>>2]|0;x=N(v,u)|0;k=(c[f+23416+(n*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(n*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Wd[q&63](K,k,v,y,C,t)}else{T=o>>1;S=B<<3;Q=e+8|0;Zd[c[Q>>2]&3](c[y>>2]|0,k,v,v,9,9,t,u,S,T);U=i>>1;V=z&7;Wd[q&63](K,c[y>>2]|0,c[M>>2]|0,U,C,V);R=c[M>>2]|0;Zd[c[Q>>2]&3](c[y>>2]|0,x,R,R,9,9,t,u,S,T);x=c[y>>2]|0;y=U;t=V}Wd[q&63](L,x,c[M>>2]|0,y,C,t);q=s;p=r}if(w|0){z=d[146266+g>>0]|0;m=a[f+28312+z>>0]|0;A=(D<<3)+(b[f+28112+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+28112+(z<<2)+2>>1]|0)|0;k=z<<2&12|A&3;x=A>>2;u=z>>2;y=c[I>>2]|0;t=(N(u,y)|0)+(x<>2]|0)+t|0;n=c[e+27012>>2]|0;v=n<<4;o=c[e+27008>>2]<<4>>c[G>>2];B=A&7;U=(B|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((x|0)<(0-U|0)|(u|0)<(0-V|0))?(x+16|0)<=(v+U|0):0)?(u+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,x+-2|0,u+-2|0,v,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(k<<2)|0;Td[c[x>>2]&1023](H,t,y);if(!h)Td[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+25336+(m*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(o>>1|0)}k=A>>3;y=k<>3;u=c[M>>2]|0;x=N(u,t)|0;v=(c[f+25336+(m*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(m*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Wd[q&63](K,v,u,y,B,t)}else{j=o>>1;h=n<<3;V=e+8|0;Zd[c[V>>2]&3](c[y>>2]|0,v,u,u,9,9,k,t,h,j);f=i>>1;i=z&7;Wd[q&63](K,c[y>>2]|0,c[M>>2]|0,f,B,i);e=c[M>>2]|0;Zd[c[V>>2]&3](c[y>>2]|0,x,e,e,9,9,k,t,h,j);x=c[y>>2]|0;y=f;t=i}Wd[q&63](L,x,c[M>>2]|0,y,B,t)}}while(0);return}function il(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[146266+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=jl(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[146266+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=jl(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function jl(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[146266+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+(g&3|0?3:0)|0;return ((g|0)>0?g:0)|0} +function _d(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))W(a|0);return b|0}function $d(){return l|0}function ae(a){a=a|0;l=a}function be(a,b){a=a|0;b=b|0;l=a;m=b}function ce(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function de(a){a=a|0;y=a}function ee(){return y|0}function fe(){jc();return 0}function ge(a){a=a|0;var b=0;ob(72,80,96,0,115104,13,115107,0,115107,0,114158,169603,22);pb(72,1,52960,115104,14,1);a=xV(8)|0;c[a>>2]=3;c[a+4>>2]=0;qb(72,114168,3,52964,115109,4,a|0,0);a=xV(8)|0;c[a>>2]=4;c[a+4>>2]=0;qb(72,114181,3,52976,115109,5,a|0,0);a=xV(8)|0;c[a>>2]=10;c[a+4>>2]=0;qb(72,114188,4,52988,115114,2,a|0,0);a=xV(8)|0;c[a>>2]=23;c[a+4>>2]=0;qb(72,114199,2,53004,115120,5,a|0,0);a=xV(8)|0;c[a>>2]=6;c[a+4>>2]=0;b=xV(8)|0;c[b>>2]=7;c[b+4>>2]=0;rb(72,114217,40,115124,5,a|0,40,115109,6,b|0);b=xV(8)|0;c[b>>2]=8;c[b+4>>2]=0;a=xV(8)|0;c[a>>2]=9;c[a+4>>2]=0;rb(72,114229,40,115124,5,b|0,40,115109,6,a|0);a=xV(8)|0;c[a>>2]=7;c[a+4>>2]=0;qb(72,114241,4,53012,115128,4,a|0,0);a=xV(8)|0;c[a>>2]=8;c[a+4>>2]=0;qb(72,114247,3,53028,115134,11,a|0,0);return}function he(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=A+32|0;t=A+16|0;u=A;w=c[e>>2]|0;x=Mb(114261)|0;c[t>>2]=Ib(w|0,x|0)|0;Fb(x|0);re(z,t);Fb(c[t>>2]|0);a:do if(!(a[b+52>>0]|0))switch(a[(QV(z,0)|0)>>0]|0){case 1:{LV(u,z,1,-1,z);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];s=t+12|0;c[s>>2]=0;y=t+11|0;x=(a[y>>0]|0)<0?c[t>>2]|0:t;v=a[x+3>>0]|0;u=a[x+2>>0]|0;w=a[x+1>>0]|0;x=a[x>>0]|0;c[s>>2]=4;se(b,(u&255)<<8|v&255|(w&255)<<16|(x&255)<<24,t);if((a[y>>0]|0)<0)yV(c[t>>2]|0);break a}case 2:{LV(u,z,1,-1,z);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];s=t+12|0;c[s>>2]=0;y=t+11|0;x=(a[y>>0]|0)<0?c[t>>2]|0:t;v=a[x+3>>0]|0;u=a[x+2>>0]|0;w=a[x+1>>0]|0;x=a[x>>0]|0;c[s>>2]=4;xe(b+56|0,(u&255)<<8|v&255|(w&255)<<16|(x&255)<<24,t)|0;if((a[y>>0]|0)<0)yV(c[t>>2]|0);break a}default:break a}else{j=b+24|0;switch(c[j>>2]|0){case 0:{h=b+36|0;e=a[z+11>>0]|0;f=e<<24>>24<0;RV(h,f?c[z>>2]|0:z,f?c[z+4>>2]|0:e&255)|0;e=a[h+11>>0]|0;f=e<<24>>24<0;if(f)g=c[b+40>>2]|0;else g=e&255;i=b+48|0;if((g-(c[i>>2]|0)|0)<=12)break a;c[j>>2]=1;c[i>>2]=13;if(f){e=c[b+40>>2]|0;f=c[h>>2]|0}else{e=e&255;f=h}b=e+-13|0;hX(f|0,f+13|0,b|0)|0;NV(h,b,0);c[i>>2]=0;break a}case 1:break;default:break a}v=b+36|0;k=a[z+11>>0]|0;n=k<<24>>24<0;RV(v,n?c[z>>2]|0:z,n?c[z+4>>2]|0:k&255)|0;k=v+11|0;n=b+40|0;w=b+48|0;o=u+11|0;p=u+4|0;q=t+12|0;r=t+11|0;s=b+56|0;while(1){h=a[k>>0]|0;i=h<<24>>24<0;if(i)e=c[n>>2]|0;else e=h&255;x=c[w>>2]|0;if((e-x|0)<=3)break;if(i)e=c[v>>2]|0;else e=v;g=x+1|0;j=a[e+x>>0]|0;c[w>>2]=g;g=e+g+3+-1|0;e=a[g>>0]|0;B=a[g+-1>>0]|0;g=a[g+-2>>0]|0;f=x+4|0;c[w>>2]=f;g=(B&255)<<8|e&255|(g&255)<<16;if(i)e=c[n>>2]|0;else e=h&255;if((e-f|0)>>>0<(g+11|0)>>>0){y=22;break}if(i)e=c[v>>2]|0;else e=v;e=e+f+3+-1|0;e=d[e+-1>>0]<<8|d[e>>0]|d[e+-2>>0]<<16;B=x+11|0;c[w>>2]=B;LV(u,v,B,g,v);B=a[o>>0]|0;c[w>>2]=(c[w>>2]|0)+(B<<24>>24<0?c[p>>2]|0:B&255);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];c[q>>2]=0;switch(j<<24>>24){case 8:{se(b,e,t);break}case 9:{xe(s,e,t)|0;break}default:{}}c[w>>2]=(c[w>>2]|0)+4;if((a[r>>0]|0)<0)yV(c[t>>2]|0)}if((y|0)==22)c[w>>2]=x;if(i){e=c[n>>2]|0;f=c[v>>2]|0}else{e=h&255;f=v}B=e-x|0;hX(f|0,f+x|0,B|0)|0;NV(v,B,0);c[w>>2]=0}while(0);if((a[z+11>>0]|0)>=0){l=A;return}yV(c[z>>2]|0);l=A;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=b+28|0;if(!(a[e>>0]|0)){l=g;return}Fe(b+56|0);NV(b+36|0,0,0);c[b+48>>2]=0;c[b+24>>2]=0;a[e>>0]=0;if(!d){l=g;return}b=c[c[b+8>>2]>>2]|0;if((a[182800]|0)==0?MW(182800)|0:0)c[45712]=Hb(1,52860)|0;Eb(c[45712]|0,b|0,114659,f|0);l=g;return}function je(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h+24|0;f=h+16|0;e=h;c[e>>2]=114707;c[e+4>>2]=b;c[e+8>>2]=d;bc(0,e|0);a=a+56|0;e=c[a>>2]|0;if(e|0){g=e;g=g+8|0;g=c[g>>2]|0;g=g>>1;l=h;return g|0}e=xV(22700)|0;c[e>>2]=N(b<<1,d)|0;c[e+4>>2]=0;d=e+22668|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;tf(e+12|0);uf(e+76|0);vf(e+9344|0);c[f>>2]=114758;bc(0,f|0);c[e+8>>2]=$S(c[e>>2]|0)|0;c[g>>2]=114743;c[g+4>>2]=e;bc(0,g|0);c[a>>2]=e;g=e;g=g+8|0;g=c[g>>2]|0;g=g>>1;l=h;return g|0}function ke(a){a=a|0;He(a+56|0);return}function le(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+104>>2];c[a>>2]=Rb(52760,e|0)|0;l=d;return}function me(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Cb(c[b>>2]|0,52760,f|0);Pb(c[f>>2]|0);c[a+104>>2]=~~e;l=d;return}function ne(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+32>>2];c[a>>2]=Rb(52760,e|0)|0;l=d;return}function oe(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Cb(c[b>>2]|0,52760,f|0);Pb(c[f>>2]|0);c[a+32>>2]=~~e;l=d;return}function pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;f=k;g=b+8|0;h=c[g>>2]|0;if(!h){h=xV(4)|0;Jb(c[d>>2]|0);c[f>>2]=c[d>>2];c[h>>2]=Rb(40,f|0)|0;c[g>>2]=h}i=e&1;a[b+66>>0]=i;f=b+60|0;d=c[f>>2]|0;if(d|0){j=d;j=j+36|0;a[j>>0]=i;b=b+28|0;a[b>>0]=1;l=k;return}c[j>>2]=114791;c[j+4>>2]=e?114800:114805;bc(0,j|0);g=xV(60)|0;Je(g);c[f>>2]=g;f=b+68|0;d=c[f>>2]|0;if(!d){c[f>>2]=h;d=h}c[g+4>>2]=d;j=g;j=j+36|0;a[j>>0]=i;b=b+28|0;a[b>>0]=1;l=k;return}function qe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;n=o+8|0;f=a[e+11>>0]|0;if(f<<24>>24<0){h=c[e>>2]|0;g=c[e+4>>2]|0}else{h=e;g=f&255}i=h+g|0;f=i;j=h;a:do if((g|0)<4)h=i;else{while(1){g=g+-3|0;if(!g){h=i;break a}g=XT(h,46,g)|0;if(!g){h=i;break a}if(!(IT(g,114985,4)|0))break;h=g+1|0;g=f-h|0;if((g|0)<4){h=i;break a}}h=g;f=g}while(0);a[d+52>>0]=(f-j|0)!=-1&(h|0)!=(i|0)&1;j=Gb(114990)|0;TV(n,262540,e);i=n+11|0;f=a[i>>0]|0;if(f<<24>>24<0){h=c[n+4>>2]|0;f=$S(h+4|0)|0;c[f>>2]=h;g=c[n>>2]|0}else{h=f&255;f=$S(h+4|0)|0;c[f>>2]=h;g=n}gX(f+4|0,g|0,h|0)|0;c[k>>2]=f;c[b>>2]=Lb(j|0,1,52824,k|0)|0;if((a[i>>0]|0)>=0){Fb(j|0);l=o;return}yV(c[n>>2]|0);Fb(j|0);l=o;return}function re(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;i=+Cb(c[d>>2]|0,16,e|0);e=c[e>>2]|0;g=~~i>>>0;f=g+4|0;g=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)DV(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Pb(e|0);l=h;return}else d=b}else{j=g+16&-16;d=xV(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}gX(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Pb(e|0);l=h;return}function se(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;j=b+56|0;d=c[j>>2]|0;k=e+11|0;if(!d){f=e+12|0;g=a[((a[k>>0]|0)<0?c[e>>2]|0:e)+(c[f>>2]|0)>>0]|0;d=g&255;i=(d&1)+1|0;d=d>>>2;switch(d&3){case 1:{h=11025;break}case 2:{h=22050;break}case 3:{h=44100;break}default:h=d&3}switch((g&255)>>>4&15){case 10:{d=c[b+32>>2]<<10;g=c[c[b+8>>2]>>2]|0;if((a[182784]|0)==0?MW(182784)|0:0)c[45710]=Hb(4,52828)|0;p=c[45710]|0;c[n>>2]=d;c[n+8>>2]=h;c[n+16>>2]=i;Eb(p|0,g|0,114435,n|0);break}case 11:{d=c[c[b+8>>2]>>2]|0;if((a[182792]|0)==0?MW(182792)|0:0)c[45711]=Hb(4,52844)|0;p=c[45711]|0;c[n>>2]=16e3;c[n+8>>2]=16e3;c[n+16>>2]=i;Eb(p|0,d|0,114435,n|0);break}case 2:{d=(c[b+32>>2]|0)*576|0;g=c[c[b+8>>2]>>2]|0;if((a[182784]|0)==0?MW(182784)|0:0)c[45710]=Hb(4,52828)|0;p=c[45710]|0;c[n>>2]=d;c[n+8>>2]=h;c[n+16>>2]=i;Eb(p|0,g|0,114435,n|0);break}default:{}}d=c[j>>2]|0;if(!d){l=o;return}else{h=e;i=e;g=d}}else{h=e;i=e;f=e+12|0;g=d}j=c[f>>2]|0;p=a[((a[k>>0]|0)<0?c[h>>2]|0:i)+j+1+-1>>0]|0;c[f>>2]=j+1;if((p&-16)<<24>>24!=32){l=o;return}d=c[g+8>>2]|0;f=g+4|0;d=ue(g,e,d+(c[f>>2]|0)|0,d+(c[g>>2]|0)|0)|0;if(!d){l=o;return}e=(c[f>>2]|0)+d|0;p=(e|0)==(c[g>>2]|0);c[f>>2]=p?0:e;if(!p){l=o;return}d=c[c[b+68>>2]>>2]|0;if((a[182800]|0)==0?MW(182800)|0:0)c[45712]=Hb(1,52860)|0;Eb(c[45712]|0,d|0,114445,n|0);l=o;return}function te(a){a=a|0;Za(a|0)|0;pW()}function ue(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d+12|0;i=d+22668|0;j=i+11|0;h=a[j>>0]|0;if(h<<24>>24<0)n=c[d+22672>>2]|0;else n=h&255;h=e+11|0;q=a[h>>0]|0;k=e+4|0;l=e+12|0;NV(i,n-(c[l>>2]|0)+(q<<24>>24<0?c[k>>2]|0:q&255)|0,0);if((a[j>>0]|0)<0)m=c[i>>2]|0;else m=i;h=a[h>>0]|0;if(h<<24>>24<0){h=c[l>>2]|0;i=c[k>>2]|0;j=h;h=(c[e>>2]|0)+h|0}else{q=c[l>>2]|0;i=h&255;j=q;h=e+q|0}gX(m+n|0,h|0,i-j|0)|0;if((ve(r)|0)==-1){r=0;return r|0}o=d+13448|0;p=d+13450|0;q=d+13452|0;n=d+18060|0;h=0;while(1){i=b[o>>1]|0;d=b[p>>1]|0;j=d&65535;h=(N((i&65535)<<1,j)|0)+h|0;e=j+-1|0;do if(d<<16>>16)if(i<<16>>16==2){m=j<<2;j=n;k=q;l=f;i=e;while(1){d=c[k>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l>>0]=d;a[l+1>>0]=d>>>8;d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l+2>>0]=d;a[l+3>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+4|0;l=l+4|0;i=i+-1|0}}f=f+m|0;break}else{l=j<<1;j=q;k=f;i=e;while(1){d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[k>>0]=d;a[k+1>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+2|0;i=i+-1|0}}f=f+l|0;break}while(0);if(f>>>0>=g>>>0){f=22;break}if((ve(r)|0)==-1){f=22;break}}if((f|0)==22)return h|0;return 0}function ve(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+272|0;if((l|0)>=(m|0))W(272);v=w+256|0;u=w;k=w+248|0;n=w+244|0;s=d+22656|0;p=s+11|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;t=d+22668|0;i=e+(c[t>>2]|0)|0;j=we(d,i)|0;if((j|0)==-1){d=-1;l=w;return d|0}f=c[t>>2]|0;g=f+j|0;c[t>>2]=g;e=a[p>>0]|0;if(e<<24>>24<0)e=c[d+22660>>2]|0;else e=e&255;if((e|0)==(g|0)){c[t>>2]=f;d=-1;l=w;return d|0}e=d+9328|0;if((c[e>>2]|0)==0?(r=bT(1152,4)|0,c[e>>2]=r,(r|0)==0):0){c[d+60>>2]=49;g=d+92|0;e=d+68|0}else{e=d+68|0;f=(c[e>>2]|0)==0;g=d+92|0;h=c[g>>2]|0;if(((h&16|0)!=0?(o=d+28|0,r=c[o+4>>2]|0,q=u,c[q>>2]=c[o>>2],c[q+4>>2]=r,q=d+88|0,r=b[q>>1]|0,c[v>>2]=c[u>>2],c[v+4>>2]=c[u+4>>2],r=sf(v,(h&4096|0)==0?(f?136:256):f?72:136,r)|0,b[q>>1]=r,r<<16>>16!=(b[d+90>>1]|0)):0)?(c[d+108>>2]&1|0)==0:0)c[d+60>>2]=513}r=d+64|0;q=(c[e>>2]|0)==0?1:2;f=d+28|0;Bf(f,q,c[g>>2]&4096,u,n,k)|0;c[g>>2]=c[g>>2]|c[k>>2];g=d+96|0;c[g>>2]=c[g>>2]|c[u+4>>2];g=pf(f)|0;f=i-g+j|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;nf(v,e+(c[t>>2]|0)|0);e=rf(v,32)|0;if((e&-1703936|0)==-1966080){if(!(e&65536))qf(v,16);j=rf(v,e>>>19&1|8)|0}else j=0;o=d+22672|0;k=o+11|0;e=a[k>>0]|0;if(e<<24>>24<0)e=c[d+22676>>2]|0;else e=e&255;n=d+22684|0;i=e-(c[n>>2]|0)|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;NV(v,f,0);h=v+11|0;gX(((a[h>>0]|0)<0?c[v>>2]|0:v)+(c[v+12>>2]|0)|0,g|0,f|0)|0;g=a[h>>0]|0;f=g<<24>>24<0;RV(o,f?c[v>>2]|0:v,f?c[v+4>>2]|0:g&255)|0;if((a[h>>0]|0)<0)yV(c[v>>2]|0);e=a[p>>0]|0;if(e<<24>>24<0){e=c[t>>2]|0;f=c[s>>2]|0;g=e;e=(c[d+22660>>2]|0)-e|0}else{p=c[t>>2]|0;f=s;g=p;e=(e&255)-p|0}hX(f|0,f+g|0,e|0)|0;NV(s,e,0);c[t>>2]=0;e=a[k>>0]|0;h=e<<24>>24<0;if(h)e=c[d+22676>>2]|0;else e=e&255;g=e-(c[n>>2]|0)|0;e=c[u>>2]|0;if(i>>>0>>0|g>>>0>>0)e=-1;else{f=i-e|0;c[n>>2]=f;if(h)e=c[o>>2]|0;else e=o;nf(v,e+f|0);Cf(v,r,u,q)|0;wf(d+9332|0,r);g=g-j-f+(c[n>>2]|0)|0;c[n>>2]=g;e=a[k>>0]|0;if(e<<24>>24<0){e=c[d+22676>>2]|0;f=c[o>>2]|0}else{e=e&255;f=o}e=e-g|0;hX(f|0,f+g|0,e|0)|0;NV(o,e,0);c[n>>2]=0;e=0}d=e;l=w;return d|0}function we(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+64|0;nf(a+28|0,b);c[a+20>>2]=b;If(h,a)|0;d=a+100|0;switch(c[h>>2]|0){case 1:{b=384;break}case 3:{b=(c[a+92>>2]&4096|0)==0?1152:576;f=3;break}default:{b=1152;f=3}}g=a+84|0;Jf(d,0,b,c[g>>2]|0);d=a+80|0;e=c[d>>2]|0;if(!e){b=a+16|0;e=c[b>>2]|0;if(!((e|0)!=0?!(e>>>0>64e4&(c[h>>2]|0)==3):0))f=8;do if((f|0)==8)if((Kf(a,h)|0)==-1){h=-1;return h|0}else{e=c[b>>2]|0;break}while(0);c[d>>2]=e;f=a+92|0;b=c[f>>2]|1024;c[f>>2]=b}else b=c[a+92>>2]|0;d=b>>>7&1;switch(c[h>>2]|0){case 1:{h=(((e*12|0)>>>0)/((c[g>>2]|0)>>>0)|0)+d<<2;return h|0}case 3:{b=(b&4096|0)==0?144:72;break}default:b=144}h=N(e,b)|0;h=((h>>>0)/((c[g>>2]|0)>>>0)|0)+d|0;return h|0}function xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+32|0;if((l|0)>=(m|0))W(32);u=v+16|0;i=v+8|0;s=v;t=v+24|0;k=b+4|0;f=c[k>>2]|0;if(!f){d=0;l=v;return d|0}r=e+12|0;g=((a[e+11>>0]|0)<0?c[e>>2]|0:e)+(c[r>>2]|0)|0;h=a[g>>0]|0;j=h&15;switch(h&15){case 7:case 12:break;default:{c[i>>2]=114455;c[i+4>>2]=h&255;bc(0,i|0);d=0;l=v;return d|0}}if((h&-16)<<24>>24==16&(a[g+1>>0]|0)==0){f=b+8|0;if(!(a[f>>0]|0)){d=1;l=v;return d|0}c[b+16>>2]=($b(0,0)|0)-d;d=c[k>>2]|0;Td[c[(c[d>>2]|0)+12>>2]&1023](d,e,j);a[f>>0]=0;d=1;l=v;return d|0}p=b+12|0;if(!(c[p>>2]|0)){d=0;l=v;return d|0}q=b+48|0;do if(c[q>>2]|0){o=$b(0,0)|0;o=o-(c[b+16>>2]|0)|0;if((((c[q>>2]|0)*1e3|0)+d|0)<=(o|0)){f=c[k>>2]|0;break}j=b+28|0;g=c[j>>2]|0;k=b+24|0;f=c[k>>2]|0;w=g-f|0;h=b+36|0;n=b+40|0;i=(c[n>>2]|0)+(c[h>>2]|0)|0;if((((w|0)==0?0:((w>>2)*204|0)+-1|0)|0)==(i|0)){ze(b+20|0);i=(c[h>>2]|0)+(c[n>>2]|0)|0;g=c[j>>2]|0;f=c[k>>2]|0}if((g|0)==(f|0))f=0;else{w=(i>>>0)/204|0;f=(c[f+(w<<2)>>2]|0)+((i-(w*204|0)|0)*20|0)|0}c[f>>2]=d;w=f+4|0;c[w>>2]=c[e>>2];c[w+4>>2]=c[e+4>>2];c[w+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[f+16>>2]=c[r>>2];c[n>>2]=(c[n>>2]|0)+1;f=b+44|0;if(a[f>>0]|0){w=0;l=v;return w|0}a[f>>0]=1;c[t>>2]=Nb()|0;ye(t,114515,114520);f=c[c[p>>2]>>2]|0;if((a[182808]|0)==0?MW(182808)|0:0)c[45713]=Hb(2,52864)|0;w=c[45713]|0;Jb(c[t>>2]|0);c[s>>2]=c[t>>2];Eb(w|0,f|0,114541,s|0);d=d-o|0;w=((c[q>>2]|0)*1e3|0)+d|0;c[u>>2]=114553;c[u+4>>2]=w;bc(0,u|0);w=c[p>>2]|0;c[u>>2]=((c[q>>2]|0)*1e3|0)+d;c[b+52>>2]=Ee(c[w>>2]|0,114588,u)|0;Fb(c[t>>2]|0);w=0;l=v;return w|0}while(0);Sd[c[(c[f>>2]|0)+16>>2]&255](f,e);w=1;l=v;return w|0}function ye(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Qb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function ze(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=t+4|0;g=t;b=a+16|0;d=c[b>>2]|0;if(d>>>0>203){c[b>>2]=d+-204;q=a+4|0;o=c[q>>2]|0;s=c[o>>2]|0;o=o+4|0;c[q>>2]=o;r=a+8|0;b=c[r>>2]|0;p=a+12|0;n=c[p>>2]|0;e=n;do if((b|0)==(n|0)){i=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-i|0;if(!d)b=f;else{hX(f|0,o|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Ya(8)|0;BV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{h=xV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;j=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-i|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[q>>2]=n;c[r>>2]=b;c[p>>2]=j;if(d){yV(d);b=c[r>>2]|0}}while(0);c[b>>2]=s;c[r>>2]=(c[r>>2]|0)+4;l=t;return}s=a+8|0;b=c[s>>2]|0;r=a+4|0;f=b-(c[r>>2]|0)>>2;q=a+12|0;d=c[q>>2]|0;e=d-(c[a>>2]|0)|0;if(f>>>0>=e>>2>>>0){b=(e|0)==0?1:e>>1;i=k+12|0;c[i>>2]=0;c[k+16>>2]=a+12;do if(b)if(b>>>0>1073741823){t=Ya(8)|0;BV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{d=xV(b<<2)|0;break}else d=0;while(0);c[k>>2]=d;p=d+(f<<2)|0;j=k+8|0;c[j>>2]=p;h=k+4|0;c[h>>2]=p;c[i>>2]=d+(b<<2);c[g>>2]=xV(4080)|0;Ce(k,g);b=c[s>>2]|0;d=c[r>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;De(k,b);d=c[r>>2]|0}while((b|0)!=(d|0));b=c[s>>2]|0}e=d;f=c[a>>2]|0;c[a>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=c[h>>2];c[h>>2]=e;c[s>>2]=c[j>>2];c[j>>2]=b;a=c[q>>2]|0;c[q>>2]=c[i>>2];c[i>>2]=a;if((d|0)!=(b|0))c[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(f|0)yV(f);l=t;return}if((d|0)!=(b|0)){c[k>>2]=xV(4080)|0;Ae(a,k);l=t;return}c[k>>2]=xV(4080)|0;Be(a,k);o=c[r>>2]|0;p=c[o>>2]|0;o=o+4|0;c[r>>2]=o;b=c[s>>2]|0;n=c[q>>2]|0;e=n;do if((b|0)==(n|0)){j=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((j-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-j|0;if(!d)b=f;else{hX(f|0,o|0,d|0)|0;b=(c[r>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[s>>2]=a;c[r>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Ya(8)|0;BV(t,114367);c[t>>2]=108848;ab(t|0,52632,16)}else{h=xV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;i=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-j|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[r>>2]=n;c[s>>2]=b;c[q>>2]=i;if(d){yV(d);b=c[s>>2]|0}}while(0);c[b>>2]=p;c[s>>2]=(c[s>>2]|0)+4;l=t;return}function Ae(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{hX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Ya(8)|0;BV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{i=xV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){yV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{hX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Ya(8)|0;BV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{h=xV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){yV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{hX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Ya(8)|0;BV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{i=xV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){yV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function De(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{hX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Ya(8)|0;BV(q,114367);c[q>>2]=108848;ab(q|0,52632,16)}else{h=xV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){yV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Ee(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[182816]|0)==0?MW(182816)|0:0)c[45714]=Hb(2,52872)|0;j=c[45714]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Pb(c[g>>2]|0);l=h;return ~~i|0}function Fe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;g=b+52|0;$b(1,c[g>>2]|0)|0;h=b+40|0;e=c[h>>2]|0;if(e|0){i=b+24|0;j=b+36|0;d=c[j>>2]|0;do{f=(d>>>0)/204|0;f=(c[(c[i>>2]|0)+(f<<2)>>2]|0)+((d-(f*204|0)|0)*20|0)+4|0;if((a[f+11>>0]|0)<0){yV(c[f>>2]|0);e=c[h>>2]|0;d=c[j>>2]|0}e=e+-1|0;c[h>>2]=e;d=d+1|0;c[j>>2]=d;if(d>>>0>407){yV(c[c[i>>2]>>2]|0);c[i>>2]=(c[i>>2]|0)+4;d=(c[j>>2]|0)+-204|0;c[j>>2]=d;e=c[h>>2]|0}}while((e|0)!=0)}c[k>>2]=114688;bc(0,k|0);a[b+44>>0]=0;c[g>>2]=0;d=c[b+4>>2]|0;if(!d){b=b+8|0;a[b>>0]=1;l=n;return}Rd[c[(c[d>>2]|0)+8>>2]&31](d);b=b+8|0;a[b>>0]=1;l=n;return}function Ge(b){b=b|0;var d=0;xf(b+64|0);d=b+22672|0;if((a[d+11>>0]|0)<0)yV(c[d>>2]|0);b=b+22656|0;if((a[b+11>>0]|0)>=0)return;yV(c[b>>2]|0);return}function He(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;e=j+8|0;g=b+40|0;if(!(c[g>>2]|0)){a[b+44>>0]=0;c[e>>2]=Nb()|0;Ie(e,114515,114768);d=c[c[b+12>>2]>>2]|0;if((a[182808]|0)==0?MW(182808)|0:0)c[45713]=Hb(2,52864)|0;b=c[45713]|0;Jb(c[e>>2]|0);c[i>>2]=c[e>>2];Eb(b|0,d|0,114541,i|0);Fb(c[e>>2]|0);l=j;return}k=c[b+4>>2]|0;h=b+24|0;f=b+36|0;e=c[f>>2]|0;d=(e>>>0)/204|0;Sd[c[(c[k>>2]|0)+16>>2]&255](k,(c[(c[h>>2]|0)+(d<<2)>>2]|0)+((e-(d*204|0)|0)*20|0)+4|0);d=c[f>>2]|0;e=(d>>>0)/204|0;e=(c[(c[h>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)+4|0;if((a[e+11>>0]|0)<0){yV(c[e>>2]|0);d=c[f>>2]|0}e=(c[g>>2]|0)+-1|0;c[g>>2]=e;d=d+1|0;c[f>>2]=d;if(d>>>0>407){yV(c[c[h>>2]>>2]|0);c[h>>2]=(c[h>>2]|0)+4;d=(c[f>>2]|0)+-204|0;c[f>>2]=d;e=c[g>>2]|0}if(!e){a[b+44>>0]=0;l=j;return}e=(d>>>0)/204|0;d=c[(c[(c[h>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)>>2]|0;e=$b(0,0)|0;e=e-(c[b+16>>2]|0)|0;f=(c[b+48>>2]|0)*1e3|0;if((f+d|0)>(e|0)){k=c[b+12>>2]|0;c[i>>2]=d-e+f;c[b+52>>2]=Ee(c[k>>2]|0,114588,i)|0;l=j;return}else{He(b);l=j;return}}function Ie(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Qb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function Je(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=52888;c[b+48>>2]=0;c[b+52>>2]=Ch()|0;c[b+56>>2]=KP()|0;c[e>>2]=114811;bc(0,e|0);l=d;return}function Ke(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f+8|0;g=f;c[b>>2]=52888;c[g>>2]=114881;bc(0,g|0);Rd[c[(c[b>>2]|0)+8>>2]&31](b);Dh(b+52|0);ug(b+56|0);c[b>>2]=52920;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)aT(d);c[e>>2]=114857;bc(0,e|0);l=f;return}function Le(a){a=a|0;Ke(a);yV(a);return}function Me(b){b=b|0;var d=0;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)aT(d);HS(c[b+44>>2]|0);d=b+48|0;aT(c[(c[d>>2]|0)+68>>2]|0);CS(d);return}function Ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h+16|0;j=h;i=(e|0)==7;k=IR(i?27:173)|0;f=b+40|0;c[f>>2]=k;c[j>>2]=114896;c[j+4>>2]=e;c[j+8>>2]=k;bc(0,j|0);c[b+44>>2]=ES(c[(c[f>>2]|0)+12>>2]|0)|0;e=KR(c[f>>2]|0)|0;c[b+48>>2]=e;if(!i){l=h;return}i=d+12|0;j=(c[i>>2]|0)+5|0;c[i>>2]=j;i=d+11|0;b=a[i>>0]|0;b=(b<<24>>24<0?c[d+4>>2]|0:b&255)-j|0;k=e+72|0;c[k>>2]=b;b=$S(b)|0;c[e+68>>2]=b;gX(b|0,((a[i>>0]|0)<0?c[d>>2]|0:d)+j|0,c[k>>2]|0)|0;k=SS(e,c[f>>2]|0,0)|0;c[g>>2]=114916;c[g+4>>2]=k;bc(0,g|0);l=h;return}function Oe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[(c[b>>2]|0)+20>>2]|0;f=a[d+11>>0]|0;if(f<<24>>24<0){h=c[d+12>>2]|0;g=c[d+4>>2]|0;f=h;d=(c[d>>2]|0)+h|0;f=g-f|0;Td[e&1023](b,d,f);return}else{g=c[d+12>>2]|0;f=f&255;h=g;g=d+g|0;h=f-h|0;Td[e&1023](b,g,h);return}}function Pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=v+8|0;s=v;t=b+48|0;g=b+56|0;r=c[g>>2]|0;d=GS(c[b+44>>2]|0,c[t>>2]|0,r+24|0,r+28|0,d,e,0,-2147483648,0,-2147483648,0,0)|0;if((d|0)>-1?(f=c[g>>2]|0,c[f+28>>2]|0):0){if((rS(c[t>>2]|0,f)|0)<=-1){l=v;return}f=b+52|0;g=b+20|0;h=b+24|0;i=b+28|0;j=b+12|0;k=b+16|0;n=b+36|0;o=b+20|0;p=b+8|0;q=b+4|0;a:while(1){r=AS(c[t>>2]|0,c[f>>2]|0)|0;if((r|0)<-11)switch(r|0){case -541478725:{u=17;break a}default:{}}else switch(r|0){case -11:{u=17;break a}default:{}}d=c[f>>2]|0;c[g>>2]=c[d>>2];c[h>>2]=c[d+4>>2];c[i>>2]=c[d+8>>2];e=c[d+68>>2]|0;if((c[j>>2]|0)==(e|0)){d=c[d+72>>2]|0;if((c[k>>2]|0)!=(d|0))u=9}else{d=c[d+72>>2]|0;u=9}if((u|0)==9){u=0;Ve(b,e,d)}if(!(a[n>>0]|0))We(c[o>>2]|0,c[h>>2]|0,c[i>>2]|0,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);d=c[c[q>>2]>>2]|0;if((a[182800]|0)==0?MW(182800)|0:0)c[45712]=Hb(1,52860)|0;Eb(c[45712]|0,d|0,114980,s|0);if((r|0)<=-1){u=17;break}}if((u|0)==17){l=v;return}}c[h>>2]=114933;c[h+4>>2]=d;bc(0,h|0);l=v;return}function Qe(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[b>>2]=52920;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)aT(d);c[e>>2]=114857;bc(0,e|0);l=f;return}function Re(a){a=a|0;oc()}function Se(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;aT(b);return}function Te(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=d+12|0;g=c[k>>2]|0;c[j>>2]=114846;c[j+4>>2]=e;bc(0,j|0);switch(e|0){case 7:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+9>>0]&3;p=g+11|0;c[k>>2]=p;f=a[j>>0]|0;e=c[d>>2]|0;i=f<<24>>24<0?e:d;p=i+p+2+-1|0;o=a[p>>0]|0;p=a[p+-1>>0]|0;h=g+13|0;c[k>>2]=h;g=(p&255)<<8|o&255;if(g){Td[c[(c[b>>2]|0)+20>>2]&1023](b,i+h|0,g);h=(c[k>>2]|0)+g|0;c[k>>2]=h;f=a[j>>0]|0;e=c[d>>2]|0}p=h+1|0;c[k>>2]=p;g=f<<24>>24<0?e:d;p=g+p+2+-1|0;e=a[p>>0]|0;p=a[p+-1>>0]|0;f=h+3|0;c[k>>2]=f;e=(p&255)<<8|e&255;if(!e){l=n;return}Td[c[(c[b>>2]|0)+20>>2]&1023](b,g+f|0,e);l=n;return}case 12:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+27>>0]&3;i=g+31|0;c[k>>2]=i;p=(a[j>>0]|0)<0?c[d>>2]|0:d;i=p+i+2+-1|0;o=a[i>>0]|0;i=a[i+-1>>0]|0;h=g+33|0;c[k>>2]=h;o=(i&255)<<8|o&255;Td[c[(c[b>>2]|0)+20>>2]&1023](b,p+h|0,o);o=(c[k>>2]|0)+o|0;h=o+3|0;c[k>>2]=h;p=(a[j>>0]|0)<0?c[d>>2]|0:d;h=p+h+2+-1|0;i=a[h>>0]|0;h=a[h+-1>>0]|0;o=o+5|0;c[k>>2]=o;i=(h&255)<<8|i&255;Td[c[(c[b>>2]|0)+20>>2]&1023](b,p+o|0,i);i=(c[k>>2]|0)+i|0;o=i+3|0;c[k>>2]=o;j=(a[j>>0]|0)<0?c[d>>2]|0:d;o=j+o+2+-1|0;p=a[o>>0]|0;o=a[o+-1>>0]|0;d=i+5|0;c[k>>2]=d;Td[c[(c[b>>2]|0)+20>>2]&1023](b,j+d|0,(o&255)<<8|p&255);l=n;return}default:{l=n;return}}}function Ue(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=d+11|0;l=a[m>>0]|0;e=l<<24>>24<0;n=d+4|0;o=d+12|0;f=c[o>>2]|0;if(((e?c[n>>2]|0:l&255)-f|0)<=4)return;l=b+32|0;i=0;j=0;k=0;do{switch(c[l>>2]|0){case 3:{e=e?c[d>>2]|0:d;k=e+f+4+-1|0;g=4;h=k;i=a[k+-2>>0]|0;j=a[k+-3>>0]|0;k=a[k+-1>>0]|0;break}case 2:{e=e?c[d>>2]|0:d;k=e+f+3+-1|0;g=3;h=k;i=a[k+-2>>0]|0;k=a[k+-1>>0]|0;break}case 1:{e=e?c[d>>2]|0:d;k=e+f+2+-1|0;g=2;h=k;k=a[k+-1>>0]|0;break}default:{h=e?c[d>>2]|0:d;e=h;g=1;h=h+f+1+-1|0}}h=a[h>>0]|0;g=f+g|0;c[o>>2]=g;h=(i&255)<<16|(j&255)<<24|(k&255)<<8|h&255;Td[c[(c[b>>2]|0)+20>>2]&1023](b,e+g|0,h);f=(c[o>>2]|0)+h|0;c[o>>2]=f;h=a[m>>0]|0;e=h<<24>>24<0}while(((e?c[n>>2]|0:h&255)-f|0)>4);return}function Ve(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=114954;c[h+4>>2]=d;c[h+8>>2]=e;bc(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(N(e<<2,e)|0)+33554432|0;e=$S((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[182824]|0)==0?MW(182824)|0:0)c[45715]=Hb(4,52944)|0;b=c[45715]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,114967,h|0);l=i;return}else{e=b+20|0;c[b+8>>2]=e;e=e>>2;d=c[c[b+4>>2]>>2]|0;if((a[182824]|0)==0?MW(182824)|0:0)c[45715]=Hb(4,52944)|0;b=c[45715]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,114967,h|0);l=i;return}}function We(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;E=g<<2;F=f+(N(E,h)|0)|0;if(!h)return;A=(g|0)==0;D=(g+-1|0)>>>1;B=(D<<3)+8|0;C=g+1&-2;D=D+1|0;j=0;z=0;k=0;i=0;l=0;while(1){if(!A){x=B+j|0;y=D+i|0;w=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){I=(n*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;q=(G*1634|0)+I>>10;G=(N(m,-400)|0)+I+(N(G,-832)|0)>>10;I=(m*2066|0)+I>>10;m=(q|0)>0?q:0;n=(G|0)>0?G:0;H=(I|0)>0?I:0;m=((((I&255|0)==(I|0)?I:(H|0)<255?H:255)<<8)+16711680+((G&255|0)==(G|0)?G:(n|0)<255?n:255)<<8)+((q&255|0)==(q|0)?q:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+j>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;I=(G*1634|0)+p>>10;G=(N(m,-400)|0)+p+(N(G,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(j+E)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;G=t+-128|0;J=s+-128|0;I=m+(G*1634|0)>>10;G=(N(G,-832)|0)+(N(J,-400)|0)+m>>10;J=m+(J*2066|0)>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;n=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(n|0)<255?n:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+q>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){m=(p*1192|0)+-19072|0;H=t+-128|0;t=s+-128|0;J=m+(H*1634|0)>>10;H=(N(H,-832)|0)+(N(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;G=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(G|0)<255?G:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(q+E)>>2]=m;w=w+2|0;if(w>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=C+l|0;j=x;k=D+k|0;i=y}z=z+2|0;if(z>>>0>=h>>>0)break;else{j=j+E|0;l=l+g|0}}return}function Xe(a){a=a|0;return 72}function Ye(a){a=a|0;if(!a)return;Ze(a);yV(a);return}function Ze(b){b=b|0;var d=0;d=c[b>>2]|0;if(d|0){Fb(c[d>>2]|0);yV(d)}d=c[b+4>>2]|0;if(d|0){Fb(c[d>>2]|0);yV(d)}d=c[b+8>>2]|0;if(d|0){Fb(c[d>>2]|0);yV(d)}_e(b+56|0);d=b+36|0;if((a[d+11>>0]|0)<0)yV(c[d>>2]|0);d=b+12|0;if((a[d+11>>0]|0)>=0)return;yV(c[d>>2]|0);return}function _e(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=i+16|0;e=i+8|0;d=i;c[d>>2]=115011;bc(0,d|0);$b(1,c[b+52>>2]|0)|0;d=c[b+4>>2]|0;if(d|0)Rd[c[(c[d>>2]|0)+4>>2]&31](d);g=c[b>>2]|0;if(g|0){c[e>>2]=115032;bc(0,e|0);aT(c[g+8>>2]|0);c[f>>2]=115055;bc(0,f|0);xf(g+76|0);d=g+22684|0;if((a[d+11>>0]|0)<0)yV(c[d>>2]|0);d=g+22668|0;if((a[d+11>>0]|0)<0)yV(c[d>>2]|0);yV(g)}h=b+20|0;af(h);f=b+24|0;d=c[f>>2]|0;g=b+28|0;e=c[g>>2]|0;if((d|0)!=(e|0)){do{yV(c[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c[f>>2]|0;e=c[g>>2]|0;if((e|0)!=(d|0))c[g>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[h>>2]|0;if(!d){l=i;return}yV(d);l=i;return}function $e(a){a=a|0;var b=0,d=0,e=0,f=0;af(a);d=a+4|0;b=c[d>>2]|0;f=a+8|0;e=c[f>>2]|0;if((b|0)!=(e|0)){do{yV(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[d>>2]|0;d=c[f>>2]|0;if((d|0)!=(b|0))c[f>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;yV(b);return}function af(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;e=c[l>>2]|0;m=b+16|0;g=c[m>>2]|0;d=(g>>>0)/204|0;h=e+(d<<2)|0;j=b+8|0;n=c[j>>2]|0;f=n;i=e;if((n|0)!=(e|0)){d=(c[h>>2]|0)+((g-(d*204|0)|0)*20|0)|0;b=b+20|0;n=(c[b>>2]|0)+g|0;g=(n>>>0)/204|0;g=(c[e+(g<<2)>>2]|0)+((n-(g*204|0)|0)*20|0)|0;if((g|0)==(d|0)){d=b;k=5}else{f=h;while(1){e=d+4|0;if((a[e+11>>0]|0)<0)yV(c[e>>2]|0);d=d+20|0;if((d-(c[f>>2]|0)|0)==4080){d=f+4|0;e=d;d=c[d>>2]|0}else e=f;if((g|0)==(d|0))break;else f=e}e=c[l>>2]|0;g=j;f=c[j>>2]|0;d=e}}else{d=b+20|0;k=5}if((k|0)==5){g=j;b=d;d=i}c[b>>2]=0;d=f-d>>2;if(d>>>0>2)do{yV(c[e>>2]|0);e=(c[l>>2]|0)+4|0;c[l>>2]=e;d=(c[g>>2]|0)-e>>2}while(d>>>0>2);switch(d|0){case 1:{d=102;break}case 2:{d=204;break}default:return}c[m>>2]=d;return}function bf(){var b=0,d=0;b=xV(112)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;a[b+28>>0]=0;c[b+32>>2]=12;d=b+36|0;c[b+56>>2]=0;c[b+60>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;a[d+16>>0]=0;a[b+64>>0]=1;a[b+66>>0]=0;c[b+68>>2]=0;d=b+76|0;c[b+108>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;a[d+24>>0]=0;return b|0}function cf(a){a=a|0;return Jd[a&1]()|0}function df(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Sd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;f=c[a+4>>2]|0;a=b+(f>>1)|0;if(!(f&1)){f=e;Sd[f&255](a,d);return}else{f=c[(c[a>>2]|0)+e>>2]|0;Sd[f&255](a,d);return}}function ff(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)f=c[(c[a>>2]|0)+f>>2]|0;return Md[f&15](a,d,e)|0}function gf(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;a=b+(e>>1)|0;if(!(e&1)){e=d;Rd[e&31](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;Rd[e&31](a);return}}function hf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)d=c[(c[a>>2]|0)+d>>2]|0;Sd[d&255](e,a);Jb(c[e>>2]|0);g=c[e>>2]|0;Fb(g|0);l=f;return g|0}function jf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Sd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[a>>2]|0;i=c[a+4>>2]|0;a=b+(i>>1)|0;if(i&1)f=c[(c[a>>2]|0)+f>>2]|0;c[g>>2]=d;Td[f&1023](a,g,e);Fb(c[g>>2]|0);l=h;return}function lf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=k+12|0;j=k;f=c[b>>2]|0;b=c[b+4>>2]|0;g=d+(b>>1)|0;if(b&1)f=c[(c[g>>2]|0)+f>>2]|0;d=e+4|0;e=c[e>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(e>>>0>4294967279)DV(j);if(e>>>0<11){a[j+11>>0]=e;if(!e)b=j;else{b=j;i=9}}else{i=e+16&-16;b=xV(i)|0;c[j>>2]=b;c[j+8>>2]=i|-2147483648;c[j+4>>2]=e;i=9}if((i|0)==9)gX(b|0,d|0,e|0)|0;a[b+e>>0]=0;Td[f&1023](h,g,j);Jb(c[h>>2]|0);b=c[h>>2]|0;Fb(b|0);if((a[j+11>>0]|0)>=0){l=k;return b|0}yV(c[j>>2]|0);l=k;return b|0}function mf(){ge(0);return}function nf(a,d){a=a|0;d=d|0;c[a>>2]=d;b[a+4>>1]=0;b[a+6>>1]=8;return}function of(a,b){a=a|0;b=b|0;return (e[a+6>>1]|0)+8-(e[b+6>>1]|0)+((c[b>>2]|0)-((c[a>>2]|0)+1)<<3)|0}function pf(a){a=a|0;var d=0;d=c[a>>2]|0;return ((b[a+6>>1]|0)==8?d:d+1|0)|0}function qf(a,f){a=a|0;f=f|0;var g=0,h=0,i=0;g=(c[a>>2]|0)+(f>>>3)|0;c[a>>2]=g;i=a+6|0;h=(e[i>>1]|0)-(f&7)|0;f=h&65535;b[i>>1]=f;if((h&65535)>>>0>8){g=g+1|0;c[a>>2]=g;f=h+8&65535;b[i>>1]=f}if((f&65535)>=8)return;b[a+4>>1]=d[g>>0]|0;return}function rf(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=e+6|0;g=b[l>>1]|0;if(g<<16>>16==8){h=d[c[e>>2]>>0]|0;k=e+4|0;b[k>>1]=h}else{k=e+4|0;h=b[k>>1]|0}j=g&65535;g=(1<>>0<=f>>>0){h=f-j|0;i=(c[e>>2]|0)+1|0;c[e>>2]=i;b[l>>1]=8;if(h>>>0>7){j=f-j|0;do{f=i;i=i+1|0;c[e>>2]=i;g=g<<8|(d[f>>0]|0);h=h+-8|0}while(h>>>0>7);h=j&7}if(!h){l=g;return l|0}else{e=a[i>>0]|0;b[k>>1]=e&255;k=8-h|0;g=(e&255)>>>k|g<>>h}while(0);b[l>>1]=h;l=g;return l|0}function sf(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=h&65535;if(g>>>0>31){q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){if(n<<16>>16!=8){j=n&65535;i=(1<>1]|0);if((n&65535)>32){r=j+-32|0;j=r&65535;i=i>>>r;r=13}else r=7}else{i=a[c[f>>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);j=8;r=7}if((r|0)==7){r=0;k=32-j|0;m=c[f>>2]|0;l=m+1|0;c[f>>2]=l;b[q>>1]=8;if(k>>>0>7){j=(24-j|0)>>>3;do{s=l;l=l+1|0;c[f>>2]=l;i=i<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+j|0;k=0-n&7}else j=l;if(!k)j=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;i=(s&255)>>>r|i<>1]=j}s=h<<8^(e[113338+((i>>>24^h>>>8&255)<<1)>>1]|0);s=s<<8^(e[113338+(((s>>>8^i>>>16)&255)<<1)>>1]|0);s=s<<8^(e[113338+(((s^i)>>>8&255)<<1)>>1]|0);h=s<<8^(e[113338+(((s>>>8^i)&255)<<1)>>1]|0);o=o+-32|0;if(o>>>0<=31)break;else n=j}g=g&31}switch(g>>>3&536870911|0){case 3:{q=h<<8;p=h>>>8;o=f+6|0;n=b[o>>1]|0;if(n<<16>>16!=8){i=f+4|0;j=n&65535;h=(1<>1]|0);if((n&65535)>8){r=j+-8|0;i=r&65535;h=h>>>r;r=29}else r=23}else{h=a[c[f>>2]>>0]|0;i=f+4|0;b[i>>1]=h&255;h=(1<<(n&65535))+255&(h&255);j=8;r=23}if((r|0)==23){k=8-j|0;l=c[f>>2]|0;j=l+1|0;c[f>>2]=j;b[o>>1]=8;if(k>>>0>7){m=((k+-8|0)>>>3)+2|0;do{s=j;j=j+1|0;c[f>>2]=j;h=h<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=l+m|0;k=0-n&7}if(!k)i=8;else{s=a[j>>0]|0;b[i>>1]=s&255;r=8-k|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);r=31;break}case 2:{o=f+6|0;i=b[o>>1]|0;r=31;break}case 1:{o=f+6|0;i=b[o>>1]|0;r=43;break}default:{}}if((r|0)==31){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){r=k+-8|0;i=r&65535;h=h>>>r;r=41}else r=35}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=35}if((r|0)==35){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;l=0-i&7}if(!l)i=8;else{s=a[k>>0]|0;b[j>>1]=s&255;r=8-l|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);r=43}if((r|0)==43){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){i=k+-8|0;h=h>>>i;r=53}else r=47}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=47}if((r|0)==47){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;i=0-i&7}else i=l;if(i){s=a[k>>0]|0;b[j>>1]=s&255;r=8-i|0;h=(s&255)>>>r|h<>1]=i;h=q^(e[113338+(((h^p)&255)<<1)>>1]|0);g=g&7}if(!g){s=h;s=s&65535;return s|0}q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){o=o+-1|0;if(n<<16>>16!=8){g=n&65535;i=(1<>1]|0);if((n&65535)<=1){k=1-g|0;m=c[f>>2]|0;j=m+1|0;c[f>>2]=j;b[q>>1]=8;if(k>>>0>7){l=(-7-g|0)>>>3;g=i;do{s=j;j=j+1|0;c[f>>2]=j;g=g<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+l|0;k=1-n&7}else g=i;if(!k)i=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;g=(s&255)>>>r|g<>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);g=8;r=60}if((r|0)==60){g=g+-1|0;j=g&65535;g=i>>>g;r=67}if((r|0)==67){r=0;b[q>>1]=j;i=j}s=h<<1;h=((g^h>>>15)&1|0)==0?s:s^32773;if(!o)break;else n=i}s=h&65535;return s|0}function tf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;nf(a+28|0,0);nf(a+36|0,0);a=a+44|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;return}function uf(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+36|0;d=a;e=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f=182864;d=c[f+4>>2]|0;e=b;c[e>>2]=c[f>>2];c[e+4>>2]=d;c[a+44>>2]=0;c[a+9264>>2]=0;Mf(a);return}function vf(a){a=a|0;Lf(a);a=a+4096|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function wf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=(c[d+4>>2]|0)==0?1:2;switch(c[d>>2]|0){case 1:{e=12;break}case 3:{e=(c[d+28>>2]&4096|0)==0?36:18;f=3;break}default:{e=36;f=3}}f=c[d+20>>2]|0;h=a+4100|0;c[h>>2]=f;b[a+4104>>1]=i;g=a+4106|0;b[g>>1]=e<<5;if(!(c[d+44>>2]&2))f=5;else{c[h>>2]=f>>>1;b[g>>1]=e<<4&32752;f=6}Ud[f&255](a,d,i,e);a=a+4096|0;c[a>>2]=(c[a>>2]|0)+e&15;return}function xf(a){a=a|0;var b=0;b=a+9264|0;a=c[b>>2]|0;if(!a)return;aT(a);c[b>>2]=0;return}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;if(!d)return;w=a+4096|0;n=(e|0)==0;m=0;s=a+1504|0;t=a+1472|0;while(1){if(!n){f=a+4108+(m*4608|0)|0;v=c[w>>2]|0;x=0;while(1){z=v&1;o=a+(m<<11)+(z<<9)|0;Af(b+48+(m*4608|0)+(x<<7)|0,v>>>1,o,a+(m<<11)+1024+(z<<9)|0);k=v&-2;u=v+15&14|1;l=z^1;q=53304+(u<<2)|0;A=53304+(k<<2)|0;G=N(c[A>>2]|0,c[o>>2]|0)|0;g=N(c[q>>2]|0,c[a+(m<<11)+(l<<9)>>2]|0)|0;i=N(c[q+56>>2]|0,c[a+(m<<11)+(l<<9)+4>>2]|0)|0;h=N(c[q+48>>2]|0,c[a+(m<<11)+(l<<9)+8>>2]|0)|0;p=N(c[q+40>>2]|0,c[a+(m<<11)+(l<<9)+12>>2]|0)|0;j=N(c[q+32>>2]|0,c[a+(m<<11)+(l<<9)+16>>2]|0)|0;y=N(c[q+24>>2]|0,c[a+(m<<11)+(l<<9)+20>>2]|0)|0;r=N(c[q+16>>2]|0,c[a+(m<<11)+(l<<9)+24>>2]|0)|0;q=N(c[q+8>>2]|0,c[a+(m<<11)+(l<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(m<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(m<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(m<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(m<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(m<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(m<<11)+(z<<9)+24>>2]|0)|0;c[f>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(m<<11)+(z<<9)+28>>2]|0)|0)-(i+g+h+p+j+y+r+q)>>2;q=0-u|0;r=0-k|0;y=s+(l<<9)|0;j=53304;p=a+(m<<11)+1024+(l<<9)|0;h=f+4|0;g=f+60|0;i=1;while(1){f=o;o=o+32|0;if(!(i&1)){A=j+128+(u<<2)|0;z=p+4|0;I=p+8|0;J=p+12|0;K=p+16|0;L=p+20|0;M=p+24|0;O=p+28|0;W=j+128+(k<<2)|0;H=f+60|0;$=N(c[W+8>>2]|0,c[H>>2]|0)|0;U=N(c[A>>2]|0,c[p>>2]|0)|0;V=N(c[A+56>>2]|0,c[z>>2]|0)|0;T=N(c[A+48>>2]|0,c[I>>2]|0)|0;S=N(c[A+40>>2]|0,c[J>>2]|0)|0;R=N(c[A+32>>2]|0,c[K>>2]|0)|0;Q=N(c[A+24>>2]|0,c[L>>2]|0)|0;P=N(c[A+16>>2]|0,c[M>>2]|0)|0;A=N(c[A+8>>2]|0,c[O>>2]|0)|0;G=f+56|0;aa=N(c[W+16>>2]|0,c[G>>2]|0)|0;F=f+52|0;_=N(c[W+24>>2]|0,c[F>>2]|0)|0;E=f+48|0;Z=N(c[W+32>>2]|0,c[E>>2]|0)|0;D=f+44|0;Y=N(c[W+40>>2]|0,c[D>>2]|0)|0;C=f+40|0;X=N(c[W+48>>2]|0,c[C>>2]|0)|0;B=f+36|0;f=N(c[W+56>>2]|0,c[B>>2]|0)|0;c[h>>2]=aa+$+_+Z+Y+X+f+(N(c[W>>2]|0,c[o>>2]|0)|0)-(V+U+T+S+R+Q+P+A)>>2;A=j+128+(q<<2)|0;f=N(c[A+116>>2]|0,c[O>>2]|0)|0;f=(N(c[A+108>>2]|0,c[M>>2]|0)|0)+f|0;f=f+(N(c[A+100>>2]|0,c[L>>2]|0)|0)|0;f=f+(N(c[A+92>>2]|0,c[K>>2]|0)|0)|0;f=f+(N(c[A+84>>2]|0,c[J>>2]|0)|0)|0;f=f+(N(c[A+76>>2]|0,c[I>>2]|0)|0)|0;f=f+(N(c[A+68>>2]|0,c[z>>2]|0)|0)|0;A=f+(N(c[A+60>>2]|0,c[p>>2]|0)|0)|0;f=j+128+(r<<2)|0;A=A+(N(c[f+60>>2]|0,c[o>>2]|0)|0)|0;B=A+(N(c[f+68>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[f+76>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[f+84>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[f+92>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[f+100>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[f+108>>2]|0,c[G>>2]|0)|0)|0;c[g>>2]=G+(N(c[f+116>>2]|0,c[H>>2]|0)|0)>>2;f=h+4|0;g=g+-4|0}else f=h;i=i+1|0;if((i|0)==16)break;else{j=j+128|0;p=p+32|0;h=f}}aa=55352+(u<<2)|0;$=N(c[aa>>2]|0,c[y>>2]|0)|0;$=$+(N(c[aa+56>>2]|0,c[t+(l<<9)+36>>2]|0)|0)|0;$=$+(N(c[aa+48>>2]|0,c[t+(l<<9)+40>>2]|0)|0)|0;$=$+(N(c[aa+40>>2]|0,c[t+(l<<9)+44>>2]|0)|0)|0;$=$+(N(c[aa+32>>2]|0,c[t+(l<<9)+48>>2]|0)|0)|0;$=$+(N(c[aa+24>>2]|0,c[t+(l<<9)+52>>2]|0)|0)|0;$=$+(N(c[aa+16>>2]|0,c[t+(l<<9)+56>>2]|0)|0)|0;c[f>>2]=0-($+(N(c[aa+8>>2]|0,c[t+(l<<9)+60>>2]|0)|0))>>2;x=x+1|0;if((x|0)==(e|0))break;else{f=f+32|0;v=v+1&15}}}m=m+1|0;if((m|0)==(d|0))break;else{s=s+2048|0;t=t+2048|0}}return}function zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;if(!d)return;v=a+4096|0;j=(e|0)==0;i=0;o=a+1472|0;p=a+1504|0;while(1){if(!j){r=a+4108+(i*4608|0)|0;u=c[v>>2]|0;w=0;while(1){z=u&1;k=a+(i<<11)+(z<<9)|0;Af(b+48+(i*4608|0)+(w<<7)|0,u>>>1,k,a+(i<<11)+1024+(z<<9)|0);g=u&-2;q=u+15&14|1;h=z^1;m=53304+(q<<2)|0;A=53304+(g<<2)|0;G=N(c[A>>2]|0,c[k>>2]|0)|0;t=N(c[m>>2]|0,c[a+(i<<11)+(h<<9)>>2]|0)|0;x=N(c[m+56>>2]|0,c[a+(i<<11)+(h<<9)+4>>2]|0)|0;s=N(c[m+48>>2]|0,c[a+(i<<11)+(h<<9)+8>>2]|0)|0;l=N(c[m+40>>2]|0,c[a+(i<<11)+(h<<9)+12>>2]|0)|0;f=N(c[m+32>>2]|0,c[a+(i<<11)+(h<<9)+16>>2]|0)|0;y=N(c[m+24>>2]|0,c[a+(i<<11)+(h<<9)+20>>2]|0)|0;n=N(c[m+16>>2]|0,c[a+(i<<11)+(h<<9)+24>>2]|0)|0;m=N(c[m+8>>2]|0,c[a+(i<<11)+(h<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(i<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(i<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(i<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(i<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(i<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(i<<11)+(z<<9)+24>>2]|0)|0;c[r>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(i<<11)+(z<<9)+28>>2]|0)|0)-(x+t+s+l+f+y+n+m)>>2;m=0-g|0;n=0-q|0;y=p+(h<<9)|0;f=53304;l=a+(i<<11)+1024+(h<<9)|0;s=r;t=r+124|0;x=1;while(1){s=s+4|0;H=f+128+(q<<2)|0;G=l+4|0;F=l+8|0;E=l+12|0;D=l+16|0;C=l+20|0;B=l+24|0;A=l+28|0;W=f+128+(g<<2)|0;z=k+60|0;aa=N(c[W+8>>2]|0,c[z>>2]|0)|0;U=N(c[H>>2]|0,c[l>>2]|0)|0;V=N(c[H+56>>2]|0,c[G>>2]|0)|0;T=N(c[H+48>>2]|0,c[F>>2]|0)|0;S=N(c[H+40>>2]|0,c[E>>2]|0)|0;R=N(c[H+32>>2]|0,c[D>>2]|0)|0;Q=N(c[H+24>>2]|0,c[C>>2]|0)|0;O=N(c[H+16>>2]|0,c[B>>2]|0)|0;H=N(c[H+8>>2]|0,c[A>>2]|0)|0;I=k+56|0;ba=N(c[W+16>>2]|0,c[I>>2]|0)|0;J=k+52|0;$=N(c[W+24>>2]|0,c[J>>2]|0)|0;K=k+48|0;_=N(c[W+32>>2]|0,c[K>>2]|0)|0;L=k+44|0;Z=N(c[W+40>>2]|0,c[L>>2]|0)|0;M=k+40|0;Y=N(c[W+48>>2]|0,c[M>>2]|0)|0;P=k+36|0;k=k+32|0;X=N(c[W+56>>2]|0,c[P>>2]|0)|0;c[s>>2]=ba+aa+$+_+Z+Y+X+(N(c[W>>2]|0,c[k>>2]|0)|0)-(V+U+T+S+R+Q+O+H)>>2;H=f+128+(m<<2)|0;O=N(c[H+60>>2]|0,c[k>>2]|0)|0;O=(N(c[H+68>>2]|0,c[P>>2]|0)|0)+O|0;M=O+(N(c[H+76>>2]|0,c[M>>2]|0)|0)|0;L=M+(N(c[H+84>>2]|0,c[L>>2]|0)|0)|0;K=L+(N(c[H+92>>2]|0,c[K>>2]|0)|0)|0;J=K+(N(c[H+100>>2]|0,c[J>>2]|0)|0)|0;I=J+(N(c[H+108>>2]|0,c[I>>2]|0)|0)|0;z=I+(N(c[H+116>>2]|0,c[z>>2]|0)|0)|0;H=f+128+(n<<2)|0;A=z+(N(c[H+116>>2]|0,c[A>>2]|0)|0)|0;B=A+(N(c[H+108>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[H+100>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[H+92>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[H+84>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[H+76>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[H+68>>2]|0,c[G>>2]|0)|0)|0;c[t>>2]=G+(N(c[H+60>>2]|0,c[l>>2]|0)|0)>>2;x=x+1|0;if((x|0)==16)break;else{f=f+128|0;l=l+32|0;t=t+-4|0}}ba=55352+(q<<2)|0;aa=N(c[ba>>2]|0,c[y>>2]|0)|0;aa=aa+(N(c[ba+56>>2]|0,c[o+(h<<9)+36>>2]|0)|0)|0;aa=aa+(N(c[ba+48>>2]|0,c[o+(h<<9)+40>>2]|0)|0)|0;aa=aa+(N(c[ba+40>>2]|0,c[o+(h<<9)+44>>2]|0)|0)|0;aa=aa+(N(c[ba+32>>2]|0,c[o+(h<<9)+48>>2]|0)|0)|0;aa=aa+(N(c[ba+24>>2]|0,c[o+(h<<9)+52>>2]|0)|0)|0;aa=aa+(N(c[ba+16>>2]|0,c[o+(h<<9)+56>>2]|0)|0)|0;c[r+64>>2]=0-(aa+(N(c[ba+8>>2]|0,c[o+(h<<9)+60>>2]|0)|0))>>2;w=w+1|0;if((w|0)==(e|0))break;else{r=r+128|0;u=u+1&15}}}i=i+1|0;if((i|0)==(d|0))break;else{o=o+2048|0;p=p+2048|0}}return}function Af(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;s=c[a>>2]|0;aa=c[a+124>>2]|0;Q=aa+s|0;aa=(s+2048-aa>>12)*4091|0;s=c[a+60>>2]|0;p=c[a+64>>2]|0;I=p+s|0;p=(s+2048-p>>12)*201|0;s=p+aa|0;p=(aa+2048-p>>12)*4076|0;aa=I+Q|0;I=(Q+2048-I>>12)*4076|0;Q=c[a+28>>2]|0;X=c[a+96>>2]|0;q=X+Q|0;X=(Q+2048-X>>12)*3035|0;Q=c[a+32>>2]|0;A=c[a+92>>2]|0;N=A+Q|0;A=(Q+2048-A>>12)*2751|0;Q=A+X|0;A=(X+2048-A>>12)*401|0;X=N+q|0;N=(q+2048-N>>12)*401|0;q=c[a+12>>2]|0;ba=c[a+112>>2]|0;m=ba+q|0;ba=(q+2048-ba>>12)*3857|0;q=c[a+48>>2]|0;n=c[a+76>>2]|0;G=n+q|0;n=(q+2048-n>>12)*1380|0;q=n+ba|0;n=(ba+2048-n>>12)*3166|0;ba=G+m|0;G=(m+2048-G>>12)*3166|0;m=c[a+16>>2]|0;T=c[a+108>>2]|0;r=T+m|0;T=(m+2048-T>>12)*3703|0;m=c[a+44>>2]|0;i=c[a+80>>2]|0;F=i+m|0;i=(m+2048-i>>12)*1751|0;m=i+T|0;i=(T+2048-i>>12)*2598|0;T=F+r|0;F=(r+2048-F>>12)*2598|0;r=c[a+4>>2]|0;$=c[a+120>>2]|0;k=$+r|0;$=(r+2048-$>>12)*4052|0;r=c[a+56>>2]|0;o=c[a+68>>2]|0;H=o+r|0;o=(r+2048-o>>12)*601|0;r=o+$|0;o=($+2048-o>>12)*3920|0;$=H+k|0;H=(k+2048-H>>12)*3920|0;k=c[a+24>>2]|0;R=c[a+100>>2]|0;Z=R+k|0;R=(k+2048-R>>12)*3290|0;k=c[a+36>>2]|0;g=c[a+88>>2]|0;D=g+k|0;g=(k+2048-g>>12)*2440|0;k=g+R|0;g=(R+2048-g>>12)*1189|0;R=D+Z|0;D=(Z+2048-D>>12)*1189|0;Z=c[a+8>>2]|0;_=c[a+116>>2]|0;l=_+Z|0;_=(Z+2048-_>>12)*3973|0;Z=c[a+52>>2]|0;x=c[a+72>>2]|0;Y=x+Z|0;x=(Z+2048-x>>12)*995|0;Z=x+_|0;x=(_+2048-x>>12)*3612|0;_=Y+l|0;Y=(l+2048-Y>>12)*3612|0;l=c[a+20>>2]|0;S=c[a+104>>2]|0;ca=S+l|0;S=(l+2048-S>>12)*3513|0;l=c[a+40>>2]|0;h=c[a+84>>2]|0;E=h+l|0;h=(l+2048-h>>12)*2106|0;l=h+S|0;h=(S+2048-h>>12)*1931|0;S=E+ca|0;E=(ca+2048-E>>12)*1931|0;ca=X+aa|0;X=(aa+2048-X>>12)*4017|0;aa=T+ba|0;T=(ba+2048-T>>12)*799|0;ba=R+$|0;R=($+2048-R>>12)*3406|0;$=S+_|0;S=(_+2048-S>>12)*2276|0;_=Q+s|0;Q=(s+2048-Q>>12)*4017|0;s=m+q|0;m=(q+2048-m>>12)*799|0;q=k+r|0;k=(r+2048-k>>12)*3406|0;r=l+Z|0;l=(Z+2048-l>>12)*2276|0;Z=N+I|0;N=(I+2048-N>>12)*4017|0;I=F+G|0;F=(G+2048-F>>12)*799|0;G=D+H|0;D=(H+2048-D>>12)*3406|0;H=E+Y|0;E=(Y+2048-E>>12)*2276|0;Y=A+p|0;A=(p+2048-A>>12)*4017|0;p=i+n|0;i=(n+2048-i>>12)*799|0;n=g+o|0;g=(o+2048-g>>12)*3406|0;o=h+x|0;h=(x+2048-h>>12)*2276|0;x=$+ba|0;w=aa+ca+2048|0;c[e+480+(b<<2)>>2]=w+x>>12;c[d+(b<<2)>>2]=((w-x>>12)*2896|0)+2048>>12;x=s+_|0;w=r+q|0;a=w+x|0;c[e+448+(b<<2)>>2]=a+2048>>12;M=I+Z|0;L=H+G|0;B=L+M|0;c[e+416+(b<<2)>>2]=B+2048>>12;z=p+Y|0;t=o+n|0;y=t+z|0;a=(y<<1)-a|0;c[e+384+(b<<2)>>2]=a+2048>>12;W=T+X|0;V=S+R|0;U=V+W|0;c[e+352+(b<<2)>>2]=U+2048>>12;P=m+Q|0;O=l+k|0;j=O+P|0;a=(j<<1)-a|0;c[e+320+(b<<2)>>2]=a+2048>>12;K=F+N|0;J=E+D|0;C=J+K|0;B=(C<<1)-B|0;c[e+288+(b<<2)>>2]=B+2048>>12;v=i+A|0;u=h+g|0;f=u+v|0;y=(f<<1)-y|0;a=(y<<1)-a|0;c[e+256+(b<<2)>>2]=a+2048>>12;aa=(ca+2048-aa>>12)*3784|0;$=(ba+2048-$>>12)*1567|0;ba=$+aa|0;c[e+224+(b<<2)>>2]=ba+2048>>12;c[d+256+(b<<2)>>2]=2048-ba+((aa+2048-$>>12)*5792|0)>>12;s=(_+2048-s>>12)*3784|0;r=(q+2048-r>>12)*1567|0;q=r+s|0;a=(q<<1)-a|0;c[e+192+(b<<2)>>2]=a+2048>>12;I=(Z+2048-I>>12)*3784|0;H=(G+2048-H>>12)*1567|0;G=H+I|0;B=(G<<1)-B|0;c[e+160+(b<<2)>>2]=B+2048>>12;p=(Y+2048-p>>12)*3784|0;o=(n+2048-o>>12)*1567|0;n=o+p|0;y=(n<<1)-y|0;a=(y<<1)-a|0;c[e+128+(b<<2)>>2]=a+2048>>12;T=(X+2048-T>>12)*3784|0;S=(R+2048-S>>12)*1567|0;R=S+T|0;U=(R<<1)-U|0;c[e+96+(b<<2)>>2]=U+2048>>12;U=((W+2048-V>>12)*5792|0)-U|0;c[d+128+(b<<2)>>2]=U+2048>>12;c[d+384+(b<<2)>>2]=2048-U+(((T+2048-S>>12)*5792|0)-R<<1)>>12;m=(Q+2048-m>>12)*3784|0;l=(k+2048-l>>12)*1567|0;k=l+m|0;j=(k<<1)-j|0;a=(j<<1)-a|0;c[e+64+(b<<2)>>2]=a+2048>>12;j=((P+2048-O>>12)*5792|0)-j|0;F=(N+2048-F>>12)*3784|0;E=(D+2048-E>>12)*1567|0;D=E+F|0;C=(D<<1)-C|0;B=(C<<1)-B|0;c[e+32+(b<<2)>>2]=B+2048>>12;B=((M+2048-L>>12)*5792|0)-B|0;c[d+64+(b<<2)>>2]=B+2048>>12;C=((K+2048-J>>12)*5792|0)-C|0;B=(C<<1)-B|0;c[d+192+(b<<2)>>2]=B+2048>>12;B=(((I+2048-H>>12)*5792|0)-G<<1)-B|0;c[d+320+(b<<2)>>2]=B+2048>>12;c[d+448+(b<<2)>>2]=((((F+2048-E>>12)*5792|0)-D<<1)-C<<1)+2048-B>>12;i=(A+2048-i>>12)*3784|0;h=(g+2048-h>>12)*1567|0;g=h+i|0;f=(g<<1)-f|0;y=(f<<1)-y|0;t=((z+2048-t>>12)*5792|0)-y|0;a=(y<<1)-a|0;c[e+(b<<2)>>2]=a+2048>>12;a=((x+2048-w>>12)*5792|0)-a|0;c[d+32+(b<<2)>>2]=a+2048>>12;a=(t<<1)-a|0;c[d+96+(b<<2)>>2]=a+2048>>12;a=(j<<1)-a|0;c[d+160+(b<<2)>>2]=a+2048>>12;f=((v+2048-u>>12)*5792|0)-f|0;e=(f<<1)-t|0;a=(e<<1)-a|0;c[d+224+(b<<2)>>2]=a+2048>>12;a=(((s+2048-r>>12)*5792|0)-q<<1)-a|0;c[d+288+(b<<2)>>2]=a+2048>>12;e=(((p+2048-o>>12)*5792|0)-n<<1)-e|0;a=(e<<1)-a|0;c[d+352+(b<<2)>>2]=a+2048>>12;a=((((m+2048-l>>12)*5792|0)-k<<1)-j<<1)-a|0;c[d+416+(b<<2)>>2]=a+2048>>12;c[d+480+(b<<2)>>2]=(((((i+2048-h>>12)*5792|0)-g<<1)-f<<1)-e<<1)+2048-a>>12;return}function Bf(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;c[j>>2]=0;l=(h|0)!=0;t=(g|0)==1;c[k>>2]=l?(t?1:2):t?5:3;c[i>>2]=rf(f,l?8:9)|0;c[i+4>>2]=rf(f,c[k>>2]|0)|0;if(!l)if(!g)t=2;else{h=0;do{a[i+8+h>>0]=rf(f,4)|0;h=h+1|0}while((h|0)!=(g|0));t=2}else t=1;q=(g|0)==0;s=l?9:4;r=l?2:3;p=l^1;o=0;h=0;do{if(!q){n=0;do{l=i+10+(o*116|0)+(n*58|0)|0;b[l>>1]=rf(f,12)|0;m=i+10+(o*116|0)+(n*58|0)+2|0;b[m>>1]=rf(f,9)|0;b[i+10+(o*116|0)+(n*58|0)+4>>1]=rf(f,8)|0;b[i+10+(o*116|0)+(n*58|0)+6>>1]=rf(f,s)|0;c[j>>2]=(c[j>>2]|0)+(e[l>>1]|0);h=(h|0)==0&(e[m>>1]|0)>288?562:h;m=i+10+(o*116|0)+(n*58|0)+8|0;a[m>>0]=0;if(!(rf(f,1)|0)){a[i+10+(o*116|0)+(n*58|0)+9>>0]=0;a[i+10+(o*116|0)+(n*58|0)+10>>0]=rf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=rf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=rf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+16>>0]=rf(f,4)|0;a[i+10+(o*116|0)+(n*58|0)+17>>0]=rf(f,3)|0}else{u=rf(f,2)|0;k=u&255;l=i+10+(o*116|0)+(n*58|0)+9|0;a[l>>0]=k;h=(u&255|h|0)==0?563:h;if(k<<24>>24==2&p)h=((h|0)==0?(a[i+8+n>>0]|0)!=0:0)?564:h;k=i+10+(o*116|0)+(n*58|0)+16|0;a[k>>0]=7;a[i+10+(o*116|0)+(n*58|0)+17>>0]=36;if(!(rf(f,1)|0)){if((a[l>>0]|0)==2)a[k>>0]=8}else a[m>>0]=a[m>>0]|8;a[i+10+(o*116|0)+(n*58|0)+10>>0]=rf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=rf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=4;a[i+10+(o*116|0)+(n*58|0)+13>>0]=rf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+14>>0]=rf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+15>>0]=rf(f,3)|0}u=rf(f,r)|0;a[m>>0]=u|d[m>>0];n=n+1|0}while((n|0)!=(g|0))}o=o+1|0}while(o>>>0>>0);return h|0}function Cf(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0;Cb=l;l=l+7296|0;if((l|0)>=(m|0))W(7296);zb=Cb+2448|0;yb=Cb+2432|0;xb=Cb+2416|0;vb=Cb+2400|0;ub=Cb+2384|0;tb=Cb+2368|0;Ab=Cb+2352|0;wb=Cb+2336|0;sb=Cb+2320|0;rb=Cb+16|0;qb=Cb;jb=Cb+7224|0;pb=Cb+7216|0;Bb=Cb+2608|0;nb=Cb+2464|0;lb=g+28|0;hb=c[lb>>2]|0;mb=(hb&16384|0)==0;k=c[g+20>>2]<<((mb^1)&1);k=(k>>>15&1)+(mb?-8:-5)+(k>>>7&15)|0;hb=2-(hb>>>12&1)|0;if(!hb){Bb=0;l=Cb;return Bb|0}kb=(j|0)==0;ib=55480+(k*12|0)|0;mb=55480+(k*12|0)+8|0;fb=55480+(k*12|0)+4|0;Ga=i+184|0;db=g+8|0;Ha=rb+4|0;Sa=rb+8|0;Va=rb+12|0;Xa=rb+16|0;Ya=rb+20|0;Za=rb+24|0;_a=rb+28|0;$a=rb+32|0;ab=rb+36|0;Ia=rb+40|0;Ja=rb+44|0;Ka=rb+48|0;La=rb+52|0;Ma=rb+56|0;Na=rb+60|0;Oa=rb+64|0;Pa=rb+68|0;Qa=rb+72|0;Ra=rb+76|0;Ta=rb+80|0;Ua=rb+84|0;R=c[27018]|0;cb=g+4|0;T=jb+4|0;U=jb+8|0;eb=g+9264|0;V=rb+2|0;fa=rb+4|0;qa=rb+6|0;Aa=rb+8|0;Ba=rb+10|0;Ca=rb+12|0;Da=rb+14|0;Ea=rb+16|0;Fa=rb+18|0;X=rb+20|0;Y=rb+22|0;Z=rb+24|0;_=rb+26|0;$=rb+28|0;aa=rb+30|0;ba=rb+32|0;ca=rb+34|0;da=rb+36|0;ea=rb+38|0;ga=rb+40|0;ha=rb+42|0;ia=rb+44|0;ja=rb+46|0;ka=rb+48|0;la=rb+50|0;ma=rb+52|0;na=rb+54|0;oa=rb+56|0;pa=rb+58|0;ra=rb+60|0;sa=rb+62|0;ta=rb+64|0;ua=rb+66|0;va=rb+68|0;wa=rb+70|0;xa=rb+72|0;ya=rb+74|0;za=rb+76|0;S=Bb+2304|0;bb=0;a:while(1){P=i+10+(bb*116|0)|0;if(!kb){L=c[ib>>2]|0;O=(bb|0)==0;M=0;do{y=i+10+(bb*116|0)+(M*58|0)|0;k=pb+(M<<2)|0;c[k>>2]=L;z=i+10+(bb*116|0)+(M*58|0)+9|0;p=(a[z>>0]|0)==2;if(p){K=c[((a[i+10+(bb*116|0)+(M*58|0)+8>>0]&8)==0?fb:mb)>>2]|0;c[k>>2]=K;k=K}else k=L;if(!(c[lb>>2]&4096)){if(O)o=0;else o=d[i+8+M>>0]|0;K=f;q=c[K+4>>2]|0;r=rb;c[r>>2]=c[K>>2];c[r+4>>2]=q;r=e[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;q=d[115220+(r<<1)>>0]|0;r=d[115220+(r<<1)+1>>0]|0;if(p){n=18-((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)|0;o=n;p=0;while(1){o=o+-1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=rf(f,q)|0;if(!o)break;else p=p+1|0}a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=rf(f,r)|0;a[n+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[n+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;J=n|4;a[n+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+J>>0]=rf(f,r)|0;a[J+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[J+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[J+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[J+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[J+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[J+6+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;K=n|12;a[J+7+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+K>>0]=rf(f,r)|0;a[K+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[K+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[K+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[K+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;a[K+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=rf(f,r)|0;K=y+(n|36)|0;a[K>>0]=0;a[K+1>>0]=0;a[K+2>>0]=0}else{if(!(o&8)){a[i+10+(bb*116|0)+(M*58|0)+18>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=rf(f,q)|0;n=(rf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+18>>0]=a[i+10+(M*58|0)+18>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=a[i+10+(M*58|0)+19>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=a[i+10+(M*58|0)+20>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=a[i+10+(M*58|0)+21>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=a[i+10+(M*58|0)+22>>0]|0;n=a[i+10+(M*58|0)+23>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+23>>0]=n;if(!(o&4)){a[i+10+(bb*116|0)+(M*58|0)+24>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=rf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=rf(f,q)|0;n=(rf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+24>>0]=a[i+10+(M*58|0)+24>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=a[i+10+(M*58|0)+25>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=a[i+10+(M*58|0)+26>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=a[i+10+(M*58|0)+27>>0]|0;n=a[i+10+(M*58|0)+28>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+28>>0]=n;if(!(o&2)){a[i+10+(bb*116|0)+(M*58|0)+29>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=rf(f,r)|0;n=(rf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+29>>0]=a[i+10+(M*58|0)+29>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=a[i+10+(M*58|0)+30>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=a[i+10+(M*58|0)+31>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=a[i+10+(M*58|0)+32>>0]|0;n=a[i+10+(M*58|0)+33>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+33>>0]=n;if(!(o&1)){a[i+10+(bb*116|0)+(M*58|0)+34>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=rf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=rf(f,r)|0;n=(rf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+34>>0]=a[i+10+(M*58|0)+34>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=a[i+10+(M*58|0)+35>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=a[i+10+(M*58|0)+36>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=a[i+10+(M*58|0)+37>>0]|0;n=a[i+10+(M*58|0)+38>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+38>>0]=n;a[i+10+(bb*116|0)+(M*58|0)+39>>0]=0}n=of(rb,f)|0}else{v=(M|0)==0?0:Ga;n=c[db>>2]|0;K=f;r=c[K+4>>2]|0;o=rb;c[o>>2]=c[K>>2];c[o+4>>2]=r;o=b[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;r=o&65535;if(p)w=((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)+1&255;else w=0;if((v|0)!=0&(n&1|0)!=0){n=r>>>1;do if((o&65535)>=360)if((o&65535)<488){t=n+-180|0;u=4;o=t>>>4&3;s=t>>>2&3;t=t&3;break}else{t=n+-244|0;s=(t>>>0)/3|0;u=5;o=s;s=t-(s*3|0)|0;t=0;break}else{K=(n>>>0)%36|0;t=(K>>>0)/6|0;u=3;o=(r>>>0)/72|0;s=t;t=K-(t*6|0)|0}while(0);p=115148+(u*12|0)+(w<<2)|0;r=(1<>0]|0))n=0;else{q=0;while(1){K=rf(f,o)|0;a[i+10+(bb*116|0)+(M*58|0)+18+q>>0]=K;n=q+1|0;a[v+18+q>>0]=(K|0)==(r|0)&1;if(n>>>0<(d[p>>0]|0)>>>0)q=n;else break}}r=(1<>0]|0){q=0;o=n;while(1){K=rf(f,s)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}r=(1<>0]|0){q=0;o=n;while(1){K=rf(f,t)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115148+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){K=rf(f,0)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==0&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)do{a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=0;a[v+18+n>>0]=0;n=n+1|0}while((n|0)!=39)}else{do if((o&65535)>=400)if((o&65535)<500){s=r+-400|0;u=1;q=(s>>>0)/20|0;s=(s>>>2>>>0)%5|0;t=o&3;r=0;break}else{t=r+-500|0;s=(t>>>0)/3|0;u=i+10+(bb*116|0)+(M*58|0)+8|0;a[u>>0]=a[u>>0]|4;u=2;q=s;s=t-(s*3|0)|0;t=0;r=0;break}else{u=0;q=(r>>>0)/80|0;s=(r>>>4>>>0)%5|0;t=r>>>2&3;r=r&3}while(0);o=115148+(u*12|0)+(w<<2)|0;if(!(a[o>>0]|0))n=0;else{p=0;while(1){n=p+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=rf(f,q)|0;if(n>>>0<(d[o>>0]|0)>>>0)p=n;else break}}p=115148+(u*12|0)+(w<<2)+1|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=rf(f,s)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115148+(u*12|0)+(w<<2)+2|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=rf(f,t)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115148+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=rf(f,r)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)iX(y+(n+18)|0,0,39-n|0)|0}n=of(rb,f)|0}x=Bb+(M*2304|0)|0;o=(e[y>>1]|0)-n|0;if((o|0)<0){ob=566;break a}t=(e[i+10+(bb*116|0)+(M*58|0)+4>>1]|0)+-210|0;K=i+10+(bb*116|0)+(M*58|0)+8|0;p=d[K>>0]|0;u=(p>>>1&1)+1|0;do if((a[z>>0]|0)==2){if(!(p&8)){n=0;p=0}else{q=p<<29>>31;n=0;p=0;while(1){c[rb+(p<<2)>>2]=t-((q&d[115252+p>>0])+(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]|0)<>0]|0)|0;if(n>>>0<36)p=r;else{p=r;break}}}r=t-(d[i+10+(bb*116|0)+(M*58|0)+13>>0]<<3)|0;s=t-(d[i+10+(bb*116|0)+(M*58|0)+14>>0]<<3)|0;q=t-(d[i+10+(bb*116|0)+(M*58|0)+15>>0]<<3)|0;if(n>>>0<576)while(1){c[rb+(p<<2)>>2]=r-(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]<>2]=s-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>2]=q-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>0]|0)*3|0)+n|0;if(n>>>0>=576)break;else p=p+3|0}}else{c[rb>>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+18>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+19>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+20>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+21>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+22>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+23>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+24>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+25>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+26>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+27>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+28>>0]<>0]|0;if(!(p&4)){c[Ja>>2]=t-(n<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+30>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+31>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+32>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+33>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+34>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+35>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+36>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+37>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+38>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]=t-(n+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+30>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+31>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+32>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+33>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+34>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+35>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+36>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+37>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+38>>0]|0)+2<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]|0;q=c[q+4>>2]|0;u=qb;c[u>>2]=p;c[u+4>>2]=q;qf(f,o);q=bX(p|0,q|0,48)|0;q=(31-q&-8)+q|0;p=rf(qb,q)|0;u=d[i+10+(bb*116|0)+(M*58|0)+10>>0]|0;s=c[53048+(u<<3)>>2]|0;if(!s){Q=165;break a}t=Bb+(M*2304|0)+(d[k>>0]<<2)|0;y=k+1|0;n=o-q|0;r=c[rb>>2]|0;k=b[i+10+(bb*116|0)+(M*58|0)+2>>1]|0;if((o|0)>0&k<<16>>16!=0){J=i+10+(bb*116|0)+(M*58|0)+17|0;I=k&65535;B=r;v=Ha;z=e[53048+(u<<3)+4>>1]|0;w=(d[i+10+(bb*116|0)+(M*58|0)+16>>0]|0)+1|0;o=0;A=0;r=e[53048+(u<<3)+6>>1]|0;H=0;F=x;while(1){I=I+-1|0;if((F|0)==(t|0)){x=y+1|0;t=F+(d[y>>0]<<2)|0;k=w+-1|0;if(!k){if(!o)k=(d[J>>0]|0)+1|0;else k=0;o=o+1|0;r=d[i+10+(bb*116|0)+(M*58|0)+10+o>>0]|0;s=c[53048+(r<<3)>>2]|0;if(!s){Q=165;break a}else{u=e[53048+(r<<3)+4>>1]|0;r=e[53048+(r<<3)+6>>1]|0}}else u=z;y=c[v>>2]|0;G=y;v=v+4|0;z=u;E=k;D=o;u=(B|0)==(y|0)?A:0;y=x;C=r}else{G=B;E=w;D=o;u=A;C=r}k=31-q&-8;if((q|0)<21){p=rf(qb,k)|0|p<>>(q-C|0)&(1<>0]&1)){o=C;do{q=q-o|0;k=b[s+(k<<1)>>1]|0;o=(k&65535)>>>1&7;k=(p>>>(q-o|0)&(1<>>4&65535)|0}while(!(a[s+(k<<1)>>0]&1))}A=s+(k<<1)|0;o=b[A>>1]|0;q=q-((o&65535)>>>1&7)|0;o=(o&65535)>>>4;k=o&15;w=k&65535;b:do if(!z){if(!(k<<16>>16)){o=u;k=0}else{k=1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[ub>>3]=+(o|0)*3.725290298461914e-09;c[ub+8>>2]=k;gV(R,115274,ub)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else{o=u;k=c[jb+(w<<2)>>2]|0}B=q+-1|0;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8&15;w=B&65535;if(!(B<<16>>16)){x=p;k=0;u=o}else{k=1<>2]|0;o=B&134217727;k=(B>>>27)+k|0;do if((k|0)>=0)if((k|0)>4){h[vb>>3]=+(o|0)*3.725290298461914e-09;c[vb+8>>2]=k;gV(R,115274,vb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else k=c[jb+(w<<2)>>2]|0;u=q+-1|0;x=p;q=u;k=(1<>>0<(z+2|0)>>>0){p=rf(qb,16)|0|p<<16;n=n+-16|0;q=q+16|0}q=q-z|0;r=(G|0)%4|0;k=c[55588+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[sb>>3]=+(o|0)*3.725290298461914e-09;c[sb+8>>2]=k;gV(R,115274,sb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(!r){Q=118;break c}k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;Q=118;break}default:{k=1<>2]|0;Q=118;break c}u=k|u;r=(G|0)%4|0;k=c[55588+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[wb>>3]=+(o|0)*3.725290298461914e-09;c[wb+8>>2]=k;gV(R,115274,wb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(r)k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;Q=118}}while(0);if((Q|0)==118){Q=0;B=q+-1|0;x=p;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8;w=B&15;d:do switch(B&15){case 0:{k=0;break b}case 15:{if(q>>>0<(z+1|0)>>>0){p=rf(qb,16)|0|x<<16;n=n+-16|0;q=q+16|0}else p=x;q=q-z|0;r=(G|0)%4|0;k=c[55588+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[Ab>>3]=+(o|0)*3.725290298461914e-09;c[Ab+8>>2]=k;gV(R,115274,Ab)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(!r)break d;k=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;break}default:{k=1<>2]|0;break d}u=k|u;p=(G|0)%4|0;k=c[55588+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[tb>>3]=+(o|0)*3.725290298461914e-09;c[tb+8>>2]=k;gV(R,115274,tb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(p)k=N((c[88416+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;p=x}}while(0);B=q+-1|0;x=p;q=B;k=(1<>2]=k;k=H+2|0;o=q+n|0;if(!((I|0)!=0&(o|0)>0)){w=q;u=G;s=y;break}else{p=x;B=G;w=E;o=D;A=u;r=C;H=k;F=Bb+(M*2304|0)+(k<<2)|0}}}else{x=p;w=q;u=r;v=Ha;s=y;k=0}if((o|0)<0){ob=568;break a}B=c[53040+((a[K>>0]&1)<<2)>>2]|0;q=(u|0)/4|0;r=u-(q<<2)|0;p=q+2|0;do if((u|0)>=-11)if((u|0)>11){h[xb>>3]=.25;c[xb+8>>2]=p;gV(R,115274,xb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-q)+67108864>>p}while(0);if(r)p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0;if((o|0)>0&k>>>0<573){o=x;x=s;while(1){z=Bb+(M*2304|0)+(k<<2)|0;if((w|0)<10){A=rf(qb,16)|0|o<<16;n=n+-16|0;o=w+16|0}else{A=o;o=w}s=o+-4|0;q=B+((A>>>s&15)<<1)|0;r=a[q>>0]|0;if(!(r&1)){r=b[q>>1]|0;q=(r&65535)>>>1&7;r=B+((A>>>(s-q|0)&(1<>>4&65535)<<1)|0;q=r;r=a[r>>0]|0;o=s}y=o-((r&255)>>>1&7)|0;if((z|0)==(t|0)){w=x+1|0;t=t+(d[x>>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[yb>>3]=.25;c[yb+8>>2]=o;gV(R,115274,yb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);r=a[q>>0]|0;u=o;v=v+4|0;s=w}else s=x;x=(r&16)==0;K=y+-1|0;o=0-p|0;y=x?y:K;c[z>>2]=x?0:(1<>0]&32)==0;x=y+-1|0;y=K?y:x;c[z+4>>2]=K?0:(1<>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[zb>>3]=.25;c[zb+8>>2]=o;gV(R,115274,zb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88416+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);u=o;v=v+4|0;r=p;s=w;o=0-p|0}else r=p;K=(a[q>>0]&64)==0;J=y+-1|0;w=K?y:J;c[x>>2]=K?0:(1<>0]|0)<0;K=w+-1|0;w=J?K:w;c[x+4>>2]=J?((1<>>0<573&(o|0)>0))break;else{o=A;p=r;x=s}}}if((n|0)<=-65){Q=202;break a}k=(o|0)<0?k+-4|0:k;if((k|0)<576)iX(Bb+(M*2304|0)+(k<<2)|0,0,((((k|0)==575?576:575)-k|0)>>>1<<3)+8|0)|0;M=M+1|0}while(M>>>0>>0)}if((c[cb>>2]|0)==2?(gb=c[db>>2]|0,gb|0):0){w=c[pb>>2]|0;k=a[i+10+(bb*116|0)+9>>0]|0;if(k<<24>>24!=(a[i+10+(bb*116|0)+67>>0]|0)){Q=276;break}n=a[i+10+(bb*116|0)+66>>0]|0;if((n^a[i+10+(bb*116|0)+8>>0])&8){Q=276;break}O=gb&65535;b[rb>>1]=O;b[V>>1]=O;b[fa>>1]=O;b[qa>>1]=O;b[Aa>>1]=O;b[Ba>>1]=O;b[Ca>>1]=O;b[Da>>1]=O;b[Ea>>1]=O;b[Fa>>1]=O;b[X>>1]=O;b[Y>>1]=O;b[Z>>1]=O;b[_>>1]=O;b[$>>1]=O;b[aa>>1]=O;b[ba>>1]=O;b[ca>>1]=O;b[da>>1]=O;b[ea>>1]=O;b[ga>>1]=O;b[ha>>1]=O;b[ia>>1]=O;b[ja>>1]=O;b[ka>>1]=O;b[la>>1]=O;b[ma>>1]=O;b[na>>1]=O;b[oa>>1]=O;b[pa>>1]=O;b[ra>>1]=O;b[sa>>1]=O;b[ta>>1]=O;b[ua>>1]=O;b[va>>1]=O;b[wa>>1]=O;b[xa>>1]=O;b[ya>>1]=O;b[za>>1]=O;e:do if(gb&1|0){v=c[lb>>2]|0;c[lb>>2]=v|256;if(k<<24>>24==2){c[U>>2]=0;c[T>>2]=0;c[jb>>2]=0;if(n&8){q=0;n=0;r=S;k=0;do{Q=k;k=k+1|0;Q=a[w+Q>>0]|0;p=Q&255;f:do if(Q<<24>>24){o=0;do{if(c[r+(o<<2)>>2]|0){n=k;break f}o=o+1|0}while(o>>>0

>>0)}while(0);r=r+(p<<2)|0;q=q+p|0}while(q>>>0<36);if(q>>>0<576){o=r;Q=220}else Q=228}else{q=0;n=0;o=S;k=0;Q=220}if((Q|0)==220){Q=0;s=0;t=k;u=0;while(1){O=a[w+t>>0]|0;t=t+1|0;r=O&255;g:do if(!(O<<24>>24))p=s;else{p=0;while(1){if(c[o+(p<<2)>>2]|0)break;p=p+1|0;if(p>>>0>=r>>>0){p=s;break g}}c[jb+(u<<2)>>2]=t;p=t}while(0);q=q+r|0;if(q>>>0>=576)break;else{s=p;o=o+(r<<2)|0;u=((u+1|0)>>>0)%3|0}}if(!p)Q=228;else{n=k;q=p}}if((Q|0)==228){Q=0;q=0}if(n|0){o=gb&65534;p=0;do{b[rb+(p<<1)>>1]=o;p=p+1|0}while((p|0)!=(n|0))}if(k>>>0>>0){o=gb&65534;n=0;while(1){if(k>>>0<(c[jb+(n<<2)>>2]|0)>>>0)b[rb+(k<<1)>>1]=o;k=k+1|0;if((k|0)==(q|0))break;else n=((n+1|0)>>>0)%3|0}}}else{k=0;q=0;r=S;s=0;while(1){O=a[w+s>>0]|0;s=s+1|0;p=O&255;h:do if(!(O<<24>>24))o=k;else{n=0;while(1){if(c[r+(n<<2)>>2]|0){o=s;break h}n=n+1|0;if(n>>>0>=p>>>0){o=k;break}}}while(0);q=q+p|0;if(q>>>0>=576)break;else{k=o;r=r+(p<<2)|0}}if(o|0){k=gb&65534;n=0;do{b[rb+(n<<1)>>1]=k;n=n+1|0}while((n|0)!=(o|0))}}if(!(v&4096)){r=0;s=0;while(1){k=a[w+s>>0]|0;q=k&255;n=rb+(s<<1)|0;o=b[n>>1]|0;do if(o&1|0){P=a[i+10+(bb*116|0)+76+s>>0]|0;p=P&255;if((P&255)>6){b[n>>1]=o&65534;break}if(k<<24>>24){o=(c[88564+(p<<2)>>2]|0)+32768>>16;n=(c[88564+(6-p<<2)>>2]|0)+32768>>16;k=0;do{P=k+r|0;M=Bb+(P<<2)|0;O=(c[M>>2]|0)+2048>>12;c[M>>2]=N(O,o)|0;c[Bb+2304+(P<<2)>>2]=N(O,n)|0;k=k+1|0}while((k|0)!=(q|0))}}while(0);r=r+q|0;if(r>>>0>=576)break e;else s=s+1|0}}p=b[i+10+(bb*116|0)+64>>1]&1;r=0;s=0;while(1){o=a[w+s>>0]|0;q=o&255;k=rb+(s<<1)|0;n=b[k>>1]|0;i:do if(n&1|0){if(a[P+192+s>>0]|0){b[k>>1]=n&65534;break}k=a[i+10+(bb*116|0)+76+s>>0]|0;n=k&255;if(o<<24>>24){if(!(k<<24>>24)){k=0;while(1){O=k+r|0;c[Bb+2304+(O<<2)>>2]=c[Bb+(O<<2)>>2];k=k+1|0;if((k|0)==(q|0))break i}}o=(c[88444+(p*60|0)+((n+-1|0)>>>1<<2)>>2]|0)+32768>>16;if(!(n&1)){k=0;do{O=k+r|0;c[Bb+2304+(O<<2)>>2]=N((c[Bb+(O<<2)>>2]|0)+2048>>12,o)|0;k=k+1|0}while((k|0)!=(q|0))}else{k=0;do{O=k+r|0;L=Bb+(O<<2)|0;M=c[L>>2]|0;c[L>>2]=N(M+2048>>12,o)|0;c[Bb+2304+(O<<2)>>2]=M;k=k+1|0}while((k|0)!=(q|0))}}}while(0);r=r+q|0;if(r>>>0>=576)break;else s=s+1|0}}while(0);if(gb&2|0){c[lb>>2]=c[lb>>2]|512;o=0;p=0;while(1){P=a[w+p>>0]|0;k=P&255;if(P<<24>>24?(b[rb+(p<<1)>>1]|0)==2:0){n=0;do{P=n+o|0;L=Bb+(P<<2)|0;P=Bb+2304+(P<<2)|0;O=c[P>>2]|0;M=(c[L>>2]|0)+2048|0;c[L>>2]=(M+O>>12)*2896;c[P>>2]=(M-O>>12)*2896;n=n+1|0}while((n|0)!=(k|0))}o=o+k|0;if(o>>>0>=576)break;else p=p+1|0}}}if(!kb){A=bb*18|0;z=0;do{y=g+48+(z*4608|0)+(A<<7)|0;x=i+10+(bb*116|0)+(z*58|0)+9|0;w=Bb+(z*2304|0)|0;if((a[x>>0]|0)==2){k=c[pb+(z<<2)>>2]|0;v=(a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8)==0;if(v)u=0;else{o=0;while(1){n=k+1|0;o=o+(d[k>>0]|0)|0;if(o>>>0>=36){u=2;k=n;break}else k=n}};c[qb>>2]=0;c[qb+4>>2]=0;c[qb+8>>2]=0;c[jb>>2]=u;c[T>>2]=u;c[U>>2]=u;t=u*18|0;o=d[k>>0]|0;s=t;k=k+1|0;n=0;while(1){if(!o){r=d[k>>0]|0;k=k+1|0;n=((n+1|0)>>>0)%3|0}else r=o;O=c[Bb+(z*2304|0)+(s<<2)>>2]|0;p=jb+(n<<2)|0;o=c[p>>2]|0;q=qb+(n<<2)|0;P=c[q>>2]|0;Q=P+1|0;c[q>>2]=Q;c[rb+(o*72|0)+(n*24|0)+(P<<2)>>2]=O;if((Q|0)==6){c[q>>2]=0;c[p>>2]=o+1}s=s+1|0;if((s|0)==576)break;else o=r+-1|0}gX(Bb+(z*2304|0)+(t<<2)|0,rb+(u*72|0)|0,(N(u,-72)|0)+2304|0)|0;if(!v)Df(w,36)}else Df(w,576);k=a[x>>0]|0;n=a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8;if(k<<24>>24==2&n<<24>>24==0){Gf(w,nb);Ff(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);Gf(Bb+(z*2304|0)+72|0,nb);Ff(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}else{Q=n<<24>>24==0?k&255:0;Ef(w,nb,Q);Ff(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);Ef(Bb+(z*2304|0)+72|0,nb,Q);Ff(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}n=y+132|0;P=y+388|0;O=c[P>>2]|0;c[n>>2]=0-(c[n>>2]|0);n=y+644|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+900|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1156|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1412|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1668|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1924|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+2180|0;Q=c[n>>2]|0;c[P>>2]=0-O;c[n>>2]=0-Q;n=576;while(1){k=n;n=n+-1|0;if(c[Bb+(z*2304|0)+(n<<2)>>2]|0)break;if(n>>>0<=36){k=36;break}}v=32-(((576-k|0)>>>0)/18|0)|0;k=a[x>>0]|0;n=v>>>0>2;j:do if(k<<24>>24==2)if(n){k=36;n=2;while(1){Gf(Bb+(z*2304|0)+(k<<2)|0,nb);Ff(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break}else k=k+18|0}}else Q=312;else if(n){o=36;n=2;while(1){Ef(Bb+(z*2304|0)+(o<<2)|0,nb,k&255);Ff(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break j}k=a[x>>0]|0;o=o+18|0}}else Q=312;while(0);if((Q|0)==311?(Q=0,v>>>0<32):0)Q=312;if((Q|0)==312){Q=0;w=c[eb>>2]|0;do{P=w+(z*2304|0)+(v*72|0)|0;c[g+48+(z*4608|0)+(A<<7)+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+4|0;k=y+128+(v<<2)|0;c[k>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+8|0;c[y+256+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+12|0;r=y+384+(v<<2)|0;c[r>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+16|0;c[y+512+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+20|0;s=y+640+(v<<2)|0;c[s>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+24|0;c[y+768+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+28|0;t=y+896+(v<<2)|0;c[t>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+32|0;c[y+1024+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+36|0;u=y+1152+(v<<2)|0;c[u>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+40|0;c[y+1280+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+44|0;n=y+1408+(v<<2)|0;c[n>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+48|0;c[y+1536+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+52|0;o=y+1664+(v<<2)|0;c[o>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+56|0;c[y+1792+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+60|0;p=y+1920+(v<<2)|0;c[p>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+64|0;c[y+2048+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+68|0;q=y+2176+(v<<2)|0;c[q>>2]=c[P>>2];c[P>>2]=0;if(v&1|0){O=c[r>>2]|0;c[k>>2]=0-(c[k>>2]|0);P=c[s>>2]|0;c[r>>2]=0-O;O=c[t>>2]|0;c[s>>2]=0-P;P=c[u>>2]|0;c[t>>2]=0-O;O=c[n>>2]|0;c[u>>2]=0-P;P=c[o>>2]|0;c[n>>2]=0-O;O=c[p>>2]|0;c[o>>2]=0-P;P=c[q>>2]|0;c[p>>2]=0-O;c[q>>2]=0-P}v=v+1|0}while(v>>>0<32)}z=z+1|0}while((z|0)!=(j|0))}bb=bb+1|0;if(bb>>>0>=hb>>>0){k=0;Q=318;break}}if((Q|0)==165)ob=567;else if((Q|0)==202)Wa(115307,115139,1253,115349);else if((Q|0)==276){Bb=569;l=Cb;return Bb|0}else if((Q|0)==318){l=Cb;return k|0}Bb=ob;l=Cb;return Bb|0}function Df(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+(b<<2)|0;if((b|0)<=18)return;b=a+72|0;do{g=b+-4|0;e=c[b>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-2107)|0)+(f*3512|0);c[b>>2]=(N(f,-2107)|0)+((e+2048>>12)*3512|0);e=b+-8|0;f=b+4|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-1932)|0)+(a*3612|0);c[f>>2]=(N(a,-1932)|0)+((g+2048>>12)*3612|0);f=b+-12|0;g=b+8|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048>>12;c[f>>2]=(N(2048-a>>12,-1284)|0)+(e*3890|0);c[g>>2]=(N(e,-1284)|0)+((a+2048>>12)*3890|0);g=b+-16|0;a=b+12|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-745)|0)+(f*4028|0);c[a>>2]=(N(f,-745)|0)+((e+2048>>12)*4028|0);a=b+-20|0;e=b+16|0;f=c[e>>2]|0;g=(c[a>>2]|0)+2048>>12;c[a>>2]=(N(2048-f>>12,-387)|0)+(g*4078|0);c[e>>2]=(N(g,-387)|0)+((f+2048>>12)*4078|0);e=b+-24|0;f=b+20|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-168)|0)+(a*4093|0);c[f>>2]=(N(a,-168)|0)+((g+2048>>12)*4093|0);f=b+-28|0;g=b+24|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048|0;c[f>>2]=(N(2048-a>>12,-58)|0)+(e&-4096);c[g>>2]=(N(e>>12,-58)|0)+(a+2048&-4096);g=b+-32|0;a=b+28|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048|0;c[g>>2]=(N(2048-e>>12,-15)|0)+(f&-4096);c[a>>2]=(N(f>>12,-15)|0)+(e+2048&-4096);b=b+72|0}while(b>>>0>>0);return}function Ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;o=((c[a>>2]|0)+2048>>12)*8184|0;g=((c[a+4>>2]|0)+2048>>12)*8122|0;O=((c[a+8>>2]|0)+2048>>12)*7998|0;Z=((c[a+12>>2]|0)+2048>>12)*7813|0;X=((c[a+16>>2]|0)+2048>>12)*7568|0;V=((c[a+20>>2]|0)+2048>>12)*7266|0;ca=((c[a+24>>2]|0)+2048>>12)*6909|0;L=((c[a+28>>2]|0)+2048>>12)*6499|0;Q=((c[a+32>>2]|0)+2048>>12)*6040|0;ba=((c[a+36>>2]|0)+2048>>12)*5534|0;P=((c[a+40>>2]|0)+2048>>12)*4987|0;f=((c[a+44>>2]|0)+2048>>12)*4402|0;z=((c[a+48>>2]|0)+2048>>12)*3783|0;R=((c[a+52>>2]|0)+2048>>12)*3135|0;m=((c[a+56>>2]|0)+2048>>12)*2463|0;t=((c[a+60>>2]|0)+2048>>12)*1773|0;M=((c[a+64>>2]|0)+2048>>12)*1069|0;W=((c[a+68>>2]|0)+2048>>12)*357|0;S=W+o|0;Y=M+g|0;e=t+O|0;a=m+Z|0;u=R+X|0;l=z+V|0;J=f+ca|0;_=P+L|0;K=ba+Q|0;$=a+l|0;l=a-l|0;a=e+J|0;e=J-e|0;J=Y+_|0;aa=S+K|0;S=K-S|0;K=a+$+aa|0;U=e+2048|0;n=N(U+l>>12,-5266)|0;l=l+2048|0;T=(l-S>>12)*8068|0;U=N(S+U>>12,-2802)|0;Y=N(2048-_+Y>>12,-7094)|0;_=N(a+2048-aa>>12,-7698)|0;$=$+2048|0;aa=N($-aa>>12,-1423)|0;a=N($-a>>12,-6275)|0;$=J+u|0;J=(u<<1)-J|0;W=(o+2048-W>>12)*8161|0;M=(g+2048-M>>12)*7913|0;t=(O+2048-t>>12)*7424|0;m=(Z+2048-m>>12)*6710|0;R=X+2048-R>>12;z=(V+2048-z>>12)*4699|0;f=(ca+2048-f>>12)*3462|0;P=(L+2048-P>>12)*2120|0;ba=(Q+2048-ba>>12)*714|0;Q=m+z|0;z=m-z|0;m=t+f|0;t=f-t|0;f=M+P|0;L=W+ba|0;W=ba-W|0;ba=m+Q+L|0;ca=t+2048|0;V=N(ca+z>>12,-5266)|0;z=z+2048|0;X=(z-W>>12)*8068|0;ca=N(W+ca>>12,-2802)|0;M=N(2048-P+M>>12,-7094)|0;P=N(m+2048-L>>12,-7698)|0;Q=Q+2048|0;L=N(Q-L>>12,-1423)|0;m=N(Q-m>>12,-6275)|0;Q=f+(R*5793|0)|0;f=(R*11586|0)-f|0;R=ba+Q|0;Z=V-M-R+X|0;O=m-f+P-Z|0;W=(N(z-t+W>>12,-7094)|0)-O|0;P=P+f-L-W|0;X=M-ca+X-P|0;Q=ba-(Q<<1)-X|0;ca=V+M+ca-Q|0;M=(K+$|0)/2|0;R=((R|0)/2|0)-M|0;V=((n-Y+T|0)/2|0)-R|0;Z=((Z|0)/2|0)-V|0;ba=((a-J+_|0)/2|0)-Z|0;O=((O|0)/2|0)-ba|0;S=(N(l-e+S>>12,-3547)|0)-O|0;W=((W|0)/2|0)-S|0;_=((_+J-aa|0)/2|0)-W|0;P=((P|0)/2|0)-_|0;T=((Y-U+T|0)/2|0)-P|0;X=((X|0)/2|0)-T|0;$=((K-($<<1)|0)/2|0)-X|0;Q=((Q|0)/2|0)-$|0;U=((n+Y+U|0)/2|0)-Q|0;Y=((ca|0)/2|0)-U|0;aa=((a+J+aa|0)/2|0)-Y|0;ca=((m+f+L-ca|0)/2|0)-aa|0;c[b>>2]=P;L=b+4|0;c[L>>2]=T;f=b+8|0;c[f>>2]=X;m=b+12|0;c[m>>2]=$;J=b+16|0;c[J>>2]=Q;a=b+20|0;c[a>>2]=U;n=b+24|0;c[n>>2]=Y;K=b+28|0;c[K>>2]=aa;e=b+32|0;c[e>>2]=ca;l=b+36|0;c[l>>2]=0-ca;t=b+40|0;c[t>>2]=0-aa;z=b+44|0;c[z>>2]=0-Y;g=b+48|0;c[g>>2]=0-U;o=b+52|0;c[o>>2]=0-Q;u=b+56|0;c[u>>2]=0-$;h=b+60|0;c[h>>2]=0-X;p=b+64|0;c[p>>2]=0-T;v=b+68|0;c[v>>2]=0-P;da=0-_|0;i=b+72|0;c[i>>2]=da;H=0-W|0;q=b+76|0;c[q>>2]=H;E=0-S|0;w=b+80|0;c[w>>2]=E;B=0-O|0;j=b+84|0;c[j>>2]=B;G=0-ba|0;r=b+88|0;c[r>>2]=G;D=0-Z|0;x=b+92|0;c[x>>2]=D;A=0-V|0;k=b+96|0;c[k>>2]=A;I=0-R|0;s=b+100|0;c[s>>2]=I;F=0-M|0;y=b+104|0;c[y>>2]=F;C=b+108|0;c[C>>2]=F;F=b+112|0;c[F>>2]=I;I=b+116|0;c[I>>2]=A;A=b+120|0;c[A>>2]=D;D=b+124|0;c[D>>2]=G;G=b+128|0;c[G>>2]=B;B=b+132|0;c[B>>2]=E;E=b+136|0;c[E>>2]=H;H=b+140|0;c[H>>2]=da;switch(d|0){case 0:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;c[i>>2]=(2048-_>>12)*4092;c[q>>2]=(2048-W>>12)*4061;c[w>>2]=(2048-S>>12)*3999;c[j>>2]=(2048-O>>12)*3906;c[r>>2]=(2048-ba>>12)*3784;c[x>>2]=(2048-Z>>12)*3633;c[k>>2]=(2048-V>>12)*3455;c[s>>2]=((c[s>>2]|0)+2048>>12)*3250;c[y>>2]=((c[y>>2]|0)+2048>>12)*3020;c[C>>2]=((c[C>>2]|0)+2048>>12)*2767;c[F>>2]=((c[F>>2]|0)+2048>>12)*2493;c[I>>2]=((c[I>>2]|0)+2048>>12)*2201;c[A>>2]=((c[A>>2]|0)+2048>>12)*1891;c[D>>2]=((c[D>>2]|0)+2048>>12)*1567;c[G>>2]=((c[G>>2]|0)+2048>>12)*1232;c[B>>2]=((c[B>>2]|0)+2048>>12)*887;c[E>>2]=((c[E>>2]|0)+2048>>12)*535;c[H>>2]=((c[H>>2]|0)+2048>>12)*179;return}case 1:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;da=2048-V>>12;c[k>>2]=da*4061;b=2048-R>>12;c[s>>2]=b*3784;d=2048-M>>12;c[y>>2]=d*3250;c[C>>2]=d*2493;c[F>>2]=b*1567;c[I>>2]=da*535;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[A+16>>2]=0;c[A+20>>2]=0;return}case 3:{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[n>>2]=(Y+2048>>12)*535;c[K>>2]=(aa+2048>>12)*1567;c[e>>2]=(ca+2048>>12)*2493;c[l>>2]=(2048-ca>>12)*3250;c[t>>2]=(2048-aa>>12)*3784;c[z>>2]=(2048-Y>>12)*4061;da=2048-_>>12;c[i>>2]=da*4092;b=2048-W>>12;c[q>>2]=b*4061;d=2048-S>>12;c[w>>2]=d*3999;ca=2048-O>>12;c[j>>2]=ca*3906;ba=2048-ba>>12;c[r>>2]=ba*3784;aa=2048-Z>>12;c[x>>2]=aa*3633;$=2048-V>>12;c[k>>2]=$*3455;_=2048-R>>12;c[s>>2]=_*3250;Z=2048-M>>12;c[y>>2]=Z*3020;c[C>>2]=Z*2767;c[F>>2]=_*2493;c[I>>2]=$*2201;c[A>>2]=aa*1891;c[D>>2]=ba*1567;c[G>>2]=ca*1232;c[B>>2]=d*887;c[E>>2]=b*535;c[H>>2]=da*179;return}default:return}}function Ff(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;c[d+(e<<2)>>2]=(c[b>>2]|0)+(c[a>>2]|0);c[b>>2]=c[a+72>>2];f=b+4|0;c[d+128+(e<<2)>>2]=(c[f>>2]|0)+(c[a+4>>2]|0);c[f>>2]=c[a+76>>2];f=b+8|0;c[d+256+(e<<2)>>2]=(c[f>>2]|0)+(c[a+8>>2]|0);c[f>>2]=c[a+80>>2];f=b+12|0;c[d+384+(e<<2)>>2]=(c[f>>2]|0)+(c[a+12>>2]|0);c[f>>2]=c[a+84>>2];f=b+16|0;c[d+512+(e<<2)>>2]=(c[f>>2]|0)+(c[a+16>>2]|0);c[f>>2]=c[a+88>>2];f=b+20|0;c[d+640+(e<<2)>>2]=(c[f>>2]|0)+(c[a+20>>2]|0);c[f>>2]=c[a+92>>2];f=b+24|0;c[d+768+(e<<2)>>2]=(c[f>>2]|0)+(c[a+24>>2]|0);c[f>>2]=c[a+96>>2];f=b+28|0;c[d+896+(e<<2)>>2]=(c[f>>2]|0)+(c[a+28>>2]|0);c[f>>2]=c[a+100>>2];f=b+32|0;c[d+1024+(e<<2)>>2]=(c[f>>2]|0)+(c[a+32>>2]|0);c[f>>2]=c[a+104>>2];f=b+36|0;c[d+1152+(e<<2)>>2]=(c[f>>2]|0)+(c[a+36>>2]|0);c[f>>2]=c[a+108>>2];f=b+40|0;c[d+1280+(e<<2)>>2]=(c[f>>2]|0)+(c[a+40>>2]|0);c[f>>2]=c[a+112>>2];f=b+44|0;c[d+1408+(e<<2)>>2]=(c[f>>2]|0)+(c[a+44>>2]|0);c[f>>2]=c[a+116>>2];f=b+48|0;c[d+1536+(e<<2)>>2]=(c[f>>2]|0)+(c[a+48>>2]|0);c[f>>2]=c[a+120>>2];f=b+52|0;c[d+1664+(e<<2)>>2]=(c[f>>2]|0)+(c[a+52>>2]|0);c[f>>2]=c[a+124>>2];f=b+56|0;c[d+1792+(e<<2)>>2]=(c[f>>2]|0)+(c[a+56>>2]|0);c[f>>2]=c[a+128>>2];f=b+60|0;c[d+1920+(e<<2)>>2]=(c[f>>2]|0)+(c[a+60>>2]|0);c[f>>2]=c[a+132>>2];f=b+64|0;c[d+2048+(e<<2)>>2]=(c[f>>2]|0)+(c[a+64>>2]|0);c[f>>2]=c[a+136>>2];b=b+68|0;c[d+2176+(e<<2)>>2]=(c[b>>2]|0)+(c[a+68>>2]|0);c[b>>2]=c[a+140>>2];return}function Gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);e=d;p=(c[a>>2]|0)+2048>>12;n=(c[a+4>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+8>>2]|0)+2048>>12;i=j+(p*2493|0)+(N(h,-535)|0)|0;g=(c[a+12>>2]|0)+2048>>12;k=(c[a+16>>2]|0)+2048>>12;f=N(k,-1567)|0;o=(c[a+20>>2]|0)+2048>>12;i=i+(g*4061|0)+f+(N(o,-3250)|0)|0;c[e>>2]=i;c[e+20>>2]=0-i;i=(n*1567|0)+(N(p,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(o,-2493)|0)|0;c[e+24>>2]=i;c[e+44>>2]=i;i=j+(p*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(o*3784|0)|0;c[e+4>>2]=i;c[e+16>>2]=0-i;n=N(n,-1567)|0;k=k*3784|0;i=n+(N(p,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(o*1567|0)|0;c[e+28>>2]=i;c[e+40>>2]=i;k=n+(p*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(o,-4061)|0)|0;c[e+8>>2]=k;c[e+12>>2]=0-k;o=j+(N(p,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(o,-535)|0)|0;c[e+32>>2]=o;c[e+36>>2]=o;o=(c[a+24>>2]|0)+2048>>12;f=(c[a+28>>2]|0)+2048>>12;g=N(f,-3784)|0;h=(c[a+32>>2]|0)+2048>>12;p=g+(o*2493|0)+(N(h,-535)|0)|0;j=(c[a+36>>2]|0)+2048>>12;k=(c[a+40>>2]|0)+2048>>12;n=N(k,-1567)|0;i=(c[a+44>>2]|0)+2048>>12;p=p+(j*4061|0)+n+(N(i,-3250)|0)|0;c[e+48>>2]=p;c[e+68>>2]=0-p;p=(f*1567|0)+(N(o,-3250)|0)+(h*4061|0)+(j*535|0)+(N(k,-3784)|0)+(N(i,-2493)|0)|0;c[e+72>>2]=p;c[e+92>>2]=p;p=g+(o*1567|0)+(h*3784|0)+(N(j,-1567)|0)+n+(i*3784|0)|0;c[e+52>>2]=p;c[e+64>>2]=0-p;f=N(f,-1567)|0;k=k*3784|0;p=f+(N(o,-3784)|0)+(h*1567|0)+(j*3784|0)+k+(i*1567|0)|0;c[e+76>>2]=p;c[e+88>>2]=p;k=f+(o*535|0)+(h*2493|0)+(N(j,-3250)|0)+k+(N(i,-4061)|0)|0;c[e+56>>2]=k;c[e+60>>2]=0-k;i=g+(N(o,-4061)|0)+(N(h,-3250)|0)+(N(j,-2493)|0)+n+(N(i,-535)|0)|0;c[e+80>>2]=i;c[e+84>>2]=i;i=(c[a+48>>2]|0)+2048>>12;n=(c[a+52>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+56>>2]|0)+2048>>12;o=j+(i*2493|0)+(N(h,-535)|0)|0;g=(c[a+60>>2]|0)+2048>>12;k=(c[a+64>>2]|0)+2048>>12;f=N(k,-1567)|0;a=(c[a+68>>2]|0)+2048>>12;o=o+(g*4061|0)+f+(N(a,-3250)|0)|0;c[e+96>>2]=o;c[e+116>>2]=0-o;o=(n*1567|0)+(N(i,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(a,-2493)|0)|0;c[e+120>>2]=o;c[e+140>>2]=o;o=j+(i*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(a*3784|0)|0;c[e+100>>2]=o;c[e+112>>2]=0-o;n=N(n,-1567)|0;k=k*3784|0;o=n+(N(i,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(a*1567|0)|0;c[e+124>>2]=o;c[e+136>>2]=o;k=n+(i*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(a,-4061)|0)|0;c[e+104>>2]=k;c[e+108>>2]=0-k;a=j+(N(i,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(a,-535)|0)|0;c[e+128>>2]=a;c[e+132>>2]=a;c[b>>2]=0;c[b+24>>2]=((c[e>>2]|0)+2048>>12)*535;c[b+48>>2]=(((c[e+48>>2]|0)+2048>>12)*535|0)+(((c[e+24>>2]|0)+2048>>12)*4061|0);c[b+72>>2]=(((c[e+96>>2]|0)+2048>>12)*535|0)+(((c[e+72>>2]|0)+2048>>12)*4061|0);c[b+96>>2]=((c[e+120>>2]|0)+2048>>12)*4061;c[b+120>>2]=0;c[b+4>>2]=0;c[b+28>>2]=((c[e+4>>2]|0)+2048>>12)*1567;c[b+52>>2]=(((c[e+52>>2]|0)+2048>>12)*1567|0)+(((c[e+28>>2]|0)+2048>>12)*3784|0);c[b+76>>2]=(((c[e+100>>2]|0)+2048>>12)*1567|0)+(((c[e+76>>2]|0)+2048>>12)*3784|0);c[b+100>>2]=((c[e+124>>2]|0)+2048>>12)*3784;c[b+124>>2]=0;c[b+8>>2]=0;c[b+32>>2]=((c[e+8>>2]|0)+2048>>12)*2493;c[b+56>>2]=(((c[e+56>>2]|0)+2048>>12)*2493|0)+(((c[e+32>>2]|0)+2048>>12)*3250|0);c[b+80>>2]=(((c[e+104>>2]|0)+2048>>12)*2493|0)+(((c[e+80>>2]|0)+2048>>12)*3250|0);c[b+104>>2]=((c[e+128>>2]|0)+2048>>12)*3250;c[b+128>>2]=0;c[b+12>>2]=0;c[b+36>>2]=((c[e+12>>2]|0)+2048>>12)*3250;c[b+60>>2]=(((c[e+60>>2]|0)+2048>>12)*3250|0)+(((c[e+36>>2]|0)+2048>>12)*2493|0);c[b+84>>2]=(((c[e+108>>2]|0)+2048>>12)*3250|0)+(((c[e+84>>2]|0)+2048>>12)*2493|0);c[b+108>>2]=((c[e+132>>2]|0)+2048>>12)*2493;c[b+132>>2]=0;c[b+16>>2]=0;c[b+40>>2]=((c[e+16>>2]|0)+2048>>12)*3784;c[b+64>>2]=(((c[e+64>>2]|0)+2048>>12)*3784|0)+(((c[e+40>>2]|0)+2048>>12)*1567|0);c[b+88>>2]=(((c[e+112>>2]|0)+2048>>12)*3784|0)+(((c[e+88>>2]|0)+2048>>12)*1567|0);c[b+112>>2]=((c[e+136>>2]|0)+2048>>12)*1567;c[b+136>>2]=0;c[b+20>>2]=0;c[b+44>>2]=((c[e+20>>2]|0)+2048>>12)*4061;c[b+68>>2]=(((c[e+68>>2]|0)+2048>>12)*4061|0)+(((c[e+44>>2]|0)+2048>>12)*535|0);c[b+92>>2]=(((c[e+116>>2]|0)+2048>>12)*4061|0)+(((c[e+92>>2]|0)+2048>>12)*535|0);c[b+116>>2]=((c[e+140>>2]|0)+2048>>12)*535;c[b+140>>2]=0;l=d;return}function Hf(b){b=b|0;var e=0,f=0,g=0,h=0;h=b+28|0;e=pf(h)|0;g=c[b+4>>2]|0;f=g+-1|0;a:do if(e>>>0>>0){b=e;while(1){e=b+1|0;if((a[b>>0]|0)==-1?(d[e>>0]|0)>223:0){e=b;break a}if(e>>>0>>0)b=e;else break}}while(0);if((g-e|0)<8){h=-1;return h|0}nf(h,e);h=0;return h|0}function If(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=a+28|0;c[g>>2]=0;h=a+32|0;c[h>>2]=0;i=d+28|0;qf(i,11);if(!(rf(i,1)|0))c[g>>2]=c[g>>2]|16384;k=(rf(i,1)|0)==0;e=c[g>>2]|0;if(!k){if(e&16384|0){c[d+60>>2]=257;k=-1;l=j;return k|0}}else c[g>>2]=e|4096;k=rf(i,2)|0;c[a>>2]=4-k;if(!k){c[d+60>>2]=258;k=-1;l=j;return k|0}if(!(rf(i,1)|0)){c[g>>2]=c[g>>2]|16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];b[a+24>>1]=sf(f,16,-1)|0}e=rf(i,4)|0;if((e|0)==15){c[d+60>>2]=259;k=-1;l=j;return k|0}k=c[a>>2]|0;c[a+16>>2]=c[88592+(((c[g>>2]&4096|0)==0?k+-1|0:(k>>>1)+3|0)*60|0)+(e<<2)>>2];e=rf(i,2)|0;if((e|0)==3){c[d+60>>2]=260;k=-1;l=j;return k|0}e=c[88892+(e<<2)>>2]|0;d=a+20|0;c[d>>2]=e;f=c[g>>2]|0;if(f&4096|0?(c[d>>2]=e>>>1,f&16384|0):0)c[d>>2]=e>>>2;if(rf(i,1)|0)c[g>>2]=c[g>>2]|128;if(rf(i,1)|0)c[h>>2]=c[h>>2]|256;c[a+4>>2]=3-(rf(i,2)|0);c[a+8>>2]=rf(i,2)|0;if(rf(i,1)|0)c[g>>2]=c[g>>2]|32;if(rf(i,1)|0)c[g>>2]=c[g>>2]|64;c[a+12>>2]=rf(i,2)|0;if(!(c[g>>2]&16)){k=0;l=j;return k|0}b[a+26>>1]=rf(i,16)|0;k=0;l=j;return k|0}function Jf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;c[a>>2]=b;if(d>>>0>=e>>>0&(e|0)!=0){h=(d>>>0)/(e>>>0)|0;i=h+b|0;c[a>>2]=i;d=d-(N(h,e)|0)|0}else i=b;a:do if((e|0)>=16e3){if((e|0)<32e3){if((e|0)<22050){switch(e|0){case 16e3:break;default:{f=4;break a}}d=d*22050|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 22050:{d=d*16e3|0;b=a+4|0;c[b>>2]=d;break a}case 24e3:{d=d*14700|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}if((e|0)<48e3)if((e|0)<44100){switch(e|0){case 32e3:break;default:{f=4;break a}}d=d*11025|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 44100:break;default:{f=4;break a}}d=d*8e3|0;b=a+4|0;c[b>>2]=d;break}else if((e|0)<3528e5){switch(e|0){case 48e3:break;default:{f=4;break a}}d=d*7350|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 3528e5:break;default:{f=4;break a}}b=a+4|0;c[b>>2]=d;break}}else{if((e|0)<8e3){switch(e|0){case 1:case 0:break;case 1e3:{d=d*352800|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}c[a+4>>2]=0;return}if((e|0)<11025){switch(e|0){case 8e3:break;default:{f=4;break a}}d=d*44100|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 11025:{d=d*32e3|0;b=a+4|0;c[b>>2]=d;break a}case 12e3:{d=d*29400|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}while(0);if((f|0)==4){b=d;f=e;while(1){b=(b>>>0)%(f>>>0)|0;if(!b)break;else{h=f;f=b;b=h}}g=(d>>>0)/(f>>>0)|0;h=(e>>>0)/(f>>>0)|0;if(f>>>0>e>>>0)f=3528e5;else{d=3528e5;f=h;while(1){d=(d>>>0)%(f>>>0)|0;if(!d)break;else{e=f;f=d;d=e}}}d=3528e5/(f>>>0)|0;b=(h>>>0)/(f>>>0)|0;if(f>>>0>h>>>0)Wa(116030,116041,144,116049);do if(b>>>0>=d>>>0)if(b>>>0>>0){h=(g>>>0)/(b>>>0)|0;d=(((N(g-(N(h,b)|0)|0,d)|0)>>>0)/(b>>>0)|0)+(N(h,d)|0)|0;break}else{d=((N(d,g)|0)>>>0)/(b>>>0)|0;break}else{h=(d>>>0)/(b>>>0)|0;d=(((N(d-(N(h,b)|0)|0,g)|0)>>>0)/(b>>>0)|0)+(N(h,g)|0)|0}while(0);b=a+4|0;c[b>>2]=d}if(d>>>0<=352799999)return;h=(d>>>0)/3528e5|0;c[a>>2]=i+h;c[b>>2]=d-(N(h,3528e5)|0);return}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=v+48|0;i=v;t=a+28|0;s=t;r=c[s>>2]|0;s=c[s+4>>2]|0;o=c[b+28>>2]|0;d=o>>>7&1;o=(c[b>>2]|0)==3?((o&4096|0)==0?144:72):144;if(!(Hf(a)|0)){k=i+20|0;n=b+20|0;q=a+20|0;p=4-(d<<2)|0;h=d^1;d=0;do{e=j;f=a;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=i;f=b;g=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if(((If(i,j)|0)==0?(c[i>>2]|0)==(c[b>>2]|0):0)?(c[k>>2]|0)==(c[n>>2]|0):0){d=pf(t)|0;g=(c[b>>2]|0)==1;g=((N(c[n>>2]|0,(g?p:h)+(d-(c[q>>2]|0))|0)|0)>>>0)/((g?48:o)>>>0)|0;d=(g>>>0)/1e3|0;if(g>>>0>=8e3){u=8;break}}qf(t,8)}while((Hf(a)|0)==0);u=t;c[u>>2]=r;c[u+4>>2]=s;if(d>>>0>=8?!(d>>>0>640&(c[b>>2]|0)==3):0){c[a+16>>2]=d*1e3;u=0;l=v;return u|0}}else{u=t;c[u>>2]=r;c[u+4>>2]=s}c[a+60>>2]=257;u=-1;l=v;return u|0}function Lf(a){a=a|0;var b=0;iX(a|0,0,1024)|0;b=0;do{c[a+1536+(b<<5)>>2]=0;c[a+1024+(b<<5)>>2]=0;c[a+1536+(b<<5)+4>>2]=0;c[a+1024+(b<<5)+4>>2]=0;c[a+1536+(b<<5)+8>>2]=0;c[a+1024+(b<<5)+8>>2]=0;c[a+1536+(b<<5)+12>>2]=0;c[a+1024+(b<<5)+12>>2]=0;c[a+1536+(b<<5)+16>>2]=0;c[a+1024+(b<<5)+16>>2]=0;c[a+1536+(b<<5)+20>>2]=0;c[a+1024+(b<<5)+20>>2]=0;c[a+1536+(b<<5)+24>>2]=0;c[a+1024+(b<<5)+24>>2]=0;c[a+1536+(b<<5)+28>>2]=0;c[a+1024+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);iX(a+2048|0,0,1024)|0;b=0;do{c[a+3584+(b<<5)>>2]=0;c[a+3072+(b<<5)>>2]=0;c[a+3584+(b<<5)+4>>2]=0;c[a+3072+(b<<5)+4>>2]=0;c[a+3584+(b<<5)+8>>2]=0;c[a+3072+(b<<5)+8>>2]=0;c[a+3584+(b<<5)+12>>2]=0;c[a+3072+(b<<5)+12>>2]=0;c[a+3584+(b<<5)+16>>2]=0;c[a+3072+(b<<5)+16>>2]=0;c[a+3584+(b<<5)+20>>2]=0;c[a+3072+(b<<5)+20>>2]=0;c[a+3584+(b<<5)+24>>2]=0;c[a+3072+(b<<5)+24>>2]=0;c[a+3584+(b<<5)+28>>2]=0;c[a+3072+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);return}function Mf(a){a=a|0;var b=0;iX(a+48|0,0,9216)|0;a=c[a+9264>>2]|0;if(!a)return;iX(a|0,0,2304)|0;b=0;do{c[a+2304+(b<<2)>>2]=0;c[a+2376+(b<<2)>>2]=0;c[a+2448+(b<<2)>>2]=0;c[a+2520+(b<<2)>>2]=0;c[a+2592+(b<<2)>>2]=0;c[a+2664+(b<<2)>>2]=0;c[a+2736+(b<<2)>>2]=0;c[a+2808+(b<<2)>>2]=0;c[a+2880+(b<<2)>>2]=0;c[a+2952+(b<<2)>>2]=0;c[a+3024+(b<<2)>>2]=0;c[a+3096+(b<<2)>>2]=0;c[a+3168+(b<<2)>>2]=0;c[a+3240+(b<<2)>>2]=0;c[a+3312+(b<<2)>>2]=0;c[a+3384+(b<<2)>>2]=0;c[a+3456+(b<<2)>>2]=0;c[a+3528+(b<<2)>>2]=0;c[a+3600+(b<<2)>>2]=0;c[a+3672+(b<<2)>>2]=0;c[a+3744+(b<<2)>>2]=0;c[a+3816+(b<<2)>>2]=0;c[a+3888+(b<<2)>>2]=0;c[a+3960+(b<<2)>>2]=0;c[a+4032+(b<<2)>>2]=0;c[a+4104+(b<<2)>>2]=0;c[a+4176+(b<<2)>>2]=0;c[a+4248+(b<<2)>>2]=0;c[a+4320+(b<<2)>>2]=0;c[a+4392+(b<<2)>>2]=0;c[a+4464+(b<<2)>>2]=0;c[a+4536+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=18);return}function Nf(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=1;return 0}function Of(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=w+8|0;t=w;q=w+4|0;c[s>>2]=g;c[t>>2]=h;u=c[a>>2]|0;r=u+84|0;j=u+88|0;k=u+48|0;n=u+96|0;o=u+44|0;p=u+4|0;i=0;g=c[r>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g){if(!(c[n>>2]|0)){v=5;break}}else g=0;while(1){if((g|0)>=(h|0)){g=-100;break a}x=j;x=cX(c[x>>2]|0,c[x+4>>2]|0,8)|0;h=y;x=x|(d[(c[s>>2]|0)+g>>0]|0);z=j;c[z>>2]=x;c[z+4>>2]=h;h=Od[c[k>>2]&63](x,h,u,n,q)|0;if(h|0)break;g=g+1|0;h=c[t>>2]|0}if((h|0)<1){g=-100;break}z=j;c[z>>2]=0;c[z+4>>2]=0;g=g+1-(c[o>>2]|0)|0;c[r>>2]=h;if(c[q>>2]|0?((c[p>>2]|0)+g|0)>=1:0){i=1;break}g=h+g|0;c[r>>2]=g;i=1;h=c[t>>2]|0}if((v|0)==5)c[r>>2]=0;if((Sf(u,g,s,t)|0)>=0){c[e>>2]=c[s>>2];c[f>>2]=c[t>>2];h=c[u+100>>2]|0;if(h|0)c[b+16>>2]=h;if(i){if((c[b+16>>2]|0)!=86018){c[b+344>>2]=c[u+56>>2];c[b+348>>2]=c[u+52>>2];v=u+72|0;x=c[v+4>>2]|0;z=b+376|0;c[z>>2]=c[v>>2];c[z+4>>2]=x;c[a+304>>2]=c[u+64>>2];c[b+392>>2]=c[u+80>>2]}x=c[u+60>>2]|0;z=b+40|0;c[z>>2]=x;c[z+4>>2]=((x|0)<0)<<31>>31}}else{z=c[r>>2]|0;g=c[t>>2]|0;c[r>>2]=z-((z|0)>(g|0)?g:z);c[e>>2]=0;c[f>>2]=0}l=w;return g|0}function Pf(a){a=a|0;Qf(c[a>>2]|0);return}function Qf(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;Rf(c);return}function Rf(a){a=a|0;aT(a);return}function Sf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;i=r+8|0;j=r;p=b+24|0;k=b+28|0;q=b+4|0;h=c[p>>2]|0;while(1){if((h|0)<=0)break;o=c[b>>2]|0;s=c[k>>2]|0;c[k>>2]=s+1;s=a[o+s>>0]|0;h=c[q>>2]|0;c[q>>2]=h+1;a[o+h>>0]=s;h=(c[p>>2]|0)+-1|0;c[p>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[q>>2]|0;o=b+8|0;c[o>>2]=h;a:do if((e|0)==-100){e=Tf(c[b>>2]|0,b+12|0,(c[g>>2]|0)+64+h|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+64+(c[q>>2]|0);Uf(0,16,116576,j);e=-12;h=0}else{c[b>>2]=e;gX(e+(c[q>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[q>>2]|0)+(c[g>>2]|0)|0}c[q>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=116618;c[i+4>>2]=116642;c[i+8>>2]=356;Uf(0,0,159675,i);Ub()}h=h+e|0;c[k>>2]=h;c[g>>2]=h;h=c[q>>2]|0;if(h|0){i=e+64|0;h=Tf(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[n>>2]=i+(c[q>>2]|0);Uf(0,16,116576,n);c[q>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-64){gX(h+(c[q>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[q>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}q=(c[b>>2]|0)+((c[o>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[q>>0]|0);f=i;f=cX(c[f>>2]|0,c[f+4>>2]|0,8)|0;s=i;c[s>>2]=f|(d[q>>0]|0);c[s+4>>2]=y;c[p>>2]=(c[p>>2]|0)+1;e=e+1|0}}while(0);l=r;return e|0}function Tf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[b>>2]|0)>>>0>>0){f=2147483647+-32|0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;e=f>>>0>e>>>0?e:f;if(f>>>0>>0){e=0;a=0}else{a=$f(a,e)|0;e=(a|0)==0?0:e}c[b>>2]=e}return a|0}function Uf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;Vf(a,b,d,f);l=i;return}function Vf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(7)Wf(a,b,c,d);return}function Wf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+5168|0;if((l|0)>=(m|0))W(5168);p=r+24|0;o=r+16|0;h=r;q=r+40|0;k=r+4136|0;n=r+32|0;i=(d|0)>-1;j=i?d&255:d;i=i?d>>>8&255:0;if((j|0)<=32){kX(182872)|0;Xf(b,j,e,f,q,88952,n);e=q+1024|0;s=c[e>>2]|0;f=q+2048|0;b=c[f>>2]|0;g=q+3072|0;d=c[g>>2]|0;c[h>>2]=c[q>>2];c[h+4>>2]=s;c[h+8>>2]=b;c[h+12>>2]=d;KU(k,1024,116662,h)|0;d=c[45725]|0;if(!d){b=(rV(2)|0)!=0;b=b?1:-1;c[45725]=b}else b=d;if((!((c[22238]|0)==0|0==0)?(s=(HT(k,257932)|0)!=0,!(s|(a[k>>0]|0)==0)):0)?(a[k+((BU(k)|0)+-1)>>0]|0)!=13:0){d=(c[45726]|0)+1|0;c[45726]=d;if((b|0)==1){s=c[27018]|0;c[o>>2]=d;gV(s,116671,o)|0}}else{d=c[45726]|0;if((d|0)>0){s=c[27018]|0;c[p>>2]=d;gV(s,116707,p)|0;c[45726]=0}LU(257932,k)|0;Yf(c[q>>2]|0);Zf(c[n>>2]|0,0,c[q>>2]|0);Yf(c[e>>2]|0);Zf(c[n+4>>2]|0,0,c[e>>2]|0);Yf(c[f>>2]|0);s=j>>3;s=(s|0)>0?((s|0)<7?s:7):0;Zf(s,i,c[f>>2]|0);Yf(c[g>>2]|0);Zf(s,i,c[g>>2]|0)}_f(q+3072|0,0)|0;lX(182872)|0}l=r;return}function Xf(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=y+24|0;v=y+16|0;u=y+8|0;s=y;if(!b)n=0;else n=c[b>>2]|0;cg(g,0,1);r=g+1024|0;cg(r,0,1);j=g+2048|0;cg(j,0,1);x=g+3072|0;cg(x,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((n|0)!=0&(c[h>>2]|0)!=0){o=c[n+20>>2]|0;do if(((o|0)!=0?(p=c[b+o>>2]|0,(p|0)!=0):0)?(q=c[p>>2]|0,(q|0)!=0):0){c[s>>2]=Kd[c[q+4>>2]&31](p)|0;c[s+4>>2]=p;dg(g,116898,s);if(k){c[i>>2]=eg(p)|0;w=11;break}else{c[v>>2]=Kd[c[n+4>>2]&31](b)|0;c[v+4>>2]=b;dg(r,116898,v);break}}else w=11;while(0);if((w|0)==11?(c[u>>2]=Kd[c[n+4>>2]&31](b)|0,c[u+4>>2]=b,dg(r,116898,u),k):0)c[i+4>>2]=eg(b)|0;if(0){c[t>>2]=fg(d)|0;dg(j,116909,t)}}gg(x,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[r>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[x>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[x>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}l=y;return}function Yf(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function Zf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[22239]|0;if((f|0)<0){bg();f=c[22239]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[27018]|0;b=c[88960+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;gV(j,116743,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[27018]|0;c[i>>2]=(c[88960+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;gV(j,116759,i)|0;break}f=c[27018]|0;if((g|0)==256){b=c[88960+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;gV(f,116786,j)|0;break}else{SU(e,f)|0;break}}while(0);l=k;return}function _f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){Qf(a);d=0}else d=0;else{if(!d){e=ag(f)|0;if(!e){d=-12;e=0}else{gX(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=$f(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function $f(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0>>0)a=0;else a=cT(a,((b|0)==0&1)+b|0)|0;return a|0}function ag(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=ag(1)|0;c[b>>2]=a;break}if(!(hT(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);l=d;return a|0}function bg(){var a=0,b=0,d=0;a=gc(116813)|0;do if((gc(116818)|0)==0?(gc(116827)|0)==0:0){if(a|0?rV(2)|0:0){b=1;break}b=(gc(116848)|0)!=0&1}else b=0;while(0);c[22239]=b;if(!(gc(116867)|0)){if(a|0?hV(a,116889)|0:0)d=9}else d=9;if((d|0)==9)c[22239]=b<<8;return}function cg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0>>0)hg(b,d+-1|0)|0;return}function dg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=LT(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(hg(a,e)|0){j=7;break}}if((j|0)==7)ig(a,e);l=k;return}function eg(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Kd[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function fg(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=116954;break}case 7:{a=164696;break}case 6:{a=116946;break}case 5:{a=116941;break}case 4:{a=116933;break}case 3:{a=116927;break}case 2:{a=116921;break}case 1:{a=116915;break}default:a=262540}return a|0}function gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=k;h=a+8|0;i=a+4|0;while(1){f=c[h>>2]|0;e=c[i>>2]|0;f=f-(e>>>0>f>>>0?f:e)|0;if(!f)e=0;else e=(c[a>>2]|0)+e|0;c[g>>2]=c[d>>2];e=LT(e,f,b,g)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(hg(a,e)|0){j=7;break}}if((j|0)==7)ig(a,e);l=k;return}function hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(jg(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;h=i+1+(h>>>0>b>>>0?b:h)|0;b=d>>>0>e>>>1>>>0?e:d<<1;b=b>>>0>>0?(e>>>0>h>>>0?h:e):b;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;e=$f(d,b)|0;if(!e)b=-12;else{if(!d)gX(e|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=e;c[f>>2]=b;b=0}}else b=-1094995529;else b=-5;return b|0}function ig(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function jg(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function kg(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=i+92|0;h=i+72|0;k=i;b=lg(a,b)|0;a=k;c[a>>2]=b;c[a+4>>2]=y;mg(j,k+1|0);a=ng(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[116960+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}l=i;return a|0}function lg(a,b){a=a|0;b=b|0;a=eX(a|0)|0;b=eX(b|0)|0;y=a;return b|0}function mg(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return} +function gk(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=c[f+21796>>2]|0;o=d+27016|0;m=c[o>>2]|0;h=u-(m<>2])|0;j=u+-1|0;n=d+26376|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=j+((k|0)==(l|0)?0:m)|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26372|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26368|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29940+((n&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((N(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29940+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((N(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25972|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26392|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28212>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function hk(f,g,h,i,j,k,n,o,p){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Sa=l;l=l+32|0;if((l|0)>=(m|0))W(32);Qa=Sa+16|0;Ma=Sa;Na=f+27016|0;Da=(N(c[Na>>2]|0,i)|0)+h|0;Ea=f+24364|0;Fa=c[(c[Ea>>2]|0)+(Da<<2)>>2]|0;Ga=(Fa>>>6&2^2)+2|0;Ha=f+28216|0;Ka=c[Ha>>2]|0;Ia=(c[Ka+12>>2]|0)!=0;Ka=(N(c[Ka+1184>>2]|0,-6)|0)+48|0;Ja=(c[g+872>>2]|0)+52+Ka|0;Ka=(c[g+876>>2]|0)+52+Ka|0;La=f+26376|0;Ca=g+21740|0;if((c[La>>2]|0)!=0?(Ba=c[Ca>>2]|0,!((Ba|0)==0|((Ba^Fa)&128|0)==0)):0){a:do if(!(Fa&7)){x=c[g+21828>>2]|0;t=i&1;h=f+28212|0;u=f+25972|0;v=f+26392|0;w=(x|0)!=0;s=0;while(1){if((s|0)==8){q=x;break a}r=w?s>>2:s&1;q=c[g+21720+(r<<2)>>2]|0;r=c[g+21740+(r<<2)>>2]|0;if(!(r&7)){if((r&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)q=d[(d[134457+(x<<4)+(t<<3)+s>>0]|0)+((c[u>>2]|0)+(q*48|0))>>0]|0;else q=((w?s&2:t)|0?32768:8192)&e[(c[v>>2]|0)+(q<<1)>>1];q=q|d[(s>>>1<<3)+12+(g+27824)>>0]|0?2:1}else q=4;b[Ma+(s<<1)>>1]=q;s=s+1|0}}else{h=Ma;c[h>>2]=262148;c[h+4>>2]=262148;h=Ma+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28212|0;q=c[g+21828>>2]|0}while(0);A=c[f+24340>>2]|0;Aa=a[A+Da>>0]|0;z=a[A+(c[g+21720>>2]|0)>>0]|0;A=a[A+(c[g+21724>>2]|0)>>0]|0;v=Aa+1|0;Ba=c[h>>2]|0;y=(d[Ba+548+Aa>>0]|0)+1|0;Aa=(d[Ba+636+Aa>>0]|0)+1|0;h=v+z>>1;w=(y+(d[Ba+548+z>>0]|0)|0)>>>1;z=(Aa+(d[Ba+636+z>>0]|0)|0)>>>1;v=v+A>>1;y=(y+(d[Ba+548+A>>0]|0)|0)>>>1;A=(Aa+(d[Ba+636+A>>0]|0)|0)>>>1;do if(!q){u=o<<1;r=h+Ja|0;s=d[133677+r>>0]|0;Ba=h+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](j,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](j,u,s,h,Qa);break}}while(0);r=j+o|0;x=Ma+2|0;s=v+Ja|0;t=d[133677+s>>0]|0;Ba=v+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);if(Ia){u=p<<1;r=w+Ja|0;s=d[133677+r>>0]|0;h=w+Ka|0;q=d[133521+h>>0]|0;h=r>>>0<68|h>>>0<68;if((c[(c[Ha>>2]|0)+12>>2]|0)==3){do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](k,u,s,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133677+s>>0]|0;Ba=y+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133677+r>>0]|0;Ba=z+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](n,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133677+s>>0]|0;Ba=A+Ka|0;q=d[133521+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](r,u,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,u,t,q,Qa);break}}else{do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](k,u,s,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133833+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(133833+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133677+s>>0]|0;Ba=y+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,u,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133677+r>>0]|0;Ba=z+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,u,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(133833+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133677+s>>0]|0;Ba=A+Ka|0;q=d[133521+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,u,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,u,t,q,Qa);break}}}}else{r=h+Ja|0;s=d[133677+r>>0]|0;Ba=h+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](j,o,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](j,o,s,h,Qa);break}}while(0);r=j+(o<<3)|0;x=Ma+8|0;s=v+Ja|0;t=d[133677+s>>0]|0;Ba=v+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,o,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,o,t,h,Qa);break}}while(0);if(Ia){h=c[(c[Ha>>2]|0)+12>>2]|0;if((h|0)==3){r=w+Ja|0;s=d[133677+r>>0]|0;Ba=w+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](k,p,s,h,Qa);break}}while(0);u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133677+s>>0]|0;Ba=y+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](r,p,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133677+r>>0]|0;Ba=z+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+68>>2]&255](n,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(133833+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(133833+(r<<2))>>0]|0;Vd[c[f+56>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133677+s>>0]|0;Ba=A+Ka|0;q=d[133521+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+68>>2]&255](r,p,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[f+56>>2]&127](r,p,t,q,Qa);break}}r=(h|0)==2;s=w+Ja|0;t=d[133677+s>>0]|0;Ba=w+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](k,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](k,p,t,h,Qa);break}}while(0);if(r){u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133677+s>>0]|0;Ba=y+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133677+r>>0]|0;Ba=z+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133833+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133677+s>>0]|0;Ba=A+Ka|0;q=d[133521+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,q,Qa);break}}else{u=p<<2;r=k+u|0;s=y+Ja|0;t=d[133677+s>>0]|0;Ba=y+Ka|0;h=d[133521+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133677+r>>0]|0;Ba=z+Ka|0;h=d[133521+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Ud[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(133833+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(133833+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(133833+(r<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133677+s>>0]|0;Ba=A+Ka|0;q=d[133521+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Ud[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[f+80>>2]&127](r,p,t,q,Qa);break}}}}while(0);ga=1}else ga=0;ha=Da+-1|0;ia=g+21732|0;ja=Fa>>>3&7;ka=g+21856|0;la=Fa&16777216;ma=(Fa&7|0)==0;na=Ma+6|0;oa=Ma+4|0;pa=Ma+2|0;qa=f+24340|0;ra=f+25664|0;sa=g+852|0;ta=g+856|0;ua=Qa+1|0;va=Qa+2|0;wa=Qa+3|0;xa=f+52|0;ya=f+76|0;za=o<<2;Aa=f+48|0;Ba=f+72|0;I=(i&1|0)==0;J=Fa&128^128;K=o<<1;L=p<<1;M=f+28212|0;O=f+25972|0;P=f+26392|0;Q=g+27836|0;R=g+27837|0;S=Ma+2|0;T=Ma+4|0;U=Ma+6|0;V=g+27839|0;X=g+27838|0;Y=Ma+2|0;Z=Ma+4|0;_=Ma+6|0;$=Ma+6|0;aa=Ma+4|0;ba=Ma+2|0;ca=f+64|0;da=f+88|0;ea=f+60|0;fa=f+84|0;B=f+26380|0;C=g+21712|0;f=0;while(1){if((f|0)==2)break;i=(f|0)!=0;E=c[(c[Ha>>2]|0)+12>>2]|0;D=(E|0)==3;E=(E|0)==2;F=(f|0)==0;if(F)u=ha;else u=c[C>>2]|0;h=c[(F?Ca:ia)>>2]|0;H=a[134489+(f<<3)+ja>>0]|0;G=H&255;if(H<<24>>24==3)H=(c[ka>>2]&15|0)==0?1:4;else H=4;q=32>>>f|8;A=q&Fa;t=i^1;b:do if(!(ga&t|(h|0)==0)){r=c[La>>2]|0;if(!((h&J|0)==0|I&((f|0)==1&(r|0)!=0)^1)){w=Da-(c[Na>>2]<<1)|0;x=0;while(1){if((x|0)==2)break b;h=c[(c[Ea>>2]|0)+(w<<2)>>2]|0;c:do if(!((h|Fa)&7)){if((h&16777216|0)==0?1:(c[(c[M>>2]|0)+4>>2]|0)!=0){q=(c[O>>2]|0)+(w*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[Ma+(h<<1)>>1]=(a[q+h>>0]|a[h+12+(g+27824)>>0])<<24>>24?2:1;h=h+1|0}}h=b[(c[P>>2]|0)+(w<<1)>>1]|0;if(!(h&16384)){b[Ma>>1]=(a[Q>>0]|0)==0?1:2;if(!(a[R>>0]|0))q=1;else Ra=128}else{b[Ma>>1]=2;Ra=128}if((Ra|0)==128){Ra=0;q=2}b[S>>1]=q;if(h<<16>>16>=0){b[T>>1]=(a[X>>0]|0)==0?1:2;if(!(a[V>>0]|0))h=1;else Ra=132}else{b[T>>1]=2;Ra=132}if((Ra|0)==132){Ra=0;h=2}b[U>>1]=h}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611}while(0);r=c[qa>>2]|0;h=a[r+w>>0]|0;r=(a[r+Da>>0]|0)+1+(h<<24>>24)>>1;q=r+Ja|0;r=r+Ka|0;if(!(q>>>0<68|r>>>0<68)){h=d[133521+r>>0]|0;z=d[133677+q>>0]|0;y=j+(N(x,o)|0)|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(133833+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133833+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133833+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133833+(q<<2))>>0]|0;Vd[c[Aa>>2]&127](y,K,z,h,Qa);h=a[(c[qa>>2]|0)+w>>0]|0}z=c[M>>2]|0;u=h<<24>>24;h=(c[sa>>2]|0)+1+(d[z+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[z+636+u>>0]|0)>>1;do if(Ia){v=N(x,p)|0;r=k+v|0;s=h+Ja|0;t=d[133677+s>>0]|0;q=h+Ka|0;h=d[133521+q>>0]|0;q=s>>>0<68|q>>>0<68;if(D){if(!q){a[Qa>>0]=a[(b[Ma>>1]|0)+(133833+(s<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133833+(s<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133833+(s<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133833+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133521+h>>0]|0;y=d[133677+q>>0]|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(133833+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(133833+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(133833+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(133833+(q<<2))>>0]|0;Vd[c[Aa>>2]&127](n+v|0,L,y,z,Qa);break}else{if(!q){a[Qa>>0]=(d[(b[Ma>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(133833+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133521+h>>0]|0;y=d[133677+q>>0]|0;a[Qa>>0]=(d[(b[Ma>>1]|0)+(133833+(q<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(133833+(q<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(133833+(q<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(133833+(q<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+v|0,L,y,z,Qa);break}}while(0);w=(c[Na>>2]|0)+w|0;x=x+1|0}}s=h|Fa;d:do if(!(s&7)){if(!((r|0)==0|t)?((h^Fa)&128|0)!=0:0){s=Ma;c[s>>2]=65537;c[s+4>>2]=65537;s=0}else if((A|0)==0|(h&q|0)==0)s=1;else{s=(jk(g,12,i?4:11,Ga)|0)&65535;b[$>>1]=s;b[aa>>1]=s;b[ba>>1]=s;b[Ma>>1]=s;s=0}t=i?8:1;r=0;while(1){if((r|0)==4)break;h=(F?r<<3:r)+12|0;q=h-t|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(s){h=(jk(g,h,q,Ga)|0)&65535;Ra=166}}else{h=2;Ra=166}if((Ra|0)==166){Ra=0;b[Ma+(r<<1)>>1]=h}r=r+1|0}z=b[Ma>>1]|0;h=b[ba>>1]|0;q=b[aa>>1]|0;r=b[$>>1]|0}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611;do if(s&128|0)if(!r)if(F&(c[B>>2]|0)!=3)break;else{z=3;h=3;q=3;r=3;break d}else if(F)break;else{z=3;h=3;q=3;r=3;break d}while(0);z=Ma;c[z>>2]=262148;c[z+4>>2]=262148;z=4;h=4;q=4;r=4}while(0);y=z<<16>>16;x=h<<16>>16;w=q<<16>>16;v=r<<16>>16;do if((x+w+y|0)!=(0-v|0)){s=c[qa>>2]|0;u=a[s+u>>0]|0;s=(a[s+Da>>0]|0)+1+u>>1;h=c[M>>2]|0;t=(c[sa>>2]|0)+1+(d[h+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[h+636+u>>0]|0)>>1;h=s+Ja|0;q=d[133677+h>>0]|0;s=s+Ka|0;r=d[133521+s>>0]|0;s=h>>>0<68|s>>>0<68;if(F){do if(!s)if(z<<16>>16>3){Ud[c[ca>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[133833+(h<<2)+y>>0]|0;a[ua>>0]=a[133833+(h<<2)+x>>0]|0;a[va>>0]=a[133833+(h<<2)+w>>0]|0;a[wa>>0]=a[133833+(h<<2)+v>>0]|0;Vd[c[xa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133677+r>>0]|0;q=t+Ka|0;h=d[133521+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Ud[c[ca>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[133833+(r<<2)+y>>0]|0;a[ua>>0]=a[133833+(r<<2)+x>>0]|0;a[va>>0]=a[133833+(r<<2)+w>>0]|0;a[wa>>0]=a[133833+(r<<2)+v>>0]|0;Vd[c[xa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133677+q>>0]|0;u=u+Ka|0;h=d[133521+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[ca>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[133833+(q<<2)+y>>0]|0;a[ua>>0]=a[133833+(q<<2)+x>>0]|0;a[va>>0]=a[133833+(q<<2)+w>>0]|0;a[wa>>0]=a[133833+(q<<2)+v>>0]|0;Vd[c[xa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Ud[c[da>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[133833+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[133833+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[133833+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[133833+(r<<2)+v>>0]|0)+1;Vd[c[ya>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133677+q>>0]|0;u=u+Ka|0;h=d[133521+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[da>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[133833+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[133833+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[133833+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[133833+(q<<2)+v>>0]|0)+1;Vd[c[ya>>2]&127](n,p,r,h,Qa);break}}}else{do if(!s)if(z<<16>>16>3){Ud[c[ea>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[133833+(h<<2)+y>>0]|0;a[ua>>0]=a[133833+(h<<2)+x>>0]|0;a[va>>0]=a[133833+(h<<2)+w>>0]|0;a[wa>>0]=a[133833+(h<<2)+v>>0]|0;Vd[c[Aa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133677+r>>0]|0;q=t+Ka|0;h=d[133521+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Ud[c[ea>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[133833+(r<<2)+y>>0]|0;a[ua>>0]=a[133833+(r<<2)+x>>0]|0;a[va>>0]=a[133833+(r<<2)+w>>0]|0;a[wa>>0]=a[133833+(r<<2)+v>>0]|0;Vd[c[Aa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133677+q>>0]|0;u=u+Ka|0;h=d[133521+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[ea>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[133833+(q<<2)+y>>0]|0;a[ua>>0]=a[133833+(q<<2)+x>>0]|0;a[va>>0]=a[133833+(q<<2)+w>>0]|0;a[wa>>0]=a[133833+(q<<2)+v>>0]|0;Vd[c[Aa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Ud[c[fa>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[133833+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[133833+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[133833+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[133833+(r<<2)+v>>0]|0)+1;Vd[c[Ba>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133677+q>>0]|0;u=u+Ka|0;h=d[133521+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Ud[c[fa>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[133833+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[133833+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[133833+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[133833+(q<<2)+v>>0]|0)+1;Vd[c[Ba>>2]&127](n,p,r,h,Qa);break}}}}while(0)}while(0);z=F|E^1;y=(A|0)==0;x=i?8:1;w=1;while(1){if((w|0)>=(H|0))break;t=(la&w<<24|0)==0;do if(!(z&(t^1))){if(ma){if(!(w&G))if(y)r=1;else{r=(N(w,x)|0)+12|0;r=(jk(g,r,r-x|0,Ga)|0)&65535;b[na>>1]=r;b[oa>>1]=r;b[pa>>1]=r;b[Ma>>1]=r;r=0}else{r=Ma;c[r>>2]=0;c[r+4>>2]=0;r=0}s=0;while(1){if((s|0)==4)break;h=(F?w:s)+12+((F?s:w)<<3)|0;q=h-x|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(r){h=(jk(g,h,q,Ga)|0)&65535;Ra=230}}else{h=2;Ra=230}if((Ra|0)==230){Ra=0;b[Ma+(s<<1)>>1]=h}s=s+1|0}h=b[Ma>>1]|0;q=b[pa>>1]|0;r=b[oa>>1]|0;s=b[na>>1]|0;if(((q<<16>>16)+(h<<16>>16)+(r<<16>>16)|0)==(0-(s<<16>>16)|0))break;else v=s}else{h=Ma;c[h>>2]=196611;c[h+4>>2]=196611;h=3;q=3;r=3;v=3}s=a[(c[qa>>2]|0)+Da>>0]|0;if(F){u=w<<2;t=Ja+s|0;s=Ka+s|0;if(!(t>>>0<68|s>>>0<68)){i=d[133521+s>>0]|0;A=d[133677+t>>0]|0;s=j+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(t<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(t<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(t<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(t<<2))>>0]|0;Vd[c[xa>>2]&127](s,o,A,i,Qa)}if(!Ia)break;if(D){t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(s<<2))>>0]|0;Vd[c[xa>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(s<<2))>>0]|0;Vd[c[xa>>2]&127](u,p,A,i,Qa);break}if(w&1|0)break;u=w<<1;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[ya>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[ya>>2]&127](u,p,A,i,Qa);break}if(E){if(t?(Oa=Ja+s|0,Pa=Ka+s|0,!(Oa>>>0<68|Pa>>>0<68)):0){i=d[133521+Pa>>0]|0;A=d[133677+Oa>>0]|0;u=j+(N(za,w)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(Oa<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(Oa<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(Oa<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(Oa<<2))>>0]|0;Vd[c[Aa>>2]&127](u,o,A,i,Qa)}if(!Ia)break;u=N(w<<2,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+u|0,p,A,i,Qa);break}t=w<<2;u=Ja+s|0;s=Ka+s|0;if(!(u>>>0<68|s>>>0<68)){i=d[133521+s>>0]|0;A=d[133677+u>>0]|0;s=j+(N(t,o)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(u<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(u<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(u<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(u<<2))>>0]|0;Vd[c[Aa>>2]&127](s,o,A,i,Qa)}if(Ia){if(D){u=N(t,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(133833+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(133833+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(133833+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(133833+(s<<2))>>0]|0;Vd[c[Aa>>2]&127](n+u|0,p,A,i,Qa);break}if(!(w&1)){u=N(w<<1,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133521+t>>0]|0;A=d[133677+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(133833+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(133833+(s<<2))>>0]|0)+1;Vd[c[Ba>>2]&127](n+u|0,p,A,i,Qa)}}}}while(0);w=w+1|0}f=f+1|0}l=Sa;return}function ik(e,f,g,h,i,j,k,n,o){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;va=l;l=l+80|0;if((l|0)>=(m|0))W(80);ta=va+64|0;pa=va;q=c[e+96>>2]|0;do if((q|0)!=0?(p=c[e+28212>>2]|0,(c[p+724>>2]|0)==0):0){ga=c[e+25664>>2]|0;sa=c[e+28216>>2]|0;w=c[sa+12>>2]|0;ma=(w|0)!=0;oa=(w|0)==3;w=(w|0)==2;Y=c[f+21796>>2]|0;h=c[f+21740>>2]|0;ka=c[f+21732>>2]|0;sa=(N(c[sa+1184>>2]|0,-6)|0)+48|0;ra=(c[f+872>>2]|0)+52+sa|0;sa=(c[f+876>>2]|0)+52+sa|0;t=c[(c[e+24364>>2]|0)+(Y<<2)>>2]|0;la=c[e+24340>>2]|0;na=a[la+Y>>0]|0;Y=a[la+(Y+-1)>>0]|0;la=a[la+(c[f+21712>>2]|0)>>0]|0;qa=d[p+548+na>>0]|0;ja=na+1|0;v=ja+Y>>1;ja=ja+la>>1;g=qa+1|0;Y=(g+(d[p+548+Y>>0]|0)|0)>>>1;la=(g+(d[p+548+la>>0]|0)|0)>>>1;if(t&7|0){J=(c[e+26380>>2]|0)!=3?114142:114150;s=(h|0)!=0;if(s?(r=v+ra|0,u=v+sa|0,!(r>>>0<68|u>>>0<68)):0)Ud[c[e+64>>2]&255](i,n,d[133677+r>>0]|0,d[133521+u>>0]|0);f=(t&16777216|0)!=0;q=ra+na|0;r=133677+q|0;p=sa+na|0;h=133521+p|0;p=q>>>0<68|p>>>0<68;if(f){if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;iX(ta|0,a[133833+(q<<2)+3>>0]|0,4)|0;Vd[c[e+52>>2]&127](i+(8<>0]|0,pa=ja+sa|0,z=d[133521+pa>>0]|0,!(x>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](i,n,y,z);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(x<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(133833+(x<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(133833+(x<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(133833+(x<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,y,z,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;iX(ta|0,a[133833+(q<<2)+3>>0]|0,4)|0;Vd[c[e+48>>2]&127](i+(n<<3)|0,n,na,pa,ta)}}else{if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ha=a[133833+(q<<2)+3>>0]|0;ia=e+52|0;iX(ta|0,ha|0,4)|0;Vd[c[ia>>2]&127](i+(4<>2]&127](i+(8<>2]&127](i+(12<>0]|0,pa=ja+sa|0,C=d[133521+pa>>0]|0,!(A>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](i,n,B,C);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(A<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(133833+(A<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(133833+(A<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(133833+(A<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,B,C,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ia=a[133833+(q<<2)+3>>0]|0;ja=e+48|0;iX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n<<2)|0,n,na,pa,ta);iX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n<<3)|0,n,na,pa,ta);iX(ta|0,ia|0,4)|0;Vd[c[ja>>2]&127](i+(n*12|0)|0,n,na,pa,ta)}}if(!ma)break;if(oa){if(s?(D=Y+ra|0,E=Y+sa|0,!(D>>>0<68|E>>>0<68)):0){o=d[133521+E>>0]|0;pa=d[133677+D>>0]|0;oa=e+64|0;Ud[c[oa>>2]&255](j,n,pa,o);Ud[c[oa>>2]&255](k,n,pa,o)}if(f){g=8<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;oa=a[133833+(f<<2)+3>>0]|0;pa=e+52|0;iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,n,qa,o,ta);iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,n,qa,o,ta)}do if(ka|0?(K=la+ra|0,L=d[133677+K>>0]|0,sa=la+sa|0,M=d[133521+sa>>0]|0,!(K>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Ud[c[sa>>2]&255](j,n,L,M);Ud[c[sa>>2]&255](k,n,L,M);break}else{na=a[(g<<16>>16)+(133833+(K<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(133833+(K<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(133833+(K<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(133833+(K<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Vd[c[sa>>2]&127](j,n,L,M,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Vd[c[sa>>2]&127](k,n,L,M,ta);break}}while(0);g=n<<3;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;o=a[133833+(f<<2)+3>>0]|0;e=e+48|0;iX(ta|0,o|0,4)|0;Vd[c[e>>2]&127](j+g|0,n,ra,sa,ta);iX(ta|0,o|0,4)|0;Vd[c[e>>2]&127](k+g|0,n,ra,sa,ta);break}else{g=4<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;i=a[133833+(f<<2)+3>>0]|0;oa=e+52|0;iX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](j+g|0,n,qa,o,ta);iX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+g|0,n,qa,o,ta);pa=8<>2]&127](j+pa|0,n,qa,o,ta);iX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+pa|0,n,qa,o,ta);pa=12<>2]&127](j+pa|0,n,qa,o,ta);iX(ta|0,i|0,4)|0;Vd[c[oa>>2]&127](k+pa|0,n,qa,o,ta)}do if(ka|0?(O=la+ra|0,P=d[133677+O>>0]|0,sa=la+sa|0,Q=d[133521+sa>>0]|0,!(O>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Ud[c[sa>>2]&255](j,n,P,Q);Ud[c[sa>>2]&255](k,n,P,Q);break}else{na=a[(g<<16>>16)+(133833+(O<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(133833+(O<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(133833+(O<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(133833+(O<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Vd[c[sa>>2]&127](j,n,P,Q,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Vd[c[sa>>2]&127](k,n,P,Q,ta);break}}while(0);g=n<<2;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;qa=a[133833+(f<<2)+3>>0]|0;o=e+48|0;iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+g|0,n,ra,sa,ta);iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+g|0,n,ra,sa,ta);e=n<<3;iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+e|0,n,ra,sa,ta);iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+e|0,n,ra,sa,ta);e=n*12|0;iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](j+e|0,n,ra,sa,ta);iX(ta|0,qa|0,4)|0;Vd[c[o>>2]&127](k+e|0,n,ra,sa,ta);break}}if(w){if(s?(F=Y+ra|0,G=Y+sa|0,!(F>>>0<68|G>>>0<68)):0){n=d[133521+G>>0]|0;pa=d[133677+F>>0]|0;oa=e+88|0;Ud[c[oa>>2]&255](j,o,pa,n);Ud[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[133833+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,o,qa,n,ta);iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(R=la+ra|0,S=d[133677+R>>0]|0,n=la+sa|0,T=d[133521+n>>0]|0,!(R>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Ud[c[n>>2]&255](j,o,S,T);Ud[c[n>>2]&255](k,o,S,T);break}else{na=(d[(g<<16>>16)+(133833+(R<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(133833+(R<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(133833+(R<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(133833+(R<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Vd[c[n>>2]&127](j,o,S,T,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Vd[c[n>>2]&127](k,o,S,T,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;qa=(d[133833+(f<<2)+3>>0]|0)+1&255;ra=e+72|0;iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+g|0,o,sa,n,ta);iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+g|0,o,sa,n,ta);e=o<<3;iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+e|0,o,sa,n,ta);iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+e|0,o,sa,n,ta);e=o*12|0;iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](j+e|0,o,sa,n,ta);iX(ta|0,qa|0,4)|0;Vd[c[ra>>2]&127](k+e|0,o,sa,n,ta);break}else{if(s?(H=Y+ra|0,I=Y+sa|0,!(H>>>0<68|I>>>0<68)):0){n=d[133521+I>>0]|0;pa=d[133677+H>>0]|0;oa=e+88|0;Ud[c[oa>>2]&255](j,o,pa,n);Ud[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[133833+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](j+g|0,o,qa,n,ta);iX(ta|0,oa|0,4)|0;Vd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(U=la+ra|0,V=d[133677+U>>0]|0,n=la+sa|0,X=d[133521+n>>0]|0,!(U>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Ud[c[n>>2]&255](j,o,V,X);Ud[c[n>>2]&255](k,o,V,X);break}else{na=(d[(g<<16>>16)+(133833+(U<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(133833+(U<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(133833+(U<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(133833+(U<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Vd[c[n>>2]&127](j,o,V,X,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Vd[c[n>>2]&127](k,o,V,X,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;ra=(d[133833+(f<<2)+3>>0]|0)+1&255;e=e+72|0;iX(ta|0,ra|0,4)|0;Vd[c[e>>2]&127](j+g|0,o,sa,n,ta);iX(ta|0,ra|0,4)|0;Vd[c[e>>2]&127](k+g|0,o,sa,n,ta);break}}r=(t&16777216|0)!=0;g=c[f+21856>>2]|0;if(r?!(oa|(g&7|0)!=7):0){q=pa;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+16|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+32|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+48|0;c[q>>2]=131074;c[q+4>>2]=131074;q=4}else{V=0-((t*5|0)>>>5&1)&3|t>>4;X=4-(0-(t>>>3&(g&15|0)==0)&3)|0;Zd[q&3](pa,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,X,(t>>24)+1|0,0-((h*5|0)>>>5&1&V>>>1)&3,V,(c[e+26380>>2]|0)!=3&1);q=X}if(h&7|0){X=pa;c[X>>2]=262148;c[X+4>>2]=262148}if(ka&7|0){V=(c[e+26380>>2]|0)!=3;X=pa+32|0;c[X>>2]=V?196611:262148;c[X+4>>2]=V?196611:262148}do if(h|0?(X=pa,V=c[X>>2]|0,s=V&65535,!((V|0)==0&(c[X+4>>2]|0)==0)):0){h=v+ra|0;p=d[133677+h>>0]|0;X=v+sa|0;g=d[133521+X>>0]|0;do if(!(h>>>0<68|X>>>0<68))if(s<<16>>16>3){Ud[c[e+64>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(s<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=Y+ra|0;f=d[133677+p>>0]|0;g=Y+sa|0;h=d[133521+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Ud[c[e+64>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](j,n,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Ud[c[e+64>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Ud[c[e+88>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+76>>2]&127](j,o,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Ud[c[e+88>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+76>>2]&127](k,o,f,h,ta);break}}}}while(0);do if((q|0)==1){if(ka|0?($=pa+32|0,qa=$,na=c[qa>>2]|0,J=na&65535,!((na|0)==0&(c[qa+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133677+h>>0]|0;qa=ja+sa|0;g=d[133521+qa>>0]|0;do if(!(h>>>0<68|qa>>>0<68))if(J<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(J<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133677+p>>0]|0;g=la+sa|0;h=d[133521+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}}else{if(r){r=pa+16|0;ia=r;f=c[ia>>2]|0;do if(!((f|0)==0&(c[ia+4>>2]|0)==0)){g=1<>>0<68|p>>>0<68)){ia=d[133521+p>>0]|0;ha=d[133677+h>>0]|0;a[ta>>0]=a[(f<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i+q|0,n,ha,ia,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ia=d[133521+h>>0]|0;ha=d[133677+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(133833+(g<<2))>>0]|0;_=pa+18|0;$=ta+1|0;a[$>>0]=a[(b[_>>1]|0)+(133833+(g<<2))>>0]|0;ca=pa+20|0;da=ta+2|0;a[da>>0]=a[(b[ca>>1]|0)+(133833+(g<<2))>>0]|0;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=a[(b[ea>>1]|0)+(133833+(g<<2))>>0]|0;ga=e+52|0;Vd[c[ga>>2]&127](j+q|0,n,ha,ia,ta);a[ta>>0]=a[(b[r>>1]|0)+(133833+(g<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(133833+(g<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(133833+(g<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(133833+(g<<2))>>0]|0;Vd[c[ga>>2]&127](k+q|0,n,ha,ia,ta);break}else{g=g<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ia=d[133521+p>>0]|0;ha=d[133677+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(133833+(h<<2))>>0]|0)+1;_=pa+18|0;$=ta+1|0;a[$>>0]=(d[(b[_>>1]|0)+(133833+(h<<2))>>0]|0)+1;ca=pa+20|0;da=ta+2|0;a[da>>0]=(d[(b[ca>>1]|0)+(133833+(h<<2))>>0]|0)+1;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=(d[(b[ea>>1]|0)+(133833+(h<<2))>>0]|0)+1;ga=e+76|0;Vd[c[ga>>2]&127](j+g|0,o,ha,ia,ta);a[ta>>0]=(d[(b[r>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[$>>0]=(d[(b[_>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[da>>0]=(d[(b[ca>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(133833+(h<<2))>>0]|0)+1;Vd[c[ga>>2]&127](k+g|0,o,ha,ia,ta);break}}while(0);do if(ka|0?(ba=pa+32|0,ka=ba,ia=c[ka>>2]|0,aa=ia&65535,!((ia|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133677+h>>0]|0;ka=ja+sa|0;g=d[133521+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(aa<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(aa<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133677+p>>0]|0;g=la+sa|0;h=d[133521+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);q=pa+48|0;la=q;h=c[la>>2]|0;if((h|0)==0&(c[la+4>>2]|0)==0)break;f=n<<3;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){na=d[133521+g>>0]|0;la=d[133677+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](i+f|0,n,la,na,ta)}if(!ma)break;if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133521+g>>0]|0;ra=d[133677+h>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(133833+(h<<2))>>0]|0;ma=pa+50|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0;i=pa+52|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(133833+(h<<2))>>0]|0;qa=pa+54|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0;e=e+48|0;Vd[c[e>>2]&127](j+f|0,n,ra,sa,ta);a[ta>>0]=a[(b[q>>1]|0)+(133833+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(133833+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e>>2]&127](k+f|0,n,ra,sa,ta);break}else{p=o<<2;h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;n=d[133521+g>>0]|0;sa=d[133677+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(133833+(h<<2))>>0]|0)+1;ma=pa+50|0;na=ta+1|0;a[na>>0]=(d[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0)+1;i=pa+52|0;oa=ta+2|0;a[oa>>0]=(d[(b[i>>1]|0)+(133833+(h<<2))>>0]|0)+1;qa=pa+54|0;ra=ta+3|0;a[ra>>0]=(d[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0)+1;e=e+72|0;Vd[c[e>>2]&127](j+p|0,o,sa,n,ta);a[ta>>0]=(d[(b[q>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[na>>0]=(d[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[oa>>0]=(d[(b[i>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0)+1;Vd[c[e>>2]&127](k+p|0,o,sa,n,ta);break}}g=pa+8|0;ba=g;h=c[ba>>2]|0;if(!((h|0)==0&(c[ba+4>>2]|0)==0)){p=4<>>0<68|q>>>0<68)){ba=d[133521+q>>0]|0;aa=d[133677+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133833+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+10>>1]|0)+(133833+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+12>>1]|0)+(133833+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+14>>1]|0)+(133833+(f<<2))>>0]|0;Vd[c[e+52>>2]&127](i+p|0,n,aa,ba,ta)}if(oa?(Z=ra+qa|0,_=sa+qa|0,!(Z>>>0<68|_>>>0<68)):0){ba=d[133521+_>>0]|0;aa=d[133677+Z>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(133833+(Z<<2))>>0]|0;T=pa+10|0;U=ta+1|0;a[U>>0]=a[(b[T>>1]|0)+(133833+(Z<<2))>>0]|0;V=pa+12|0;X=ta+2|0;a[X>>0]=a[(b[V>>1]|0)+(133833+(Z<<2))>>0]|0;Y=pa+14|0;_=ta+3|0;a[_>>0]=a[(b[Y>>1]|0)+(133833+(Z<<2))>>0]|0;$=e+52|0;Vd[c[$>>2]&127](j+p|0,n,aa,ba,ta);a[ta>>0]=a[(b[g>>1]|0)+(133833+(Z<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(133833+(Z<<2))>>0]|0;a[X>>0]=a[(b[V>>1]|0)+(133833+(Z<<2))>>0]|0;a[_>>0]=a[(b[Y>>1]|0)+(133833+(Z<<2))>>0]|0;Vd[c[$>>2]&127](k+p|0,n,aa,ba,ta)}}r=pa+16|0;ba=r;g=c[ba>>2]|0;do if(!((g|0)==0&(c[ba+4>>2]|0)==0)){h=1<>>0<68|f>>>0<68)){ba=d[133521+f>>0]|0;aa=d[133677+p>>0]|0;a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+52>>2]&127](i+q|0,n,aa,ba,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ba=d[133521+h>>0]|0;aa=d[133677+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(133833+(g<<2))>>0]|0;U=pa+18|0;V=ta+1|0;a[V>>0]=a[(b[U>>1]|0)+(133833+(g<<2))>>0]|0;X=pa+20|0;Y=ta+2|0;a[Y>>0]=a[(b[X>>1]|0)+(133833+(g<<2))>>0]|0;Z=pa+22|0;_=ta+3|0;a[_>>0]=a[(b[Z>>1]|0)+(133833+(g<<2))>>0]|0;$=e+52|0;Vd[c[$>>2]&127](j+q|0,n,aa,ba,ta);a[ta>>0]=a[(b[r>>1]|0)+(133833+(g<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(133833+(g<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(133833+(g<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(133833+(g<<2))>>0]|0;Vd[c[$>>2]&127](k+q|0,n,aa,ba,ta);break}else{g=h<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ba=d[133521+p>>0]|0;aa=d[133677+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(133833+(h<<2))>>0]|0)+1;U=pa+18|0;V=ta+1|0;a[V>>0]=(d[(b[U>>1]|0)+(133833+(h<<2))>>0]|0)+1;X=pa+20|0;Y=ta+2|0;a[Y>>0]=(d[(b[X>>1]|0)+(133833+(h<<2))>>0]|0)+1;Z=pa+22|0;_=ta+3|0;a[_>>0]=(d[(b[Z>>1]|0)+(133833+(h<<2))>>0]|0)+1;$=e+76|0;Vd[c[$>>2]&127](j+g|0,o,aa,ba,ta);a[ta>>0]=(d[(b[r>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[V>>0]=(d[(b[U>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[Y>>0]=(d[(b[X>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[_>>0]=(d[(b[Z>>1]|0)+(133833+(h<<2))>>0]|0)+1;Vd[c[$>>2]&127](k+g|0,o,aa,ba,ta);break}}while(0);f=pa+24|0;ba=f;q=c[ba>>2]|0;if(!((q|0)==0&(c[ba+4>>2]|0)==0)){g=12<>>0<68|p>>>0<68)){ga=d[133521+p>>0]|0;ba=d[133677+h>>0]|0;a[ta>>0]=a[(q<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+26>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+28>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+30>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+52>>2]&127](i+g|0,n,ba,ga,ta)}if(oa?(ca=ra+qa|0,da=sa+qa|0,!(ca>>>0<68|da>>>0<68)):0){ga=d[133521+da>>0]|0;da=d[133677+ca>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(133833+(ca<<2))>>0]|0;X=pa+26|0;Y=ta+1|0;a[Y>>0]=a[(b[X>>1]|0)+(133833+(ca<<2))>>0]|0;Z=pa+28|0;_=ta+2|0;a[_>>0]=a[(b[Z>>1]|0)+(133833+(ca<<2))>>0]|0;$=pa+30|0;aa=ta+3|0;a[aa>>0]=a[(b[$>>1]|0)+(133833+(ca<<2))>>0]|0;ba=e+52|0;Vd[c[ba>>2]&127](j+g|0,n,da,ga,ta);a[ta>>0]=a[(b[f>>1]|0)+(133833+(ca<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(133833+(ca<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(133833+(ca<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(133833+(ca<<2))>>0]|0;Vd[c[ba>>2]&127](k+g|0,n,da,ga,ta)}}do if(ka|0?(fa=pa+32|0,ka=fa,ga=c[ka>>2]|0,ea=ga&65535,!((ga|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133677+h>>0]|0;ka=ja+sa|0;g=d[133521+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(ea<<16>>16>3){Ud[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(ea<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133677+p>>0]|0;g=la+sa|0;h=d[133521+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Ud[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Ud[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Ud[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Ud[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(133833+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(133833+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(133833+(p<<2))>>0]|0)+1;Vd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);g=pa+40|0;la=g;h=c[la>>2]|0;if(!((h|0)==0&(c[la+4>>2]|0)==0)){p=n<<2;f=ra+na|0;q=sa+na|0;if(!(f>>>0<68|q>>>0<68)){la=d[133521+q>>0]|0;ka=d[133677+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133833+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+42>>1]|0)+(133833+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+44>>1]|0)+(133833+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+46>>1]|0)+(133833+(f<<2))>>0]|0;Vd[c[e+48>>2]&127](i+p|0,n,ka,la,ta)}if(oa?(ha=ra+qa|0,ia=sa+qa|0,!(ha>>>0<68|ia>>>0<68)):0){la=d[133521+ia>>0]|0;ka=d[133677+ha>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(133833+(ha<<2))>>0]|0;ca=pa+42|0;da=ta+1|0;a[da>>0]=a[(b[ca>>1]|0)+(133833+(ha<<2))>>0]|0;ea=pa+44|0;fa=ta+2|0;a[fa>>0]=a[(b[ea>>1]|0)+(133833+(ha<<2))>>0]|0;ga=pa+46|0;ia=ta+3|0;a[ia>>0]=a[(b[ga>>1]|0)+(133833+(ha<<2))>>0]|0;ja=e+48|0;Vd[c[ja>>2]&127](j+p|0,n,ka,la,ta);a[ta>>0]=a[(b[g>>1]|0)+(133833+(ha<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(133833+(ha<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(133833+(ha<<2))>>0]|0;a[ia>>0]=a[(b[ga>>1]|0)+(133833+(ha<<2))>>0]|0;Vd[c[ja>>2]&127](k+p|0,n,ka,la,ta)}}q=pa+48|0;la=q;g=c[la>>2]|0;do if(!((g|0)==0&(c[la+4>>2]|0)==0)){f=n<<3;h=ra+na|0;p=sa+na|0;if(!(h>>>0<68|p>>>0<68)){la=d[133521+p>>0]|0;ka=d[133677+h>>0]|0;a[ta>>0]=a[(g<<16>>16)+(133833+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(133833+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e+48>>2]&127](i+f|0,n,ka,la,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;o=d[133521+h>>0]|0;ma=d[133677+g>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(133833+(g<<2))>>0]|0;fa=pa+50|0;ga=ta+1|0;a[ga>>0]=a[(b[fa>>1]|0)+(133833+(g<<2))>>0]|0;ha=pa+52|0;ia=ta+2|0;a[ia>>0]=a[(b[ha>>1]|0)+(133833+(g<<2))>>0]|0;ja=pa+54|0;ka=ta+3|0;a[ka>>0]=a[(b[ja>>1]|0)+(133833+(g<<2))>>0]|0;la=e+48|0;Vd[c[la>>2]&127](j+f|0,n,ma,o,ta);a[ta>>0]=a[(b[q>>1]|0)+(133833+(g<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(133833+(g<<2))>>0]|0;a[ia>>0]=a[(b[ha>>1]|0)+(133833+(g<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(133833+(g<<2))>>0]|0;Vd[c[la>>2]&127](k+f|0,n,ma,o,ta);break}else{g=o<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ma=d[133521+p>>0]|0;la=d[133677+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(133833+(h<<2))>>0]|0)+1;ea=pa+50|0;fa=ta+1|0;a[fa>>0]=(d[(b[ea>>1]|0)+(133833+(h<<2))>>0]|0)+1;ga=pa+52|0;ha=ta+2|0;a[ha>>0]=(d[(b[ga>>1]|0)+(133833+(h<<2))>>0]|0)+1;ia=pa+54|0;ja=ta+3|0;a[ja>>0]=(d[(b[ia>>1]|0)+(133833+(h<<2))>>0]|0)+1;ka=e+72|0;Vd[c[ka>>2]&127](j+g|0,o,la,ma,ta);a[ta>>0]=(d[(b[q>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[ha>>0]=(d[(b[ga>>1]|0)+(133833+(h<<2))>>0]|0)+1;a[ja>>0]=(d[(b[ia>>1]|0)+(133833+(h<<2))>>0]|0)+1;Vd[c[ka>>2]&127](k+g|0,o,la,ma,ta);break}}while(0);f=pa+56|0;o=f;h=c[o>>2]|0;if(!((h|0)==0&(c[o+4>>2]|0)==0)){q=n*12|0;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){o=d[133521+g>>0]|0;na=d[133677+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(133833+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+58>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+60>>1]|0)+(133833+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+62>>1]|0)+(133833+(p<<2))>>0]|0;Vd[c[e+48>>2]&127](i+q|0,n,na,o,ta)}if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133521+g>>0]|0;ra=d[133677+h>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(133833+(h<<2))>>0]|0;ma=pa+58|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0;i=pa+60|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(133833+(h<<2))>>0]|0;qa=pa+62|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0;e=e+48|0;Vd[c[e>>2]&127](j+q|0,n,ra,sa,ta);a[ta>>0]=a[(b[f>>1]|0)+(133833+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(133833+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(133833+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(133833+(h<<2))>>0]|0;Vd[c[e>>2]&127](k+q|0,n,ra,sa,ta)}}}while(0)}else ua=3;while(0);if((ua|0)==3)hk(e,f,g,h,i,j,k,n,o);l=va;return}function jk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;Ol(f,g,d*96|0);b=a+27792|0;Ol(b,a+27808|0,d*42|0);d=a+27796|0;h=h+27012|0;Pl(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;Pl(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{Qf(f);Qf(b);Qf(d);Qf(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function lk(a){a=a|0;var b=0;b=0-(mk(a)|0)&7;if(b|0)Nl(a,b);return}function mk(a){a=a|0;return c[a+8>>2]|0}function nk(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(mk(a)|0)|0}function ok(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=f+e|0;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function pk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(N(c[(c[b+28216>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)>0?((b|0)<51?b:51):0;if((c[d+840>>2]|0)==1)f=142165;else f=136021+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(N(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function qk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29672>>2]|0)Ml((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function rk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+80|0;if((l|0)>=(m|0))W(80);ia=qa+40|0;da=qa+32|0;s=qa+24|0;t=qa+16|0;p=qa+8|0;u=qa;la=qa+72|0;aa=qa+56|0;ba=qa+52|0;X=qa+48|0;ka=f+28216|0;fa=c[ka>>2]|0;ma=f+28212|0;o=c[(c[ma>>2]|0)+64>>2]|0;k=fa+12|0;ea=((c[k>>2]|0)+-1|0)>>>0<2;na=c[f+25664>>2]|0;ga=g+21788|0;h=c[ga>>2]|0;ha=g+21792|0;i=c[ha>>2]|0;_=f+27016|0;pa=(N(c[_>>2]|0,i)|0)+h|0;oa=g+21796|0;c[oa>>2]=pa;ca=g+840|0;Z=f+26376|0;if((c[ca>>2]|0)!=1){if(!((c[Z>>2]|0)==0|(i&1|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=nl(f,g,h,i)|0;if(h){if((c[Z>>2]|0?(c[ha>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(pa<<2)>>2]=2048,oa=nl(f,g,c[ga>>2]|0,(c[ha>>2]|0)+1|0)|0,c[g+21652>>2]=oa,(oa|0)==0):0){oa=ol(f,g)|0;c[g+21828>>2]=oa;c[g+21832>>2]=oa}pl(f,g);b[(c[f+26392>>2]|0)+(pa<<1)>>1]=0;a[(c[f+26396>>2]|0)+pa>>0]=0;c[g+864>>2]=0;h=0}else ja=12}else ja=12;a:do if((ja|0)==12){if(c[Z>>2]|0?(c[ha>>2]&1|0)==0:0){$=ol(f,g)|0;c[g+21828>>2]=$;c[g+21832>>2]=$}c[g+21648>>2]=0;Y=g+21828|0;ql(f,g,0-(c[Y>>2]|0)|0);b:do switch(c[ca>>2]|0){case 3:{j=g+32856|0;c:do if(!(rl(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[la>>2]=0;h=0}else{if(!(rl(j,g+32934|0)|0)){h=(rl(j,g+32936|0)|0)+1|0;c[la>>2]=h;break}i=(rl(j,g+32935|0)|0)<<3;h=g+32936|0;i=((rl(j,h)|0)<<2)+i|0;i=i+((rl(j,h)|0)<<1)|0;i=i+(rl(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[la>>2]=h;break}switch(i|0){case 13:{h=sl(g,32,0)|0;c[la>>2]=h;ja=36;break b}case 14:{c[la>>2]=11;h=11;break c}case 15:{c[la>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(rl(j,h)|0)|0;c[la>>2]=h;break c}}}while(0);i=a[113990+(h<<2)+2>>0]|0;h=e[113990+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}case 2:{h=g+32856|0;if(rl(h,g+32918|0)|0){h=sl(g,17,0)|0;c[la>>2]=h;ja=36;break b}if(!(rl(h,g+32919|0)|0))h=(rl(h,g+32920|0)|0)*3|0;else h=2-(rl(h,g+32921|0)|0)|0;i=a[113954+(h<<2)+2>>0]|0;h=e[113954+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}default:{h=sl(g,3,1)|0;c[la>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[la>>2]=h;ja=36}else ja=36}}while(0);if((ja|0)==36){$=d[113850+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113850+(h<<2)+2>>0];h=e[113850+(h<<2)>>1]|0;c[la>>2]=h;i=0}if(c[Y>>2]|0){h=h|128;c[la>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){i=(N(c[fa+1184>>2]|0,e[114134+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=ok(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=-2065;a[(c[f+26396>>2]|0)+pa>>0]=0;a[(c[f+24340>>2]|0)+pa>>0]=0;j=(c[f+25972>>2]|0)+(pa*48|0)|0;k=j+48|0;do{a[j>>0]=16;j=j+1|0}while((j|0)<(k|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[la>>2];c[g+864>>2]=0;h=0;break}tl(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[ca>>2]|0)==3){h=0;while(1){if((h|0)==4)break;V=wl(g)|0;c[aa+(h<<2)>>2]=d[114082+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114082+((V&65535)<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){Kk(f,g,la);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;V=(d[146266+(h<<2)>>0]|0)+(g+28512)|0;U=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[V>>1]=U;b[V+8>>1]=U;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;V=xl(g)|0;c[aa+(h<<2)>>2]=d[113974+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[113974+((V&65535)<<2)>>1]|0;h=h+1|0}}while(0);V=g+23412|0;r=g+21832|0;q=0;f:while(1){h=c[V>>2]|0;if(q>>>0>=h>>>0){ja=80;break}n=4096<<(q<<1);p=g+23404+(q<<2)|0;k=0;while(1){if((k|0)>=4)break;h=e[g+28552+(k<<1)>>1]|0;if(!(h&256)){if(n&h){i=c[p>>2]<>2];if(i>>>0>1){j=k<<2;h=yl(g,q,j)|0;if(h>>>0>=i>>>0){ja=75;break f}}else{h=0;ja=76}}else{h=-1;ja=76}if((ja|0)==76){ja=0;j=k<<2}T=h&255;U=d[146266+j>>0]|0;a[U+9+(g+28272+(q*40|0))>>0]=T;a[U+8+(g+28272+(q*40|0))>>0]=T;a[U+1+(g+28272+(q*40|0))>>0]=T}k=k+1|0}q=q+1|0}do if((ja|0)==75){g=c[f+4>>2]|0;c[u>>2]=h;c[u+4>>2]=i;Uf(g,16,135569,u);h=-1}else if((ja|0)==80){if(!o)o=0;else{U=(c[(c[ka>>2]|0)+72>>2]|0)==0;o=g+28552|0;o=(((U?24117616:7340144)&c[o>>2]|0)==0?((U?24117616:7340144)&c[o+4>>2]|0)==0:0)&1}Q=f+24312|0;R=g+21740|0;S=g+21720|0;T=f+26360|0;U=f+26368|0;P=0;g:while(1){if(P>>>0>=h>>>0){ja=129;break}L=P<<1;I=4096<=4)break;O=H<<2;h=d[146266+O>>0]|0;a[g+28272+(P*40|0)+h>>0]=a[h+1+(g+28272+(P*40|0))>>0]|0;i=e[g+28552+(H<<1)>>1]|0;h:do if(!(i&256)){if(!(I&i)){c[g+27952+(P*160|0)+(h<<2)>>2]=0;c[g+27952+(P*160|0)+(h<<2)+4>>2]=0;c[g+27952+(P*160|0)+(h<<2)+32>>2]=0;c[g+27952+(P*160|0)+(h<<2)+36>>2]=0;ja=125;break}D=i&24|0?2:1;E=c[aa+(H<<2)>>2]|0;F=(i&8|0)==0;G=(i&16|0)==0;z=(i&32|0)==0;y=0;while(1){if((y|0)>=(E|0))break h;h=a[146266+((N(y,D)|0)+O)>>0]|0;A=h&255;B=g+27952+(P*160|0)+(A<<2)|0;C=g+28352+(P*80|0)+(A<<1)|0;q=a[g+28272+(P*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(P*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(P*40|0)+x>>0]|0;s=g+27952+(P*160|0)+(x<<2)|0;v=g+27952+(P*160|0)+(w<<2)|0;i=w+D|0;j=a[g+28272+(P*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[J>>0]|0)==-2){ja=99;break}p=c[(c[Q>>2]|0)+48>>2]|0;c[K>>2]=0;n=(c[R>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(n){ja=99;break}n=c[_>>2]|0;h=n+(c[S>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,n)|0)+h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=b[p+(n<<2)+2>>1]<<1;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!n){ja=99;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i&3)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=(b[p+(n<<2)+2>>1]|0)/2|0;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ja=99;while(0);do if((ja|0)==99){ja=0;if(j){k=A+-9|0;n=g+27952+(P*160|0)+(k<<2)|0;k=a[g+28272+(P*40|0)+k>>0]|0;break}else{n=g+27952+(P*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}else{h=zl(h,b[v>>1]|0,b[n>>1]|0)|0;i=zl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){h=b[s>>1]|0;i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}if(j){h=b[v>>1]|0;i=b[g+27952+(P*160|0)+(w<<2)+2>>1]|0;break}else{h=b[n>>1]|0;i=b[n+2>>1]|0;break}}else{h=zl(b[s>>1]|0,b[v>>1]|0,b[n>>1]|0)|0;i=zl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0}while(0);p=(d[g+28352+(P*80|0)+(w<<1)+1>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)+1>>0]|0)|0;w=Al(g,40,(d[g+28352+(P*80|0)+(w<<1)>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)>>0]|0)|0,ba)|0;x=Al(g,47,p,X)|0;p=w+h|0;n=x+i|0;if((w|0)==-2147483648|(x|0)==-2147483648){ja=123;break g}do if(F){if(!G){b[B+4>>1]=p;b[B+6>>1]=n;i=c[ba>>2]|0;a[C+2>>0]=i;h=c[X>>2]|0;j=h&255;k=1;ja=121;break}if(z){i=c[ba>>2]|0;h=c[X>>2]|0;break}else{b[B+32>>1]=p;b[B+34>>1]=n;i=c[ba>>2]|0;a[C+16>>0]=i;h=c[X>>2]|0;j=h&255;k=8;ja=121;break}}else{i=p&65535;b[B+36>>1]=i;b[B+32>>1]=i;b[B+4>>1]=i;i=n&65535;b[B+38>>1]=i;b[B+34>>1]=i;b[B+6>>1]=i;i=c[ba>>2]|0;h=i&255;a[C+18>>0]=h;a[C+16>>0]=h;a[C+2>>0]=h;h=c[X>>2]|0;j=h&255;a[C+19>>0]=j;a[C+17>>0]=j;k=1;ja=121}while(0);if((ja|0)==121){ja=0;a[C+(k<<1)+1>>0]=j}b[B>>1]=p;b[g+27952+(P*160|0)+(A<<2)+2>>1]=n;a[C>>0]=i;a[g+28352+(P*80|0)+(A<<1)+1>>0]=h;y=y+1|0}}else ja=125;while(0);if((ja|0)==125){ja=0;c[g+28352+(P*80|0)+(h<<1)>>2]=0;c[g+28352+(P*80|0)+(h<<1)+16>>2]=0}H=H+1|0}P=P+1|0;h=c[V>>2]|0}if((ja|0)==123){h=-1094995529;break}else if((ja|0)==129)break d}while(0);break a}if(h&256|0){Kk(f,g,la);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;o=c[fa+72>>2]&o;break}if(h&8|0){v=g+23412|0;k=c[la>>2]|0;n=g+21832|0;j=0;while(1){h=c[v>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];if(i>>>0>1){h=yl(g,j,0)|0;if(h>>>0>=i>>>0){ja=140;break}}else h=0;_=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=_;c[g+28272+(j*40|0)+20>>2]=_;c[g+28272+(j*40|0)+28>>2]=_;c[g+28272+(j*40|0)+36>>2]=_}j=j+1|0}if((ja|0)==140){g=c[f+4>>2]|0;c[p>>2]=h;c[p+4>>2]=i;Uf(g,16,135569,p);h=-1;break a}u=0;while(1){if(u>>>0>=h>>>0)break d;if(c[la>>2]&4096<<(u<<1)){i=a[g+28272+(u*40|0)+12>>0]|0;q=a[g+28272+(u*40|0)+4>>0]|0;r=a[g+28272+(u*40|0)+11>>0]|0;p=g+27952+(u*160|0)+44|0;s=g+27952+(u*160|0)+16|0;h=a[g+28272+(u*40|0)+8>>0]|0;if(h<<24>>24==-2){t=g+27952+(u*160|0)+12|0;n=a[g+28272+(u*40|0)+3>>0]|0}else{t=g+27952+(u*160|0)+32|0;n=h<<24>>24}j=q<<24>>24==i<<24>>24;k=r<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){k=b[p>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(u*160|0)+46>>1]|0;break}else{k=zl(k,b[s>>1]|0,b[t>>1]|0)|0;h=zl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0;break}}if(k){k=b[p>>1]|0;h=b[g+27952+(u*160|0)+46>>1]|0;break}if(j){k=b[s>>1]|0;h=b[g+27952+(u*160|0)+18>>1]|0;break}else{k=b[t>>1]|0;h=b[t+2>>1]|0;break}}else{k=zl(b[p>>1]|0,b[s>>1]|0,b[t>>1]|0)|0;h=zl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0}while(0);j=(d[g+28352+(u*80|0)+9>>0]|0)+(d[g+28352+(u*80|0)+23>>0]|0)|0;i=Al(g,40,(d[g+28352+(u*80|0)+8>>0]|0)+(d[g+28352+(u*80|0)+22>>0]|0)|0,aa)|0;j=Al(g,47,j,ba)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;_=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(u*80|0)+24>>2]=_;c[g+28352+(u*80|0)+28>>2]=_;c[g+28352+(u*80|0)+40>>2]=_;c[g+28352+(u*80|0)+44>>2]=_;c[g+28352+(u*80|0)+56>>2]=_;c[g+28352+(u*80|0)+60>>2]=_;c[g+28352+(u*80|0)+72>>2]=_;c[g+28352+(u*80|0)+76>>2]=_;h=j+h<<16|i+k&65535;c[g+27952+(u*160|0)+48>>2]=h;c[g+27952+(u*160|0)+52>>2]=h;c[g+27952+(u*160|0)+56>>2]=h;c[g+27952+(u*160|0)+60>>2]=h;c[g+27952+(u*160|0)+80>>2]=h;c[g+27952+(u*160|0)+84>>2]=h;c[g+27952+(u*160|0)+88>>2]=h;c[g+27952+(u*160|0)+92>>2]=h;c[g+27952+(u*160|0)+112>>2]=h;c[g+27952+(u*160|0)+116>>2]=h;c[g+27952+(u*160|0)+120>>2]=h;c[g+27952+(u*160|0)+124>>2]=h;c[g+27952+(u*160|0)+144>>2]=h;c[g+27952+(u*160|0)+148>>2]=h;c[g+27952+(u*160|0)+152>>2]=h;c[g+27952+(u*160|0)+156>>2]=h;h=c[v>>2]|0}u=u+1|0}h=-1094995529;break a}U=g+23412|0;q=c[la>>2]|0;r=g+21832|0;if(!(h&16))p=0;else{p=0;i:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=yl(g,p,j<<3)|0;if(h>>>0>=i>>>0){ja=171;break i}}else h=0;h=N(h,16843009)|0}X=(j<<4|12)+(g+28272+(p*40|0))|0;c[X>>2]=h;c[X+8>>2]=h;j=j+1|0}p=p+1|0}if((ja|0)==171){g=c[f+4>>2]|0;c[t>>2]=h;c[t+4>>2]=i;Uf(g,16,135569,t);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;j:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+4|0;D=g+27952+(O*160|0)+16|0;E=g+27952+(O*160|0)+18|0;F=g+28272+(O*40|0)+11|0;G=g+27952+(O*160|0)+40|0;H=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+4>>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+20>>2]=0;V=g+27952+(O*160|0)+(X<<2)|0;X=g+27952+(O*160|0)+(X<<2)+32|0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[V+12>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0}else{z=A<<3;M=A<<4|12;r=a[g+28272+(O*40|0)+M>>0]|0;s=r<<24>>24;do if(!A){if((a[C>>0]|0)!=r<<24>>24){ja=183;break}k=b[D>>1]|0;j=b[E>>1]|0}else{if((a[J>>0]|0)!=r<<24>>24){ja=183;break}k=b[K>>1]|0;j=b[L>>1]|0}while(0);do if((ja|0)==183){ja=0;k=a[146266+z>>0]|0;p=k&255;y=p+-8|0;w=a[g+28272+(O*40|0)+y>>0]|0;x=p+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;t=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(y<<2)|0;h=p+-4|0;i=a[g+28272+(O*40|0)+h>>0]|0;n=i<<24>>24;i=i<<24>>24==-2;do if((p&7|0)==4&((k&255)>19&(i&(c[Z>>2]|0)!=0))){if((a[F>>0]|0)==-2){ja=192;break}q=c[(c[P>>2]|0)+48>>2]|0;c[G>>2]=0;j=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(j){ja=192;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=b[X+(p<<2)+2>>1]<<1;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ja=192;break}i=c[g+21720+(((k&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=192;while(0);do if((ja|0)==192){ja=0;if(i){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(h<<2)|0;break}}while(0);j=w<<24>>24==r<<24>>24;i=u<<24>>24==r<<24>>24;h=(i&1)+(j&1)+((n|0)==(s|0)&1)|0;if(h>>>0>1){k=zl(b[t>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=zl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[t>>1]|0;if(u<<24>>24!=-2&(w<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=zl(k,b[v>>1]|0,b[p>>1]|0)|0;j=zl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[t>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146266+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Al(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Al(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+4>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+20>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+8>>2]=X;c[g+27952+(O*160|0)+(M<<2)+12>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+40>>2]=X;c[g+27952+(O*160|0)+(M<<2)+44>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}k:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=yl(g,p,j<<2)|0;if(h>>>0>=i>>>0){ja=220;break k}}else h=0;h=h*257&65535}X=(j<<1)+12+(g+28272+(p*40|0))|0;b[X>>1]=h;b[X+8>>1]=h;b[X+16>>1]=h;b[X+24>>1]=h;j=j+1|0}p=p+1|0}if((ja|0)==220){g=c[f+4>>2]|0;c[s>>2]=h;c[s+4>>2]=i;Uf(g,16,135569,s);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;l:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+11|0;D=g+27952+(O*160|0)+44|0;E=g+27952+(O*160|0)+46|0;F=g+27952+(O*160|0)+40|0;G=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+32>>2]=0;c[g+28352+(O*80|0)+(X<<1)+48>>2]=0;c[g+27952+(O*160|0)+(X<<2)>>2]=0;c[g+27952+(O*160|0)+(X<<2)+4>>2]=0;c[g+27952+(O*160|0)+(X<<2)+32>>2]=0;c[g+27952+(O*160|0)+(X<<2)+36>>2]=0;c[g+27952+(O*160|0)+(X<<2)+64>>2]=0;c[g+27952+(O*160|0)+(X<<2)+68>>2]=0;c[g+27952+(O*160|0)+(X<<2)+96>>2]=0;c[g+27952+(O*160|0)+(X<<2)+100>>2]=0}else{z=A<<2;M=(A<<1)+12|0;s=a[g+28272+(O*40|0)+M>>0]|0;w=s<<24>>24;do if(!A)if((a[C>>0]|0)==s<<24>>24){k=b[D>>1]|0;j=b[E>>1]|0}else ja=234;else{h=a[I>>0]|0;if(h<<24>>24==-2){i=J;h=a[K>>0]|0}else i=L;if(h<<24>>24!=s<<24>>24){ja=234;break}k=b[i>>1]|0;j=b[i+2>>1]|0}while(0);do if((ja|0)==234){ja=0;h=a[146266+z>>0]|0;p=h&255;x=p+-8|0;t=a[g+28272+(O*40|0)+x>>0]|0;y=p+-1|0;u=a[g+28272+(O*40|0)+y>>0]|0;r=g+27952+(O*160|0)+(y<<2)|0;v=g+27952+(O*160|0)+(x<<2)|0;i=p+-6|0;j=a[g+28272+(O*40|0)+i>>0]|0;n=j<<24>>24;j=j<<24>>24==-2;do if((p&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[C>>0]|0)==-2){ja=243;break}q=c[(c[P>>2]|0)+48>>2]|0;c[F>>2]=0;k=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(k){ja=243;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=b[X+(p<<2)+2>>1]<<1;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!k){ja=243;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=243;while(0);do if((ja|0)==243){ja=0;if(j){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==s<<24>>24;i=u<<24>>24==s<<24>>24;h=(i&1)+(j&1)+((n|0)==(w|0)&1)|0;if(h>>>0>1){k=zl(b[r>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=zl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[r>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=zl(k,b[v>>1]|0,b[p>>1]|0)|0;j=zl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[r>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146266+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Al(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Al(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+32>>2]=X;c[g+28352+(O*80|0)+(M<<1)+48>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+64>>2]=X;c[g+27952+(O*160|0)+(M<<2)+68>>2]=X;c[g+27952+(O*160|0)+(M<<2)+96>>2]=X;c[g+27952+(O*160|0)+(M<<2)+100>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}else{if(!(h&1)){aa=g+21660|0;ba=Ik(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[aa>>2]|0,0)|0;c[aa>>2]=ba;if((ba|0)<0){h=-1;break a}}else{m:do if((o|0)!=0?(rl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[la>>2]=h|16777216;h=0;while(1){if((h|0)>=16)break m;ba=d[146266+h>>0]|0;aa=a[ba+-1+(g+21664)>>0]|0;_=a[ba+-8+(g+21664)>>0]|0;aa=(aa|0)>(_|0)?_:aa;ba=g+21664+ba|0;aa=(ul(g,(aa|0)<0?2:aa)|0)*257&65535;b[ba>>1]=aa;b[ba+8>>1]=aa;h=h+4|0}}else{h=0;ja=50}while(0);n:do if((ja|0)==50)while(1){ja=0;if((h|0)==16)break n;ja=d[146266+h>>0]|0;ba=a[ja+-1+(g+21664)>>0]|0;aa=a[ja+-8+(g+21664)>>0]|0;ba=(ba|0)>(aa|0)?aa:ba;a[g+21664+ja>>0]=ul(g,(ba|0)<0?2:ba)|0;h=h+1|0;ja=50}while(0);ba=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[ba>>2]=c[g+21700>>2];a[ba+4>>0]=a[g+21695>>0]|0;a[ba+5>>0]=a[g+21687>>0]|0;a[ba+6>>0]=a[g+21679>>0]|0;if((Hk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(ea){h=vl(f,g)|0;a[(c[f+26396>>2]|0)+pa>>0]=h;h=Ik(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h}while(0);if(c[la>>2]&120|0){a[(c[f+26396>>2]|0)+pa>>0]=0;k=c[la>>2]|0;h=c[f+26368>>2]|0;i=(N(h<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;n=c[oa>>2]<<2;if(!(k&12288)){ba=(c[f+24384>>2]|0)+n|0;b[ba>>1]=-1;b[ba+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;aa=g+28e3|0;ba=c[aa+4>>2]|0;Z=j;c[Z>>2]=c[aa>>2];c[Z+4>>2]=ba;Z=g+28008|0;ba=c[Z+4>>2]|0;aa=j+8|0;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28032|0;ba=c[aa+4>>2]|0;Z=j+(h<<2)|0;_=Z;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28040|0;ba=c[_+4>>2]|0;Z=Z+8|0;c[Z>>2]=c[_>>2];c[Z+4>>2]=ba;Z=g+28064|0;ba=c[Z+4>>2]|0;_=j+(h<<1<<2)|0;aa=_;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28072|0;ba=c[aa+4>>2]|0;_=_+8|0;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28096|0;ba=c[_+4>>2]|0;j=j+(h*3<<2)|0;aa=j;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28104|0;ba=c[aa+4>>2]|0;j=j+8|0;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28424|0;aa=c[_+4>>2]|0;ba=j;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=j+6|0;b[ba+6>>1]=b[g+28382>>1]|0;b[ba+4>>1]=b[g+28398>>1]|0;b[ba+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}ba=(c[f+24384>>2]|0)+n|0;a[ba>>0]=a[g+28284>>0]|0;a[ba+1>>0]=a[g+28286>>0]|0;a[ba+2>>0]=a[g+28300>>0]|0;a[ba+3>>0]=a[g+28302>>0]|0}if(k&49152|0){aa=(c[f+24356>>2]|0)+(i<<2)|0;Z=g+28160|0;ba=c[Z+4>>2]|0;Y=aa;c[Y>>2]=c[Z>>2];c[Y+4>>2]=ba;Y=g+28168|0;ba=c[Y+4>>2]|0;Z=aa+8|0;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28192|0;ba=c[Z+4>>2]|0;Y=aa+(h<<2)|0;_=Y;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28200|0;ba=c[_+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[_>>2];c[Y+4>>2]=ba;Y=g+28224|0;ba=c[Y+4>>2]|0;_=aa+(h<<1<<2)|0;Z=_;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28232|0;ba=c[Z+4>>2]|0;_=_+8|0;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28256|0;ba=c[_+4>>2]|0;h=aa+(h*3<<2)|0;aa=h;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28264|0;ba=c[aa+4>>2]|0;h=h+8|0;c[h>>2]=c[aa>>2];c[h+4>>2]=ba;h=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28504|0;aa=c[_+4>>2]|0;ba=h;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=h+6|0;b[ba+6>>1]=b[g+28462>>1]|0;b[ba+4>>1]=b[g+28478>>1]|0;b[ba+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}ba=(c[f+24388>>2]|0)+n|0;a[ba>>0]=a[g+28324>>0]|0;a[ba+1>>0]=a[g+28326>>0]|0;a[ba+2>>0]=a[g+28340>>0]|0;a[ba+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[ca>>2]|0)!=3)){ca=(c[f+26408>>2]|0)+(c[oa>>2]<<2)|0;a[ca+1>>0]=(e[g+28554>>1]|0)>>>1;a[ca+2>>0]=(e[g+28556>>1]|0)>>>1;a[ca+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[la>>2]&2)){h=Bl(g)|0;if(ea)w=(Cl(g)|0)<<4|h;else w=h}else if($>>>0>15&(ea^1)){Uf(c[f+4>>2]|0,16,135589,da);h=-1094995529;break}else w=$;c[g+21856>>2]=w;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=w;u=(w&15|0)==0;if(!((o|0)==0|u)?(c[la>>2]&7|0)==0:0){ea=(rl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[la>>2]=c[la>>2]|ea}k=c[la>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ka>>2]|0)+12>>2]|0)!=3)){if((c[f+25704>>2]|0)>>>0>=151){h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){da=i<<4&64;ea=h<<4;a[ea+99+(g+27824)>>0]=da;a[ea+91+(g+27824)>>0]=da;a[ea+59+(g+27824)>>0]=da;a[ea+51+(g+27824)>>0]=da;a[ea+19+(g+27824)>>0]=da;a[(ea|11)+(g+27824)>>0]=da}h=h+1|0}ea=c[g+21732>>2]|0;h=(ea&4|0)==0?0:1077952576;if(!((ea|0)!=0&(ea&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}i=k&7;j=i|0?64:0;h=0;while(1){if((h|0)==2)break;ea=c[g+21740+(h<<2)>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=h<<4;a[ea+99+(g+27824)>>0]=j;a[ea+91+(g+27824)>>0]=j;a[ea+59+(g+27824)>>0]=j;a[ea+51+(g+27824)>>0]=j;a[ea+19+(g+27824)>>0]=j;a[(ea|11)+(g+27824)>>0]=j}h=h+1|0}ea=c[g+21732>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=(i|0)==0?0:1077952576;c[g+27828>>2]=ea;c[g+27868>>2]=ea;c[g+27908>>2]=ea}}while(0);c[(c[f+24364>>2]|0)+(pa<<2)>>2]=k;if((w|0)==0?(c[la>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ja=302;o:do if((ja|0)==302){x=g+32856|0;o=g+864|0;do if(rl(x,(c[o>>2]|0?61:60)+(g+32904)|0)|0){k=(c[fa+1184>>2]|0)*6|0;n=k+3|0;i=n<<1;h=62;j=1;while(1){if(!(rl(x,g+32904+h|0)|0)){ja=306;break}if((j|0)<(i|0)){h=63;j=j+1|0}else{ja=429;break}}if((ja|0)==306){s=j+1>>1;s=(j&1|0)==0?0-s|0:s;c[o>>2]=s;h=g+848|0;s=(c[h>>2]|0)+s|0;s=(s>>>0>n>>>0?((s|0)<0?k+4|0:-4-k|0):0)+s|0;c[h>>2]=s;ja=c[ma>>2]|0;c[g+852>>2]=d[ja+548+s>>0];c[g+856>>2]=d[ja+636+s>>0];break}else if((ja|0)==429){h=c[f+4>>2]|0;g=c[ha>>2]|0;c[ia>>2]=c[ga>>2];c[ia+4>>2]=g;Uf(h,16,135602,ia);h=-1;break a}}else{c[o>>2]=0;s=g+848|0;h=s;s=c[s>>2]|0}while(0);i=c[la>>2]|0;ja=(i&128|0)==0;t=(s|0)!=0;v=ja?(t?f+26428|0:f+26716|0):t?f+26572|0:f+26860|0;t=ja?(t?f+26444|0:f+26732|0):t?f+26588|0:f+26876|0;p:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break p;q:do if(!(1<>0]|0)+(g+27824)|0;b[ja>>1]=0;b[ja+8>>1]=0}else{if(!q){i=p<<2;j=g+28560+(p<<6<>2]|0)+173812+(r<<2)>>2]|0)+(s<<8)|0;do if((c[(c[ka>>2]|0)+12>>2]|0)==3){n=d[146266+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(Dl(x,((a[n+-8+(g+27824)>>0]|0?ja|2:ja)|1012)+(g+32904)|0)|0)break;ja=g+27824+n|0;b[ja>>1]=0;b[ja+8>>1]=0;break q}while(0);Fl(f,g,j,5,i,t,k,64);break}j=(c[(c[ma>>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=p<<2;i=0;while(1){if((i|0)==4)break q;n=i+k|0;o=d[146266+n>>0]|0;ja=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,(a[o+-8+(g+27824)>>0]|0?ja|2:ja)+93+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Fl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Dl(x,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else El(f,g,i,0,48,v,16);if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ma>>2]|0)+173788>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break p;n=d[146266+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,(a[n+-8+(g+27824)>>0]|0?ja|2:ja)+89+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Fl(f,g,g+28560+(i<<4<>2]|0)+12>>2]|0;if((j|0)!=3){i=(w&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;n=i+49|0;ja=1<>2]&ja|0)!=0&1;if(!(Dl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146266+n>>0]|0)+(g+27824)>>0]=0;else El(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=v+1|0;i=0;s:while(1){if((i|0)==2)break o;p=i+1|0;q=(c[(c[ma>>2]|0)+173788+((c[la>>2]&7|0?0:3)+p<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4){i=p;continue s}k=j+i|0;n=d[146266+k>>0]|0;ka=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,(a[n+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Fl(f,g,g+28560+(k<<4<>2]&ja|0)!=0&1;if(!(Dl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146266+n>>0]|0)+(g+27824)>>0]=0;else Gl(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}w=16<>2]|0)+173788+((c[la>>2]&7|0?0:3)+v<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(u<<4<>0]|0;ka=(a[r+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,(a[r+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+r>>0]=0;else Fl(f,g,n,4,q,s,o,15);k=k+1|0;n=n+(w<<1)|0}i=i+(t<<1)|0;j=j+1|0}}}i=c[la>>2]|0;s=c[g+852>>2]|0;v:do if(!(i&2)){r=i&7|0?1:4;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break v;w:do if(!(1<>0]|0)+(g+27824)|0;b[ka>>1]=0;b[ka+8>>1]=0}else{if(!q){i=(p<<2)+16|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146266+i>>0]|0;ka=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[k+-8+(g+27824)>>0]|0?ka|2:ka)|1016)+(g+32904)|0)|0)){ka=g+27824+k|0;b[ka>>1]=0;b[ka+8>>1]=0;break}else{Fl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+16|0;i=0;while(1){if((i|0)==4)break w;n=k+i|0;o=d[146266+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|468)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Fl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Dl(x,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else El(f,g,i,6,49,v,16);if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ma>>2]|0)+173792>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break v;n=i+16|0;o=d[146266+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|464)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Fl(f,g,g+28560+(n<<4<>2]|0;s=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Dl(x,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else El(f,g,i,10,50,v,16);if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=(c[(c[ma>>2]|0)+173796>>2]|0)+(s<<6)|0;j=v+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;n=d[146266+k>>0]|0;ma=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[n+-8+(g+27824)>>0]|0?ma|2:ma)|476)+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Fl(f,g,g+28560+(k<<4<>0]|0)+(g+27824)|0;b[la>>1]=0;b[la+8>>1]=0}else{if(!q){i=(p<<2)+32|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146266+i>>0]|0;la=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[k+-8+(g+27824)>>0]|0?la|2:la)|1020)+(g+32904)|0)|0)){la=g+27824+k|0;b[la>>1]=0;b[la+8>>1]=0;break}else{Fl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+32|0;i=0;while(1){if((i|0)==4)break x;n=k+i|0;o=d[146266+n>>0]|0;la=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Dl(x,((a[o+-8+(g+27824)>>0]|0?la|2:la)|480)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Fl(f,g,g+28560+(n<<4<>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function sk(a,b){a=a|0;b=b|0;if((c[(c[a+28216>>2]|0)+12>>2]|0)==3)al(a,b);else bl(a,b);return}function tk(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){_k(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+26380|0;h=(c[i>>2]|0)!=3&1;k=c[b+21792>>2]>>h<<4;h=c[a+27008>>2]<<4>>h;g=c[a+26376>>2]|0;d=16<>2]|0)==0;d=(j|(k+d|0)<(h|0)?0:g)+d|0;g=k-(j?0:g)|0;if((!((h|0)<=(g|0)|(d+g|0)<0)?(f=h-g|0,e=(g|0)<0,f=((d|0)>(f|0)?f:d)+(e?g:0)|0,e=e?0:g,Zk(a,b,e,f),(c[a+25684>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)yi((c[a+24312>>2]|0)+4|0,e+-1+f|0,(c[i>>2]|0)==2&1);return}function vk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27016>>2]|0;g=(N(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26372>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return} +function YU(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=ZU(a)|0;break}d=(OT(a)|0)==0;b=ZU(a)|0;if(!d)PT(a)}else{if(!(c[27081]|0))b=0;else b=YU(c[27081]|0)|0;a=c[(WU()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=OT(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=ZU(a)|0|b;if(d|0)PT(a);a=c[a+56>>2]|0}while((a|0)!=0);XU()}while(0);return b|0}function ZU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Md[c[a+36>>2]&15](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Md[c[a+40>>2]&15](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=$U(a,b,f)|0;l=e;return d|0}function $U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=13;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=bV(e,b,d)|0;l=g;return h|0}function aV(a,b,c){a=a|0;b=b|0;c=c|0;return fV(a,b,c)|0}function bV(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=l;l=l+288|0;if((l|0)>=(m|0))W(288);I=O+8|0;J=O+17|0;K=O;L=O+16|0;if((c[b+76>>2]|0)>-1)N=OT(b)|0;else N=0;i=a[e>>0]|0;a:do if(i<<24>>24){A=b+4|0;B=b+100|0;C=b+108|0;D=b+8|0;E=J+10|0;F=J+33|0;G=J+46|0;H=J+94|0;z=I+4|0;n=e;v=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(tT(k&255)|0)){o=(a[n>>0]|0)==37;d:do if(o){k=n+1|0;p=a[k>>0]|0;e:do switch(p<<24>>24){case 37:break d;case 42:{x=0;k=n+2|0;break}default:{if(KT(p&255)|0?(a[n+2>>0]|0)==36:0){x=cV(f,(d[k>>0]|0)+-48|0)|0;k=n+3|0;break e}w=(c[f>>2]|0)+(4-1)&~(4-1);x=c[w>>2]|0;c[f>>2]=w+4}}while(0);if(!(KT(d[k>>0]|0)|0)){t=0;p=k}else{n=0;do{n=(n*10|0)+-48+(d[k>>0]|0)|0;k=k+1|0}while((KT(d[k>>0]|0)|0)!=0);t=n;p=k}o=a[p>>0]|0;r=p+1|0;if(o<<24>>24==109){k=(x|0)!=0&1;j=0;n=r;p=p+2|0;o=a[r>>0]|0;i=0}else{k=0;n=p;p=r}switch(o<<24>>24){case 104:{w=(a[p>>0]|0)==104;o=w?-2:-1;n=w?n+2|0:p;break}case 108:{w=(a[p>>0]|0)==108;o=w?3:1;n=w?n+2|0:p;break}case 106:{o=3;n=p;break}case 116:case 122:{o=1;n=p;break}case 76:{o=2;n=p;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:{o=0;break}default:{M=143;break b}}s=d[n>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:o;r=s&255;switch(r<<24>>24){case 99:{t=(t|0)>1?t:1;break}case 91:break;case 110:{dV(x,u,v,((v|0)<0)<<31>>31);o=v;break c}default:{qT(b,0);do{o=c[A>>2]|0;if(o>>>0<(c[B>>2]|0)>>>0){c[A>>2]=o+1;o=d[o>>0]|0}else o=sT(b)|0}while((tT(o)|0)!=0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}v=(c[C>>2]|0)+v+o-(c[D>>2]|0)|0}}qT(b,t);p=c[A>>2]|0;o=c[B>>2]|0;if(p>>>0>>0)c[A>>2]=p+1;else{if((sT(b)|0)<0){M=143;break b}o=c[B>>2]|0}if(o|0)c[A>>2]=(c[A>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){iX(J|0,-1,257)|0;a[J>>0]=0;if((s|0)==115){a[F>>0]=0;a[E>>0]=0;a[E+1>>0]=0;a[E+2>>0]=0;a[E+3>>0]=0;a[E+4>>0]=0}}else{s=n+1|0;r=(a[s>>0]|0)==94;o=r&1;n=r?n+2|0:s;iX(J|0,o|0,257)|0;a[J>>0]=0;switch(a[n>>0]|0){case 45:{r=(o^1)&255;a[G>>0]=r;n=n+1|0;break}case 93:{r=(o^1)&255;a[H>>0]=r;n=n+1|0;break}default:r=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{M=143;break b}case 93:break g;case 45:{p=n+1|0;o=a[p>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[J+n>>0]=r;o=a[p>>0]|0}while(n>>>0<(o&255)>>>0);n=p}else n=p;break}default:{}}while(0);a[J+((o&255)+1)>>0]=r;n=n+1|0}}while(0);o=w?t+1|0:31;s=(u|0)==1;u=(k|0)!=0;i:do if(s){if(u){i=$S(o<<2)|0;if(!i){j=0;i=0;M=143;break b}}else i=x;c[I>>2]=0;c[z>>2]=0;j=0;j:while(1){r=(i|0)==0;do{k:while(1){p=c[A>>2]|0;if(p>>>0<(c[B>>2]|0)>>>0){c[A>>2]=p+1;p=d[p>>0]|0}else p=sT(b)|0;if(!(a[J+(p+1)>>0]|0))break j;a[L>>0]=p;switch(IU(K,L,1,I)|0){case -1:{j=0;M=143;break b}case -2:break;default:break k}}if(!r){c[i+(j<<2)>>2]=c[K>>2];j=j+1|0}}while(!(u&(j|0)==(o|0)));o=o<<1|1;p=cT(i,o<<2)|0;if(!p){j=0;M=143;break b}else i=p}if(!(eV(I)|0)){j=0;M=143;break b}else{r=j;j=0;p=i}}else{if(u){j=$S(o)|0;if(!j){j=0;i=0;M=143;break b}i=0;while(1){r=i;do{i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0;if(!(a[J+(i+1)>>0]|0)){p=0;i=0;break i}p=r;r=r+1|0;a[j+p>>0]=i}while((r|0)!=(o|0));o=o<<1|1;p=cT(j,o)|0;if(!p){i=0;M=143;break b}else{i=r;j=p}}}if(!x)while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=0;j=0;p=0;i=0;break i}}j=0;while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=sT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=j;j=x;p=0;i=0;break i}a[x+j>>0]=i;j=j+1|0}}while(0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}o=o-(c[D>>2]|0)+(c[C>>2]|0)|0;if(!o)break b;if(!((o|0)==(t|0)|w^1))break b;do if(u)if(s){c[x>>2]=p;break}else{c[x>>2]=j;break}while(0);if(!w){if(p|0)c[p+(r<<2)>>2]=0;if(!j){j=0;break f}a[j+r>>0]=0}break}case 120:case 88:case 112:{o=16;M=131;break}case 111:{o=8;M=131;break}case 117:case 100:{o=10;M=131;break}case 105:{o=0;M=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{q=+rU(b,u,0);if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if(x)switch(u|0){case 0:{g[x>>2]=q;break f}case 1:{h[x>>3]=q;break f}case 2:{h[x>>3]=q;break f}default:break f}break}default:{}}while(0);do if((M|0)==131){M=0;o=rT(b,o,0,-1,-1)|0;if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){c[x>>2]=o;break}else{dV(x,u,o,y);break}}while(0);e=e+((x|0)!=0&1)|0;o=(c[C>>2]|0)+v+(c[A>>2]|0)-(c[D>>2]|0)|0;break c}while(0);n=n+(o&1)|0;qT(b,0);k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=sT(b)|0;if((k|0)!=(d[n>>0]|0)){M=23;break b}o=v+1|0}else{while(1){k=n+1|0;if(!(tT(d[k>>0]|0)|0))break;else n=k}qT(b,0);do{k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=sT(b)|0}while((tT(k)|0)!=0);if(!(c[B>>2]|0))k=c[A>>2]|0;else{k=(c[A>>2]|0)+-1|0;c[A>>2]=k}o=(c[C>>2]|0)+v+k-(c[D>>2]|0)|0}while(0);n=n+1|0;k=a[n>>0]|0;if(!(k<<24>>24))break a;else v=o}if((M|0)==23){if(c[B>>2]|0)c[A>>2]=(c[A>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{k=0;e=j;M=144}}else if((M|0)==143)if(!e){e=j;M=144}if((M|0)==144){j=e;e=-1}if(k){aT(j);aT(i)}}else e=0;while(0);if(N|0)PT(b);l=O;return e|0}function cV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function dV(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function eV(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function fV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=XT(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;gX(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function gV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=MT(a,b,f)|0;l=e;return d|0}function hV(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=CU(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=iV(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=jV(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=kV(b,c)|0;break}else{b=lV(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function iV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function jV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function kV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function lV(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+1056|0;if((l|0)>=(m|0))W(1056);w=y+1024|0;x=y;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){r=0;do{if(!(a[b+r>>0]|0)){f=0;break a}v=f&255;u=w+(v>>>5<<2)|0;c[u>>2]=c[u>>2]|1<<(v&31);r=r+1|0;c[x+(v<<2)>>2]=r;f=a[e+r>>0]|0}while(f<<24>>24!=0);o=r>>>0>1;if(o){k=1;j=1;n=0;i=-1;p=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+p>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+n|0;break}else{h=k;f=j+1|0;g=n;break}else if((f&255)>(g&255)){h=p-i|0;f=1;g=p;break}else{h=1;f=1;g=n+1|0;i=n;break}while(0);p=f+g|0;if(p>>>0>=r>>>0)break;else{k=h;j=f;n=g}}if(o){o=1;n=1;p=0;g=-1;q=1;while(1){f=a[e+(n+g)>>0]|0;j=a[e+q>>0]|0;do if(f<<24>>24==j<<24>>24)if((n|0)==(o|0)){f=o;j=1;k=o+p|0;break}else{f=o;j=n+1|0;k=p;break}else if((f&255)<(j&255)){f=q-g|0;j=1;k=q;break}else{f=1;j=1;k=p+1|0;g=p;break}while(0);q=j+k|0;if(q>>>0>=r>>>0){v=r;j=25;break}else{o=f;n=j;p=k}}}else{v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){t=(g+1|0)>>>0>(i+1|0)>>>0;f=t?f:h;t=t?g:i;u=t+1|0;if(!(IT(e,e+f|0,u)|0)){o=v-f|0;s=o;n=f}else{o=v-t+-1|0;o=(t>>>0>o>>>0?t:o)+1|0;s=0;n=o;o=v-o|0}p=v|63;q=v+-1|0;r=(s|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0>>0){i=XT(g,0,p)|0;if(i)if((i-h|0)>>>0>>0){f=0;break b}else break;else{i=g+p|0;break}}else i=g;while(0);g=d[f+q>>0]|0;c:do if(!(1<<(g&31)&c[w+(g>>>5<<2)>>2])){h=0;g=v}else{g=v-(c[x+(g<<2)>>2]|0)|0;if(g|0){h=0;g=r&(k|0)!=0&g>>>0>>0?o:g;break}j=u>>>0>k>>>0;g=j?u:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-t|0;break c}while(0);if(!j)break b;g=u;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=s;g=n;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);l=y;return f|0}function mV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function nV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(OT(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=UU(d,b)|0;PT(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=UU(d,b)|0}while(0);return e|0}function oV(a,b){a=a|0;b=b|0;return +(+pV(a,b,1))}function pV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;qT(h,0);e=+rU(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=(d|0)==0?a:a+d|0;l=i;return +e}function qV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(N(g,d)|0)|0;f=Ld[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function rV(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(lT(kb(54,d|0)|0)|0)==0&1;l=b;return a|0}function sV(){Xa(186284);return}function tV(){return 186268}function uV(){return 186276}function vV(){return 186280}function wV(){return 186284}function xV(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=$S(b)|0;if(a|0)break;a=PW()|0;if(!a){a=0;break}Qd[a&7]()}return a|0}function yV(a){a=a|0;aT(a);return}function zV(a,b){a=a|0;b=b|0;var d=0,e=0;e=BU(b)|0;d=xV(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=AV(d)|0;gX(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function AV(a){a=a|0;return a+12|0}function BV(a,b){a=a|0;b=b|0;c[a>>2]=108828;zV(a+4|0,b);return}function CV(a){a=a|0;return 1}function DV(a){a=a|0;Ub()}function EV(a){a=a|0;Ub()}function FV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(e>>>0>4294967279)DV(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=xV(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}GV(b,d,e)|0;a[f>>0]=0;HV(b+e|0,f);l=g;return}function GV(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)gX(a|0,b|0,c|0)|0;return a|0}function HV(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function IV(a){a=a|0;return BU(a)|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)iX(a|0,(KV(c)|0)&255|0,b|0)|0;return a|0}function KV(a){a=a|0;return a&255|0}function LV(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;g=h?c[d+4>>2]|0:g&255;if(g>>>0>>0)EV(b);else{g=g-e|0;FV(b,(h?c[d>>2]|0:d)+e|0,g>>>0>>0?g:f);return}}function MV(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;if((-18-d|0)>>>0>>0)DV(b);if((a[b+11>>0]|0)<0)o=c[b>>2]|0;else o=b;if(d>>>0<2147483623){k=e+d|0;n=d<<1;k=k>>>0>>0?n:k;k=k>>>0<11?11:k+16&-16}else k=-17;n=xV(k)|0;if(g|0)GV(n,o,g)|0;if(i|0)GV(n+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)GV(n+g+i|0,o+g+h|0,f)|0;if((d|0)!=10)yV(o);c[b>>2]=n;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[p>>0]=0;HV(n+i|0,p);l=q;return}function NV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;HV(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;HV(b+d|0,g);a[h>>0]=d;break}else OV(b,d-f|0,e)|0;while(0);l=j;return}function OV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0>>0){PV(b,g,h+d-g|0,h,h,0,0);f=a[j>>0]|0}if(f<<24>>24<0)g=c[b>>2]|0;else g=b;JV(g+h|0,d,e)|0;f=h+d|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;HV(g+f|0,i)}l=k;return b|0}function PV(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)DV(b);if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=xV(j)|0;if(g|0)GV(k,l,g)|0;e=f-h-g|0;if(e|0)GV(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)yV(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function QV(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;f=e<<24>>24<0;if(f)e=c[b+4>>2]|0;else e=e&255;if(e>>>0<=d>>>0)EV(b);if(f)b=c[b>>2]|0;return b+d|0}function RV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;j=b+11|0;f=a[j>>0]|0;h=f<<24>>24<0;if(h){g=(c[b+8>>2]&2147483647)+-1|0;f=c[b+4>>2]|0}else{g=10;f=f&255}if((g-f|0)>>>0>=e>>>0){if(e|0){if(h)g=c[b>>2]|0;else g=b;GV(g+f|0,d,e)|0;f=f+e|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;HV(g+f|0,i)}}else MV(b,g,f+e-g|0,f,f,0,e,d);l=k;return b|0}function SV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if(f>>>0>4294967279)DV(b);if(f>>>0<11)a[b+11>>0]=e;else{i=f+16&-16;f=xV(i)|0;c[b>>2]=f;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=f}GV(b,d,e)|0;a[g>>0]=0;HV(b+e|0,g);l=h;return}function TV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[b+(f<<2)>>2]=0;f=f+1|0}h=IV(d)|0;g=e+11|0;f=a[g>>0]|0;f=f<<24>>24<0?c[e+4>>2]|0:f&255;SV(b,d,h,f+h|0);RV(b,(a[g>>0]|0)<0?c[e>>2]|0:e,f)|0;return}function UV(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;a=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=a+32|0;d=a+24|0;i=a+16|0;g=a;e=a+36|0;a=VV()|0;if(a|0?(f=c[a>>2]|0,f|0):0){a=f+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=182247;WV(182197,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[f+44>>2]|0;else a=f+80|0;c[e>>2]=a;f=c[f>>2]|0;a=c[f+4>>2]|0;if(Md[c[(c[13138]|0)+16>>2]&15](52552,f,e)|0){i=c[e>>2]|0;i=Kd[c[(c[i>>2]|0)+8>>2]&31](i)|0;c[g>>2]=182247;c[g+4>>2]=a;c[g+8>>2]=i;WV(182111,g)}else{c[i>>2]=182247;c[i+4>>2]=a;WV(182156,i)}}WV(182235,h)}function VV(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Dc(186288,6)|0)){b=yc(c[46573]|0)|0;l=a;return b|0}else WV(182386,a);return 0}function WV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=b;d=c[27018]|0;MT(d,a,e)|0;nV(10,d)|0;Ub()}function XV(a){a=a|0;return}function YV(a){a=a|0;XV(a);yV(a);return}function ZV(a){a=a|0;return}function _V(a){a=a|0;return}function $V(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=h;if(!(dW(a,b,0)|0))if((b|0)!=0?(g=hW(b,52576,52560,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ud[c[(c[g>>2]|0)+28>>2]&255](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function aW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(dW(a,c[b+8>>2]|0,g)|0)gW(0,b,d,e,f);return}function bW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(dW(b,c[d+8>>2]|0,g)|0)){if(dW(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else fW(0,d,e,f);while(0);return}function cW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(dW(a,c[b+8>>2]|0,0)|0)eW(0,b,d,e);return}function dW(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function eW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function fW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function gW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function hW(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;if((l|0)>=(m|0))W(64);p=r;o=c[d>>2]|0;q=d+(c[o+-8>>2]|0)|0;o=c[o+-4>>2]|0;c[p>>2]=f;c[p+4>>2]=d;c[p+8>>2]=e;c[p+12>>2]=g;d=p+16|0;e=p+20|0;g=p+24|0;h=p+28|0;i=p+32|0;j=p+40|0;k=d;n=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(dW(o,f,0)|0){c[p+48>>2]=1;Wd[c[(c[o>>2]|0)+20>>2]&63](o,p,q,q,1,0);d=(c[g>>2]|0)==1?q:0}else{Vd[c[(c[o>>2]|0)+24>>2]&127](o,p,q,1,0);switch(c[p+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=r;return d|0}function iW(a){a=a|0;XV(a);yV(a);return}function jW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(dW(a,c[b+8>>2]|0,g)|0)gW(0,b,d,e,f);else{a=c[a+8>>2]|0;Wd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e,f,g)}return}function kW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if(!(dW(b,c[d+8>>2]|0,g)|0)){if(!(dW(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Vd[c[(c[i>>2]|0)+24>>2]&127](i,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;j=d+53|0;a[j>>0]=0;b=c[b+8>>2]|0;Wd[c[(c[b>>2]|0)+20>>2]&63](b,d,e,e,1,g);if(a[j>>0]|0)if(!(a[f>>0]|0)){f=1;b=11}else b=15;else{f=0;b=11}do if((b|0)==11){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(f){b=15;break}else{f=4;break}}if(f)b=15;else f=4}while(0);if((b|0)==15)f=3;c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else fW(0,d,e,f);while(0);return}function lW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(dW(a,c[b+8>>2]|0,0)|0)eW(0,b,d,e);else{a=c[a+8>>2]|0;Ud[c[(c[a>>2]|0)+28>>2]&255](a,b,d,e)}return}function mW(a){a=a|0;return}function nW(){var a=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Ac(186292,25)|0)){l=a;return}else WV(182435,a)}function oW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);aT(a);if(!(Ec(c[46573]|0,0)|0)){l=b;return}else WV(182485,b)}function pW(){var a=0,b=0;a=VV()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)qW(c[b+12>>2]|0);qW(rW()|0)}function qW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);Qd[a&7]();WV(182538,b)}function rW(){var a=0;a=c[27184]|0;c[27184]=a+0;return a|0}function sW(a){a=a|0;return}function tW(a){a=a|0;c[a>>2]=108828;xW(a+4|0);return}function uW(a){a=a|0;tW(a);yV(a);return}function vW(a){a=a|0;return wW(a+4|0)|0}function wW(a){a=a|0;return c[a>>2]|0}function xW(a){a=a|0;var b=0,d=0;if(CV(a)|0?(b=yW(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)yV(b);return}function yW(a){a=a|0;return a+-12|0}function zW(a){a=a|0;tW(a);yV(a);return}function AW(a){a=a|0;XV(a);yV(a);return}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return dW(a,b,0)|0}function CW(a){a=a|0;XV(a);yV(a);return}function DW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=j;c[d>>2]=c[c[d>>2]>>2];if(!(EW(a,b,0)|0))if(((b|0)!=0?(e=hW(b,52576,52664,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(dW(c[a>>2]|0,c[b>>2]|0,0)|0)?!(dW(c[a>>2]|0,52696,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=hW(a,52576,52560,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=hW(f,52576,52560,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ud[c[(c[i>>2]|0)+28>>2]&255](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function EW(a,b,c){a=a|0;b=b|0;c=c|0;if(dW(a,b,0)|0)a=1;else a=dW(b,52704,0)|0;return a|0}function FW(a){a=a|0;XV(a);yV(a);return}function GW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(dW(b,c[d+8>>2]|0,h)|0)gW(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;KW(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;KW(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function HW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(dW(b,c[d+8>>2]|0,g)|0)){if(!(dW(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;LW(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;LW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;LW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;LW(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;KW(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else fW(0,d,e,f);while(0);return}function IW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(dW(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;JW(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{JW(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else eW(0,d,e,f);while(0);return}function JW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ud[c[(c[a>>2]|0)+28>>2]&255](a,b,d+f|0,(g&2|0)==0?2:e);return}function KW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Wd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function LW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Vd[c[(c[a>>2]|0)+24>>2]&127](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function MW(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function NW(a){a=a|0;return}function OW(a){a=a|0;return}function PW(){var a=0;a=c[46574]|0;c[46574]=a+0;return a|0}function QW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=c[d>>2];a=Md[c[(c[a>>2]|0)+16>>2]&15](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function RW(a){a=a|0;if(!a)a=0;else a=(hW(a,52576,52664,0)|0)!=0&1;return a|0}function SW(){}function TW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (y=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function UW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (y=d,a-c>>>0|0)|0}function VW(a){a=a|0;return (a?31-(Q(a^a-1)|0)|0:32)|0}function WW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (y=n,f)|0}else{if(!g){n=0;f=0;return (y=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (y=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (y=n,f)|0}g=h-1|0;if(g&h|0){i=(Q(h|0)|0)+33-(Q(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (y=o,p)|0}else{p=VW(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (y=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (y=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (y=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((VW(i|0)|0)>>>0);return (y=o,p)|0}g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (y=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=TW(m|0,l|0,-1,-1)|0;d=y;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;UW(k|0,d|0,e|0,n|0)|0;p=y;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=UW(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=y;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (y=o,p)|0}function XW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=UW(j^a|0,i^b|0,j|0,i|0)|0;g=y;a=f^j;b=e^i;return UW((WW(h,g,UW(f^c|0,e^d|0,f|0,e|0)|0,y,0)|0)^a|0,y^b|0,a|0,b|0)|0}function YW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=N(e,f)|0;d=a>>>16;a=(c>>>16)+(N(e,d)|0)|0;e=b>>>16;b=N(e,f)|0;return (y=(a>>>16)+(N(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function ZW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=YW(e,f)|0;a=y;return (y=(N(b,f)|0)+(N(d,e)|0)+a|a&0,c|0|0)|0}function _W(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=UW(h^a|0,g^b|0,h|0,g|0)|0;b=y;WW(a,b,UW(k^d|0,j^e|0,k|0,j|0)|0,y,i)|0;e=UW(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=y;l=f;return (y=d,e)|0}function $W(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return WW(a,b,c,d,0)|0}function aX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>c;return a>>>c|(b&(1<>c-32|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>>c;return a>>>c|(b&(1<>>c-32|0}function cX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b<>>32-c;return a<>8&255|0}function eX(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function fX(a){a=+a;return a>=0.0?+z(a+.5):+M(a-.5)}function gX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return dc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function hX(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else gX(b,c,d)|0;return b|0}function iX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function jX(a){a=a|0;return 0}function kX(a){a=a|0;return 0}function lX(a){a=a|0;return 0}function mX(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){V()|0;eb(12);return -1}c[i>>2]=b;if((b|0)>(U()|0)?(T()|0)==0:0){c[i>>2]=d;eb(12);return -1}return d|0}function nX(a,b){a=a|0;b=+b;return +Gd[a&15](+b)}function oX(a,b,c){a=a|0;b=b|0;c=+c;return +Hd[a&0](b|0,+c)}function pX(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Id[a&0](b|0,+c,+d)}function qX(a){a=a|0;return Jd[a&1]()|0}function rX(a,b){a=a|0;b=b|0;return Kd[a&31](b|0)|0}function sX(a,b,c){a=a|0;b=b|0;c=c|0;return Ld[a&15](b|0,c|0)|0}function tX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Md[a&15](b|0,c|0,d|0)|0}function uX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Nd[a&3](b|0,c|0,d|0,e|0)|0}function vX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Od[a&63](b|0,c|0,d|0,e|0,f|0)|0}function wX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Pd[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function xX(a){a=a|0;Qd[a&7]()}function yX(a,b){a=a|0;b=b|0;Rd[a&31](b|0)}function zX(a,b,c){a=a|0;b=b|0;c=c|0;Sd[a&255](b|0,c|0)}function AX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Td[a&1023](b|0,c|0,d|0)}function BX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ud[a&255](b|0,c|0,d|0,e|0)}function CX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Vd[a&127](b|0,c|0,d|0,e|0,f|0)}function DX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Wd[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function EX(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Xd[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function FX(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Yd[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function GX(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Zd[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function HX(a){a=+a;X(0);return 0.0}function IX(a){a=+a;return +Fc(+a)}function JX(a){a=+a;return +Zb(+a)}function KX(a){a=+a;return +Hc(+a)}function LX(a){a=+a;return +Xb(+a)}function MX(a){a=+a;return +Wb(+a)}function NX(a){a=+a;return +Vb(+a)}function OX(a){a=+a;return +ec(+a)}function PX(a){a=+a;return +rc(+a)}function QX(a){a=+a;return +fc(+a)}function RX(a,b){a=a|0;b=+b;Y(1);return 0.0}function SX(a,b,c){a=a|0;b=+b;c=+c;Z(2);return 0.0}function TX(){_(3);return 0}function UX(a){a=a|0;$(4);return 0}function VX(a,b){a=a|0;b=b|0;aa(5);return 0}function WX(a,b,c){a=a|0;b=b|0;c=c|0;ba(6);return 0}function XX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(7);return 0}function YX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;da(8);return 0}function ZX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ea(9);return 0}function _X(){fa(10)}function $X(){$a()}function aY(a){a=a|0;ga(11)}function bY(a,b){a=a|0;b=b|0;ha(12)}function cY(a,b,c){a=a|0;b=b|0;c=c|0;ia(13)}function dY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ja(14)}function eY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(15)}function fY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;la(16)}function gY(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;ma(17)}function hY(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;na(18)}function iY(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;oa(19)} // EMSCRIPTEN_END_FUNCS -var Gd=[JX,FT,ET,SU,KX,LX,MX,NX,OX,PX,QX,RX,SX,GQ,JX,JX];var Hd=[TX];var Id=[UX];var Jd=[VX,df];var Kd=[WX,Pf,Og,Qg,Sg,Zh,WN,_R,aS,bS,nS,kT,xW,Ze,ef,vh,Ah,zm,lR,jR,yR,HR,LR,OS,WX,WX,WX,WX,WX,WX,WX,WX];var Ld=[XX,Pg,KP,$R,mS,kf,Mg,gk,MM,PM,cR,XX,XX,XX,XX,XX];var Md=[YX,ZN,tO,lT,mT,qT,pU,bW,DW,FW,je,nf,$g,cV,YX,YX];var Nd=[ZX,Rg,hf,ZX];var Od=[_X,mg,Am,Bm,Cm,Dm,Em,Fm,Gm,Hm,Im,Jm,Km,Lm,Mm,Nm,Om,Pm,Qm,Rm,Sm,Tm,Um,Vm,Wm,Xm,Ym,Zm,_m,$m,an,bn,cn,dn,en,fn,gn,hn,jn,kn,ln,ZR,SS,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X,_X];var Pd=[$X,Qf,XN,rO,YR,RS,$X,$X];var Qd=[aY,bY,WV,PN,DR,ER,pW,aY];var Rd=[cY,Me,Ne,Oe,Se,Te,Ue,Rf,Tg,YN,sO,ZV,_V,$V,aW,kW,vW,wW,BW,CW,EW,HW,_e,ke,PS,qW,cY,cY,cY,cY,cY,cY];var Sd=[dY,Qe,We,he,ie,jf,le,me,ne,oe,lh,oh,zn,FJ,EJ,nK,mK,XK,WK,FL,EL,nM,mM,Ko,Jo,Mo,Lo,Oo,No,Po,Qo,Ro,So,To,Uo,Vo,Wo,Xo,Yo,Zo,_o,$o,ap,bp,cp,dp,ip,hp,jp,kp,lp,mp,np,sp,tp,up,eq,dq,gq,fq,iq,hq,jq,kq,lq,mq,nq,oq,pq,qq,rq,sq,tq,uq,vq,Aq,zq,Bq,Cq,Dq,Eq,Hq,Iq,Jq,tr,sr,vr,ur,xr,wr,yr,zr,Ar,Br,Cr,Dr,Er,Fr,Gr,Hr,Ir,Jr,Kr,Pr,Or,Qr,Rr,Sr,Tr,Wr,Xr,Yr,Is,Hs,Ks,Js,Ms,Ls,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Xs,Ys,Zs,ct,bt,dt,et,ft,gt,jt,kt,lt,Xt,Wt,Zt,Yt,$t,_t,au,bu,cu,du,eu,fu,gu,hu,iu,ju,ku,lu,mu,ru,qu,su,tu,uu,vu,yu,zu,Au,gp,fp,ep,rp,qp,pp,op,yq,xq,wq,Gq,Fq,Nr,Mr,Lr,Vr,Ur,at,$s,_s,it,ht,pu,ou,nu,xu,wu,gP,VP,UP,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY];var Td=[eY,Pe,Re,Ve,ff,gf,lf,pe,qe,rJ,qJ,tJ,sJ,uJ,vJ,wJ,xJ,DJ,cK,dK,eK,fK,lK,MK,NK,OK,PK,VK,uL,vL,wL,xL,DL,cM,dM,eM,fM,lM,dv,iv,nv,sv,xv,Cv,Hv,Mv,Rv,Wv,$v,ew,jw,ow,tw,yw,Dw,Iw,Nw,Sw,Xw,ax,fx,kx,px,ux,zx,Ex,Jx,Ox,Tx,Yx,by,gy,ly,qy,vy,Ay,Fy,Ky,Py,Uy,Zy,cz,hz,mz,rz,wz,Bz,Gz,Lz,Qz,Vz,_z,dA,iA,nA,sA,xA,CA,HA,MA,RA,WA,$A,eB,jB,oB,tB,yB,DB,IB,NB,SB,XB,aC,fC,kC,pC,uC,zC,EC,JC,OC,TC,YC,bD,gD,lD,qD,vD,AD,FD,KD,PD,UD,ZD,cE,hE,mE,rE,wE,BE,GE,LE,QE,VE,_E,dF,iF,nF,sF,cv,hv,mv,rv,wv,Bv,Gv,Lv,Qv,Vv,_v,dw,iw,nw,sw,xw,Cw,Hw,Mw,Rw,Ww,$w,ex,jx,ox,tx,yx,Dx,Ix,Nx,Sx,Xx,ay,fy,ky,py,uy,zy,Ey,Jy,Oy,Ty,Yy,bz,gz,lz,qz,vz,Az,Fz,Kz,Pz,Uz,Zz,cA,hA,mA,rA,wA,BA,GA,LA,QA,VA,_A,dB,iB,nB,sB,xB,CB,HB,MB,RB,WB,$B,eC,jC,oC,tC,yC,DC,IC,NC,SC,XC,aD,fD,kD,pD,uD,zD,ED,JD,OD,TD,YD,bE,gE,lE,qE,vE,AE,FE,KE,PE,UE,ZE,cF,hF,mF,rF,bv,gv,lv,qv,vv,Av,Fv,Kv,Pv,Uv,Zv,cw,hw,mw,rw,ww,Bw,Gw,Lw,Qw,Vw,_w,dx,ix,nx,sx,xx,Cx,Hx,Mx,Rx,Wx,$x,ey,jy,oy,ty,yy,Dy,Iy,Ny,Sy,Xy,az,fz,kz,pz,uz,zz,Ez,Jz,Oz,Tz,Yz,bA,gA,lA,qA,vA,AA,FA,KA,PA,UA,ZA,cB,hB,mB,rB,wB,BB,GB,LB,QB,VB,_B,dC,iC,nC,sC,xC,CC,HC,MC,RC,WC,$C,eD,jD,oD,tD,yD,DD,ID,ND,SD,XD,aE,fE,kE,pE,uE,zE,EE,JE,OE,TE,YE,bF,gF,lF,qF,av,fv,kv,pv,uv,zv,Ev,Jv,Ov,Tv,Yv,bw,gw,lw,qw,vw,Aw,Fw,Kw,Pw,Uw,Zw,cx,hx,mx,rx,wx,Bx,Gx,Lx,Qx,Vx,_x,dy,iy,ny,sy,xy,Cy,Hy,My,Ry,Wy,$y,ez,jz,oz,tz,yz,Dz,Iz,Nz,Sz,Xz,aA,fA,kA,pA,uA,zA,EA,JA,OA,TA,YA,bB,gB,lB,qB,vB,AB,FB,KB,PB,UB,ZB,cC,hC,mC,rC,wC,BC,GC,LC,QC,VC,_C,dD,iD,nD,sD,xD,CD,HD,MD,RD,WD,$D,eE,jE,oE,tE,yE,DE,IE,NE,SE,XE,aF,fF,kF,pF,$u,ev,jv,ov,tv,yv,Dv,Iv,Nv,Sv,Xv,aw,fw,kw,pw,uw,zw,Ew,Jw,Ow,Tw,Yw,bx,gx,lx,qx,vx,Ax,Fx,Kx,Px,Ux,Zx,cy,hy,my,ry,wy,By,Gy,Ly,Qy,Vy,_y,dz,iz,nz,sz,xz,Cz,Hz,Mz,Rz,Wz,$z,eA,jA,oA,tA,yA,DA,IA,NA,SA,XA,aB,fB,kB,pB,uB,zB,EB,JB,OB,TB,YB,bC,gC,lC,qC,vC,AC,FC,KC,PC,UC,ZC,cD,hD,mD,rD,wD,BD,GD,LD,QD,VD,_D,dE,iE,nE,sE,xE,CE,HE,ME,RE,WE,$E,eF,jF,oF,bo,eo,co,fo,go,ho,jo,io,ko,lo,mo,no,oo,Zn,$n,qo,ro,so,po,to,uo,vo,vp,wp,xp,yp,Hp,Ip,Jp,Kp,Lp,Mp,Np,Op,Pp,Qp,Fp,Gp,Rp,Sp,Kq,Lq,Mq,Nq,Wq,Xq,Yq,Zq,_q,$q,ar,br,cr,dr,Uq,Vq,er,fr,Zr,_r,$r,as,js,ks,ls,ms,ns,os,ps,qs,rs,ss,hs,is,ts,us,mt,nt,ot,pt,yt,zt,At,Bt,Ct,Dt,Et,Ft,Gt,Ht,wt,xt,It,Jt,Bu,Cu,Du,Eu,_n,ao,wo,Wn,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY];var Ud=[fY,eW,nW,KW,mf,Bf,Af,Yf,RJ,SJ,TJ,ZJ,$J,_J,bK,aK,zK,AK,BK,HK,JK,IK,LK,KK,hL,iL,jL,pL,rL,qL,tL,sL,RL,SL,TL,ZL,$L,_L,bM,aM,zM,AM,BM,HM,JM,IM,LM,KM,xo,yo,zo,Ao,Bo,Co,Do,Eo,Fo,Go,Ho,Io,Cp,Bp,Ep,Dp,Tp,Up,Vp,Wp,Xp,Yp,Zp,_p,$p,aq,bq,cq,Rq,Qq,Tq,Sq,gr,hr,ir,jr,kr,lr,mr,nr,or,pr,qr,rr,es,ds,gs,fs,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,tt,st,vt,ut,Kt,Lt,Mt,Nt,Ot,Pt,Qt,Rt,St,Tt,Ut,Vt,Iu,Hu,Ku,Ju,Pu,Uu,Ou,Tu,Nu,Su,Mu,Ru,Lu,Qu,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY];var Vd=[gY,dW,mW,JW,yJ,zJ,BJ,AJ,CJ,OJ,PJ,QJ,UJ,WJ,VJ,YJ,XJ,gK,hK,jK,iK,kK,wK,xK,yK,CK,EK,DK,GK,FK,QK,RK,TK,SK,UK,eL,fL,gL,kL,mL,lL,oL,nL,yL,zL,BL,AL,CL,OL,PL,QL,UL,WL,VL,YL,XL,gM,hM,jM,iM,kM,wM,xM,yM,CM,EM,DM,GM,FM,zp,Ap,Oq,Pq,bs,cs,qt,rt,Fu,Gu,QS,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY];var Wd=[hY,cW,lW,IW,Rh,GJ,HJ,IJ,JJ,oK,pK,qK,rK,YK,ZK,_K,$K,GL,HL,IL,JL,oM,pM,qM,rM,bJ,aJ,dJ,cJ,fJ,eJ,hJ,gJ,jJ,iJ,lJ,kJ,nJ,mJ,pJ,oJ,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY,hY];var Xd=[iY,KJ,LJ,MJ,NJ,sK,tK,uK,vK,aL,bL,cL,dL,KL,LL,ML,NL,sM,tM,uM,vM,iY,iY,iY,iY,iY,iY,iY,iY,iY,iY,iY];var Yd=[jY,Vn];var Zd=[kY,Yn,Xn,kY];return{__GLOBAL__sub_I_FlvClient_cpp:of,__GLOBAL__sub_I_bind_cpp:_S,___cxa_can_catch:SW,___cxa_is_pointer_type:TW,___divdi3:ZW,___emscripten_environ_constructor:uV,___errno_location:oT,___getTypeName:aT,___muldi3:$W,___remdi3:aX,___udivdi3:bX,__get_daylight:wV,__get_environ:yV,__get_timezone:xV,__get_tzname:vV,_bitshift64Ashr:cX,_bitshift64Lshr:dX,_bitshift64Shl:eX,_fflush:_U,_free:cT,_i64Add:VW,_i64Subtract:WW,_llvm_bswap_i16:fX,_llvm_bswap_i32:gX,_llvm_round_f64:hX,_main:fe,_malloc:bT,_memalign:hT,_memcpy:iX,_memmove:jX,_memset:kX,_pthread_cond_broadcast:lX,_pthread_mutex_lock:mX,_pthread_mutex_unlock:nX,_sbrk:oX,_strlen:DU,dynCall_dd:pX,dynCall_did:qX,dynCall_didd:rX,dynCall_i:sX,dynCall_ii:tX,dynCall_iii:uX,dynCall_iiii:vX,dynCall_iiiii:wX,dynCall_iiiiii:xX,dynCall_iiiiiii:yX,dynCall_v:zX,dynCall_vi:AX,dynCall_vii:BX,dynCall_viii:CX,dynCall_viiii:DX,dynCall_viiiii:EX,dynCall_viiiiii:FX,dynCall_viiiiiiii:GX,dynCall_viiiiiiiii:HX,dynCall_viiiiiiiiii:IX,establishStackSpace:be,getTempRet0:ee,runPostSets:UW,setTempRet0:de,setThrew:ce,stackAlloc:_d,stackRestore:ae,stackSave:$d}}) +var Gd=[HX,DT,CT,QU,IX,JX,KX,LX,MX,NX,OX,PX,QX,EQ,HX,HX];var Hd=[RX];var Id=[SX];var Jd=[TX,bf];var Kd=[UX,Nf,Mg,Og,Qg,Xh,UN,YR,_R,$R,lS,iT,vW,Xe,cf,th,yh,xm,jR,hR,wR,FR,JR,MS,UX,UX,UX,UX,UX,UX,UX,UX];var Ld=[VX,Ng,IP,ZR,kS,hf,Kg,ek,KM,NM,aR,VX,VX,VX,VX,VX];var Md=[WX,XN,rO,jT,kT,oT,nU,$V,BW,DW,je,lf,Zg,aV,WX,WX];var Nd=[XX,Pg,ff,XX];var Od=[YX,kg,ym,zm,Am,Bm,Cm,Dm,Em,Fm,Gm,Hm,Im,Jm,Km,Lm,Mm,Nm,Om,Pm,Qm,Rm,Sm,Tm,Um,Vm,Wm,Xm,Ym,Zm,_m,$m,an,bn,cn,dn,en,fn,gn,hn,jn,XR,QS,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX,YX];var Pd=[ZX,Of,VN,pO,WR,PS,ZX,ZX];var Qd=[_X,$X,UV,NN,BR,CR,nW,_X];var Rd=[aY,Ke,Le,Me,Qe,Re,Se,Pf,Rg,WN,qO,XV,YV,ZV,_V,iW,tW,uW,zW,AW,CW,FW,Ye,ke,NS,oW,aY,aY,aY,aY,aY,aY];var Sd=[bY,Oe,Ue,he,ie,gf,le,me,ne,oe,jh,mh,xn,DJ,CJ,lK,kK,VK,UK,DL,CL,lM,kM,Io,Ho,Ko,Jo,Mo,Lo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,Wo,Xo,Yo,Zo,_o,$o,ap,bp,gp,fp,hp,ip,jp,kp,lp,qp,rp,sp,cq,bq,eq,dq,gq,fq,hq,iq,jq,kq,lq,mq,nq,oq,pq,qq,rq,sq,tq,yq,xq,zq,Aq,Bq,Cq,Fq,Gq,Hq,rr,qr,tr,sr,vr,ur,wr,xr,yr,zr,Ar,Br,Cr,Dr,Er,Fr,Gr,Hr,Ir,Nr,Mr,Or,Pr,Qr,Rr,Ur,Vr,Wr,Gs,Fs,Is,Hs,Ks,Js,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Xs,at,$s,bt,ct,dt,et,ht,it,jt,Vt,Ut,Xt,Wt,Zt,Yt,_t,$t,au,bu,cu,du,eu,fu,gu,hu,iu,ju,ku,pu,ou,qu,ru,su,tu,wu,xu,yu,ep,dp,cp,pp,op,np,mp,wq,vq,uq,Eq,Dq,Lr,Kr,Jr,Tr,Sr,_s,Zs,Ys,gt,ft,nu,mu,lu,vu,uu,eP,TP,SP,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY,bY];var Td=[cY,Ne,Pe,Te,df,ef,jf,pe,qe,pJ,oJ,rJ,qJ,sJ,tJ,uJ,vJ,BJ,aK,bK,cK,dK,jK,KK,LK,MK,NK,TK,sL,tL,uL,vL,BL,aM,bM,cM,dM,jM,bv,gv,lv,qv,vv,Av,Fv,Kv,Pv,Uv,Zv,cw,hw,mw,rw,ww,Bw,Gw,Lw,Qw,Vw,_w,dx,ix,nx,sx,xx,Cx,Hx,Mx,Rx,Wx,$x,ey,jy,oy,ty,yy,Dy,Iy,Ny,Sy,Xy,az,fz,kz,pz,uz,zz,Ez,Jz,Oz,Tz,Yz,bA,gA,lA,qA,vA,AA,FA,KA,PA,UA,ZA,cB,hB,mB,rB,wB,BB,GB,LB,QB,VB,_B,dC,iC,nC,sC,xC,CC,HC,MC,RC,WC,$C,eD,jD,oD,tD,yD,DD,ID,ND,SD,XD,aE,fE,kE,pE,uE,zE,EE,JE,OE,TE,YE,bF,gF,lF,qF,av,fv,kv,pv,uv,zv,Ev,Jv,Ov,Tv,Yv,bw,gw,lw,qw,vw,Aw,Fw,Kw,Pw,Uw,Zw,cx,hx,mx,rx,wx,Bx,Gx,Lx,Qx,Vx,_x,dy,iy,ny,sy,xy,Cy,Hy,My,Ry,Wy,$y,ez,jz,oz,tz,yz,Dz,Iz,Nz,Sz,Xz,aA,fA,kA,pA,uA,zA,EA,JA,OA,TA,YA,bB,gB,lB,qB,vB,AB,FB,KB,PB,UB,ZB,cC,hC,mC,rC,wC,BC,GC,LC,QC,VC,_C,dD,iD,nD,sD,xD,CD,HD,MD,RD,WD,$D,eE,jE,oE,tE,yE,DE,IE,NE,SE,XE,aF,fF,kF,pF,$u,ev,jv,ov,tv,yv,Dv,Iv,Nv,Sv,Xv,aw,fw,kw,pw,uw,zw,Ew,Jw,Ow,Tw,Yw,bx,gx,lx,qx,vx,Ax,Fx,Kx,Px,Ux,Zx,cy,hy,my,ry,wy,By,Gy,Ly,Qy,Vy,_y,dz,iz,nz,sz,xz,Cz,Hz,Mz,Rz,Wz,$z,eA,jA,oA,tA,yA,DA,IA,NA,SA,XA,aB,fB,kB,pB,uB,zB,EB,JB,OB,TB,YB,bC,gC,lC,qC,vC,AC,FC,KC,PC,UC,ZC,cD,hD,mD,rD,wD,BD,GD,LD,QD,VD,_D,dE,iE,nE,sE,xE,CE,HE,ME,RE,WE,$E,eF,jF,oF,_u,dv,iv,nv,sv,xv,Cv,Hv,Mv,Rv,Wv,$v,ew,jw,ow,tw,yw,Dw,Iw,Nw,Sw,Xw,ax,fx,kx,px,ux,zx,Ex,Jx,Ox,Tx,Yx,by,gy,ly,qy,vy,Ay,Fy,Ky,Py,Uy,Zy,cz,hz,mz,rz,wz,Bz,Gz,Lz,Qz,Vz,_z,dA,iA,nA,sA,xA,CA,HA,MA,RA,WA,$A,eB,jB,oB,tB,yB,DB,IB,NB,SB,XB,aC,fC,kC,pC,uC,zC,EC,JC,OC,TC,YC,bD,gD,lD,qD,vD,AD,FD,KD,PD,UD,ZD,cE,hE,mE,rE,wE,BE,GE,LE,QE,VE,_E,dF,iF,nF,Zu,cv,hv,mv,rv,wv,Bv,Gv,Lv,Qv,Vv,_v,dw,iw,nw,sw,xw,Cw,Hw,Mw,Rw,Ww,$w,ex,jx,ox,tx,yx,Dx,Ix,Nx,Sx,Xx,ay,fy,ky,py,uy,zy,Ey,Jy,Oy,Ty,Yy,bz,gz,lz,qz,vz,Az,Fz,Kz,Pz,Uz,Zz,cA,hA,mA,rA,wA,BA,GA,LA,QA,VA,_A,dB,iB,nB,sB,xB,CB,HB,MB,RB,WB,$B,eC,jC,oC,tC,yC,DC,IC,NC,SC,XC,aD,fD,kD,pD,uD,zD,ED,JD,OD,TD,YD,bE,gE,lE,qE,vE,AE,FE,KE,PE,UE,ZE,cF,hF,mF,$n,bo,ao,co,eo,fo,ho,go,io,jo,ko,lo,mo,Xn,Zn,oo,po,qo,no,ro,so,to,tp,up,vp,wp,Fp,Gp,Hp,Ip,Jp,Kp,Lp,Mp,Np,Op,Dp,Ep,Pp,Qp,Iq,Jq,Kq,Lq,Uq,Vq,Wq,Xq,Yq,Zq,_q,$q,ar,br,Sq,Tq,cr,dr,Xr,Yr,Zr,_r,hs,is,js,ks,ls,ms,ns,os,ps,qs,fs,gs,rs,ss,kt,lt,mt,nt,wt,xt,yt,zt,At,Bt,Ct,Dt,Et,Ft,ut,vt,Gt,Ht,zu,Au,Bu,Cu,Yn,_n,uo,Un,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY,cY];var Ud=[dY,cW,lW,IW,kf,zf,yf,Wf,PJ,QJ,RJ,XJ,ZJ,YJ,$J,_J,xK,yK,zK,FK,HK,GK,JK,IK,fL,gL,hL,nL,pL,oL,rL,qL,PL,QL,RL,XL,ZL,YL,$L,_L,xM,yM,zM,FM,HM,GM,JM,IM,vo,wo,xo,yo,zo,Ao,Bo,Co,Do,Eo,Fo,Go,Ap,zp,Cp,Bp,Rp,Sp,Tp,Up,Vp,Wp,Xp,Yp,Zp,_p,$p,aq,Pq,Oq,Rq,Qq,er,fr,gr,hr,ir,jr,kr,lr,mr,nr,or,pr,cs,bs,es,ds,ts,us,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,rt,qt,tt,st,It,Jt,Kt,Lt,Mt,Nt,Ot,Pt,Qt,Rt,St,Tt,Gu,Fu,Iu,Hu,Nu,Su,Mu,Ru,Lu,Qu,Ku,Pu,Ju,Ou,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY,dY];var Vd=[eY,bW,kW,HW,wJ,xJ,zJ,yJ,AJ,MJ,NJ,OJ,SJ,UJ,TJ,WJ,VJ,eK,fK,hK,gK,iK,uK,vK,wK,AK,CK,BK,EK,DK,OK,PK,RK,QK,SK,cL,dL,eL,iL,kL,jL,mL,lL,wL,xL,zL,yL,AL,ML,NL,OL,SL,UL,TL,WL,VL,eM,fM,hM,gM,iM,uM,vM,wM,AM,CM,BM,EM,DM,xp,yp,Mq,Nq,$r,as,ot,pt,Du,Eu,OS,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY,eY];var Wd=[fY,aW,jW,GW,Ph,EJ,FJ,GJ,HJ,mK,nK,oK,pK,WK,XK,YK,ZK,EL,FL,GL,HL,mM,nM,oM,pM,$I,_I,bJ,aJ,dJ,cJ,fJ,eJ,hJ,gJ,jJ,iJ,lJ,kJ,nJ,mJ,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY,fY];var Xd=[gY,IJ,JJ,KJ,LJ,qK,rK,sK,tK,_K,$K,aL,bL,IL,JL,KL,LL,qM,rM,sM,tM,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY,gY];var Yd=[hY,Tn];var Zd=[iY,Wn,Vn,iY];return{__GLOBAL__sub_I_FlvClient_cpp:mf,__GLOBAL__sub_I_bind_cpp:YS,___cxa_can_catch:QW,___cxa_is_pointer_type:RW,___divdi3:XW,___emscripten_environ_constructor:sV,___errno_location:mT,___getTypeName:_S,___muldi3:ZW,___remdi3:_W,___udivdi3:$W,__get_daylight:uV,__get_environ:wV,__get_timezone:vV,__get_tzname:tV,_bitshift64Ashr:aX,_bitshift64Lshr:bX,_bitshift64Shl:cX,_fflush:YU,_free:aT,_i64Add:TW,_i64Subtract:UW,_llvm_bswap_i16:dX,_llvm_bswap_i32:eX,_llvm_round_f64:fX,_main:fe,_malloc:$S,_memalign:fT,_memcpy:gX,_memmove:hX,_memset:iX,_pthread_cond_broadcast:jX,_pthread_mutex_lock:kX,_pthread_mutex_unlock:lX,_sbrk:mX,_strlen:BU,dynCall_dd:nX,dynCall_did:oX,dynCall_didd:pX,dynCall_i:qX,dynCall_ii:rX,dynCall_iii:sX,dynCall_iiii:tX,dynCall_iiiii:uX,dynCall_iiiiii:vX,dynCall_iiiiiii:wX,dynCall_v:xX,dynCall_vi:yX,dynCall_vii:zX,dynCall_viii:AX,dynCall_viiii:BX,dynCall_viiiii:CX,dynCall_viiiiii:DX,dynCall_viiiiiiii:EX,dynCall_viiiiiiiii:FX,dynCall_viiiiiiiiii:GX,establishStackSpace:be,getTempRet0:ee,runPostSets:SW,setTempRet0:de,setThrew:ce,stackAlloc:_d,stackRestore:ae,stackSave:$d}}) // EMSCRIPTEN_END_ASM diff --git a/js/flv.html b/js/flv.html index 48b2b39c..5ca6c287 100644 --- a/js/flv.html +++ b/js/flv.html @@ -31,8 +31,8 @@ function test() { //mc.connect("182.16.68.70:81", "live", "") - fc.play("ws://localhost:8080/live/user1", webGLCanvas) - // fc.play("ws://test.qihaipi.com/gnddragon/test1.flv",webGLCanvas) + // fc.play("ws://localhost:8080/live/user1", webGLCanvas) + fc.play("ws://test.qihaipi.com/gnddragon/h2642.flv", webGLCanvas) //fc.play("ws://192.168.2.205:8088/live/user1.flv", document.getElementById("canvas")); //fc.play("ws://182.16.68.41:8088/live/test.flv", webGLCanvas); //mc.connect("113.10.201.210:81", "live", "") @@ -91,7 +91,7 @@ postRun: function() { webGLCanvas = new WebGLCanvas(document.getElementById("canvas"), Module["noWebGL"], {}); fc = new FlvClient(); - fc.videoBuffer = 0; + fc.videoBuffer = 1; fc.audioBuffer = 12; fc.onNetStatus = function(info) { console.log(info.code); diff --git a/public/H5LiveClient.js b/public/H5LiveClient.js index 1c991c38..bd2129e5 100644 --- a/public/H5LiveClient.js +++ b/public/H5LiveClient.js @@ -1,23 +1,23 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){Module["printErr"]("node.js exiting due to unhandled promise rejection");process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};Module["setWindowTitle"]=(function(title){document.title=title})}else{throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)")}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;stackSave=stackRestore=stackAlloc=setTempRet0=getTempRet0=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){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(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function makeBigInt(low,high,unsigned){return unsigned?+(low>>>0)+ +(high>>>0)*4294967296:+(low>>>0)+ +(high|0)*4294967296}function dynCall(sig,ptr,args){if(args&&args.length){assert(args.length==sig.length-1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{assert(sig.length==1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}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 allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval((function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;Module.printErr("still waiting on run dependencies:")}Module.printErr("dependency: "+dep)}if(shown){Module.printErr("(end of list)")}}),1e4)}}else{Module.printErr("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{Module.printErr("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+333248;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_H5LiveClient_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})},{func:(function(){___emscripten_environ_constructor()})});memoryInitializer="data:application/octet-stream;base64,qJoCAF6jAgBYmwIAH6MCAAAAAAABAAAACAAAAAAAAAComgIAiaMCAKiaAgDYpAIAPJsCAOKkAgAAAAAAMAAAADybAgDtpAIAAQAAADAAAAComgIAYaUCAFibAgA/pQIAAAAAAAIAAAAwAAAAAgAAAFgAAAACUAAA0JoCADClAgBgAAAAAAAAADybAgCGpQIAAAAAAIAAAAA8mwIAlqUCAAEAAACAAAAAqJoCAMClAgDQmgIAuKUCALAAAAAAAAAAnPcCAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACk9wIAAwEAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKz3AgADAAAAIAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAACAAAAAIAAAAHAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAIAAAAAgAAAAcAAAACAAAAAAAAAAMAAAACAAAAAAAAAAgAAAACAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsvcCAAMAAAAgAAAAAAAAAAAAAAADAAAAAgAAAAAAAAAIAAAAAgAAAAcAAAADAAAAAAAAAAMAAAABAAAAAAAAAAgAAAACAAAABwAAAAIAAAAAAAAAAwAAAAAAAAAAAAAACAAAAAIAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC49wIAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD3AgADAAAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyPcCAAMCAgAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ9wIAAwIAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHyCAwABAAAAQAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANj3AgAAAAAA4fcCAAEAAAAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADn9wIAAQAAAAQAAAAAAAAAAAAAAAEAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO33AgABAAAAAgAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8vcCAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD79wIAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT4AgADAAAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADfgCAAMBAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV+AIAAwIAAAAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABgAAAAAAAAAAAAAACAAAAAUAAAAHAAAAAQAAAAAAAAAGAAAAAwAAAAAAAAAIAAAABQAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/4AgADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAABgAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJPgCAAMAAAAkAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAQAAAABAAAAAAAAAAIAAAADAAAAAQAAAAIAAAAAAAAABAAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp+AIAAwAAAGAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAMAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADP4AgADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOPgCAAMAAAAkAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAQAAAABAAAAAAAAAAIAAAADAAAAAQAAAAIAAAAAAAAABAAAAAMAAAAAAAAAAQAAAAMAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9+AIAAwAAAGAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEf4AgADAQEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATPgCAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAABAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABR+AIABAAAAKAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAAFb4AgAEAAAAoAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAW/gCAAQAAACgAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAAAAABg+AIABAAAAKAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAAAAAAAGX4AgABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG74AgAAAAAAdPgCAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAffgCAAAAAACD+AIAAwABABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIv4AgADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlPgCAAQBAQCQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAACd+AIAAwAAACEAAAAAAAAAAAAAAAYAAAAAAAAAAAAAABAAAAAFAAAADwAAAAEAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKX4AgADAAAAIAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArfgCAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC2+AIAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL/4AgADAAAAIQAAAAAAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyPgCAAMAAAAgAAAAAAAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADR+AIAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANr4AgADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4/gCAAMAAAAhAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs+AIAAwAAACAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPX4AgAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPkCAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+QIAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABX5AgADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIfkCAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt+QIAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADn5AgADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARfkCAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABR+QIAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF35AgAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ/kCAAMAAAAgAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAQAAAAMAAAACAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABw+QIAAwAAACEAAAAAAAAAAAAAAAIAAAD/////AAAAAAQAAAABAAAAAwAAAAAAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHn5AgADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgvkCAAMAAAAhAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACL+QIAAgAAAIAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACP+QIAAAAAAJb5AgADAAAAIQAAAAAAAAAAAAAABgAAAAQAAAAAAAAAEAAAAAUAAAAPAAAABQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAAAAAAAAAAABAAAAAFAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnvkCAAMAAAAgAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACm+QIAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALH5AgADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvPkCAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADI+QIAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANT5AgADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4PkCAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs+QIAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPf5AgADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvoCAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+gIAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABr6AgADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJfoCAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw+gIAAwAAADAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADX6AgADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPfoCAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABF+gIAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE76AgADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV/oCAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg+gIAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGn6AgAEAQAAkAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAcvoCAAQAAACQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAB7+gIABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAIf6AgAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAk/oCAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACf+gIABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAKv6AgAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAt/oCAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAADD+gIABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAND6AgAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAA3foCAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADq+gIABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAPf6AgAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAABPsCAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAR+wIABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAB77AgAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAK/sCAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAA4+wIABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAEX7AgAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAUvsCAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAABf+wIAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGX7AgADAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAEAAAADAAAAAUAAAALAAAAAQAAAAAAAAAGAAAAAgAAAAQAAAAMAAAABQAAAAsAAAADAAAAAAAAAAYAAAAEAAAABAAAAAwAAAAFAAAACwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbfsCAAMAAAABAAAAAAAAAAAAAAAGAAAAAAAAAAQAAAAMAAAABQAAAAsAAAABAAAAAAAAAAYAAAACAAAABAAAAAwAAAAFAAAACwAAAAMAAAAAAAAABgAAAAQAAAAEAAAADAAAAAUAAAALAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1+wIAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAEAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHr7AgADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAAAAAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgfsCAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAAAAAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAAAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACI+wIABAAAAKEAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAJH7AgAEAAAAoAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAmvsCAAQAAAChAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAACj+wIABAAAAKAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAKz7AgADAQAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtPsCAAIAAACBAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAAAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7+wIAAgAAAIAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAML7AgAEAAAAsAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAyPsCAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAADS+wIABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAANz7AgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4PsCAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADl+wIAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPH7AgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9vsCAAMAAAAgAAAAAAAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7+wIAAwAAACAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8AgADAAAAIAAAAAAAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABfwCAAMAAAAgAAAAAAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK/AIAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABb8AgADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIvwCAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAu/AIAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADr8AgADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARvwCAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABS/AIAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF78AgADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAavwCAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2/AIAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIL8AgADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjvwCAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACa/AIAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKP8AgADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArPwCAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC1/AIAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL78AgADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx/wCAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADT/AIAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/8AgADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6/wCAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3/AIAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAb9AgADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFf0CAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk/QIAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADP9AgADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQv0CAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABR/QIAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGD9AgADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAb/0CAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0/QIAAwABABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAID9AgADAAEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjP0CAAMAAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACY/QIAAwABABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKT9AgAEAAAAgAAAAAAAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAAAAAArf0CAAQAAACBAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAAAAAC2/QIAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMf9AgADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAGAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAYAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAABgAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzv0CAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAABgAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAGAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADV/QIABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAN/9AgAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAADAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAA6f0CAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADz/QIABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAP39AgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACP4CAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEf4CAAAAAAAX/gIAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg/gIAAAAAACb+AgABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/+AgAAAAAANf4CAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPv4CAAAAAABE/gIAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEv+AgADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAQAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUv4CAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABY/gIAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg/gIAAAAAAGX+AgABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG3+AgAAAAAAcv4CAAMAAAAxAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8/gIAAwAAADACAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIb+AgAEAAAAsQIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAQAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAADAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAAAAAAkf4CAAQAAACwAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAMAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAACc/gIAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKb+AgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAADwiAMAAAAAAAwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAD8iAMAAAAAABACAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAHiQMAAAAAABQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAASiQMAAAAAABgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAaiQMAAAAAABwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAiiQMAAAAAACACAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAtiQMAAAAAACQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAA3iQMAAAAAACgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAABCiQMAAAAAABQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAABMiQMAUIkDADQCAAAAAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwB6iQMAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwCFiQMAkIkDAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwDGiQMAy4kDAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwDsiQMA94kDAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwASigMAAAAAAAAAAAAKAAAAIAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwAWigMAAAAAAAAAAAAKAAAAQAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwAiigMAK4oDAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwBfigMAAAAAAAAAAAAKAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAEyJAwBsigMAfYoDAAAAAAAKAAAAAAIAAAAAAAAAAAAA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kZADAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAC2QAwCokAMAspADAJwAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAADkkAMA75ADAKAAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAALkQMAFpEDAKQAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAAxkQMAOJEDAKgAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAABGkQMAUJEDAKwAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAACAkQMAhZEDAJwCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BEwAAAICRAwA/kAMAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwAAtwMAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwCgkQMAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwCnkQMAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwCxkQMAAAAAAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwCEkAMAAAAAAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwC1kQMAAAAAAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwC/kQMAAAAAAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwDNkQMAAAAAAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwDZkQMAAAAAAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwDkkQMAAAAAAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAICRAwDpkQMA8ZEDAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99B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EQAAAAAAAADDmgMAzJoDAAwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAAAAAAADmwMAD5sDABABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAAAAAABJmwMAAAAAAMwCAAABAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAEmbAwBRmwMAAAAAAAAAAAAKAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAEmbAwBZmwMAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwBimwMAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwBqmwMAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwBymwMAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwB6mwMAAAAAAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwCBmwMAAAAAAAAAAAAKAAAAHAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwCLmwMAAAAAAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwCSmwMAAAAAAAAAAAAKAAAAJgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwCamwMAAAAAAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwComwMAAAAAAAAAAAAKAAAAgwAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwC1mwMAAAAAAAAAAAAKAAAAFAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwC5mwMAAAAAAAAAAAAKAAAAHgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwDAmwMAAAAAAAAAAAAKAAAAKAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwDKmwMAAAAAAAAAAAAKAAAAMgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwDVmwMAAAAAAAAAAAAKAAAAPAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwDfmwMAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAEmbAwDomwMAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAEmbAwDzmwMAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAEmbAwD+mwMAAAAAAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAEmbAwAInAMAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAEmbAwAPnAMAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAEmbAwAUnAMAAAAAANACAAABAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAABScAwBRmwMAAAAAAAAAAAAKAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAABScAwAanAMAIZwDAKgCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BGgAAAAAAAABMnAMAW5wDANwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABwnAMAfJwDAOABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAACOnAMAl5wDAOQBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAACrnAMAs5wDAOgBAAABAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAOOUAwDPnAMA1pwDABQBAAABAAAA7AAAAAAAAAAAAAAAAADwPwAAAADA/99AEQAAAAAAAAD/nAMABp0DABgBAAABAAAASg4AAAAAAAAAAAAAAADwPwAAAADA/99AEQAAAAAAAAAvnQMANJ0DABwBAAABAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABvnQMAgJ0DANQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwC+nQMAyJ0DANgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwD5nQMABJ4DANwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwAqngMAL54DAAAAAAAKAAAA8P////////8AAAAAAADgwQAAwP///99BEgAAALSdAwBAngMASJ4DAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwBfngMAZZ4DAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwCGngMAjJ4DAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwCtngMAs54DAAAAAAAKAAAAIAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwDXngMA354DAAAAAAAKAAAAGAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwACnwMABp8DAAAAAAAKAAAAMAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAALSdAwAZnwMAJp8DACABAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAABBAEQAAAAAAAABmnwMAcJ8DACQBAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRAEQAAAAAAAACenwMAqZ8DACgBAAABAAAAGQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAADNnwMA0p8DACwBAAABAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAAHoAMAFKADADABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAAvoAMAN6ADAOwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGQAAAAAAAABcoAMAAAAAADQBAAABAAAAAAEAAAAAAAAAAAAAAAAAAAAAwP///99BEQAAAAAAAABqoAMAeKADADgBAAABAAAAKAAAAAAAAAAAAAAAAADwPwAAwP///99BEQAAAAAAAAChoAMAAAAAADgAAAABAAAA//////////8AAAAAAADgwQAAwP///99BGQAAAAAAAACzoAMAAAAAAPABAAABAAAA//////////8AAAAAAADgwQAAwP///99BCQAAAAAAAADIoAMAAAAAAPQBAAABAAAA//////////8AAAAAAADgwQAAwP///99BCQAAAAAAAADdoAMA8qADAPgBAAACAAAA//////////8AAAAAAADwvwAAAAAAAOBDEQAAAAAAAAAsoQMAAAAAAKQCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BAAAAAAAAAABAoQMAAAAAAHgBAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBDCwAAAEChAwBPoQMAAAAAAIABAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBDCgAAAE+hAwBmoQMAAAAAAMgBAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD//+9HEQAAAAAAAAB1oQMAAAAAAMwBAAAEAAAAAAAAAAAACEAAAAAAAAAAAAAAAOD//+9HEQAAAAAAAACEoQMAAAAAAFQAAAABAAAAAQAAAAAAAAAAAAAAAADwPwAAwP///99BGwAAAAAAAACUoQMApKEDADwBAAABAAAAAgAAAAAAAAAAAAAAAADwPwAAwP///99BEwAAALShAwDJoQMAz6EDAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwBRmwMA1qEDAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwDioQMA6aEDAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwDyoQMA+qEDAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwAEogMADqIDAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwAaogMAJKIDAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwAwogMANaIDAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwA6ogMAQaIDAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwBJogMAUqIDAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwBeogMAUqIDAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwBpogMAcqIDAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwB+ogMAh6IDAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwCTogMAnaIDAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwCnogMA1qEDAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALShAwCzogMAvaIDAEABAAABAAAAAgAAAAAAAAAAAAAAAADwPwAAwP///99BEwAAANyiAwDJoQMAz6EDAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBRmwMA1qEDAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDrogMA6aEDAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDzogMA+qEDAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAEogMADqIDAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAaogMAJKIDAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwD7ogMAAqMDAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAJowMAEKMDAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAUowMAG6MDAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwArowMAOKMDAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBGowMATqMDAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBWowMAY6MDAAAAAAAKAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBxowMAe6MDAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwCMowMAlqMDAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwCnowMAsaMDAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBJogMAUqIDAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwC8owMAyaMDAAAAAAAKAAAAEgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwCnogMA1qEDAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDWowMAEKMDAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDaowMAG6MDAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDjowMAOKMDAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwDwowMATqMDAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwD3owMAY6MDAAAAAAAKAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAEpAMAe6MDAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwARpAMAlqMDAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwBeogMAUqIDAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAANyiAwAepAMAKaQDAEQBAAABAAAAAgAAAAAAAAAAAAAAAAAAAAAAwP///99BEwAAADWkAwBFpAMASaQDAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwDJoQMAz6EDAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwBRmwMA1qEDAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwBNpAMAUaQDAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwDyoQMA+qEDAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwAEogMADqIDAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAADWkAwAaogMAJKIDAAAAAAAKAAAA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qZ0jPwoFJj8FZig/gsAqP2kULT+lYS8/HagxP7znMz9sIDY/FlI4P6R8Oj8DoDw/G7w+P9rQQD8p3kI/9eNEPyriRj+z2Eg/f8dKP3muTD+QjU4/r2RQP8YzUj/D+lM/k7lVPyZwVz9qHlk/UMRaP8dhXD++9l0/J4NfP/IGYT8QgmI/c/RjPwteZT/MvmY/qBZoP5FlaT97q2o/WOhrPx0cbT++Rm4/MGhvP2aAcD9Xj3E/+JRyPz+Rcz8ihHQ/l211P5dNdj8XJHc/EPF3P3u0eD9Obnk/hB56PxbFej/8YXs/MfV7P7B+fD9z/nw/dHR9P7HgfT8jQ34/yZt+P53qfj+dL38/x2p/Pxicfz+Pw38/KeF/P+b0fz/E/n8/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA63bWO9bWoDxyBAY9mJc7PYMicT1tUZM9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u4B/P2eAfz9FgH8/AACAP+//fz+9/38/BP9/P0T8fz84838/BeB/P9HMfz/Xw38/BcF/P03Afz8awH8/GsB/PwAAgD8AAIA/3v9/P3r/fz8Z/n8/lPl/PwLwfz9x5n8/6+F/P3rgfz8m4H8/BeB/PwXgfz8AAIA/AACAP+//fz+9/38/Ff9/P8r8fz8B+H8/OPN/P+3wfz9F8H8/E/B/PwLwfz8C8H8/AACAPwAAgD8AAIA/3v9/P4v/fz9t/n8/Afx/P5T5fz93+H8/I/h/PwH4fz8B+H8/Afh/PwAAgD8AAIA/AACAP+//fz+9/38/N/9/P/j9fz/K/H8/RPx/PxH8fz8B/H8/Afx/PwH8fz8AAIA/AACAPwAAgD8AAIA/3v9/P5v/fz8E/38/bf5/Pxn+fz8J/n8/Cf5/Pwn+fz/4/X8/AACAPwAAgD8AAIA/AACAP+//fz/O/38/ev9/Pzf/fz8V/38/BP9/PwT/fz8E/38/BP9/PwAAgD8AAIA/AACAPwAAgD8AAIA/3v9/P73/fz+b/38/i/9/P3r/fz96/38/ev9/P3r/fz8AAIA/AACAPwAAgD8AAIA/AACAP+//fz/e/38/zv9/P73/fz+9/38/vf9/P73/fz+9/38/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/7/9/P97/fz/e/38/3v9/P97/fz/e/38/3v9/PwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD/v/38/7/9/P+//fz/v/38/7/9/P+//fz8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD+wD3w8/z34POnwcD0qjuM9zcxMPp+qqj4AAAA/sKoqP83MTD87jmM/6fBwPxA+eD+7D3w/9wN+PwABfz9FgH8/CcB/PwXgfz8C8H8/Afh/PwH8fz/4/X8/BP9/P3r/fz+9/38/3v9/P+//fz8AAIA/AACAPwAAgD8AAIA/whP+O/xC/jv7//47BvoAPGbhBjzecx48sA98PCv8GT0NHPA9em+sPmHjKj+FlGM/hT54PzUffDzETXw8/gd9PBDwfzyKx4U8Wu+cPP89+DznZ5Q9/+lWPgT+AD+h9Uw/c/RwP/4PfD8ZTfg8L3r4PMAu+TxhAPw8JaEDPSv8GT3p8HA91GAKPv2hsT7fiys/ZadjP/c/eD8ZBH4/Ef9wPaMpcT2d03E9Mnt0PfsPfz3nZ5Q9Ko7jPS3Pcz4A4QM/nG5NPxH/cD+2EHw/EQF/P7+a4z0FweM9iljkPRe25j0NHPA91GAKPs3MTD5C7MQ+exQuP/rxYz+JRXg/fQR+P0WAfz8G10w+svVMPqRwTT4QWk8+/+lWPi3Pcz6fqqo+6zgOP/c8Tz/QKHE/mBN8P0MBfz8awH8/1bGqPhHHqj5DHKs+em+sPv2hsT5C7MQ+AAAAP3PbNj98DWU/r1t4P+4Ffj9ngH8/BeB/P/8DAD/+DwA/5j8APwT+AD8A4QM/6zgOP7CqKj9QVVU/FcdxPwAffD/8AX8/GsB/PwLwfz86rio/6bgqP2HjKj/fiys/exQuP3PbNj/NzEw/MLpoP5KveD+zC34/u4B/PwXgfz8B+H8/W89MPwbXTD+h9Uw/nG5NP/c8Tz9QVVU/O45jPz7Pcz8wSnw/7gR/P03Afz8C8H8/Afx/P82PYz+FlGM/ZadjP/rxYz98DWU/MLpoP+nwcD+UwXk/pyF+Pz2Cfz8m4H8/Afh/P/j9fz/U8XA/c/RwPxH/cD/QKHE/FcdxPz7Pcz8QPng/5NZ8P/EPfz8FwX8/E/B/PwH8fz8E/38/hT54P/c/eD+JRXg/r1t4P5KveD+UwXk/uw98P/Vofj++h38/euB/PwH4fz8J/n8/ev9/P/4PfD+2EHw/mBN8PwAffD8wSnw/5NZ8P/cDfj/bM38/18N/P0Xwfz8B/H8/BP9/P73/fz8ZBH4/fQR+P+4Ffj+zC34/pyF+P/Vofj8AAX8/xJl/P+vhfz8j+H8/Cf5/P3r/fz/e/38/EQF/P0MBfz/8AX8/7gR/P/EPfz/bM38/RYB/P9HMfz/t8H8/Efx/PwT/fz+9/38/7/9/P0WAfz9ngH8/u4B/Pz2Cfz++h38/xJl/PwnAfz9x5n8/d/h/Pwn+fz96/38/3v9/PwAAgD8awH8/GsB/P03Afz8FwX8/18N/P9HMfz8F4H8/OPN/P0T8fz8E/38/vf9/P+//fz8AAIA/BeB/PwXgfz8m4H8/euB/P+vhfz9x5n8/AvB/P5T5fz8Z/n8/ev9/P97/fz8AAIA/AACAPwLwfz8C8H8/E/B/P0Xwfz/t8H8/OPN/PwH4fz/K/H8/Ff9/P73/fz/v/38/AACAPwAAgD8B+H8/Afh/PwH4fz8j+H8/d/h/P5T5fz8B/H8/bf5/P4v/fz/e/38/AACAPwAAgD8AAIA/Afx/PwH8fz8B/H8/Efx/P0T8fz/K/H8/+P1/Pzf/fz+9/38/7/9/PwAAgD8AAIA/AACAP/j9fz8J/n8/Cf5/Pwn+fz8Z/n8/bf5/PwT/fz+b/38/3v9/PwAAgD8AAIA/AACAPwAAgD8E/38/BP9/PwT/fz8E/38/Ff9/Pzf/fz96/38/zv9/P+//fz8AAIA/AACAPwAAgD8AAIA/ev9/P3r/fz96/38/ev9/P4v/fz+b/38/vf9/P97/fz8AAIA/AACAPwAAgD8AAIA/AACAP73/fz+9/38/vf9/P73/fz+9/38/zv9/P97/fz/v/38/AACAPwAAgD8AAIA/AACAPwAAgD/e/38/3v9/P97/fz/e/38/3v9/P97/fz/v/38/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/7/9/P+//fz/v/38/7/9/P+//fz/v/38/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPxsv+DzVW+M9PzmqPkPIKT9+/GE/PWB2P7sPfD80hn0/guR9Pxr8fT8AAn4/ggN+P9UDfj8sAHw8SrhwPXwpTD73A/4+gEVKPwBzbT8QPng/hxh7P8zRez9DAHw/3Qt8P9AOfD+ID3w/N/T9OwUC+DzWxOI9QuioPgEvJz/LZ10/6fBwPz1gdj/vxXc/+x94P4c2eD8pPHg/mz14Pwzxfjud0Xs8DA9wPZFFSj7/Pfg+NQxDPzuOYz8Ac20/Ag9wP0q4cD/B4nA/X+1wPw/wcD84cP86/cT9O0tO9zwzcOA9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ILKqAM54AwCHzvoA23gDAHeImQDqeAMAsMTeAPl4AwD//+AABXkDAAD/AAAKeQMAMs0yABR5AwD68OYAGnkDAP8A/wAieQMAgAAAACl5AwBmzaoAOnkDAAAAzQBFeQMAulXTAFJ5AwCTcNgAX3kDADyzcQBueQMAe2juAH55AwAA+poAkHkDAEjRzACgeQMAxxWFALB5AwAZGXAAvXkDAPX/+gDHeQMA/+ThANF5AwD/5LUA2nkDAP/erQDmeQMAAACAAOt5AwD99eYA83kDAICAAAD5eQMAa44jAAN6AwD/pQAACnoDAP9FAAAUegMA2nDWABt6AwDu6KoAKXoDAJj7mAAzegMAr+7uAEF6AwDYcJMAT3oDAP/v1QBaegMA/9q5AGR6AwDNhT8AaXoDAP/AywBuegMA3aDdAHN6AwCw4OYAfnoDAIAAgACFegMA/wAAAIl6AwC8j48Ak3oDAEFp4QCdegMAi0UTAKl6AwD6gHIAsHoDAPSkYAC7egMALotXAMR6AwD/9e4AzXoDAKBSLQDUegMAwMDAANt6AwCHzusA43oDAGpazQDtegMAcICQAPd6AwD/+voA/HoDAAD/fwAIewMARoK0ABJ7AwDStIwAFnsDAACAgAAbewMA2L/YACN7AwD/Y0cAKnsDAEDg0AA0ewMA7oLuADt7AwD13rMAQXsDAP///wBHewMA9fX1AFJ7AwD//wAAWXsDAJrNMgDsewMA+XsDAIZ7AwCPewMAeHsDAH57AwCDewMAlnsDAJ57AwCnewMArXsDALN7AwC3ewMAvHsDAMF7AwDIewMA0nsDANp7AwDjewMA1XwDADB1AADpAwAA2nwDABkAAAABAAAA3nwDADB1AADpAwAA5HwDABkAAAABAAAA6XwDADB1AADpAwAA73wDABkAAAABAAAAMKIDABgAAAABAAAA9HwDAMBdAADpAwAA1XwDANACAADgAQAA2nwDANACAABAAgAA3nwDAGABAADwAAAA5HwDAGABAAAgAQAA6XwDAIACAADgAQAA73wDAAADAABAAgAAMKIDAGABAADwAAAA9HwDAGABAADwAAAAL30DAIAAAABgAAAANX0DALAAAACQAAAAOn0DAGABAAAgAQAAPn0DAMACAABAAgAAQ30DAIAFAACABAAASX0DAKAAAAB4AAAAT30DAEABAADwAAAAVH0DAIACAADgAQAAWH0DACADAABYAgAAXX0DAAAEAAAAAwAAYX0DAEAGAACwBAAAZn0DAAAIAAAABgAAa30DAAAFAAAABAAAcH0DAAAKAAAACAAAdn0DAAAUAAAAEAAAfH0DAFQDAADgAQAAgX0DAFYFAAAAAwAAhn0DAEAGAAAABAAAjH0DAIAHAACwBAAAkn0DAAAKAABABgAAmH0DAIAMAAAACAAAn30DAAAPAABgCQAApn0DAAAZAAAAEAAArX0DAAAeAADAEgAAtH0DAEABAADIAAAAuH0DAIACAABeAQAAvH0DAFQDAADgAQAAwn0DAAAFAADQAgAAyH0DAIAHAAA4BAAAz30DAAAIAAA4BAAA0n0DAAAIAAA4BAAA2H0DAM4HAAA4BAAA330DAAAIAABaAwAA530DAAAQAABwCAAA6n0DAAAQAABwCAAA8H0DAJwPAABwCAAA930DAAAQAAC0BgAA/30DAIACAABoAQAAA34DAPAAAACgAAAACX4DAJABAADwAAAAD34DALABAADwAAAAFn4DAOABAABAAQAAG34DAMADAAAcAgAAH34DAAAPAABwCAAAJ34DAAAeAADgEAAA3H4CAAAAAAAEgAMABwAAAHB1AABkCTgABAAAAAAAAAADAAAACAAAAAUAAAAJAAAAAAAAANCMAgAAAAAAXKsDAAUAAAAAAAAAZAk4AAAAAAAAAAAABAAAAAoAAAAAAAAAAAAAAAAAAAAoTQIA8IsCAByMAgAAAAAAAgAAwAMAAMAEAADABQAAwAYAAMAHAADACAAAwAkAAMAKAADACwAAwAwAAMANAADADgAAwA8AAMAQAADAEQAAwBIAAMATAADAFAAAwBUAAMAWAADAFwAAwBgAAMAZAADAGgAAwBsAAMAcAADAHQAAwB4AAMAfAADAAAAAswEAAMMCAADDAwAAwwQAAMMFAADDBgAAwwcAAMMIAADDCQAAwwoAAMMLAADDDAAAww0AANMOAADDDwAAwwAADLsBAAzDAgAMwwMADMMEAAzTCJgCAAUAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAEAAAAtREFAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABAAAAL0RBQAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAK/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhJgCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJDnAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwIAAAAAAAAAqM0AABAAAAARAAAAEgAAABMAAAAHAAAAAQAAAAEAAAABAAAAAAAAANDNAAAQAAAAFAAAABIAAAATAAAABwAAAAIAAAACAAAAAgAAAAAAAADgzQAAFQAAABYAAAAMAAAAAAAAAPDNAAAVAAAAFwAAAAwAAAAAAAAAIM4AABAAAAAYAAAAEgAAABMAAAAIAAAAAAAAABDOAAAQAAAAGQAAABIAAAATAAAACQAAAAAAAACgzgAAEAAAABoAAAASAAAAEwAAAAcAAAADAAAAAwAAAAMAAAADAAQAAgAFABAAHwAvAD8AXwB/AJ8AvwDfAP8APwF/Af8B/wL/A/8HAAAEAAgADAAQABQAGAAgACgAMABAAFwAgAAAAAQACAAMABAAFAAYACAAKAAwAEAAXACAAAAABAAIAAwAEAAUABwAJAAsADgARABQAGAAcACAAAAABAAIAAwAEAAUABgAHAAkACwANABAAEwAXABsAIAAAAAEAAgADAAQABQAGAAcACAAKAAwADwASABYAGwAgAAAAAQACAAMABAAFAAYABwAJAAsADQAPABIAFgAbACAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwARABMAFQAXABkAHAAfACIAJQApAC4ANAA7AAMASwBTAFsAYwBrAHMAQACAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAQABIAFAAWABgAGwAeACEAJAAoACwAMAA1ADsAAQBIAFAAWABgAGgAcAB4AEAAgAABAAIAAwAEAAUABgAHAAgACQAKAAsADQAPABEAFAAXABoAHgAjACkAMAA4AAAASABQAFgAYABoAHAAeABAAIAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOABAAEgAUABYAGAAbAB4AIQAkACcAKwAvADUAPAAEAEwAVABcAGQAbAB4AEAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAASABQAFgAYABoAHAAfACIAJQApAC0AMgA4AAAASABQAFgAYABoAHAAeABAAAEAAgADAAQABQAGAAcACAAJAAoACwANAA8AEQAUABcAGgAeACMAKQAwADgAAABIAFAAWABgAGgAcAB4AEAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOABAAEgAUABYAGAAbAB4AIQAkACcAKwAvADUAPAAFAFAAYABwAEAAkACgALAAgADQAOAA8ADAAQAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOABAAEgAUABYAGQAcAB8AIwAnACsAMAA2ADwAAwBMAFYAYABqAHQAfgBIAJIAnACmALAAugCEAM4A2ADiAOwA9gDAAQAAAQACAAMABAAFAAYABwAIAAkACgAMAA4AEAASABQAFgAYABsAHgAhACQAKAAsADEANgA8AAIASQBQAFgAYABoAHAAeABAAIgAkACYAKAAqACwALgAgADIANAA2ADgAOgAwAEAAAEAAgADAAQABQAGAAcACAAJAAoADAAOABAAEgAUABYAGAAbAB4AIQAkACgALAAxADYAPAACAEkAUABYAGAAaABwAHgAQACIAJAAmACgAKgAsAC4AIAAyADQANgA4ADoAPAA+ADAAQAAAQACAAMABAAFAAYABwAIAAkACgALAA0ADwARABMAFQAXABkAGwAdAB8AIgAlACgAKwAvADMANwA8AAEARwBNAFQAWwBjAGwAdQB/AEoAlgCjALAAgADQAOAA8ADAAQAAAgAEAAYACAAKAAwADgAQABIAFAAWABkAHAAfACIAJQAoACsALgAxADUAOQA9AAEARgBLAFAAVgBcAGMAagByAHsARQCPAJoApgCzAIEA0ADgAPAAwAEAAAMABgAJAAwADwASABUAGAAbAB4AIQAkACcAKwAvADMANwA7AD8AAwBIAE0AUgBXAF0AYwBpAHAAdwB/AEgAkQCbAKYAsgC/AI0A3ADsAMABAAAAQACAAMABAAFAAYABgAHAAIQARAAEAoACgAEAAUABgAHAAgACQAKAAsADAAJAA4ACwAMAA0ADgAPABAADQAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQABEAAQAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATAAEA//8CAAIAAgABAAIAAAACAAMAAgACEAIAARACAAAQAgADEAIAAiACAAEgAgAAIAIAAyACAAIPAgABDwIAAA8CAAMPAgACHwIAAR8CAAAfAgADHwIAAi8CAAEvAgAALwIAAy8EAP//CBABABAwAgAgMAIAQDAEAEAyBAAIEAEAEBACACAQAgBAEAQAAPEBAAgQAQAIQAEACFABABAwAgAgMAIAEMACACDAAgAQkAIAIJACABBgAgAgYAIAELACACCwAgAQ4AIAIOACABBwAgAgcAIAENACACDQAgAQ8AIAIPACAEDwBAAAAQEACBABAAhAAQAIUAEAEDACACAwAgAQwAIAIMACABDwAgAg8AIAQDAEAEDABABA8AQAAAGAAQACAAMDAAMAAwADAAQABAAEAAQASDVMQ0Jhc2UAJHBsYXkAb25EYXRhACRjbG9zZQBkZWNvZGVWaWRlb0J1ZmZlcgBpc1BsYXlpbmcAZmx2TW9kZQBhdWRpb0J1ZmZlcgB2aWRlb0J1ZmZlcgBINUxpdmVDbGllbnQAY2xvc2UAd2ViR0xDYW52YXMAaXNXZWJHTAB3ZWJnbDolcwB0cnVlAGZhbHNlAC5mbHYAV2ViU29ja2V0AGJpbmFyeVR5cGUAYXJyYXlidWZmZXIAb25tZXNzYWdlAG9uZXJyb3IAb25FcnJvcgB3cwBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMjFfX2Jhc2ljX3N0cmluZ19jb21tb25JTGIxRUVFAGJpbmQATjEwZW1zY3JpcHRlbjN2YWxFAGRhdGEAZXJyb3IgdHlwZSA6JWQAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBwbGF5QXVkaW8AaW5pdEF1ZGlvAGFhYyBpbml0ISAlZABhdWRpbyBpbml0ISAlZAAhISVzCgBhYWMgc2FtcGxlcmF0ZTolZCBjaGFubmVsczolZABnb3QgaDI2NCB2aWRlbwBnb3QgaDI2NSB2aWRlbwBPbmx5IHN1cHBvcnQgdmlkZW8gaC4yNjQvYXZjIG9yIGguMjY1L2hldmMgY29kZWMuIGFjdHVhbD0lZAB2aWRlbyBpbmZvIHNldCEAcGxheVZpZGVvQnVmZmVyAHRpbWVzcGFuAGNsZWFyVGltZW91dAA4SDVMQ0Jhc2UAUDhINUxDQmFzZQBQSzhINUxDQmFzZQBpaQB2AHZpaWkAdmlpAGlpaQBub3RpZnlPbkRlc3RydWN0aW9uAGltcGxlbWVudABleHRlbmQAMTJINUxpdmVDbGllbnQATjEwZW1zY3JpcHRlbjd3cmFwcGVySThINUxDQmFzZUVFAE4xMGVtc2NyaXB0ZW44aW50ZXJuYWwxMVdyYXBwZXJCYXNlRQBQMTJINUxpdmVDbGllbnQAUEsxMkg1TGl2ZUNsaWVudABpaWlpAEZGTXBlZyBpbml0ADZGRm1wZWcAMTJWaWRlb0RlY29kZXIAY29kZWMgPSAlZAB2aWRlbyBkZWNvZGVyIHJlbGVhc2UhCgBGRk1wZWcgZGVzdG9yeQBjb2RlYyA9ICVkLHB0ciA9ICVkAGF2Y29kZWNfb3BlbjI6JWQAJTAyeCwAY29uc29sZQBmZm1wZWcgZGVjb2RlIHJldDolZABjYW52YXM6JWQsJWQAc2V0VmlkZW9TaXplAGRyYXcARmx2RGVjb2RlciByZWxlYXNlIQoAYXVkaW8gZGVjb2RlciByZWxlYXNlCgBhdWRpbyBkZWNvZGVyIHJlbGVhc2UhCgBfX2Rlc3RydWN0AGcgYSAgIG8gciBlIG4gICB0IGggZyBpIHIgeSBwIG8gY05vIGVycm9yAEdhaW4gY29udHJvbCBub3QgeWV0IGltcGxlbWVudGVkAFB1bHNlIGNvZGluZyBub3QgYWxsb3dlZCBpbiBzaG9ydCBibG9ja3MASW52YWxpZCBodWZmbWFuIGNvZGVib29rAFNjYWxlZmFjdG9yIG91dCBvZiByYW5nZQBVbmFibGUgdG8gZmluZCBBRFRTIHN5bmN3b3JkAENoYW5uZWwgY291cGxpbmcgbm90IHlldCBpbXBsZW1lbnRlZABDaGFubmVsIGNvbmZpZ3VyYXRpb24gbm90IGFsbG93ZWQgaW4gZXJyb3IgcmVzaWxpZW50IGZyYW1lAEJpdCBlcnJvciBpbiBlcnJvciByZXNpbGllbnQgc2NhbGVmYWN0b3IgZGVjb2RpbmcARXJyb3IgZGVjb2RpbmcgaHVmZm1hbiBzY2FsZWZhY3RvciAoYml0c3RyZWFtIGVycm9yKQBFcnJvciBkZWNvZGluZyBodWZmbWFuIGNvZGV3b3JkIChiaXRzdHJlYW0gZXJyb3IpAE5vbiBleGlzdGVudCBodWZmbWFuIGNvZGVib29rIG51bWJlciBmb3VuZABJbnZhbGlkIG51bWJlciBvZiBjaGFubmVscwBNYXhpbXVtIG51bWJlciBvZiBiaXRzdHJlYW0gZWxlbWVudHMgZXhjZWVkZWQASW5wdXQgZGF0YSBidWZmZXIgdG9vIHNtYWxsAEFycmF5IGluZGV4IG91dCBvZiByYW5nZQBNYXhpbXVtIG51bWJlciBvZiBzY2FsZWZhY3RvciBiYW5kcyBleGNlZWRlZABRdWFudGlzZWQgdmFsdWUgb3V0IG9mIHJhbmdlAExUUCBsYWcgb3V0IG9mIHJhbmdlAEludmFsaWQgU0JSIHBhcmFtZXRlciBkZWNvZGVkAFNCUiBjYWxsZWQgd2l0aG91dCBiZWluZyBpbml0aWFsaXNlZABVbmV4cGVjdGVkIGNoYW5uZWwgY29uZmlndXJhdGlvbiBjaGFuZ2UARXJyb3IgaW4gcHJvZ3JhbV9jb25maWdfZWxlbWVudABGaXJzdCBTQlIgZnJhbWUgaXMgbm90IHRoZSBzYW1lIGFzIGZpcnN0IEFBQyBmcmFtZQBVbmV4cGVjdGVkIGZpbGwgZWxlbWVudCB3aXRoIFNCUiBkYXRhAE5vdCBhbGwgZWxlbWVudHMgd2VyZSBwcm92aWRlZCB3aXRoIFNCUiBkYXRhAExUUCBkZWNvZGluZyBub3QgYXZhaWxhYmxlAE91dHB1dCBkYXRhIGJ1ZmZlciB0b28gc21hbGwAQ1JDIGVycm9yIGluIERSTSBkYXRhAFBOUyBub3QgYWxsb3dlZCBpbiBEUk0gZGF0YSBzdHJlYW0ATm8gc3RhbmRhcmQgZXh0ZW5zaW9uIHBheWxvYWQgYWxsb3dlZCBpbiBEUk0AUENFIHNoYWxsIGJlIHRoZSBmaXJzdCBlbGVtZW50IGluIGEgZnJhbWUAQml0c3RyZWFtIHZhbHVlIG5vdCBhbGxvd2VkIGJ5IHNwZWNpZmljYXRpb24ATUFJTiBwcmVkaWN0aW9uIG5vdCBpbml0aWFsaXNlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAgADAAQABQAGAAcACAAJAg0CEQIVAhkCHQIhBDEGAAAAAAAAAAABAAEAAgADAAQABQAGAAcACAAJAQsBDQEPAREBEwEVARcBGQEbAR0BHwEhAiUCKQItAzUDPQNFBAAAAAABAAEAAgACAAMAAwAEAAQABQAFAAYABgAHAAcACAAIAAkACQAKAAsADAANAA4ADwAQAhQCGAMgAygEOAcAAAAAAQABAAIAAgADAAMABAAEAAUABQAGAAYABwAHAAgACAAJAQsBDQEPAREBEwEVARcBGQIdAiECJQMtBD0GAAAAAAAAAAABAAEAAgACAAMAAwAEAAQABQAFAAYABwAIAAkACgALAAwADQEPAREBEwEVARcCGwIfAiMDKwMzBQAAAAAAAAAAAQABAAEAAQACAAIAAgACAAMAAwAEAAQABQAFAAYABgAHAAcACAAIAAkACQAKAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkBGwEdAR8BIQEjASUBJwEpAi0CMQI1AjkCPQJBA0kDUQNZA2EEcQSBBJEGAAAAAAEAAQACAAMABAAFAAYABwAIAQoBDAEOAhICFgIaAh4DJgMuAzYDPgNGA04DVgRmBHYEhgSWBbYF1gX2BwEAAAAABQEAAAAF/wAAAAUAAAD/BQABAAAFAAAAAQUAAP8ABQAAAQAFAP8AAAcB/wAAB/8BAAAHAAD/AQcAAf8ABwD/AQAHAAAB/wcBAQAABwAA//8H//8AAAcA//8ABwEA/wAHAAEA/wf/AAEABwAAAQEHAQABAAcA/wABBwABAQAHAAEAAQf/AP8ABwEAAAEH/wAA/wcBAAD/B/8AAAEHAP8A/wkBAf8ACf8B/wAJAf8BAAkAAQH/CQAB/wEJAP8BAQkA/wH/CQH//wAJAQD/AQkAAf//Cf8BAQAJ/wAB/wn//wEACQD//wEJAf8AAQkB/wD/Cf8BAP8J/wEA/wn/AQD/Cf8BAP8J////AAn///8ACf///wAJ////AAkA////CQD///8JAP///wkA////CQABAQEJAAEBAQkAAQEBCQABAQEJAQAB/wkBAAH/CQEAAf8JAQAB/wkBAQABCQEBAAEJAQEAAQkBAQABCf8BAAEJ/wEAAQn/AQABCf8BAAEJAQEBAAkBAQEACQEBAQAJAQEBAAr//wABCv//AAEK/wD//wr/AP//CgEBAP8KAQEA/woBAP//CgEA//8K/wD/AQr/AP8BCv//AP8K//8A/wr/AAEBCv8AAQEKAQABAQoBAAEBCwH/Af8L/wH/AQv/AQH/CwH//wELAQEBAQv//wEBCwEB//8L//8B/wv/////CwEB/wELAf8BAQv/AQEBC/8B//8L////AQsB////CwEBAf8DAAAAAAQBAAAABf8AAAAFAAAAAQUAAP8ABQAAAP8FAP8AAAUAAAEABQABAAAGAP8BAAb/AQAABgAB/wAGAAAB/wYAAQD/BgAA/wEG/wAA/wYB/wAABgEA/wAG//8AAAYAAP//BgEAAQAGAQAAAQYA/wABBv8AAQAGAAEAAQYA//8ABv8AAAEGAP8A/wb/AP8ABgEBAAAGAAEBAAYAAAEBBgEAAP8HAAH/AQcBAP8BB/8B/wAHAP8B/wcB/wEABwEBAP8HAQABAQf/AQEABwD//wEHAQEBAAf/AAH/B////wAH/wD/AQf/AP8BBwH//wAHAf//AAcBAf8ABwEB/wAIAf8AAQj/AQD/CP//AQAI/wABAQj//wABCP//AP8IAP///wgBAAH/CAEA//8IAAH//wgAAQEBCP8BAAEI/wD//wgAAQH/CAH/AP8IAP8BAQgBAQABCAH/Af8I/wH/AQj/Af8BCQH//wEJ/////wn/AQH/Cf8BAQEJAQEBAQn//wH/CQH/AQEJ/wH//wn//wEBCQEB//8JAf///wn///8BCQEB/wEJAQEB/wQBAQEBBAABAQEEAQEAAQQBAQEABAEAAQEEAQAAAAQBAQAABAAAAAAEAAABAQQBAAEABQEAAAEFAAEBAAUAAAABBQABAAEFAAABAAUAAQAABwIBAQEHAQECAQcBAgEBBwEBAQIHAgEBAAcCAQABBwECAQAHAgABAQcAAQIBBwABAgEIAAEBAggBAQIACAACAQEIAQABAggBAgABCAEBAAIIAQACAQgCAQAACAIAAQAIAQIAAAgCAAABCAABAAIIAAIBAAgAAAECCAABAgAIAAECAAgAAgABCAACAAEIAQAAAggBAAACCAAAAgEIAAACAQgBAAIACAEAAgAIAgAAAAgCAAAACAAAAAIIAAAAAgkAAgAACQAAAgAJAQICAQkBAgIBCQECAgEJAQICAQkBAgIBCQECAgEJAQICAQkBAgIBCQICAQEJAgIBAQkCAgEBCQICAQEJAgIBAQkCAgEBCQICAQEJAgIBAQkCAQIBCQIBAgEJAgECAQkCAQIBCQIBAgEJAgECAQkCAQIBCQIBAgEJAQECAgkBAQICCQEBAgIJAQECAgkBAQICCQEBAgIJAQECAgkBAQICCQECAQIJAQIBAgkBAgECCQECAQIJAQIBAgkBAgECCQECAQIJAQIBAgkCAQECCQIBAQIJAgEBAgkCAQECCQIBAQIJAgEBAgkCAQECCQIBAQIKAQICAAoBAgIACgECAgAKAQICAAoCAgEACgICAQAKAgIBAAoCAgEACgIBAgAKAgECAAoCAQIACgIBAgAKAAICAQoAAgIBCgACAgEKAAICAQoAAQICCgABAgIKAAECAgoAAQICCgICAAEKAgIAAQoCAgABCgICAAEKAAIBAgoAAgECCgACAQIKAAIBAgoCAAIBCgIAAgEKAgACAQoCAAIBCgEAAgIKAQACAgoBAAICCgEAAgIKAgICAQoCAgIBCgICAgEKAgICAQoBAgACCgECAAIKAQIAAgoBAgACCgIAAQIKAgABAgoCAAECCgIAAQIKAgEAAgoCAQACCgIBAAIKAgEAAgoBAgICCgECAgIKAQICAgoBAgICCwIBAgILAgECAgsCAgECCwICAQILAAICAAsAAgIACwICAAALAgIAAAsAAAICCwAAAgILAgACAAsCAAIACwACAAILAAIAAgsCAAACCwIAAAILAgICAgsCAgICCwACAgILAAICAgsCAgIACwICAgAMAgIAAgwCAAICBAAABAEABAD/BAABBP8ABAEBBP8BBAH/BP//BgL/BgIBBv4BBv7/Bv4ABv8CBgIABgH+BgECBgD+Bv/+BgACBgL+Bv4CBv7+BgICB/0BBwMBBwP/B/8DB/3/BwEDBwH9B//9BwMAB/0ABwD9BwADBwMCBwMCCP3+CP4DCAIDCAP+CAL9CP79CP0CCP0CCAMDCAMDCQP9Cf39Cf0DCQH8Cf/8CQQBCfwBCfz/CQEECQT/Cf8ECQD8CfwCCfwCCfwCCfwCCfz+Cfz+Cfz+Cfz+CQIECQIECQIECQIECf78Cf78Cf78Cf78CfwACfwACfwACfwACQQCCQQCCQQCCQQCCQT+CQT+CQT+CQT+Cf4ECf4ECf4ECf4ECQQACQQACQQACQQACQL8CQL8CQL8CQL8CQAECQAECQAECQAECv38Cv38Cv0ECv0ECgP8CgP8CgT9CgT9CgMECgMECgQDCgQDCvwDCvwDCvz9Cvz9CwQEC/wEC/z8CwT8AwEBBAIBBAEABAECBAABBAICBQAABQIABQACBQMBBQEDBQMCBQIDBgMDBgQBBgEEBgQCBgIEBgMABgADBgQDBgMEBgUCBwUBBwIFBwEFBwUDBwMFBwQEBwUEBwAEBwQFBwQABwIGBwYCBwYBBwYBBwEGBwEGCAMGCAYDCAUFCAUACAYECAAFCAQGCAcBCAcCCAIHCAYFCAcDCAEHCAEHCAEHCAEHCAUGCAUGCAUGCAUGCAMHCAMHCAMHCAMHCQYGCQYGCQcECQcECQYACQYACQQHCQQHCQAGCQAGCQcFCQcFCQcGCQcGCQYHCQYHCgUHCgcACgAHCgcHBAEBBAECBAIBBQICBQEABQABBQEDBQMCBQMBBQIDBQMDBgIABgACBgIEBgQCBgEEBgQBBgAABgQDBgMEBgMABgADBgQEBgIFBgUCBwEFBwUBBwUDBwMFBwUEBwQFBwYCBwIGBwYDBwQABwYBBwAEBwEGBwMGBwUFBwYEBwQGBwQGCAYFCAcCCAMHCAIHCAUGCAgCCAcDCAUACAcBCAAFCAgBCAEHCAgDCAcECAQHCAIICAYGCAcFCAEICAMICAgECAQICAUHCAUHCAgFCAgFCAUICAUICQcGCQYHCQkCCQYACQYICQkDCQMJCQkBCQIJCQAGCQgGCQkECQQJCQoCCQEJCQcHCQgHCQkFCQcICQoDCQUJCQoECQIKCQoBCQMKCQkGCQYJCQYJCQgACQgACQQKCQQKCQcACQcACQsCCQsCCgcJCgsDCgoGCgEKCgsBCgkHCgAHCggICgoFCgMLCgUKCggJCgsFCgAICgsECgILCgcKCgYKCgoHCgQLCgELCgwCCgkICgwDCgsGCgULCgwECgsHCgwFCgMMCgYLCgkACgoICgoACgwBCgAJCgQMCgkJCgwGCgwGCgwGCgwGCgIMCgIMCgIMCgIMCggKCggKCggKCggKCwkKCwkKCwEMCwEMCwsICwsICwwHCwwHCwcLCwcLCwUMCwUMCwYMCwYMCwoJCwoJCwgLCwgLCwwICwwICwAKCwAKCwcMCwcMCwsACwsACwoKCwoKCwsJCwsJCwsKCwsKCwALCwALCwsLCwsLCwkLCwkLCwoLCwoLCwwACwwACwgMCwgMDAwJDAoMDAkMDAsMDAwLDAAMDAwKDAwMBAAABAEBBRAQBQEABQABBQIBBQECBQICBgEDBgMBBgMCBgIABgIDBgACBgMDBgMDBwQBBwEEBwQCBwIEBwQDBwMEBwMABwADBwUBBwUCBwIFBwQEBwEFBwUDBwMFBwMFBwUEBwUECAQFCAYCCAIGCAYBCAYDCAMGCAEGCAQQCAMQCBAFCBADCBAECAYECBAGCAQACAQGCAAECAIQCAUFCAUQCBAHCBACCBAICAIHCAcCCAMHCAYFCAUGCAYQCBAKCAcDCAcBCBAJCAcQCAEQCAEHCAQHCBALCAcECBAMCAgQCBABCAYGCAkQCAIICAUHCAoQCBANCAgDCAgCCAMICAUACBAOCBAOCAsQCAsQCAcFCAcFCAQICAQICAYHCAYHCAcGCAcGCAAFCAAFCQgECRAPCQwQCQEICQgBCQ4QCQUICQ0QCQMJCQgFCQcHCQIJCQgGCQkCCQkDCQ8QCQQJCQYICQYACQkECQUJCQgHCQcICQEJCQoDCQAGCQoCCQkBCQkFCQQKCQIKCQkGCQMKCQYJCQoECQgICQoFCQkHCQsDCQEKCQcACQoGCQcJCQMLCQUKCQoBCQQLCQsCCQ0CCQYKCQ0DCQ0DCQILCQILCRAACRAACQULCQULCQsFCQsFCgsECgkICgcKCggJCgAQCgQNCgAHCgMNCgsGCg0BCg0ECgwDCgINCg0FCggKCgYLCgoICgoHCg4CCgwECgELCgQMCgsBCgMMCgENCgwCCgcLCgMOCgUMCgUNCg4ECgQOCgsHCg4DCgwFCg0GCgwGCggACgsICgIMCgkJCg4FCgYNCgoKCg8CCggLCgkKCg4GCgoJCgUOCgsJCg4BCgIOCgYMCgEMCg0ICgAICg0HCgcMCgwHCgcNCg8DCgwBCgYOCgIPCg8FCg8ECgEOCgkLCgQPCg4HCggNCg0JCggMCgUPCgMPCgoLCgsKCgwICg8GCg8HCggOCg8BCgcOCgkACgAJCgkNCgkNCgkNCgkNCgkMCgkMCgkMCgkMCgwJCgwJCgwJCgwJCg4ICg4ICg4ICg4ICgoNCgoNCgoNCgoNCg4JCg4JCg4JCg4JCgwKCgwKCgwKCgwKCgYPCgYPCgYPCgYPCgcPCgcPCgcPCgcPCwkOCwkOCw8ICw8ICwsLCwsLCwsOCwsOCwEPCwEPCwoMCwoMCwoOCwoOCw0LCw0LCw0KCw0KCwsNCwsNCwsMCwsMCwgPCwgPCw4LCw4LCw0MCw0MCwwNCwwNCw8JCw8JCw4KCw4KCwoACwoACwwLCwwLCwkPCwkPCwAKCwAKCwwMCwwMCwsACwsACwwOCwwOCwoPCwoPCw0NCw0NCwANCwANCw4MCw4MCw8KCw8KCw8LCw8LCwsPCwsPCw4NCw4NCw0ACw0ACwALCwALCw0OCw0OCw8MCw8MCw8NCw8NCwwPCwwPCw4ACw4ACw4OCw4OCw0PCw0PCwwACwwACw4PCw4PDAAODAAMDA8ODA8ADAAPDA8PAAECAQAAAAECAAIDAAMEAAQFAAUGAAYHAAcIAf8AAQEAAQABAQD/AAQFAAUGAAYHAAcIAQH/Af8BAf//AQEBAAQFAAUGAAYHAAcIAAgJAAkKAAoLAAsMAAwNAA0OAA4PAA8QAf4AAQACAQIAAQD+AAwNAA0OAA4PAA8QABARABESABITABMUABQVABUWABYXABcYAf7/AQIBAf/+AQECAf4BAQL/Af8CAQH+Af0AAQMAAQD9AQADAAwNAA0OAA4PAA8QABARABESABIT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cyVzJXMlcwAgICAgTGFzdCBtZXNzYWdlIHJlcGVhdGVkICVkIHRpbWVzDQAgICAgTGFzdCBtZXNzYWdlIHJlcGVhdGVkICVkIHRpbWVzCgAbWyV1OzMldW0lcxtbMG0AG1s0ODs1OyV1bRtbMzg7NTslZG0lcxtbMG0AG1s0ODs1OyV1bRtbMzg7NTsldW0lcxtbMG0AVEVSTQBOT19DT0xPUgBBVl9MT0dfRk9SQ0VfTk9DT0xPUgBBVl9MT0dfRk9SQ0VfQ09MT1IAQVZfTE9HX0ZPUkNFXzI1NkNPTE9SADI1NmNvbG9yAFslcyBAICVwXSAAWyVzXSAAcGFuaWMAZmF0YWwAZXJyb3IAd2FybmluZwBpbmZvAHZlcmJvc2UAcXVpZXQAAAECAwQFBghBIG5vbi1OVUxMIHBhY2tldCBzZW50IGFmdGVyIGFuIEVPRi4KAENvZGVjICclcycgKCVkKSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBiaXRzdHJlYW0gZmlsdGVyICclcycuIFN1cHBvcnRlZCBjb2RlY3MgYXJlOiAAJXMgKCVkKSAAbXBlZzF2aWRlbwBtcGVnMnZpZGVvAGgyNjEAaDI2MwBydjEwAHJ2MjAAbWpwZWcAbWpwZWdiAGxqcGVnAHNwNXgAanBlZ2xzAG1wZWc0AHJhd3ZpZGVvAG1zbXBlZzR2MQBtc21wZWc0djIAbXNtcGVnNHYzAHdtdjEAd212MgBoMjYzcABoMjYzaQBmbHYxAHN2cTEAc3ZxMwBkdnZpZGVvAGh1ZmZ5dXYAY3l1dgBpbmRlbzMAdnAzAHRoZW9yYQBhc3YxAGFzdjIAZmZ2MQA0eG0AdmNyMQBjbGpyAG1kZWMAcm9xAGludGVycGxheXZpZGVvAHhhbl93YzMAeGFuX3djNABycHphAGNpbmVwYWsAd3NfdnFhAG1zcmxlAG1zdmlkZW8xAGlkY2luADhicHMAc21jAGZsaWMAdHJ1ZW1vdGlvbjEAdm1kdmlkZW8AbXN6aAB6bGliAHF0cmxlAHRzY2MAdWx0aQBxZHJhdwB2aXhsAHFwZWcAcG5nAHBwbQBwYm0AcGdtAHBnbXl1dgBwYW0AZmZ2aHVmZgBydjMwAHJ2NDAAdmMxAHdtdjMAbG9jbwB3bnYxAGFhc2MAaW5kZW8yAGZyYXBzAHRydWVtb3Rpb24yAGJtcABjc2NkAG1tdmlkZW8Aem1idgBhdnMAc21hY2t2aWRlbwBudXYAa212YwBmbGFzaHN2AGNhdnMAanBlZzIwMDAAdm1uYwB2cDUAdnA2AHZwNmYAdGFyZ2EAZHNpY2ludmlkZW8AdGllcnRleHNlcXZpZGVvAHRpZmYAZ2lmAGR4YQBkbnhoZAB0aHAAc2dpAGM5MwBiZXRoc29mdHZpZABwdHgAdHhkAHZwNmEAdmIAcGN4AHN1bnJhc3QAaW5kZW80AGluZGVvNQBtaW1pYwBybDIAZXNjYXBlMTI0AGRpcmFjAGJmaQBjbXYAbW90aW9ucGl4ZWxzAHRndgB0Z3EAdHFpAGF1cmEAYXVyYTIAdjIxMHgAdG12AHYyMTAAZHB4AG1hZABmcnd1AGZsYXNoc3YyAGNkZ3JhcGhpY3MAcjIxMABhbm0AYmlua3ZpZGVvAGlmZl9pbGJtAGtndjEAeW9wAHZwOABwaWN0b3IAYW5zaQBhNjRfbXVsdGkAYTY0X211bHRpNQByMTBrAG14cGVnAGxhZ2FyaXRoAHByb3JlcwBqdgBkZmEAd212M2ltYWdlAHZjMWltYWdlAHV0dmlkZW8AYm12X3ZpZGVvAHZibGUAZHh0b3J5AHY0MTAAeHdkAGNkeGwAeGJtAHplcm9jb2RlYwBtc3MxAG1zYTEAdHNjYzIAbXRzMgBjbGxjAG1zczIAdnA5AGVzY2FwZTEzMABnMm0Ad2VicABobm00dmlkZW8AaGV2YwBmaWMAYWxpYXNfcGl4AGJyZW5kZXJfcGl4AHBhZl92aWRlbwBleHIAdnA3AHNhbm0Ac2dpcmxlAG12YzEAbXZjMgBocXgAdGRzYwBocV9ocWEAaGFwAGRkcwBkeHYAc2NyZWVucHJlc3NvAHJzY2MAeTQxcABhdnJwADAxMnYAYXZ1aQBheXV2AHRhcmdhX3kyMTYAdjMwOAB2NDA4AHl1djQAYXZybgBjcGlhAHhmYWNlAHNub3cAc212anBlZwBhcG5nAGRhYWxhAGNmaGQAdHJ1ZW1vdGlvbjJydABtMTAxAG1hZ2ljeXV2AHNoZWVydmlkZW8AeWxjAHBzZABwaXhsZXQAc3BlZWRocQBmbXZjAHNjcHIAY2xlYXJ2aWRlbwB4cG0AYXYxAGJpdHBhY2tlZABtc2NjAHNyZ2MAc3ZnAGdkdgBmaXRzAHBjbV9zMTZsZQBwY21fczE2YmUAcGNtX3UxNmxlAHBjbV91MTZiZQBwY21fczgAcGNtX3U4AHBjbV9tdWxhdwBwY21fYWxhdwBwY21fczMybGUAcGNtX3MzMmJlAHBjbV91MzJsZQBwY21fdTMyYmUAcGNtX3MyNGxlAHBjbV9zMjRiZQBwY21fdTI0bGUAcGNtX3UyNGJlAHBjbV9zMjRkYXVkAHBjbV96b3JrAHBjbV9zMTZsZV9wbGFuYXIAcGNtX2R2ZABwY21fZjMyYmUAcGNtX2YzMmxlAHBjbV9mNjRiZQBwY21fZjY0bGUAcGNtX2JsdXJheQBwY21fbHhmAHMzMDJtAHBjbV9zOF9wbGFuYXIAcGNtX3MyNGxlX3BsYW5hcgBwY21fczMybGVfcGxhbmFyAHBjbV9zMTZiZV9wbGFuYXIAcGNtX3M2NGxlAHBjbV9zNjRiZQBwY21fZjE2bGUAcGNtX2YyNGxlAGFkcGNtX2ltYV9xdABhZHBjbV9pbWFfd2F2AGFkcGNtX2ltYV9kazMAYWRwY21faW1hX2RrNABhZHBjbV9pbWFfd3MAYWRwY21faW1hX3NtanBlZwBhZHBjbV9tcwBhZHBjbV80eG0AYWRwY21feGEAYWRwY21fYWR4AGFkcGNtX2VhAGFkcGNtX2c3MjYAYWRwY21fY3QAYWRwY21fc3dmAGFkcGNtX3lhbWFoYQBhZHBjbV9zYnByb180AGFkcGNtX3NicHJvXzMAYWRwY21fc2Jwcm9fMgBhZHBjbV90aHAAYWRwY21faW1hX2FtdgBhZHBjbV9lYV9yMQBhZHBjbV9lYV9yMwBhZHBjbV9lYV9yMgBhZHBjbV9pbWFfZWFfc2VhZABhZHBjbV9pbWFfZWFfZWFjcwBhZHBjbV9lYV94YXMAYWRwY21fZWFfbWF4aXNfeGEAYWRwY21faW1hX2lzcwBhZHBjbV9nNzIyAGFkcGNtX2ltYV9hcGMAYWRwY21fdmltYQBhZHBjbV9hZmMAYWRwY21faW1hX29raQBhZHBjbV9kdGsAYWRwY21faW1hX3JhZABhZHBjbV9nNzI2bGUAYWRwY21fdGhwX2xlAGFkcGNtX3BzeABhZHBjbV9haWNhAGFkcGNtX2ltYV9kYXQ0AGFkcGNtX210YWYAYW1yX25iAGFtcl93YgByYV8xNDQAcmFfMjg4AHJvcV9kcGNtAGludGVycGxheV9kcGNtAHhhbl9kcGNtAHNvbF9kcGNtAHNkeDJfZHBjbQBncmVtbGluX2RwY20AbXAyAG1wMwBhYWMAYWMzAHZvcmJpcwBkdmF1ZGlvAHdtYXYxAHdtYXYyAG1hY2UzAG1hY2U2AHZtZGF1ZGlvAGZsYWMAbXAzYWR1AG1wM29uNABzaG9ydGVuAGFsYWMAd2VzdHdvb2Rfc25kMQBnc20AcWRtMgBjb29rAHRydWVzcGVlY2gAdHRhAHNtYWNrYXVkaW8AcWNlbHAAd2F2cGFjawBkc2ljaW5hdWRpbwBpbWMAbXVzZXBhY2s3AG1scABnc21fbXMAYXRyYWMzAGFwZQBuZWxseW1vc2VyAG11c2VwYWNrOABzcGVleAB3bWF2b2ljZQB3bWFwcm8Ad21hbG9zc2xlc3MAYXRyYWMzcABlYWMzAHNpcHIAbXAxAHR3aW52cQB0cnVlaGQAbXA0YWxzAGF0cmFjMQBiaW5rYXVkaW9fcmRmdABiaW5rYXVkaW9fZGN0AGFhY19sYXRtAHFkbWMAY2VsdABnNzIzXzEAZzcyOQA4c3Z4X2V4cAA4c3Z4X2ZpYgBibXZfYXVkaW8AcmFsZgBpYWMAaWxiYwBvcHVzAGNvbWZvcnRub2lzZQB0YWsAbWV0YXNvdW5kAHBhZl9hdWRpbwBhdmMAZHNzX3NwAGNvZGVjMgB3YXZlc3ludGgAc29uaWMAc29uaWNscwBldnJjAHNtdgBkc2RfbHNiZgBkc2RfbXNiZgBkc2RfbHNiZl9wbGFuYXIAZHNkX21zYmZfcGxhbmFyADRndgBpbnRlcnBsYXlhY20AeG1hMQB4bWEyAGRzdABhdHJhYzNhbABhdHJhYzNwYWwAZG9sYnlfZQBhcHR4AGFwdHhfaGQAc2JjAGR2ZF9zdWJ0aXRsZQBkdmJfc3VidGl0bGUAdGV4dAB4c3ViAHNzYQBtb3ZfdGV4dABoZG12X3Bnc19zdWJ0aXRsZQBkdmJfdGVsZXRleHQAc3J0AG1pY3JvZHZkAGVpYV82MDgAamFjb3N1YgBzYW1pAHJlYWx0ZXh0AHN0bABzdWJ2aWV3ZXIxAHN1YnZpZXdlcgBzdWJyaXAAd2VidnR0AG1w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CQkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEgICAgICAgIB8gICAgICAgDxAREhMUFRYXGBkaGxwdHgcHBwcICAgICQkJCQoKCgoLCwsLDAwMDA0NDQ0ODg4OAwMDAwMDAwMDAwMDAwMDAwQEBAQEBAQEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEREREREREREBEREREREREI+An3CvYL9Qz0DfMO8g/xBAQEBPz8/PwFBQUF+/v7+wYGBgb6+vr6BwcHB/n5+fkCAgICAgICAgICAgICAgIC/v7+/v7+/v7+/v7+/v7+/gMDAwMDAwMDAwMDAwMDAwP9/f39/f39/f39/f39/f39AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgMBBgUvHw8AFxsdHgcLDQ4nKy0uEAMFCgwTFRocIyUqLAECBAgREhQYBgkWGSAhIiQoJikAEAECBAggAwUKDA8vBwsNDgYJHyMlKiwhIiQoJystLhESFBgTFRocFxsdHhYZJikAECAwACAQQGAwUHAKDRALDhINEBQOEhcQFBkSFx0AAwQDAwEFAQQFAgUDAQUBFBIgExkYFhMjFRwaGhcqGCEfHBktGiMhIBwzHigmJCA6Ii4rAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwAAAAAAAAEBAQEBAQICAgICAgMDAwMDAwQEBAQEBAUFBQUFBQYGBgYGBgcHBwcHBwgICAgICAkJCQkJCQoKCgoKCgsLCwsLCwwMDAwMDA0NDQ0NDQ4ODg4AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0dHh8gICEiIiMjJCQlJSUmJiYnJycnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjIyQlJiYnKCgpKSoqKysrLCwsLS0tLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSkqKywsLS4uLy8wMDExMTIyMjMzMzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8vMDEyMjM0NDU1NjY3Nzc4ODg5OTk5AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1NTY3ODg5Ojo7Ozw8PT09Pj4+Pz8/PwAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozs8PT4+P0BAQUFCQkNDQ0REREVFRUUAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFBQkNEREVGRkdHSEhJSUlKSkpLS0tLaDI2NAB0aHJlYWRfcmVsZWFzZV9idWZmZXIgY2FsbGVkIG9uIHBpYyAlcAoAZnJhbWUtPm5iX2V4dGVuZGVkX2J1ZiA9PSAwAGxpYmF2Y29kZWMvZGVjb2RlLmMAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBmcmFtZSAlcABwaWMtPmRhdGFbKl0hPU5VTEwgaW4gYXZjb2RlY19kZWZhdWx0X2dldF9idWZmZXIKAFVuYWJsZSB0byBnZXQgcGl4ZWwgZm9ybWF0IGRlc2NyaXB0b3IgZm9yIGZvcm1hdCAlcwoAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBwaWMgJXAKAHl1djQyMHAAeXV5djQyMgByZ2IyNABiZ3IyNAB5dXY0MjJwAHl1djQ0NHAAeXV2NDEwcAB5dXY0MTFwAGdyYXk4LHk4AG1vbm93AG1vbm9iAHBhbDgAeXV2ajQyMHAAeXV2ajQyMnAAeXV2ajQ0NHAAdXl2eTQyMgB1eXl2eXk0MTEAYmdyOABiZ3I0AGJncjRfYnl0ZQByZ2I4AHJnYjQAcmdiNF9ieXRlAG52MTIAbnYyMQBhcmdiAHJnYmEAYWJncgBiZ3JhAGdyYXkxNmJlAHkxNmJlAGdyYXkxNmxlAHkxNmxlAHl1djQ0MHAAeXV2ajQ0MHAAeXV2YTQyMHAAcmdiNDhiZQByZ2I0OGxlAHJnYjU2NWJlAHJnYjU2NWxlAHJnYjU1NWJlAHJnYjU1NWxlAGJncjU2NWJlAGJncjU2NWxlAGJncjU1NWJlAGJncjU1NWxlAHZhYXBpX21vY28AdmFhcGlfaWRjdAB2YWFwaV92bGQAeXV2NDIwcDE2bGUAeXV2NDIwcDE2YmUAeXV2NDIycDE2bGUAeXV2NDIycDE2YmUAeXV2NDQ0cDE2bGUAeXV2NDQ0cDE2YmUAZHh2YTJfdmxkAHJnYjQ0NGxlAHJnYjQ0NGJlAGJncjQ0NGxlAGJncjQ0NGJlAHlhOABncmF5OGEAYmdyNDhiZQBiZ3I0OGxlAHl1djQyMHA5YmUAeXV2NDIwcDlsZQB5dXY0MjBwMTBiZQB5dXY0MjBwMTBsZQB5dXY0MjJwMTBiZQB5dXY0MjJwMTBsZQB5dXY0NDRwOWJlAHl1djQ0NHA5bGUAeXV2NDQ0cDEwYmUAeXV2NDQ0cDEwbGUAeXV2NDIycDliZQB5dXY0MjJwOWxlAGdicnAAZ2JycDliZQBnYnJwOWxlAGdicnAxMGJlAGdicnAxMGxlAGdicnAxNmJlAGdicnAxNmxlAHl1dmE0MjJwAHl1dmE0NDRwAHl1dmE0MjBwOWJlAHl1dmE0MjBwOWxlAHl1dmE0MjJwOWJlAHl1dmE0MjJwOWxlAHl1dmE0NDRwOWJlAHl1dmE0NDRwOWxlAHl1dmE0MjBwMTBiZQB5dXZhNDIwcDEwbGUAeXV2YTQyMnAxMGJlAHl1dmE0MjJwMTBsZQB5dXZhNDQ0cDEwYmUAeXV2YTQ0NHAxMGxlAHl1dmE0MjBwMTZiZQB5dXZhNDIwcDE2bGUAeXV2YTQyMnAxNmJlAHl1dmE0MjJwMTZsZQB5dXZhNDQ0cDE2YmUAeXV2YTQ0NHAxNmxlAHZkcGF1AHh5ejEybGUAeHl6MTJiZQBudjE2AG52MjBsZQBudjIwYmUAcmdiYTY0YmUAcmdiYTY0bGUAYmdyYTY0YmUAYmdyYTY0bGUAeXZ5dTQyMgB5YTE2YmUAeWExNmxlAGdicmFwAGdicmFwMTZiZQBnYnJhcDE2bGUAcXN2AG1tYWwAZDNkMTF2YV92bGQAY3VkYQAwcmdiAHJnYjAAMGJncgBiZ3IwAHl1djQyMHAxMmJlAHl1djQyMHAxMmxlAHl1djQyMHAxNGJlAHl1djQyMHAxNGxlAHl1djQyMnAxMmJlAHl1djQyMnAxMmxlAHl1djQyMnAxNGJlAHl1djQyMnAxNGxlAHl1djQ0NHAxMmJlAHl1djQ0NHAxMmxlAHl1djQ0NHAxNGJlAHl1djQ0NHAxNGxlAGdicnAxMmJlAGdicnAxMmxlAGdicnAxNGJlAGdicnAxNGxlAHl1dmo0MTFwAGJheWVyX2JnZ3I4AGJheWVyX3JnZ2I4AGJheWVyX2dicmc4AGJheWVyX2dyYmc4AGJheWVyX2JnZ3IxNmxlAGJheWVyX2JnZ3IxNmJlAGJheWVyX3JnZ2IxNmxlAGJheWVyX3JnZ2IxNmJlAGJheWVyX2dicmcxNmxlAGJheWVyX2dicmcxNmJlAGJheWVyX2dyYmcxNmxlAGJheWVyX2dyYmcxNmJlAHh2bWMAeXV2NDQwcDEwbGUAeXV2NDQwcDEwYmUAeXV2NDQwcDEybGUAeXV2NDQwcDEyYmUAYXl1djY0bGUAYXl1djY0YmUAdmlkZW90b29sYm94X3ZsZABwMDEwbGUAcDAxMGJlAGdicmFwMTJiZQBnYnJhcDEybGUAZ2JyYXAxMGJlAGdicmFwMTBsZQBtZWRpYWNvZGVjAGdyYXkxMmJlAHkxMmJlAGdyYXkxMmxlAHkxMmxlAGdyYXkxMGJlAHkxMGJlAGdyYXkxMGxlAHkxMGxlAHAwMTZsZQBwMDE2YmUAZDNkMTEAZ3JheTliZQB5OWJlAGdyYXk5bGUAeTlsZQBnYnJwZjMyYmUAZ2JycGYzMmxlAGdicmFwZjMyYmUAZ2JyYXBmMzJsZQBkcm1fcHJpbWUAb3BlbmNsAEZhaWxlZCB0byBtYXAgZnJhbWUgaW50byBkZXJpdmVkIGZyYW1lIGNvbnRleHQ6ICVkLgoASW52YWxpZCBtYXBwaW5nIGZvdW5kIHdoZW4gYXR0ZW1wdGluZyB1bm1hcC4KAGF2X2ltYWdlX2dldF9saW5lc2l6ZSBmYWlsZWQKAGFicyhzcmNfbGluZXNpemUpID49IGJ5dGV3aWR0aABsaWJhdnV0aWwvaW1ndXRpbHMuYwBhYnMoZHN0X2xpbmVzaXplKSA+PSBieXRld2lkdGgAUGljdHVyZSBzaXplICV1eCV1IGlzIGludmFsaWQKAFBpY3R1cmUgc2l6ZSAldXgldSBleGNlZWRzIHNwZWNpZmllZCBtYXggcGl4ZWwgY291bnQgJWxsZCwgc2VlIHRoZSBkb2N1bWVudGF0aW9uIGlmIHlvdSB3aXNoIHRvIGluY3JlYXNlIGl0CgBJTUdVVElMUwAhZHN0LT5mLT5idWZbMF0AbGliYXZjb2RlYy9oMjY0X3BpY3R1cmUuYwBzcmMtPmYtPmJ1ZlswXQBzcmMtPnRmLmYgPT0gc3JjLT5mACFkc3QtPnByb2dyZXNzAGxpYmF2Y29kZWMvdXRpbHMuYwBidWZfaW5kZXggPD0gYnVmX3NpemUAbGliYXZjb2RlYy9oMjY0ZGVjLmMAbm8gZnJhbWUhCgBwaWN0LT5idWZbMF0gfHwgISpnb3RfZnJhbWUARHVwbGljYXRpbmcgZmllbGQgJWQgdG8gZmlsbCBtaXNzaW5nCgBzdGVyZW9fbW9kZQBjaGVja2VyYm9hcmRfcmwAY2hlY2tlcmJvYXJkX2xyAGNvbF9pbnRlcmxlYXZlZF9ybABjb2xfaW50ZXJsZWF2ZWRfbHIAcm93X2ludGVybGVhdmVkX3JsAHJvd19pbnRlcmxlYXZlZF9scgByaWdodF9sZWZ0AGxlZnRfcmlnaHQAYm90dG9tX3RvcAB0b3BfYm90dG9tAGJsb2NrX3JsAGJsb2NrX2xyAGhhcmR3YXJlIGFjY2VsZXJhdG9yIGZhaWxlZCB0byBkZWNvZGUgcGljdHVyZQoAJXAgZmluaXNoZWQgJWQgZmllbGQgJWQKAFNQUyBpcyB1bnNldAoAbm8gbW1jbyBoZXJlCgBtbWNvOiVkICVkICVkCgBtbWNvOiB1bnJlZiBzaG9ydCBmYWlsdXJlCgBtbWNvOiB1bnJlZiBzaG9ydCAlZCBjb3VudCAlZAoAbW1jbzogdW5yZWYgbG9uZyBmYWlsdXJlCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byBzaG9ydCBhbmQgbG9uZyBhdCB0aGUgc2FtZSB0aW1lCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byAyIGxvbmcgdGVybSByZWZlcmVuY2VzCgAhaC0+Y3VyX3BpY19wdHItPmxvbmdfcmVmAGxpYmF2Y29kZWMvaDI2NF9yZWZzLmMAaWxsZWdhbCBzaG9ydCB0ZXJtIHJlZmVyZW5jZSBhc3NpZ25tZW50IGZvciBzZWNvbmQgZmllbGQgaW4gY29tcGxlbWVudGFyeSBmaWVsZCBwYWlyIChmaXJzdCBmaWVsZCBpcyBsb25nIHRlcm0pCgBpbGxlZ2FsIHNob3J0IHRlcm0gYnVmZmVyIHN0YXRlIGRldGVjdGVkCgBudW1iZXIgb2YgcmVmZXJlbmNlIGZyYW1lcyAoJWQrJWQpIGV4Y2VlZHMgbWF4ICglZDsgcHJvYmFibHkgY29ycnVwdCBpbnB1dCksIGRpc2NhcmRpbmcgb25lCgBsb25nIHRlcm0gbGlzdDoKACV1IGZuOiVkIHBvYzolZCAlcAoAc2hvcnQgdGVybSBsaXN0OgoAcmVtb3ZlIHNob3J0ICVkIGNvdW50ICVkCgAlZCAlZCAlcAoARXJyb3Igc3BsaXR0aW5nIHRoZSBpbnB1dCBpbnRvIE5BTCB1bml0cy4KAEludmFsaWQgaW50ZXIgSURSIGZyYW1lCgBpbnZhbGlkIG1peGVkIElEUiAvIG5vbiBJRFIgZnJhbWVzIGNhbm5vdCBiZSBkZWNvZGVkIGluIHNsaWNlIG11bHRpdGhyZWFkaW5nIG1vZGUKAGRhdGEgcGFydGl0aW9uaW5nAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gd2l0aCB0aGUgY29tcGxldGUgTkFMCgBVbmtub3duIE5BTCBjb2RlOiAlZCAoJWQgYml0cykKAGRlY29kZV9zbGljZV9oZWFkZXIgZXJyb3IKAGlnbm9yaW5nIGxhc3QgbWlzc2luZyBzbGljZQoAQ2Fubm90IHVzZSBwcmV2aW91cyBwaWN0dXJlIGluIGVycm9yIGNvbmNlYWxtZW50CgBDYW5ub3QgdXNlIG5leHQgcGljdHVyZSBpbiBlcnJvciBjb25jZWFsbWVudAoAV2FybmluZyBNVnMgbm90IGF2YWlsYWJsZQoAJTJYIAAKAGNvbmNlYWxpbmcgJWQgREMsICVkIEFDLCAlZCBNViBlcnJvcnMgaW4gJWMgZnJhbWUKAHMtPmF2Y3R4LT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9IMjY0AGxpYmF2Y29kZWMvZXJyb3JfcmVzaWxpZW5jZS5jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3MtPnF1YXJ0ZXJfc2FtcGxlAGd1ZXNzX2RjKCkgaXMgb3V0IG9mIG1lbW9yeQoAbmV4dF9ibG9ja2xpc3RfbGVuZ3RoIDw9IG1iX2hlaWdodCAqIG1iX3dpZHRoAHRocmVhZCBhd2FpdGluZyAlZCBmaWVsZCAlZCBmcm9tICVwCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgUFBTICglenUgPiAlenUpCgBzcHNfaWQgJXUgb3V0IG9mIHJhbmdlCgBJbnZhbGlkIGx1bWEgYml0IGRlcHRoPSVkCgBVbmltcGxlbWVudGVkIGx1bWEgYml0IGRlcHRoPSVkAEZNTyBub3Qgc3VwcG9ydGVkCgByZWZlcmVuY2Ugb3ZlcmZsb3cgKHBwcykKAENBQkFDAENBVkxDAHdlaWdodGVkAExQQVIAQ09OU1RSAFJFRFUAOHg4RENUAHBwczoldSBzcHM6JXUgJXMgc2xpY2VfZ3JvdXBzOiVkIHJlZjoldS8ldSAlcyBxcDolZC8lZC8lZC8lZCAlcyAlcyAlcyAlcwoABgoNEBIXGRsKCxASFxkbHQ0QEhcZGx0fEBIXGRsdHyESFxkbHR8hJBcZGx0fISQmGRsdHyEkJigbHR8hJCYoKgkNDxETFRYYDQ0RExUWGBkPERMVFhgZGxETFRYYGRscExUWGBkbHB4VFhgZGxweIBYYGRscHiAhGBkbHB4gISMGDRQcDRQcIBQcICUcICUqCg4UGA4UGBsUGBseGBseIgABBAgFAgMGCQwNCgcLDg8AAAEIEAkCAwoRGCAZEgsEBQwTGiEoMCkiGxQNBgcOFRwjKjE4OTIrJB0WDxceJSwzOjs0LSYfJy41PD02Lzc+P2RlbHRhIHNjYWxlICVkIGlzIGludmFsaWQKAEN1cnJlbnQgcHJvZmlsZSBkb2Vzbid0IHByb3ZpZGUgbW9yZSBSQlNQIGRhdGEgaW4gUFBTLCBza2lwcGluZwoAIGlzIG5vdCBpbXBsZW1lbnRlZC4gVXBkYXRlIHlvdXIgRkZtcGVnIHZlcnNpb24gdG8gdGhlIG5ld2VzdCBvbmUgZnJvbSBHaXQuIElmIHRoZSBwcm9ibGVtIHN0aWxsIG9jY3VycywgaXQgbWVhbnMgdGhhdCB5b3VyIGZpbGUgaGFzIGEgZmVhdHVyZSB3aGljaCBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuCgBJZiB5b3Ugd2FudCB0byBoZWxwLCB1cGxvYWQgYSBzYW1wbGUgb2YgdGhpcyBmaWxlIHRvIGZ0cDovL3VwbG9hZC5mZm1wZWcub3JnL2luY29taW5nLyBhbmQgY29udGFjdCB0aGUgZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdC4gKGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnKQoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFNQUwoAY2hyb21hX2Zvcm1hdF9pZGMgJXUAc2VwYXJhdGUgY29sb3IgcGxhbmVzIGFyZSBub3Qgc3VwcG9ydGVkCgBEaWZmZXJlbnQgY2hyb21hIGFuZCBsdW1hIGJpdCBkZXB0aABpbGxlZ2FsIGJpdCBkZXB0aCB2YWx1ZSAoJWQsICVkKQoAbG9nMl9tYXhfZnJhbWVfbnVtX21pbnVzNCBvdXQgb2YgcmFuZ2UgKDAtMTIpOiAlZAoAbG9nMl9tYXhfcG9jX2xzYiAoJWQpIGlzIG91dCBvZiByYW5nZQoAcG9jX2N5Y2xlX2xlbmd0aCBvdmVyZmxvdyAlZAoAaWxsZWdhbCBQT0MgdHlwZSAlZAoAdG9vIG1hbnkgcmVmZXJlbmNlIGZyYW1lcyAlZAoAaGVpZ2h0IG92ZXJmbG93CgBtYl93aWR0aC9oZWlnaHQgb3ZlcmZsb3cKAGRpc2NhcmRpbmcgc3BzIGNyb3BwaW5nLCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JWQgcjolZCB0OiVkIGI6JWQKAGNyb3AgdmFsdWVzIGludmFsaWQgJWQgJWQgJWQgJWQgLyAlZCAlZAoAVlVJAE92ZXJyZWFkICVzIGJ5ICVkIGJpdHMKAE1CLUFGRgBQSUMtQUZGAEZSTQA4QjgAR3JheQA0MjAAADQyMgAANDQ0AABzcHM6JXUgcHJvZmlsZTolZC8lZCBwb2M6JWQgcmVmOiVkICVkeCVkICVzICVzIGNyb3A6JXUvJXUvJXUvJXUgJXMgJXMgJWQvJWQgYiVkIHJlbzolZAoAaWxsZWdhbCBhc3BlY3QgcmF0aW8KAFRydW5jYXRlZCBWVUkKAHRpbWVfc2NhbGUvbnVtX3VuaXRzX2luX3RpY2sgaW52YWxpZCBvciB1bnN1cHBvcnRlZCAoJXUvJXUpCgBDbGlwcGluZyBpbGxlZ2FsIG51bV9yZW9yZGVyX2ZyYW1lcyAlZAoAY3Bi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ZmxvdwoAUG9zc2libHkgdG9vIG1hbnkgc2xpY2VzICglZCA+PSAlZCksIGluY3JlYXNlIE1BWF9TTElDRVMgYW5kIHJlY29tcGlsZSBpZiB0aGVyZSBhcmUgYXJ0aWZhY3RzCgBUAEIARgAgZml4ACBJRFIAYwBTUEFUAFRFTVAAc2xpY2U6JWQgJXMgbWI6JWQgJWMlcyVzIGZyYW1lOiVkIHBvYzolZC8lZCByZWY6JWQvJWQgcXA6JWQgbG9vcDolZDolZDolZCB3ZWlnaHQ6JWQlcyAlcwoAY3VyLT5tYmFmZiA9PSAoaCktPm1iX2FmZl9mcmFtZQBsaWJhdmNvZGVjL2gyNjRfZGlyZWN0LmMAY28gbG9jYXRlZCBQT0NzIHVuYXZhaWxhYmxlCgBwb2NkaWZmIG92ZXJmbG93CgBwb2NkaWZmMCBvdmVyZmxvdwoAYWJzX2RpZmZfcGljX251bSBvdmVyZmxvdwoAbG9uZ190ZXJtX3BpY19pZHggb3ZlcmZsb3cKAHJlZmVyZW5jZSBwaWN0dXJlIG1pc3NpbmcgZHVyaW5nIHJlb3JkZXIKAE1pc3NpbmcgcmVmZXJlbmNlIHBpY3R1cmUsIGRlZmF1bHQgaXMgJWQKAGF2X2J1ZmZlcl9nZXRfcmVmX2NvdW50KHNsLT5yZWZfbGlzdFtsaXN0XVtpbmRleF0ucGFyZW50LT5mLT5idWZbMF0pID4gMABsZW4gPD0gMzIARGlzY2FyZGluZyBtaXNtYXRjaGluZyByZWZlcmVuY2UKAGluZGV4IDwgZGVmX2xlbgBoLT5jdXJfcGljX3B0cgBoLT5jdXJfcGljX3B0ci0+Zi0+YnVmWzBdAEludmFsaWQgZmllbGQgbW9kZSBjb21iaW5hdGlvbiAlZC8lZAoARm91bmQgcmVmZXJlbmNlIGFuZCBub24tcmVmZXJlbmNlIGZpZWxkcyBpbiB0aGUgc2FtZSBmcmFtZSwgd2hpY2gARnJhbWUgbnVtIGdhcCAlZCAlZAoASW52YWxpZCBQT0MgJWQ8JWQKAEluY3JlYXNpbmcgcmVvcmRlciBidWZmZXIgdG8gJWQKAHBpY3MgPD0gMTYAb29vAG5vIHBpY3R1cmUgJXMKAEF0dGVtcHQgdG8gc3RhcnQgYSBmcmFtZSBvdXRzaWRlIFNFVFVQIHN0YXRlCgBubyBmcmFtZSBidWZmZXIgYXZhaWxhYmxlCgBkZXNjLT5mbGFncyAmICgxIDw8IDQpACFwaWMtPmYtPmRhdGFbMF0AIXBpYy0+aHdhY2NlbF9waWN0dXJlX3ByaXZhdGUAdGhyZWFkX2dldF9idWZmZXIoKSBmYWlsZWQKAGdldF9idWZmZXIoKSBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIGZmX3RocmVhZF9maW5pc2hfc2V0dXAoKQoAZ2V0X2J1ZmZlcigpIGZhaWxlZAoAdmlkZW9fZ2V0X2J1ZmZlcjogaW1hZ2UgcGFyYW1ldGVycyBpbnZhbGlkCgBwaWMtPmRhdGFbKl0hPU5VTEwgaW4gZ2V0X2J1ZmZlcl9pbnRlcm5hbAoAZnJhbWUtPmRhdGFbaV0AQnVmZmVyIHJldHVybmVkIGJ5IGdldF9idWZmZXIyKCkgZGlkIG5vdCB6ZXJvIHVudXNlZCBwbGFuZSBwb2ludGVycwoASW5jb25zaXN0ZW50IGNoYW5uZWwgY29uZmlndXJhdGlvbi4KAFRvbyBtYW55IGNoYW5uZWxzOiAlZC4KAGNoYW5naW5nIHdpZHRoICVkIC0+ICVkIC8gaGVpZ2h0ICVkIC0+ICVkIG9uIHNsaWNlICVkCgBSZWluaXQgY29udGV4dCB0byAlZHglZCwgcGl4X2ZtdDogJXMKAGgyNjRfc2xpY2VfaGVhZGVyX2luaXQoKSBmYWlsZWQKAENvdWxkIG5vdCBhbGxvY2F0ZSBtZW1vcnkKAFVuc3VwcG9ydGVkIGJpdCBkZXB0aCAlZAoAY29udGV4dF9pbml0KCkgZmFpbGVkLgoAQ2Fubm90IGFsbG9jYXRlIG1lbW9yeS4KAFJlZmVyZW5jZSBub3QgYXZhaWxhYmxlIGZvciBlcnJvciBjb25jZWFsaW5nCgBSZWZlcmVuY2UgaW52YWxpZAoAbGliYXZjb2RlYy9oMjY0cHJlZC5jAGJpdF9kZXB0aDw9OABsaWJhdmNvZGVjL2gyNjRkc3AuYwAAEAAggKAMDRQVDg8WFxwdJCUeHyYnNDU8PTY3Pj9ERUxNRkdOT1xdZGVeX2ZnbG10dW5vdncAKFAABAEIDAUJDQIGCg4DBwsPAAAJERIMKBsHIzkdHjomNS8BAhgLEzAUDioyFiU7Hzw3CAMgBBopDRUxKw8sNCc9PhAKGQUhIgYcOCQXMy0uNj8AAAgQAQkYIBECGSgwOCEKAxIpMTkaCwQTIioyOhsMBRQjKzM7HA0GFSQsNDwdDhYlLTU9HgcPJi42PhcfJy83PwAACQI4EhoiGyMcJB0tBzYnCBgZISkLKgwrDSwONQ8+LxAgKAoxBDIFMwY0Fj0mFzcBETADORM6FDsVPCUeLh8/AAABAjUDBzYbBCYpCCI3MBw+BScuLCoWCRgjOzgxEh0LPzQGGiUoIS89LSsVFzoRCjMZJCA8FDkQMh8TDx4ODQxpZ25vcmluZyBpbnZhbGlkIFNBUjogJWQvJWQKAHNwcy0+Y3JvcF9yaWdodCArIHNwcy0+Y3JvcF9sZWZ0IDwgKHVuc2lnbmVkKWgtPndpZHRoAHNwcy0+Y3JvcF90b3AgKyBzcHMtPmNyb3BfYm90dG9tIDwgKHVuc2lnbmVkKWgtPmhlaWdodABnZXRfZm9ybWF0KCkgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBmZl90aHJlYWRfZmluaXNoX3NldHVwKCkKAG4gPj0gMQBJbnZhbGlkIGZvcm1hdCByZXR1cm5lZCBieSBnZXRfZm9ybWF0KCkgY2FsbGJhY2suCgBGb3JtYXQgJXMgY2hvc2VuIGJ5IGdldF9mb3JtYXQoKS4KAEludmFsaWQgcmV0dXJuIGZyb20gZ2V0X2Zvcm1hdCgpOiAlcyBub3QgaW4gcG9zc2libGUgbGlzdC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogZG9lcyBub3QgbWF0Y2ggdGhlIGZvcm1hdCBvZiB0aGUgcHJvdmlkZWQgZnJhbWVzIGNvbnRleHQuCgBJbnZhbGlkIHNldHVwIGZvciBmb3JtYXQgJXM6IGRvZXMgbm90IG1hdGNoIHRoZSB0eXBlIG9mIHRoZSBwcm92aWRlZCBkZXZpY2UgY29udGV4dC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogbWlzc2luZyBjb25maWd1cmF0aW9uLgoARm9ybWF0ICVzIHJlcXVpcmVzIGh3YWNjZWwgaW5pdGlhbGlzYXRpb24uCgBGb3JtYXQgJXMgbm90IHVzYWJsZSwgcmV0cnlpbmcgZ2V0X2Zvcm1hdCgpIHdpdGhvdXQgaXQuCgBJZ25vcmluZyBleHBlcmltZW50YWwgaHdhY2NlbDogJXMKAEZhaWxlZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBod2FjY2VsIGluaXRpYWxpc2F0aW9uIHJldHVybmVkIGVycm9yLgoAIWgtPnNldHVwX2ZpbmlzaGVkAHNsaWNlIHR5cGUgJWQgdG9vIGxhcmdlIGF0ICVkCgBBIG5vbi1pbnRyYSBzbGljZSBpbiBhbiBJRFIgTkFMIHVuaXQuCgBGcmFtZSBudW0gY2hhbmdlIGZyb20gJWQgdG8gJWQKAFRoaXMgc3RyZWFtIHdhcyBnZW5lcmF0ZWQgYnkgYSBicm9rZW4gZW5jb2RlciwgaW52YWxpZCA4eDggaW5mZXJlbmNlCgBjYWJhY19pbml0X2lkYyAldSBvdmVyZmxvdwoAUVAgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nX2ZpbHRlcl9pZGMgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nIGZpbHRlciBwYXJhbWV0ZXJzICVkICVkIG91dCBvZiByYW5nZQoAaWxsZWdhbCBsb25nIHJlZiBpbiBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoAbHVtYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAGNocm9tYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAE91dCBvZiByYW5nZSB3ZWlnaHQKAHJlZmVyZW5jZSBjb3VudCBvdmVyZmxvdwoAaWxsZWdhbCBtb2RpZmljYXRpb25fb2ZfcGljX251bXNfaWRjICV1CgByZWZlcmVuY2Ugb3ZlcmZsb3cgJXUgPiAldSBvciAldSA+ICV1CgBJbnZhbGlkIHplcm8tc2l6ZWQgVkNMIE5BTCB1bml0CgBFeGNlZWRlZCBuZXh0IE5BTEZGIHBvc2l0aW9uLCByZS1zeW5jaW5nLgoATm8gc3RhcnQgY29kZSBpcyBmb3VuZC4KAE5BTEZGOiBDb25zdW1lZCBvbmx5ICVkIGJ5dGVzIGluc3RlYWQgb2YgJWQKAEludmFsaWQgTkFMIHVuaXQgJWQsIHNraXBwaW5nLgoAbmFsX3VuaXRfdHlwZTogJWQsIG5hbF9yZWZfaWRjOiAlZAoAbmFsX3VuaXRfdHlwZTogJWQoJXMpLCBudWhfbGF5ZXJfaWQ6ICVkLCB0ZW1wb3JhbF9pZDogJWQKAD8AU0VJX1NVRkZJWABTRUlfUFJFRklYAEZEX05VVABFT0JfTlVUAEVPU19OVVQAQVVEAFBQUwBTUFMAVlBTAENSQV9OVVQASURSX05fTFAASURSX1dfUkFETABCTEFfTl9MUABCTEFfV19SQURMAEJMQV9XX0xQAFJBU0xfUgBSQVNMX04AUkFETF9SAFJBRExfTgBTVFNBX1IAU1RTQV9OAFRTQV9SAFRTQV9OAFRSQUlMX1IAVFJBSUxfTgBuYWwtPnNraXBwZWRfYnl0ZXNfcG9zX3NpemUgPj0gbmFsLT5za2lwcGVkX2J5dGVzAGxpYmF2Y29kZWMvaDI2NDVfcGFyc2UuYwB2YWwgfHwgIW1pbl9zaXplAC4vbGliYXZ1dGlsL21lbV9pbnRlcm5hbC5oAGF2Y0MgJWQgdG9vIHNob3J0CgBEZWNvZGluZyBzcHMgJWQgZnJvbSBhdmNDIGZhaWxlZAoARGVjb2RpbmcgcHBzICVkIGZyb20gYXZjQyBmYWlsZWQKAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gYWZ0ZXIgZXNjYXBpbmcgdGhlIE5BTAoAcHRocmVhZF9vbmNlIGhhcyBmYWlsZWQuAEVycm9yIHJlc2lsaWVuY2Ugd2l0aCBzbGljZSB0aHJlYWRzIGlzIGVuYWJsZWQuIEl0IGlzIHVuc2FmZSBhbmQgdW5zdXBwb3J0ZWQgYW5kIG1heSBjcmFzaC4gVXNlIGl0IGF0IHlvdXIgb3duIHJpc2sKAAIAAAAGAQAABgYDAAYHBwYGCAgHAQAAAAcBAAAEBgEAAwMCBQIDAgABAAAABwIAAAcHAwAJBwcFCQkHBgoKCQcLCwoHDAwLCg0MDAsBAAAADwEAAA4NAQAHDAsBBgUKAQcGBAkHBgUIBwYFBAcFBAQBAAAABgIAAAgGAwAJCAcFCgkIBgsKCQcNCwoIDQ0LCQ0NDQoODg0LDg4ODQ8PDg4PDw8OEA8PDxAQEA8QEBAQEBAQEAIAAAAGAgAABgUDAAcGBgQIBgYECAcHBQkICAYLCQkGCwsL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Y2VkCgBub24tZXhpc3RpbmcgU1BTICV1IHJlZmVyZW5jZWQKAG1pc3NpbmcgcGljdHVyZSBpbiBhY2Nlc3MgdW5pdCB3aXRoIHNpemUgJWQKAGlsbGVnYWwgcmVvcmRlcmluZ19vZl9waWNfbnVtc19pZGMgJWQKAHJlZmVyZW5jZSBjb3VudCAlZCBvdmVyZmxvdwoAaWxsZWdhbCBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoASW52YWxpZCBOQUwgdW5pdCBzaXplICglZCA+ICVkKS4KAEFWQy1wYXJzZXI6IG5hbCBsZW5ndGggc2l6ZSBpbnZhbGlkCgBBVkMtcGFyc2VyOiBuYWwgc2l6ZSAlZCByZW1haW5pbmcgJWQKAAAAAQABAgABAgMBAgMCAwMAAQACAQADAgEAAwIBAwIDAAABAAECAAECAwABAgMEAAECAwQFAAECAwQFBgABAgMEBQYHAQIDBAUGBwIDBAUGBwMEBQYHBAUGBwUGBwYHBwABAAIBAAMCAQAEAwIBAAUEAwIBAAYFBAMCAQAHBgUEAwIBAAcGBQQDAgEHBgUEAwIHBgUEAwcGBQQHBgUHBgdtaXNzaW5nIHBpY3R1cmUgaW4gYWNjZXNzIHVuaXQKAEludmFsaWQgc2xpY2Ugc2VnbWVudCBhZGRyZXNzOiAldS4KAFVua25vd24gc2xpY2UgdHlwZTogJWQuCgBJbnZhbGlkIFVFIGdvbG9tYiBjb2RlCgBEZWNvZGluZyBTRUkKAFNraXBwZWQgU1VGRklYIFNFSSAlZAoAU2tpcHBlZCBQUkVGSVggU0VJICVkCgBudW1fc3BzX2lkc19taW51czEgJWQgaW52YWxpZAoAYWN0aXZlX3BhcmFtZXRlcl9zZXRfaWQgJWQgaW52YWxpZAoAQk9UVE9NIEZpZWxkCgBUT1AgRmllbGQKAERlY29kaW5nIFBQUwoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFBQUyAoJXRkID4gJXp1KQoAUFBTIGlkIG91dCBvZiByYW5nZTogJWQKAFNQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBTUFMgJXUgZG9lcyBub3QgZXhpc3QuCgBkaWZmX2N1X3FwX2RlbHRhX2RlcHRoICVkIGlzIGludmFsaWQKAHBwc19jYl9xcF9vZmZzZXQgb3V0IG9mIHJhbmdlOiAlZAoAcHBzX2NyX3FwX29mZnNldCBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9jb2x1bW5zX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9yb3dzX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBJbnZhbGlkIHRpbGUgd2lkdGhzLgoASW52YWxpZCB0aWxlIGhlaWdodHMuCgBwcHNfYmV0YV9vZmZzZXRfZGl2MiBvdXQgb2YgcmFuZ2U6ICVkCgBwcHNfdGNfb2Zmc2V0X2RpdjIgb3V0IG9mIHJhbmdlOiAlZAoAbG9nMl9wYXJhbGxlbF9tZXJnZV9sZXZlbF9taW51czIgb3V0IG9mIHJhbmdlOiAlZAoAT3ZlcnJlYWQgUFBTIGJ5ICVkIGJpdHMKAGNocm9tYV9xcF9vZmZzZXRfbGlzdF9sZW5fbWludXMxIHNoYWxsIGJlIGluIHRoZSByYW5nZSBbMCwgNV0uCgBjYl9xcF9vZmZzZXRfbGlzdCBub3QgdGVzdGVkIHlldC4KAEludmFsaWQgZGVsdGEgaW4gc2NhbGluZyBsaXN0IGRhdGE6ICVkLgoAEBAQEBESFRgQEBAQERMWGRAQERIUFhkdEBASFRgbHyQRERQYHiMpLxITFhsjLDZBFRYZHyk2RlgYGR0kL0FYcxAQEBAREhQYEBAQERIUGBkQEBESFBgZHBAREhQYGRwhERIUGBkcISkSFBgZHCEpNhQYGRwhKTZHGBkcISk2R1tEZWNvZGluZyBTUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBTUFMgKCV0ZCA+ICV6dSkKAFBhcnNlZCBTUFM6IGlkICVkOyBjb2RlZCB3eGg6ICVkeCVkOyBjcm9wcGVkIHd4aDogJWR4JWQ7IHBpeF9mbXQ6ICVzLgoAIShzLT5zcHNfbGlzdFtpZF0gJiYgcy0+c3BzID09IChIRVZDU1BTKilzLT5zcHNfbGlzdFtpZF0tPmRhdGEpAGxpYmF2Y29kZWMvaGV2Y19wcy5jAFZQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBWUFMgJWQgZG9lcyBub3QgZXhpc3QKAHNwc19tYXhfc3ViX2xheWVycyBvdXQgb2YgcmFuZ2U6ICVkCgBjaHJvbWFfZm9ybWF0X2lkYyAlZCBpcyBpbnZhbGlkCgBkaXNjYXJkaW5nIHNwcyBjb25mb3JtYW5jZSB3aW5kb3csIG9yaWdpbmFsIHZhbHVlcyBhcmUgbDoldSByOiV1IHQ6JXUgYjoldQoATHVtYSBiaXQgZGVwdGggKCVkKSBpcyBkaWZmZXJlbnQgZnJvbSBjaHJvbWEgYml0IGRlcHRoICglZCksIHRoaXMgaXMgdW5zdXBwb3J0ZWQuCgBsb2cyX21heF9waWNfb3JkZXJfY250X2xzYl9taW51czQgb3V0IHJhbmdlOiAlZAoAc3BzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAc3BzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAEludmFsaWQgdmFsdWUgJWQgZm9yIGxvZzJfbWluX2NiX3NpemUASW52YWxpZCB2YWx1ZSAlZCBmb3IgbG9nMl9kaWZmX21heF9taW5fY29kaW5nX2Jsb2NrX3NpemUASW52YWxpZCB2YWx1ZSBmb3IgbG9nMl9taW5fdGJfc2l6ZQBJbnZhbGlkIHZhbHVlICVkIGZvciBsb2cyX2RpZmZfbWF4X21pbl90cmFuc2Zvcm1fYmxvY2tfc2l6ZQBQQ00gYml0IGRlcHRoICglZCwgJWQpIGlzIGdyZWF0ZXIgdGhhbiBub3JtYWwgYml0IGRlcHRoICglZCkKAFRvbyBtYW55IHNob3J0IHRlcm0gUlBTOiAlZC4KAFRvbyBtYW55IGxvbmcgdGVybSByZWYgcGljczogJWQuCgBleHRlbmRlZF9wcmVjaXNpb25fcHJvY2Vzc2luZ19mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGhpZ2hfcHJlY2lzaW9uX29mZnNldHNfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGNhYmFjX2J5cGFzc19hbGlnbm1lbnRfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAEludmFsaWQgY3JvcHBpbmcgb2Zmc2V0czogJXUvJXUvJXUvJXUKAERpc3BsYXlpbmcgdGhlIHdob2xlIHZpZGVvIHN1cmZhY2UuCgBDVEIgc2l6ZSBvdXQgb2YgcmFuZ2U6IDJeJWQKAGxvZzJfY3RiX3NpemUgJWQgZGlmZmVycyBmcm9tIHRoZSBib3VuZHMgb2YgYW55IGtub3duIHByb2ZpbGUKAGxvZzJfY3RiX3NpemUgJWQASW52YWxpZCBjb2RlZCBmcmFtZSBkaW1lbnNpb25zLgoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50ZXIgb3V0IG9mIHJhbmdlOiAlZAoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50cmEgb3V0IG9mIHJhbmdlOiAlZAoAbWF4IHRyYW5zZm9ybSBibG9jayBzaXplIG91dCBvZiByYW5nZTogJWQKAE92ZXJyZWFkIFNQUyBieSAlZCBiaXRzCgBEZWNvZGluZyBWVUkKAFVua25vd24gU0FSIGluZGV4OiAldS4KAEludmFsaWQgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdwoAZGlzY2FyZGluZyB2dWkgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdywgb3JpZ2luYWwgdmFsdWVzIGFyZSBsOiV1IHI6JXUgdDoldSBiOiV1CgBTdHJhbmdlIFZVSSB0aW1pbmcgaW5mb3JtYXRpb24sIHJldHJ5aW5nLi4uCgBSZXRyeSBnb3QgJXUvJXUgZnBzCgBTdHJhbmdlIFZVSSBiaXRzdHJlYW0gcmVzdHJpY3Rpb24gaW5mb3JtYXRpb24sIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBPdmVycmVhZCBpbiBWVUksIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBuYl9jcGIgJWQgaW52YWxpZAoASW52YWxpZCB2YWx1ZSBvZiBkZWx0YV9pZHggaW4gc2xpY2UgaGVhZGVyIFJQUzogJWQgPiAlZC4KAEludmFsaWQgdmFsdWUgb2YgYWJzX2RlbHRhX3JwczogJWQKAEludmFsaWQgbnVtX2RlbHRhX3BvY3M6ICVkCgBUb28gbWFueSByZWZzIGluIGEgc2hvcnQgdGVybSBSUFMuCgBJbnZhbGlkIHZhbHVlIG9mIGRlbHRhX3BvYzogJWQKAFRoZSBmb2xsb3dpbmcgYml0LWRlcHRocyBhcmUgY3VycmVudGx5IHNwZWNpZmllZDogOCwgOSwgMTAgYW5kIDEyIGJpdHMsIGNocm9tYV9mb3JtYXRfaWRjIGlzICVkLCBkZXB0aCBpcyAlZAoAUFRMIGluZm9ybWF0aW9uIHRvbyBzaG9ydAoAUFRMIGluZm9ybWF0aW9uIGZvciBzdWJsYXllciAlaSB0b28gc2hvcnQKAE5vdCBlbm91Z2ggZGF0YSBmb3Igc3VibGF5ZXIgJWkgbGV2ZWxfaWRjCgBNYWluIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIDEwIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIFN0aWxsIFBpY3R1cmUgcHJvZmlsZSBiaXRzdHJlYW0KAFJhbmdlIEV4dGVuc2lvbiBwcm9maWxlIGJpdHN0cmVhbQoAVW5rbm93biBIRVZDIHByb2ZpbGU6ICVkCgBEZWNvZGluZyBWUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBWUFMgKCV0ZCA+ICV6dSkKAHZwc19yZXNlcnZlZF90aHJlZV8yYml0cyBpcyBub3QgdGhyZWUKAHZwc19yZXNlcnZlZF9mZmZmXzE2Yml0cyBpcyBub3QgMHhmZmZmCgB2cHNfbWF4X3N1Yl9sYXllcnMgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAHRvbyBtYW55IGxheWVyX2lkX2luY2x1ZGVkX2ZsYWdzCgB2cHNfbnVtX2hyZF9wYXJhbWV0ZXJzICVkIGlzIGludmFsaWQKAE92ZXJyZWFkIFZQUyBieSAlZCBiaXRzCgBidWZfc2l6ZSA+PSAwAGxpYmF2Y29kZWMvYnl0ZXN0cmVhbS5oAEludmFsaWQgTkFMIHVuaXQgc2l6ZSBpbiBleHRyYWRhdGEuCgBEZWNvZGluZyBuYWwgdW5pdCAlZCAlZCBmcm9tIGh2Y0MgZmFpbGVkCgBJZ25vcmluZyBOQUwgdHlwZSAlZCBpbiBleHRyYWRhdGEKAC9kZXYvdXJhbmRvbQAvZGV2L3JhbmRvbQBzaXplb2YodG1wKSA+PSBhdl9zaGFfc2l6ZQBsaWJhdnV0aWwvcmFuZG9tX3NlZWQuYwCAAEZhaWxlZCB0byBzZXQgY2xvc2Ugb24gZXhlYwoAIAoJDQBBTEwARkwAZnJvbnQgbGVmdABGUgBmcm9udCByaWdodABGQwBmcm9udCBjZW50ZXIATEZFAGxvdyBmcmVxdWVuY3kAQkwAYmFjayBsZWZ0AEJSAGJhY2sgcmlnaHQARkxDAGZyb250IGxlZnQtb2YtY2VudGVyAEZSQwBmcm9udCByaWdodC1vZi1jZW50ZXIAQkMAYmFjayBjZW50ZXIAU0wAc2lkZSBsZWZ0AFNSAHNpZGUgcmlnaHQAVEMAdG9wIGNlbnRlcgBURkwAdG9wIGZyb250IGxlZnQAVEZDAHRvcCBmcm9udCBjZW50ZXIAVEZSAHRvcCBmcm9udCByaWdodABUQkwAdG9wIGJhY2sgbGVmdABUQkMAdG9wIGJhY2sgY2VudGVyAFRCUgB0b3AgYmFjayByaWdodABETABkb3dubWl4IGxlZnQARFIAZG93bm1peCByaWdodABXTAB3aWRlIGxlZnQAV1IAd2lkZSByaWdodABTREwAc3Vycm91bmQgZGlyZWN0IGxlZnQAU0RSAHN1cnJvdW5kIGRpcmVjdCByaWdodABMRkUyAGxvdyBmcmVxdWVuY3kgMgBtb25vAHN0ZXJlbwAyLjEAMy4wADMuMChiYWNrKQA0LjAAcXVhZABxdWFkKHNpZGUpADMuMQA1LjAANS4wKHNpZGUpADQuMQA1LjEANS4xKHNpZGUpADYuMAA2LjAoZnJvbnQpAGhleGFnb25hbAA2LjEANi4xKGJhY2spADYuMShmcm9udCkANy4wADcuMChmcm9udCkANy4xADcuMSh3aWRlKQA3LjEod2lkZS1zaWRlKQBvY3RhZ29uYWwAaGV4YWRlY2Fnb25hbABkb3dubWl4ACVzACVkIGNoYW5uZWxzACAoACsAKQAlZCUqMVs6L10lZCVjAGNvbnN0X3ZhbHVlcyBhcnJheSB0b28gc21hbGwgZm9yICVzCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIKACVmCgBJbnZhbGlkIGNoYXJzICclcycgYXQgdGhlIGVuZCBvZiBleHByZXNzaW9uICclcycKAFVuZGVmaW5lZCBjb25zdGFudCBvciBtaXNzaW5nICcoJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBvciB0b28gbWFueSBhcmdzIGluICclcycKAHNpbmgAY29zaAB0YW5oAHNpbgBjb3MAdGFuAGF0YW4AYXNpbgBhY29zAGV4cABhYnMAdGltZQBzcXVpc2gAZ2F1c3MAbW9kAG1heABtaW4AZXEAZ3RlAGd0AGx0ZQBsdABsZABpc25hbgBpc2luZgBzdAB3aGlsZQB0YXlsb3IAcm9vdABmbG9vcgBjZWlsAHJvdW5kAHNxcnQAbm90AHBvdwBwcmludABoeXBvdABnY2QAaWYAaWZub3QAYml0YW5kAGJpdG9yAGJldHdlZW4AY2xpcABhdGFuMgBsZXJwAFVua25vd24gZnVuY3Rpb24gaW4gJyVzJwoARQBQSQBQSEkAUVAyTEFNQkRBAEV2YWwAVmFsdWUgJWYgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiByYW5nZSBbJWcgLSAlZ10KAFZhbHVlICVmIGZvciBwYXJhbWV0ZXIgJyVzJyBpcyBub3QgYSB2YWxpZCBzZXQgb2YgMzJiaXQgaW50ZWdlciBmbGFncwoAZGV0ZWN0ZWQgJWQgbG9naWNhbCBjb3JlcwoAAAEcAh0OGAMeFhQPGREECB8bDRcVExAHGgwSBgsFCglVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgZHVyYXRpb24KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjaGFubmVsIGxheW91dAoASW52YWxpZCBvcHRpb24gdHlwZS4KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjb2xvcgoAMHgAcmFuZG9tAGJpa2VzaGVkADAxMjM0NTY3ODlBQkNERUZhYmNkZWYASW52YWxpZCAweFJSR0dCQltBQV0gY29sb3Igc3RyaW5nOiAnJXMnCgBDYW5ub3QgZmluZCBjb2xvciAnJXMnCgBJbnZhbGlkIGFscGhhIHZhbHVlIHNwZWNpZmllciAnJXMnIGluICclcycKAEFsaWNlQmx1ZQBBbnRpcXVlV2hpdGUAQXF1YQBBcXVhbWFyaW5lAEF6dXJlAEJlaWdlAEJpc3F1ZQBCbGFjawBCbGFuY2hlZEFsbW9uZABCbHVlAEJsdWVWaW9sZXQAQnJvd24AQnVybHlXb29kAENhZGV0Qmx1ZQBDaGFydHJldXNlAENob2NvbGF0ZQBDb3JhbABDb3JuZmxvd2VyQmx1ZQBDb3Juc2lsawBDcmltc29uAEN5YW4ARGFya0JsdWUARGFya0N5YW4ARGFya0dvbGRlblJvZABEYXJrR3JheQBEYXJrR3JlZW4ARGFya0toYWtpAERhcmtNYWdlbnRhAERhcmtPbGl2ZUdyZWVuAERhcmtvcmFuZ2UARGFya09yY2hpZABEYXJrUmVkAERhcmtTYWxtb24ARGFya1NlYUdyZWVuAERhcmtTbGF0ZUJsdWUARGFya1NsYXRlR3JheQBEYXJrVHVycXVvaXNlAERhcmtWaW9sZXQARGVlcFBpbmsARGVlcFNreUJsdWUARGltR3JheQBEb2RnZXJCbHVlAEZpcmVCcmljawBGbG9yYWxXaGl0ZQBGb3Jlc3RHcmVlbgBGdWNoc2lhAEdhaW5zYm9ybwBHaG9zdFdoaXRlAEdvbGQAR29sZGVuUm9kAEdyYXkAR3JlZW4AR3JlZW5ZZWxsb3cASG9uZXlEZXcASG90UGluawBJbmRpYW5SZWQASW5kaWdvAEl2b3J5AEtoYWtpAExhdmVuZGVyAExhdmVuZGVyQmx1c2gATGF3bkdyZWVuAExlbW9uQ2hpZmZvbgBMaWdodEJsdWUATGlnaHRDb3JhbABMaWdodEN5YW4ATGlnaHRHb2xkZW5Sb2RZZWxsb3cATGlnaHRHcmVlbgBMaWdodEdyZXkATGlnaHRQaW5rAExpZ2h0U2FsbW9uAExpZ2h0U2VhR3JlZW4ATGlnaHRTa3lCbHVlAExpZ2h0U2xhdGVHcmF5AExpZ2h0U3RlZWxCbHVlAExpZ2h0WWVsbG93AExpbWUATGltZUdyZWVuAExpbmVuAE1hZ2VudGEATWFyb29uAE1lZGl1bUFxdWFNYXJpbmUATWVkaXVtQmx1ZQBNZWRpdW1PcmNoaWQATWVkaXVtUHVycGxlAE1lZGl1bVNlYUdyZWVuAE1lZGl1bVNsYXRlQmx1ZQBNZWRpdW1TcHJpbmdHcmVlbgBNZWRpdW1UdXJxdW9pc2UATWVkaXVtVmlvbGV0UmVkAE1pZG5pZ2h0Qmx1ZQBNaW50Q3JlYW0ATWlzdHlSb3NlAE1vY2Nhc2luAE5hdmFqb1doaXRlAE5hdnkAT2xkTGFjZQBPbGl2ZQBPbGl2ZURyYWIAT3JhbmdlAE9yYW5nZVJlZABPcmNoaWQAUGFsZUdvbGRlblJvZABQYWxlR3JlZW4AUGFsZVR1cnF1b2lzZQBQYWxlVmlvbGV0UmVkAFBhcGF5YVdoaXAAUGVhY2hQdWZmAFBlcnUAUGluawBQbHVtAFBvd2RlckJsdWUAUHVycGxlAFJlZABSb3N5QnJvd24AUm95YWxCbHVlAFNhZGRsZUJyb3duAFNhbG1vbgBTYW5keUJyb3duAFNlYUdyZWVuAFNlYVNoZWxsAFNpZW5uYQBTaWx2ZXIAU2t5Qmx1ZQBTbGF0ZUJsdWUAU2xhdGVHcmF5AFNub3cAU3ByaW5nR3JlZW4AU3RlZWxCbHVlAFRhbgBUZWFsAFRoaXN0bGUAVG9tYXRvAFR1cnF1b2lzZQBWaW9sZXQAV2hlYXQAV2hpdGUAV2hpdGVTbW9rZQBZZWxsb3cAWWVsbG93R3JlZW4Abm93ACVKOiVNOiVTACVNOiVTACVIOiVNACVIJU0AJUgAJUg6JU06JVMAJUglTSVTAGphbnVhcnkAZmVicnVhcnkAbWFyY2gAYXByaWwAbWF5AGp1bmUAanVseQBhdWd1c3QAc2VwdGVtYmVyAG9jdG9iZXIAbm92ZW1iZXIAZGVjZW1iZXIAJVkgLSAlbSAtICVkACVZJW0lZABzYW1wbGUgZm9ybWF0AFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyAlcwoAVmFsdWUgJWQgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiAlcyBmb3JtYXQgcmFuZ2UgWyVkIC0gJWRdCgBwaXhlbCBmb3JtYXQAcmdiMzIAYmdyMzIAJXMlcwBsZQB2YWFwaQBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgdmlkZW8gcmF0ZQoAJWQ6JWQlYwBudHNjAHBhbABxbnRzYwBxcGFsAHNudHNjAHNwYWwAbnRzYy1maWxtAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBpbWFnZSBzaXplCgBzcWNpZgBxY2lmAGNpZgA0Y2lmADE2Y2lmAHFxdmdhAHF2Z2EAdmdhAHN2Z2EAeGdhAHV4Z2EAcXhnYQBzeGdhAHFzeGdhAGhzeGdhAHd2Z2EAd3hnYQB3c3hnYQB3dXhnYQB3b3hnYQB3cXN4Z2EAd3F1eGdhAHdoc3hnYQB3aHV4Z2EAY2dhAGVnYQBoZDQ4MABoZDcyMABoZDEwODAAMmsAMmtkY2kAMmtmbGF0ADJrc2NvcGUANGsANGtkY2kANGtmbGF0ADRrc2NvcGUAbmhkAGhxdmdhAHdxdmdhAGZ3cXZnYQBodmdhAHFoZAB1aGQyMTYwAHVoZDQzMjAAdHJ1ZSx5LHllcyxlbmFibGUsZW5hYmxlZCxvbgBmYWxzZSxuLG5vLGRpc2FibGUsZGlzYWJsZWQsb2ZmAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBib29sZWFuCgBBVk9wdGlvbiB0eXBlICVkIG9mIG9wdGlvbiAlcyBub3QgaW1wbGVtZW50ZWQgeWV0CgBFcnJvciBzZXR0aW5nIG9wdGlvbiAlcyB0byB2YWx1ZSAlcy4KAG5iX3RocmVhZHMgPj0gMABsaWJhdnV0aWwvc2xpY2V0aHJlYWQuYwBuYl9qb2JzID4gMABGaW5hbCB0aHJlYWQgdXBkYXRlIGZhaWxlZAoAcC0+YXZjdHgtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPIHx8IHAtPmF2Y3R4LT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTwBsaWJhdmNvZGVjL3B0aHJlYWRfZnJhbWUuYwBmY3R4LT5hc3luY19sb2NrAEFzc2VydGlvbiAlcyBmYWlsZWQgYXQgJXM6JWQKAHJldCA+PSAwAGxpYmF2Y29kZWMvb3B0aW9ucy5jAEFWQ29kZWNDb250ZXh0AGIAc2V0IGJpdHJhdGUgKGluIGJpdHMvcykAYWIAYnQAU2V0IHZpZGVvIGJpdHJhdGUgdG9sZXJhbmNlIChpbiBiaXRzL3MpLiBJbiAxLXBhc3MgbW9kZSwgYml0cmF0ZSB0b2xlcmFuY2Ugc3BlY2lmaWVzIGhvdyBmYXIgcmF0ZWNvbnRyb2wgaXMgd2lsbGluZyB0byBkZXZpYXRlIGZyb20gdGhlIHRhcmdldCBhdmVyYWdlIGJpdHJhdGUgdmFsdWUuIFRoaXMgaXMgbm90IHJlbGF0ZWQgdG8gbWluaW11bS9tYXhpbXVtIGJpdHJhdGUuIExvd2VyaW5nIHRvbGVyYW5jZSB0b28gbXVjaCBoYXMgYW4gYWR2ZXJzZSBlZmZlY3Qgb24gcXVhbGl0eS4AZmxhZ3MAdW5hbGlnbmVkAGFsbG93IGRlY29kZXJzIHRvIHByb2R1Y2UgdW5hbGlnbmVkIG91dHB1dABtdjQAdXNlIGZvdXIgbW90aW9uIHZlY3RvcnMgcGVyIG1hY3JvYmxvY2sgKE1QRUctNCkAcXBlbAB1c2UgMS80LXBlbCBtb3Rpb24gY29tcGVuc2F0aW9uAGxvb3AAdXNlIGxvb3AgZmlsdGVyAHFzY2FsZQB1c2UgZml4ZWQgcXNjYWxlAHBhc3MxAHVzZSBpbnRlcm5hbCAyLXBhc3MgcmF0ZWNvbnRyb2wgaW4gZmlyc3QgIHBhc3MgbW9kZQBwYXNzMgB1c2UgaW50ZXJuYWwgMi1wYXNzIHJhdGVjb250cm9sIGluIHNlY29uZCBwYXNzIG1vZGUAZ3JheQBvbmx5IGRlY29kZS9lbmNvZGUgZ3JheXNjYWxlAHBzbnIAZXJyb3JbP10gdmFyaWFibGVzIHdpbGwgYmUgc2V0IGR1cmluZyBlbmNvZGluZwB0cnVuY2F0ZWQASW5wdXQgYml0c3RyZWFtIG1pZ2h0IGJlIHJhbmRvbWx5IHRydW5jYXRlZABpbGRjdAB1c2UgaW50ZXJsYWNlZCBEQ1QAbG93X2RlbGF5AGZvcmNlIGxvdyBkZWxheQBnbG9iYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGluIGV4dHJhZGF0YSBpbnN0ZWFkIG9mIGV2ZXJ5IGtleWZyYW1lAGJpdGV4YWN0AHVzZSBvbmx5IGJpdGV4YWN0IGZ1bmN0aW9ucyAoZXhjZXB0IChJKURDVCkAYWljAEguMjYzIGFkdmFuY2VkIGludHJhIGNvZGluZyAvIE1QRUctNCBBQyBwcmVkaWN0aW9uAGlsbWUAaW50ZXJsYWNlZCBtb3Rpb24gZXN0aW1hdGlvbgBjZ29wAGNsb3NlZCBHT1AAb3V0cHV0X2NvcnJ1cHQAT3V0cHV0IGV2ZW4gcG90ZW50aWFsbHkgY29ycnVwdGVkIGZyYW1lcwBmYXN0AGFsbG93IG5vbi1zcGVjLWNvbXBsaWFudCBzcGVlZHVwIHRyaWNrcwBmbGFnczIAbm9vdXQAc2tpcCBiaXRzdHJlYW0gZW5jb2RpbmcAaWdub3JlY3JvcABpZ25vcmUgY3JvcHBpbmcgaW5mb3JtYXRpb24gZnJvbSBzcHMAbG9jYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGF0IGV2ZXJ5IGtleWZyYW1lIGluc3RlYWQgb2YgaW4gZXh0cmFkYXRhAGNodW5rcwBGcmFtZSBkYXRhIG1pZ2h0IGJlIHNwbGl0IGludG8gbXVsdGlwbGUgY2h1bmtzAHNob3dhbGwAU2hvdyBhbGwgZnJhbWVzIGJlZm9yZSB0aGUgZmlyc3Qga2V5ZnJhbWUAZXhwb3J0X212cwBleHBvcnQgbW90aW9uIHZlY3RvcnMgdGhyb3VnaCBmcmFtZSBzaWRlIGRhdGEAc2tpcF9tYW51YWwAZG8gbm90IHNraXAgc2FtcGxlcyBhbmQgZXhwb3J0IHNraXAgaW5mb3JtYXRpb24gYXMgZnJhbWUgc2lkZSBkYXRhAGFzc19yb19mbHVzaF9ub29wAGRvIG5vdCByZXNldCBBU1MgUmVhZE9yZGVyIGZpZWxkIG9uIGZsdXNoAHRpbWVfYmFzZQBnAHNldCB0aGUgZ3JvdXAgb2YgcGljdHVyZSAoR09QKSBzaXplAGFyAHNldCBhdWRpbyBzYW1wbGluZyByYXRlIChpbiBIeikAYWMAc2V0IG51bWJlciBvZiBhdWRpbyBjaGFubmVscwBjdXRvZmYAc2V0IGN1dG9mZiBiYW5kd2lkdGgAZnJhbWVfc2l6ZQBmcmFtZV9udW1iZXIAZGVsYXkAcWNvbXAAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGNvbXByZXNzaW9uIChWQlIpLiBDb25zdGFudCBvZiByYXRlY29udHJvbCBlcXVhdGlvbi4gUmVjb21tZW5kZWQgcmFuZ2UgZm9yIGRlZmF1bHQgcmNfZXE6IDAuMC0xLjAAcWJsdXIAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGJsdXIgKFZCUikAcW1pbgBtaW5pbXVtIHZpZGVvIHF1YW50aXplciBzY2FsZSAoVkJSKQBxbWF4AG1heGltdW0gdmlkZW8gcXVhbnRpemVyIHNjYWxlIChWQlIpAHFkaWZmAG1heGltdW0gZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBxdWFudGl6ZXIgc2NhbGVzIChWQlIpAGJmAHNldCBtYXhpbXVtIG51bWJlciBvZiBCLWZyYW1lcyBiZXR3ZWVuIG5vbi1CLWZyYW1lcwBiX3FmYWN0b3IAUVAgZmFjdG9yIGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGJfc3RyYXRlZ3kAc3RyYXRlZ3kgdG8gY2hvb3NlIGJldHdlZW4gSS9QL0ItZnJhbWVzAHBzAFJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMAbXZfYml0cwBoZWFkZXJfYml0cwBpX3RleF9iaXRzAHBfdGV4X2JpdHMAaV9jb3VudABwX2NvdW50AHNraXBfY291bnQAbWlzY19iaXRzAGZyYW1lX2JpdHMAY29kZWNfdGFnAGJ1ZwB3b3JrIGFyb3VuZCBub3QgYXV0b2RldGVjdGVkIGVuY29kZXIgYnVncwBhdXRvZGV0ZWN0AHh2aWRfaWxhY2UAWHZpZCBpbnRlcmxhY2luZyBidWcgKGF1dG9kZXRlY3RlZCBpZiBGT1VSQ0MgPT0gWFZJWCkAdW1wNAAoYXV0b2RldGVjdGVkIGlmIEZPVVJDQyA9PSBVTVA0KQBub19wYWRkaW5nAHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQpAGFtdgBxcGVsX2Nocm9tYQBzdGRfcXBlbABvbGQgc3RhbmRhcmQgcXBlbCAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAcXBlbF9jaHJvbWEyAGRpcmVjdF9ibG9ja3NpemUAZGlyZWN0LXFwZWwtYmxvY2tzaXplIGJ1ZyAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAZWRnZQBlZGdlIHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQy92ZXJzaW9uKQBocGVsX2Nocm9tYQBkY19jbGlwAG1zAHdvcmsgYXJvdW5kIHZhcmlvdXMgYnVncyBpbiBNaWNyb3NvZnQncyBicm9rZW4gZGVjb2RlcnMAdHJ1bmMAdHJ1bmNhdGVkIGZyYW1lcwBpZWRnZQBzdHJpY3QAaG93IHN0cmljdGx5IHRvIGZvbGxvdyB0aGUgc3RhbmRhcmRzAHZlcnkAc3RyaWN0bHkgY29uZm9ybSB0byBhIG9sZGVyIG1vcmUgc3RyaWN0IHZlcnNpb24gb2YgdGhlIHNwZWMgb3IgcmVmZXJlbmNlIHNvZnR3YXJlAHN0cmljdGx5IGNvbmZvcm0gdG8gYWxsIHRoZSB0aGluZ3MgaW4gdGhlIHNwZWMgbm8gbWF0dGVyIHdoYXQgdGhlIGNvbnNlcXVlbmNlcwBub3JtYWwAdW5vZmZpY2lhbABhbGxvdyB1bm9mZmljaWFsIGV4dGVuc2lvbnMAZXhwZXJpbWVudGFsAGFsbG93IG5vbi1zdGFuZGFyZGl6ZWQgZXhwZXJpbWVudGFsIHRoaW5ncwBiX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGVycl9kZXRlY3QAc2V0IGVycm9yIGRldGVjdGlvbiBmbGFncwBjcmNjaGVjawB2ZXJpZnkgZW1iZWRkZWQgQ1JDcwBiaXRzdHJlYW0AZGV0ZWN0IGJpdHN0cmVhbSBzcGVjaWZpY2F0aW9uIGRldmlhdGlvbnMAYnVmZmVyAGRldGVjdCBpbXByb3BlciBiaXRzdHJlYW0gbGVuZ3RoAGV4cGxvZGUAYWJvcnQgZGVjb2Rpbmcgb24gbWlub3IgZXJyb3IgZGV0ZWN0aW9uAGlnbm9yZV9lcnIAaWdub3JlIGVycm9ycwBjYXJlZnVsAGNvbnNpZGVyIHRoaW5ncyB0aGF0IHZpb2xhdGUgdGhlIHNwZWMsIGFyZSBmYXN0IHRvIGNoZWNrIGFuZCBoYXZlIG5vdCBiZWVuIHNlZW4gaW4gdGhlIHdpbGQgYXMgZXJyb3JzAGNvbXBsaWFudABjb25zaWRlciBhbGwgc3BlYyBub24gY29tcGxpYW5jaWVzIGFzIGVycm9ycwBhZ2dyZXNzaXZlAGNvbnNpZGVyIHRoaW5ncyB0aGF0IGEgc2FuZSBlbmNvZGVyIHNob3VsZCBub3QgZG8gYXMgYW4gZXJyb3IAaGFzX2JfZnJhbWVzAGJsb2NrX2FsaWduAG1wZWdfcXVhbnQAdXNlIE1QRUcgcXVhbnRpemVycyBpbnN0ZWFkIG9mIEguMjYzAHJjX292ZXJyaWRlX2NvdW50AG1heHJhdGUAbWF4aW11bSBiaXRyYXRlIChpbiBiaXRzL3MpLiBVc2VkIGZvciBWQlYgdG9nZXRoZXIgd2l0aCBidWZzaXplLgBtaW5yYXRlAG1pbmltdW0gYml0cmF0ZSAoaW4gYml0cy9zKS4gTW9zdCB1c2VmdWwgaW4gc2V0dGluZyB1cCBhIENCUiBlbmNvZGUuIEl0IGlzIG9mIGxpdHRsZSB1c2Ugb3RoZXJ3aXNlLgBidWZzaXplAHNldCByYXRlY29udHJvbCBidWZmZXIgc2l6ZSAoaW4gYml0cykAaV9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBJLWZyYW1lcwBpX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEktZnJhbWVzAGRjdABEQ1QgYWxnb3JpdGhtAGF1dG8AYXV0b3NlbGVjdCBhIGdvb2Qgb25lAGZhc3RpbnQAZmFzdCBpbnRlZ2VyAGFjY3VyYXRlIGludGVnZXIAbW14AGFsdGl2ZWMAZmFhbgBmbG9hdGluZyBwb2ludCBBQU4gRENUAGx1bWlfbWFzawBjb21wcmVzc2VzIGJyaWdodCBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAHRjcGx4X21hc2sAdGVtcG9yYWwgY29tcGxleGl0eSBtYXNraW5nAHNjcGx4X21hc2sAc3BhdGlhbCBjb21wbGV4aXR5IG1hc2tpbmcAcF9tYXNrAGludGVyIG1hc2tpbmcAZGFya19tYXNrAGNvbXByZXNzZXMgZGFyayBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAGlkY3QAc2VsZWN0IElEQ1QgaW1wbGVtZW50YXRpb24Ac2ltcGxlAHNpbXBsZW1teABhcm0Ac2ltcGxlYXJtAHNpbXBsZWFybXY1dGUAc2ltcGxlYXJtdjYAc2ltcGxlbmVvbgB4dmlkAHh2aWRtbXgAZGVwcmVjYXRlZCwgZm9yIGNvbXBhdGliaWxpdHkgb25seQBmYWFuaQBmbG9hdGluZyBwb2ludCBBQU4gSURDVABzaW1wbGVhdXRvAHNsaWNlX2NvdW50AGVjAHNldCBlcnJvciBjb25jZWFsbWVudCBzdHJhdGVneQBndWVzc19tdnMAaXRlcmF0aXZlIG1vdGlvbiB2ZWN0b3IgKE1WKSBzZWFyY2ggKHNsb3cpAGRlYmxvY2sAdXNlIHN0cm9uZyBkZWJsb2NrIGZpbHRlciBmb3IgZGFtYWdlZCBNQnMAZmF2b3JfaW50ZXIAZmF2b3IgcHJlZGljdGluZyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBiaXRzX3Blcl9jb2RlZF9zYW1wbGUAcHJlZABwcmVkaWN0aW9uIG1ldGhvZABsZWZ0AHBsYW5lAG1lZGlhbgBhc3BlY3QAc2FtcGxlIGFzcGVjdCByYXRpbwBzYXIAZGVidWcAcHJpbnQgc3BlY2lmaWMgZGVidWcgaW5mbwBwaWN0AHBpY3R1cmUgaW5mbwByYwByYXRlIGNvbnRyb2wAbWJfdHlwZQBtYWNyb2Jsb2NrIChNQikgdHlwZQBxcABwZXItYmxvY2sgcXVhbnRpemF0aW9uIHBhcmFtZXRlciAoUVApAGRjdF9jb2VmZgBncmVlbl9tZXRhZGF0YQBza2lwAHN0YXJ0Y29kZQBlcgBlcnJvciByZWNvZ25pdGlvbgBtbWNvAG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9ucyAoSC4yNjQpAGJ1Z3MAYnVmZmVycwBwaWN0dXJlIGJ1ZmZlciBhbGxvY2F0aW9ucwB0aHJlYWRfb3BzAHRocmVhZGluZyBvcGVyYXRpb25zAG5vbWMAc2tpcCBtb3Rpb24gY29tcGVuc2F0aW9uAGNtcABmdWxsLXBlbCBNRSBjb21wYXJlIGZ1bmN0aW9uAGNtcF9mdW5jAHN1YmNtcABzdWItcGVsIE1FIGNvbXBhcmUgZnVuY3Rpb24AbWJjbXAAbWFjcm9ibG9jayBjb21wYXJlIGZ1bmN0aW9uAGlsZGN0Y21wAGludGVybGFjZWQgRENUIGNvbXBhcmUgZnVuY3Rpb24AZGlhX3NpemUAZGlhbW9uZCB0eXBlICYgc2l6ZSBmb3IgbW90aW9uIGVzdGltYXRpb24AbGFzdF9wcmVkAGFtb3VudCBvZiBtb3Rpb24gcHJlZGljdG9ycyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBwcmVtZQBwcmUgbW90aW9uIGVzdGltYXRpb24AcHJlY21wAHByZSBtb3Rpb24gZXN0aW1hdGlvbiBjb21wYXJlIGZ1bmN0aW9uAHNhZABzdW0gb2YgYWJzb2x1dGUgZGlmZmVyZW5jZXMsIGZhc3QAc3NlAHN1bSBvZiBzcXVhcmVkIGVycm9ycwBzYXRkAHN1bSBvZiBhYnNvbHV0ZSBIYWRhbWFyZCB0cmFuc2Zvcm1lZCBkaWZmZXJlbmNlcwBzdW0gb2YgYWJzb2x1dGUgRENUIHRyYW5zZm9ybWVkIGRpZmZlcmVuY2VzAHN1bSBvZiBzcXVhcmVkIHF1YW50aXphdGlvbiBlcnJvcnMgKGF2b2lkLCBsb3cgcXVhbGl0eSkAYml0AG51bWJlciBvZiBiaXRzIG5lZWRlZCBmb3IgdGhlIGJsb2NrAHJkAHJhdGUgZGlzdG9ydGlvbiBvcHRpbWFsLCBzbG93AHplcm8AMAB2c2FkAHN1bSBvZiBhYnNvbHV0ZSB2ZXJ0aWNhbCBkaWZmZXJlbmNlcwB2c3NlAHN1bSBvZiBzcXVhcmVkIHZlcnRpY2FsIGRpZmZlcmVuY2VzAG5zc2UAbm9pc2UgcHJlc2VydmluZyBzdW0gb2Ygc3F1YXJlZCBkaWZmZXJlbmNlcwBkY3RtYXgAY2hyb21hAG1zYWQAc3VtIG9mIGFic29sdXRlIGRpZmZlcmVuY2VzLCBtZWRpYW4gcHJlZGljdGVkAHByZV9kaWFfc2l6ZQBkaWFtb25kIHR5cGUgJiBzaXplIGZvciBtb3Rpb24gZXN0aW1hdGlvbiBwcmUtcGFzcwBzdWJxAHN1Yi1wZWwgbW90aW9uIGVzdGltYXRpb24gcXVhbGl0eQBtZV9yYW5nZQBsaW1pdCBtb3Rpb24gdmVjdG9ycyByYW5nZSAoMTAyMyBmb3IgRGl2WCBwbGF5ZXIpAGdsb2JhbF9xdWFsaXR5AGNvZGVyAHZsYwB2YXJpYWJsZSBsZW5ndGggY29kZXIgLyBIdWZmbWFuIGNvZGVyAGFyaXRobWV0aWMgY29kZXIAcmF3AHJhdyAobm8gZW5jb2RpbmcpAHJsZQBydW4tbGVuZ3RoIGNvZGVyAGNvbnRleHQAY29udGV4dCBtb2RlbABzbGljZV9mbGFncwBtYmQAbWFjcm9ibG9jayBkZWNpc2lvbiBhbGdvcml0aG0gKGhpZ2ggcXVhbGl0eSBtb2RlKQB1c2UgbWJjbXAAYml0cwB1c2UgZmV3ZXN0IGJpdHMAdXNlIGJlc3QgcmF0ZSBkaXN0b3J0aW9uAHNjX3RocmVzaG9sZABzY2VuZSBjaGFuZ2UgdGhyZXNob2xkAG5yAG5vaXNlIHJlZHVjdGlvbgByY19pbml0X29jY3VwYW5jeQBudW1iZXIgb2YgYml0cyB3aGljaCBzaG91bGQgYmUgbG9hZGVkIGludG8gdGhlIHJjIGJ1ZmZlciBiZWZvcmUgZGVjb2Rpbmcgc3RhcnRzAHRocmVhZHMAc2V0IHRoZSBudW1iZXIgb2YgdGhyZWFkcwBhdXRvZGV0ZWN0IGEgc3VpdGFibGUgbnVtYmVyIG9mIHRocmVhZHMgdG8gdXNlAGRjAGludHJhX2RjX3ByZWNpc2lvbgBuc3NldwBuc3NlIHdlaWdodABza2lwX3RvcABudW1iZXIgb2YgbWFjcm9ibG9jayByb3dzIGF0IHRoZSB0b3Agd2hpY2ggYXJlIHNraXBwZWQAc2tpcF9ib3R0b20AbnVtYmVyIG9mIG1hY3JvYmxvY2sgcm93cyBhdCB0aGUgYm90dG9tIHdoaWNoIGFyZSBza2lwcGVkAHByb2ZpbGUAdW5rbm93bgBhYWNfbWFpbgBhYWNfbG93AGFhY19zc3IAYWFjX2x0cABhYWNfaGUAYWFjX2hlX3YyAGFhY19sZABhYWNfZWxkAG1wZWcyX2FhY19sb3cAbXBlZzJfYWFjX2hlAGR0cwBkdHNfZXMAZHRzXzk2XzI0AGR0c19oZF9ocmEAZHRzX2hkX21hAG1wZWc0X3NwAG1wZWc0X2NvcmUAbXBlZzRfbWFpbgBtcGVnNF9hc3AAbWFpbjEwAG1zYmMAbGV2ZWwAbG93cmVzAGRlY29kZSBhdCAxPSAxLzIsIDI9MS80LCAzPTEvOCByZXNvbHV0aW9ucwBza2lwX3RocmVzaG9sZABmcmFtZSBza2lwIHRocmVzaG9sZABza2lwX2ZhY3RvcgBmcmFtZSBza2lwIGZhY3RvcgBza2lwX2V4cABmcmFtZSBza2lwIGV4cG9uZW50AHNraXBjbXAAZnJhbWUgc2tpcCBjb21wYXJlIGZ1bmN0aW9uAG1ibG1pbgBtaW5pbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1ibG1heABtYXhpbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1lcGMAbW90aW9uIGVzdGltYXRpb24gYml0cmF0ZSBwZW5hbHR5IGNvbXBlbnNhdGlvbiAoMS4wID0gMjU2KQBza2lwX2xvb3BfZmlsdGVyAHNraXAgbG9vcCBmaWx0ZXJpbmcgcHJvY2VzcyBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBhdmRpc2NhcmQAc2tpcF9pZGN0AHNraXAgSURDVC9kZXF1YW50aXphdGlvbiBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBza2lwX2ZyYW1lAHNraXAgZGVjb2RpbmcgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAbm9uZQBkaXNjYXJkIG5vIGZyYW1lAGRlZmF1bHQAZGlzY2FyZCB1c2VsZXNzIGZyYW1lcwBub3JlZgBkaXNjYXJkIGFsbCBub24tcmVmZXJlbmNlIGZyYW1lcwBiaWRpcgBkaXNjYXJkIGFsbCBiaWRpcmVjdGlvbmFsIGZyYW1lcwBub2tleQBkaXNjYXJkIGFsbCBmcmFtZXMgZXhjZXB0IGtleWZyYW1lcwBub2ludHJhAGRpc2NhcmQgYWxsIGZyYW1lcyBleGNlcHQgSSBmcmFtZXMAYWxsAGRpc2NhcmQgYWxsIGZyYW1lcwBiaWRpcl9yZWZpbmUAcmVmaW5lIHRoZSB0d28gbW90aW9uIHZlY3RvcnMgdXNlZCBpbiBiaWRpcmVjdGlvbmFsIG1hY3JvYmxvY2tzAGJyZF9zY2FsZQBkb3duc2NhbGUgZnJhbWVzIGZvciBkeW5hbWljIEItZnJhbWUgZGVjaXNpb24Aa2V5aW50X21pbgBtaW5pbXVtIGludGVydmFsIGJldHdlZW4gSURSLWZyYW1lcwByZWZzAHJlZmVyZW5jZSBmcmFtZXMgdG8gY29uc2lkZXIgZm9yIG1vdGlvbiBjb21wZW5zYXRpb24AY2hyb21hb2Zmc2V0AGNocm9tYSBRUCBvZmZzZXQgZnJvbSBsdW1hAHRyZWxsaXMAcmF0ZS1kaXN0b3J0aW9uIG9wdGltYWwgcXVhbnRpemF0aW9uAG12MF90aHJlc2hvbGQAYl9zZW5zaXRpdml0eQBhZGp1c3Qgc2Vuc2l0aXZpdHkgb2YgYl9mcmFtZV9zdHJhdGVneSAxAGNvbXByZXNzaW9uX2xldmVsAG1pbl9wcmVkaWN0aW9uX29yZGVyAG1heF9wcmVkaWN0aW9uX29yZGVyAHRpbWVjb2RlX2ZyYW1lX3N0YXJ0AEdPUCB0aW1lY29kZSBmcmFtZSBzdGFydCBudW1iZXIsIGluIG5vbi1kcm9wLWZyYW1lIGZvcm1hdABiaXRzX3Blcl9yYXdfc2FtcGxlAGNoYW5uZWxfbGF5b3V0AHJlcXVlc3RfY2hhbm5lbF9sYXlvdXQAcmNfbWF4X3Zidl91c2UAcmNfbWluX3Zidl91c2UAdGlja3NfcGVyX2ZyYW1lAGNvbG9yX3ByaW1hcmllcwBjb2xvciBwcmltYXJpZXMAY29sb3JfcHJpbWFyaWVzX3R5cGUAYnQ3MDkAQlQuNzA5AFVuc3BlY2lmaWVkAGJ0NDcwbQBCVC40NzAgTQBidDQ3MGJnAEJULjQ3MCBCRwBzbXB0ZTE3MG0AU01QVEUgMTcwIE0Ac21wdGUyNDBtAFNNUFRFIDI0MCBNAGZpbG0ARmlsbQBidDIwMjAAQlQuMjAyMABzbXB0ZTQyOABTTVBURSA0MjgtMQBzbXB0ZTQyOF8xAHNtcHRlNDMxAFNNUFRFIDQzMS0yAHNtcHRlNDMyAFNNUFRFIDQyMi0xAGplZGVjLXAyMgBKRURFQyBQMjIAdW5zcGVjaWZpZWQAY29sb3JfdHJjAGNvbG9yIHRyYW5zZmVyIGNoYXJhY3RlcmlzdGljcwBjb2xvcl90cmNfdHlwZQBnYW1tYTIyAGdhbW1hMjgAbGluZWFyAExpbmVhcgBsb2cxMDAATG9nAGxvZzMxNgBMb2cgc3F1YXJlIHJvb3QAaWVjNjE5NjYtMi00AElFQyA2MTk2Ni0yLTQAYnQxMzYxZQBCVC4xMzYxAGllYzYxOTY2LTItMQBJRUMgNjE5NjYtMi0xAGJ0MjAyMC0xMABCVC4yMDIwIC0gMTAgYml0AGJ0MjAyMC0xMgBCVC4yMDIwIC0gMTIgYml0AHNtcHRlMjA4NABTTVBURSAyMDg0AGFyaWItc3RkLWI2NwBBUklCIFNURC1CNjcAbG9nAGxvZ19zcXJ0AGllYzYxOTY2XzJfNABidDEzNjEAaWVjNjE5NjZfMl8xAGJ0MjAyMF8xMGJpdABidDIwMjBfMTJiaXQAY29sb3JzcGFjZQBjb2xvciBzcGFjZQBjb2xvcnNwYWNlX3R5cGUAcmdiAFJHQgBmY2MARkNDAHljZ2NvAFlDR0NPAGJ0MjAyMG5jAEJULjIwMjAgTkNMAGJ0MjAyMGMAQlQuMjAyMCBDTABzbXB0ZTIwODUAU01QVEUgMjA4NQB5Y29jZwBidDIwMjBfbmNsAGJ0MjAyMF9jbABjb2xvcl9yYW5nZQBjb2xvciByYW5nZQBjb2xvcl9yYW5nZV90eXBlAHR2AE1QRUcgKDIxOSoyXihuLTgpKQBwYwBKUEVHICgyXm4tMSkAbXBlZwBqcGVnAGNocm9tYV9zYW1wbGVfbG9jYXRpb24AY2hyb21hIHNhbXBsZSBsb2NhdGlvbgBjaHJvbWFfc2FtcGxlX2xvY2F0aW9uX3R5cGUATGVmdABjZW50ZXIAQ2VudGVyAHRvcGxlZnQAVG9wLWxlZnQAdG9wAFRvcABib3R0b21sZWZ0AEJvdHRvbS1sZWZ0AGJvdHRvbQBCb3R0b20AbG9nX2xldmVsX29mZnNldABzZXQgdGhlIGxvZyBsZXZlbCBvZmZzZXQAc2xpY2VzAHNldCB0aGUgbnVtYmVyIG9mIHNsaWNlcywgdXNlZCBpbiBwYXJhbGxlbGl6ZWQgZW5jb2RpbmcAdGhyZWFkX3R5cGUAc2VsZWN0IG11bHRpdGhyZWFkaW5nIHR5cGUAc2xpY2UAZnJhbWUAYXVkaW9fc2VydmljZV90eXBlAGF1ZGlvIHNlcnZpY2UgdHlwZQBtYQBNYWluIEF1ZGlvIFNlcnZpY2UAZWYARWZmZWN0cwB2aQBWaXN1YWxseSBJbXBhaXJlZABoaQBIZWFyaW5nIEltcGFpcmVkAGRpAERpYWxvZ3VlAGNvAENvbW1lbnRhcnkAZW0ARW1lcmdlbmN5AHZvAFZvaWNlIE92ZXIAa2EAS2FyYW9rZQByZXF1ZXN0X3NhbXBsZV9mbXQAc2FtcGxlIGZvcm1hdCBhdWRpbyBkZWNvZGVycyBzaG91bGQgcHJlZmVyAHBrdF90aW1lYmFzZQBzdWJfY2hhcmVuYwBzZXQgaW5wdXQgdGV4dCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nAHN1Yl9jaGFyZW5jX21vZGUAc2V0IGlucHV0IHRleHQgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZyBtb2RlAGRvX25vdGhpbmcAcHJlX2RlY29kZXIAc3ViX3RleHRfZm9ybWF0AHNldCBkZWNvZGVkIHRleHQgc3VidGl0bGUgZm9ybWF0AGFzcwBhc3Nfd2l0aF90aW1pbmdzAHJlZmNvdW50ZWRfZnJhbWVzAHNpZGVfZGF0YV9vbmx5X3BhY2tldHMAYXBwbHlfY3JvcHBpbmcAc2tpcF9hbHBoYQBTa2lwIHByb2Nlc3NpbmcgYWxwaGEAZmllbGRfb3JkZXIARmllbGQgb3JkZXIAcHJvZ3Jlc3NpdmUAdHQAYmIAdGIAZHVtcF9zZXBhcmF0b3IAc2V0IGluZm9ybWF0aW9uIGR1bXAgZmllbGQgc2VwYXJhdG9yAGNvZGVjX3doaXRlbGlzdABMaXN0IG9mIGRlY29kZXJzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgdXNlZABwaXhlbF9mb3JtYXQAc2V0IHBpeGVsIGZvcm1hdAB2aWRlb19zaXplAHNldCB2aWRlbyBzaXplAG1heF9waXhlbHMATWF4aW11bSBudW1iZXIgb2YgcGl4ZWxzAGh3YWNjZWxfZmxhZ3MAaWdub3JlX2xldmVsAGlnbm9yZSBsZXZlbCBldmVuIGlmIHRoZSBjb2RlYyBsZXZlbCB1c2VkIGlzIHVua25vd24gb3IgaGlnaGVyIHRoYW4gdGhlIG1heGltdW0gc3VwcG9ydGVkIGxldmVsIHJlcG9ydGVkIGJ5IHRoZSBoYXJkd2FyZSBkcml2ZXIAYWxsb3dfaGlnaF9kZXB0aABhbGxvdyB0byBvdXRwdXQgWVVWIHBpeGVsIGZvcm1hdHMgd2l0aCBhIGRpZmZlcmVudCBjaHJvbWEgc2FtcGxpbmcgdGhhbiA0OjI6MCBhbmQvb3Igb3RoZXIgdGhhbiA4IGJpdHMgcGVyIGNvbXBvbmVudABhbGxvd19wcm9maWxlX21pc21hdGNoAGF0dGVtcHQgdG8gZGVjb2RlIGFueXdheSBpZiBIVyBhY2NlbGVyYXRlZCBkZWNvZGVyJ3Mgc3VwcG9ydGVkIHByb2ZpbGVzIGRvIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBzdHJlYW0AZXh0cmFfaHdfZnJhbWVzAE51bWJlciBvZiBleHRyYSBoYXJkd2FyZSBmcmFtZXMgdG8gYWxsb2NhdGUgZm9yIHRoZSB1c2VyAE5VTEwAQVZCU0ZDb250ZXh0AFRoaXMgZGVjb2RlciBkb2VzIG5vdCBzdXBwb3J0IHBhcmFtZXRlciBjaGFuZ2VzLCBidXQgUEFSQU1fQ0hBTkdFIHNpZGUgZGF0YSB3YXMgc2VudCB0byBpdC4KAEludmFsaWQgY2hhbm5lbCBjb3VudABJbnZhbGlkIHNhbXBsZSByYXRlAFBBUkFNX0NIQU5HRSBzaWRlIGRhdGEgdG9vIHNtYWxsLgoARXJyb3IgYXBwbHlpbmcgcGFyYW1ldGVyIGNoYW5nZXMuCgBFcnJvciBwcmUtcHJvY2Vzc2luZyBhIHBhY2tldCBiZWZvcmUgZGVjb2RpbmcKACFmcmFtZS0+YnVmWzBdAChmcmFtZS0+cHJpdmF0ZV9yZWYgJiYgZnJhbWUtPnByaXZhdGVfcmVmLT5zaXplID09IHNpemVvZihGcmFtZURlY29kZURhdGEpKSB8fCAhKGF2Y3R4LT5jb2RlYy0+Y2FwYWJpbGl0aWVzICYgKDEgPDwgMSkpAHNraXAgJWQgLyBkaXNjYXJkICVkIHNhbXBsZXMgZHVlIHRvIHNpZGUgZGF0YQoAc2tpcCB3aG9sZSBmcmFtZSwgc2tpcCBsZWZ0OiAlZAoAQ291bGQgbm90IHVwZGF0ZSB0aW1lc3RhbXBzIGZvciBza2lwcGVkIHNhbXBsZXMuCgBza2lwICVkLyVkIHNhbXBsZXMKAENvdWxkIG5vdCB1cGRhdGUgdGltZXN0YW1wcyBmb3IgZGlzY2FyZGVkIHNhbXBsZXMuCgBkaXNjYXJkICVkLyVkIHNhbXBsZXMKAE11bHRpcGxlIGZyYW1lcyBpbiBhIHBhY2tldC4KAFRvbyBtYW55IGVycm9ycyB3aGVuIGRyYWluaW5nLCB0aGlzIGlzIGEgYnVnLiBTdG9wIGRyYWluaW5nIGFuZCBmb3JjZSBFT0YuCgBmcmFtZS0+YnVmWzBdAGF2X3BhY2tldF9yZWYoKSBmYWlsZWQgaW4gc3VibWl0X3BhY2tldCgpCgBudWxsACwAQSBub24tZXhpc3RpbmcgYml0c3RyZWFtIGZpbHRlciAlcyByZXF1ZXN0ZWQgYnkgYSBkZWNvZGVyLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0LgoASW52YWxpZCBjcm9wcGluZyBpbmZvcm1hdGlvbiBzZXQgYnkgYSBkZWNvZGVyOiAlenUvJXp1LyV6dS8lenUgKGZyYW1lIHNpemUgJWR4JWQpLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0CgBpbmRleCA+IC0weDIwMDAwMDAwACFwLT5od2FjY2VsX3NlcmlhbGl6aW5nAEEgZnJhbWUgdGhyZWFkZWQgZGVjb2RlciBkaWQgbm90IGZyZWUgdGhlIGZyYW1lIG9uIGZhaWx1cmUuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQuCgBBcHBsaWNhdGlvbiBoYXMgcmVxdWVzdGVkICVkIHRocmVhZHMuIFVzaW5nIGEgdGhyZWFkIGNvdW50IGdyZWF0ZXIgdGhhbiAlZCBpcyBub3QgcmVjb21tZW5kZWQuCgBObyBjb2RlYyBwcm92aWRlZCB0byBhdmNvZGVjX29wZW4yKCkKAFRoaXMgQVZDb2RlY0NvbnRleHQgd2FzIGFsbG9jYXRlZCBmb3IgJXMsIGJ1dCAlcyBwYXNzZWQgdG8gYXZjb2RlY19vcGVuMigpCgBDb2RlYyAoJXMpIG5vdCBvbiB3aGl0ZWxpc3QgJyVzJwoASWdub3JpbmcgaW52YWxpZCB3aWR0aC9oZWlnaHQgdmFsdWVzCgBpZ25vcmluZyBpbnZhbGlkIFNBUjogJXUvJXUKAENvZGVjIHR5cGUgb3IgaWQgbWlzbWF0Y2hlcwoAZW5jb2RlcgBkZWNvZGVyAFRoZSAlcyAnJXMnIGlzIGV4cGVyaW1lbnRhbCBidXQgZXhwZXJpbWVudGFsIGNvZGVjcyBhcmUgbm90IGVuYWJsZWQsIGFkZCAnLXN0cmljdCAlZCcgaWYgeW91IHdhbnQgdG8gdXNlIGl0LgoAQWx0ZXJuYXRpdmVseSB1c2UgdGhlIG5vbiBleHBlcmltZW50YWwgJXMgJyVzJy4KAFRoZSBtYXhpbXVtIHZhbHVlIGZvciBsb3dyZXMgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvZGVyIGlzICVkCgBUaGUgZW5jb2RlciB0aW1lYmFzZSBpcyBub3Qgc2V0LgoAJWQAU3BlY2lmaWVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgaW52YWxpZCBvciBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgcGl4ZWwgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHNhbXBsZSByYXRlICVkIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0IG5vdCBzcGVjaWZpZWQKAFNwZWNpZmllZCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBudW1iZXIgb2Ygc3BlY2lmaWVkIGNoYW5uZWxzICVkCgBTcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkIGlzIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBiaXQgZGVwdGggJWQgbm90IHBvc3NpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBwaXhlbCBmb3JtYXRzIGRlcHRoICVkCgBkaW1lbnNpb25zIG5vdCBzZXQKAEJpdHJhdGUgJWxsZCBpcyBleHRyZW1lbHkgbG93LCBtYXliZSB5b3UgbWVhbiAlbGxkawoAdGlja3NfcGVyX2ZyYW1lICVkIHRvbyBsYXJnZSBmb3IgdGhlIHRpbWViYXNlICVkLyVkLgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5waXhfZm10IGFuZCBBVkhXRnJhbWVzQ29udGV4dC5mb3JtYXQKAE1pc21hdGNoaW5nIEFWQ29kZWNDb250ZXh0LnN3X3BpeF9mbXQgKCVzKSBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuc3dfZm9ybWF0ICglcykKAGdyYXkgZGVjb2RpbmcgcmVxdWVzdGVkIGJ1dCBub3QgZW5hYmxlZCBhdCBjb25maWd1cmF0aW9uIHRpbWUKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkOiBpZ25vcmluZyBzcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQKAENoYXJhY3RlciBlbmNvZGluZyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIHN1YnRpdGxlcyBjb2RlY3MKAENvZGVjICclcycgaXMgYml0bWFwLWJhc2VkLCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIHdpbGwgYmUgaWdub3JlZAoAVVRGLTgAVW5hYmxlIHRvIG9wZW4gaWNvbnYgY29udGV4dCB3aXRoIGlucHV0IGNoYXJhY3RlciBlbmNvZGluZyAiJXMiCgAqKGNvbnN0IEFWQ2xhc3MgKiopYXZjdHgtPnByaXZfZGF0YSA9PSBjb2RlYy0+cHJpdl9jbGFzcwB2b2lkAGJvb2wAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AGludAB1bnNpZ25lZCBpbnQAbG9uZwB1bnNpZ25lZCBsb25nAGZsb2F0AGRvdWJsZQBzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgB1dGY4AGNoYXIAAMh3Y2hhcnQAAMZ1Y3MyAHVjczJiZQAAxHVjczJsZQAAxXV0ZjE2AHV0ZjE2YmUAAMJ1dGYxNmxlAADBdWNzNAB1Y3M0YmUAdXRmMzIAdXRmMzJiZQAAwHVjczRsZQB1dGYzMmxlAADDYXNjaWkAdXNhc2NpaQBpc282NDYAaXNvNjQ2dXMAAMdldWNqcAAA0HNoaWZ0amlzAHNqaXMAANFnYjE4MDMwAADYZ2JrAADZZ2IyMzEyAADaYmlnNQBiaWdmaXZlAGNwOTUwAGJpZzVoa3NjcwAA4GV1Y2tyAGtzYzU2MDEAa3N4MTAwMQBjcDk0OQAA6Glzbzg4NTkxAGxhdGluMQAAgGlzbzg4NTkyAAAgANgQyxoApBEIAAAcUsgioABAiigA3DALGwCoIQgsACBiCCOh1FLKKHsAAAANAJSBAwA+AIAEAEoAAAAQQrQRBwAA3AEAAH9UAsAlAACQCAB8AABADQCYkQMAPwCQBABLAABAEEO4IQcAAOABAACAWAIAJgAAoIgsaXNvODg1OTMAACAAWBELAAAEQAUAAHhRiBNgABCAKABcAQAAAABQBQAAfGHIE2EAEMAoAAAAQAAA8KADAAAAAAAAAAAAAAABAAAAAABAAQAATAAAAAAATDIIAAAAAEAAAPSwAwAAAAAAAAAAAAAAAQAAAAAARAEAAE0AAAAAAFBCiCxpc284ODU5NAAAIADYQEYfAGBxBgAAHEKEFI0AQAoAANwwix8AZIEGLAAgUsQUjsxRCh0yAAAAAAAAAAAXPgCABABGAACAFkK8UYcYAAAAAAAAZAIAAAA8EgkAMwAAAAAAAABAFz8AkAQARwAAwBZDwGHHGAAAAAAAAGgCAAAAQCKJLGlzbzg4NTk1AAAgAAxEUEEGHYRQQgotxFBDDgHwEEQRSTQRRRVZdBFGGWm0EUcdefQRSCGJNBJJJZl0EkopqbQSSy259BJMMck0E0012XQTTjnptBNPPfn0E1BBCTUUUUUZdRRSSSm1FFNNOfUUVFdGJdVUVFVl1VVYZaXVVlwN0JVXaXNvODg1OTYAACAABBBAAAAEEEAAAQQQQACUARBAAAEEEEAAAQQQQAABBBBAZQEEEIBlAVyGWWaabcZZZ559Blpooo1GWmmmnYZaaqqtxlprrr0GWwABBBBAALHJNhtttdl2G2656bYbb7359htwwQk3XAABBBBAAAEEEEAAAQQQQABpc284ODU5NwAAIAAUaSQAVFYJAAAAALALAAAAEMCQAAAAAAC89OILAL8AEwwAwgAwDDHFGHMMMskoswwzzTjzDDTRSDMNNdVYE8A12GSjzTbcdOPNN+CEI8445JRjzjnopKPOOuy048478MQjzzz01GPPPfjko88+/PTjzz8ABSRQAGlzbzg4NTk4AAAgAAQAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAABAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQAJF01WXXXXjlpddefPXl11+ABSbYYIQVZthhiCWm2GKMNeZYAAH8CGQAaXNvODg1OTkAAFBOAAAAAAAAAAAAAAAAAAAAeFEIAAAAAAAAAAAAAAAAAAAAAAAAAAAATwAAAAAAAAAAAAAAAAAAAHxhCABpc284ODU5MTAAACAA2ECEFFpgIQYAZwhxSCOkABDJHADcUMQUW2QxBgBoDIGII6UMKQkdMgAAAAAAAAAAFz4AgAQARgAAAAAAvFEHAAAAAMAjAGQCAAAAAAAAADMAAAAAAAAAQBc/AJAEAEcAAAAAAMBhBwAAAAAAJABoAgAAAAAAABlpc284ODU5MTEAdGlzNjIwAAAgAEAXnXTTUVeddddhl51223HXnXffgReeeOORV55556GXnnrrsdeee+/BF59889FXn3334Zeffvvx159//wEYoIADEliggQcimGAAAQQQgIILMtiggw9CGKGEE1JYoYUXYpihhhty2KGHH4IYoogjkliiiQEEEEAAaXNvODg1OTEzAAAgACQJAAAAKAkAAA0A0AcAAAAAwAIAAAAAAEgCAAAAEADgBwAAAACAAzZwIQMOAACABBE+AACKEVKIocUZh7TxBgB1AAAAAJmsEUgkAIhCCgA3dDFDDgAAkEQRPwAQyhFTjLEFGoi4AQcAdgAAAACasCGIJACMUoqRaXNvODg1OTE0AAAgAJyIIgA89JAiADUCcKOKOwIAwCcrsghFFC26CMCLNsKIY4w85qijjAAAAAAAAAAAAAAAAAAAAAAAAAAAmwAAAAAAAADAjAAAAAAAAADQCQAAAAAAAAAAAAAAAAAAAAAAAAAAAJwAAAAAAAAAAI0AAAAAAAAA4AkAaXNvODg1OTE1AGxhdGluOQAAJFQCcAgAiAAAAAAAAAAAAAAAAAAApAAAAAClAAAAAHno8QkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpc284ODU5MTYAACAA2HDDGlQqeQgAiACwCgCgABCKKAAA4AMbpCQJAACl/MAKAHno8ckoAAAAAA0A4AAAAAAAAAAAAAAAAABCtAEAAADcAUAglwAAAAAAINEKAAAAAEANAOQAAAAAAAAAAAAAAAAAQ7gBAAAA4AGAIJgAAAAAACThCgBjcDEyNTAAd2luZG93czEyNTAAAABUBnBkAEo6uSSTATx5CJSBLEIKKAEUaSSSSTYZpJABYIlIlIIwUkooAMASyxoA2AAAAAAAUAgAAAAAgCgAADALGwAAAAAAANxgCABp1KLGKHsAAAANAJSBAwA+AIAEAEoAAAAQQrQRBwAA3AEAAH9UAsAlAACQCAB8AABADQCYkQMAPwCQBABLAABAEEO4IQcAAOABAACAWAIAJgAAoIgsY3AxMjUxAHdpbmRvd3MxMjUxAAAABBV05FRKOrkkk1Q+uRCUDDnUEERSFWkkkkk2GaSQAWCZVZRacbWVVwA81JVCAHwFAAADAWAQAAAAAEBCAACAkFVgAQAAAFFdSRUAWB1U1VURSTQRRRVZdBFGGWm0EUcdefQRSCGJNBJJJZl0EkopqbQSSy259BJMMck0E0012XQTTjnptBNPPfn0E1BBCTUUUUUZdRRSSSm1FFNNOfUUVGNwMTI1MgB3aW5kb3dzMTI1MgAAAFQGcKQpSjq5JJOvPHkIlHkEQEoAARRpJJJJNhmkkLRgiUiUegRQyicAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABjcDEyNTMAd2luZG93czEyNTMAAABUBnCkKUo6uSSTATwZAJQBBBBAAAEUaSSSSTYZpJABYBlAlAEEEEAAAPTiCwAAAAAAAAAAEAAAAAAAwJAAAAAAALwAAAAAvwATDADCADAMMcUYcwwyySizDDPNOPMMNNFIMw011VgTwDXYZKPNNtx048034IQjzjjklGPOOeiko8467LTjzjvwxCPPPPTUY889+OSjzz789OPPPwAFJFAAY3AxMjU0AHdpbmRvd3MxMjU0AAAAVAZwpClKOrkkk688eQiUeQQQQAABFGkkkkk2GaSQtGCJSJR6BBDAJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE4AAAAAAAAAAAAAAAAAAAB4UQgAAAAAAAAAAAAAAAAAAAAAAAAAAABPAAAAAAAAAAAAAAAAAAAAfGEIAGNwMTI1NQB3aW5kb3dzMTI1NQAAAFQGcKQpSjq5JJOvPBkAlAEEEEAAARRpJJJJNhmkkLRgGUCUAQQQQAAAAAAAAFICAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAYYk1FlllmXUWWmmpFcBabLXl1ltwxSXXXI9BFplkkwUQQAABBBBAAHTVZdddeOWl11589eXXX4AFJthghBVm2GGIJabYYow15lgAAfwIZABjcDEyNTYAd2luZG93czEyNTYAAABUFnekKUo6uSSTrzxJHJR5GJfcccsVaSSSSTYZpJDKYYlclHr06CNzAFAGAAAAAAAAAAAA0BwAAAAAAAAAAAAAAAAAAAAAAABQGQAAAACAZc5dhllmmm3GWWeefQZaaKKNRlpppp2GWmqqrcYaAK259hpssck2G20A1AaAbbfhlhsAAAAAAAC67QYAALz15ttvAAAXHADCATAcAAD8CORzY3AxMjU3AHdpbmRvd3MxMjU3AAAAVAZwZABKOrkkkwE8GQCUARAAiwIBFGkkkkk2GaSQAWAZQJQBGDBLAAAEAAAAAAQAAAANANAHAAAAAMACAAAAAAAAAAAAABAA4AcAAAAAgAM2cCEDDgAAgAQRPgAAihFSiKHFGYe08QYAdQAAAACZrBFIJACIQgoAN3QxQw4AAJBEET8AEMoRU4yxBRqIuAEHAHYAAAAAmrAhiCQAjFKKLGNwMTI1OAB3aW5kb3dzMTI1OAAAAFQGcKQpSjq5JJOvPBkAlHkEEEAAARRpJJJJNhmkkLRgGUCUegQQwCcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAAAtgAAAABCAJALAACcAgAAAAAAAAAApIILAAAAAEANAAAAAAAAAAAAALcAAAAAQwCgCwAAoAIAAAAAAAAAAKgyJQBrb2k4cgAAAGCGKeaYZJZp5plopqkmookquiijjTr6qJeQZqnlllx2KcCXByCQwANrstlmVG6+CWeccs5JZ5123olnnnruyedAffr5J6CBCjoooYUaemgBT8Uk01E12VQUTUblpNNOPPXk009AQRWUUEMRddNMTTGFU1JOKYXUUi9FJNFJFVlUEkUmZaTRRhx15NFHIMEUkkgjkXTRRC2xhFFKLqmE0kprb2k4dQAAAGCGKeaYZJZp5plopqkmookquiijjTr6qJeQZqnlllx2KcCXByCQwANrstlmVFS9adVVcs5JZ512goVnnnruyedABvmJUEKBCjoooYV+dWgBT8Uk01E12VQUTUblpNNOPPXk009AQRWUUEMRddNMTTGFU1JOKYXUUi9FJNFJFVlUEkUmZaTRRhx15NFHIMEUkkgjkXTRRC2xhFFKLqmE0kpjcDQzNwAAABfAQIIHH3QAggglmDBCCiicQEEFGDiwwAosqPCCCzFkwEEEEkxgpSmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ/LZZ5xw+smmnHjeaeeYZKaJpplgqpmnnnW+SWige655qKCD/gkonXO26aahhZYppqKJLsooouVEigw919wTKT7aNNMNOpHqk06kkUbaJZdefvnAlgdkmYCWkSIAqQBjcDg1MAAAABfAQIIHH3QAggglmDBCCiicQEEFGDiwwAosqPCCCzFkwAEEEjTAgCmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ0YaaaQF+MmmnHhGMMGYZKaJpplgqhlppHW+SWige655aKSRRhpppJF+EWmkkZYppqKJRhopopFGGmmkkUYaaaSRRhpppJFGakCkkUZKZKSRDvCAAgcQkECkkSIAqQAAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";var tempDoublePtr=STATICTOP;STATICTOP+=16;assert(tempDoublePtr%8==0);function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___gxx_personality_v0(){}function ___lock(){}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};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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else Module.printErr("failed to set errno from JS");return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!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 node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,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(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),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(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function count_emval_handles(){var count=0;for(var i=5;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.constructor;if(undefined===proto[methodName]){unboundTypesHandler.argCount=argCount-1;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-1]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));var func=craftInvokerFunction(humanName,invokerArgsArray,null,rawInvoker,fn);if(undefined===proto[methodName].overloadTable){proto[methodName]=func}else{proto[methodName].overloadTable[argCount-1]=func}return[]}));return[]}))}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]}));return[]}))}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError("cannot call emscripten binding method "+humanName+" on deleted object")}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],(function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:(function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])}),enumerable:true,configurable:true};if(setter){desc.set=(function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])})}else{desc.set=(function(v){throwBindingError(humanName+" is a read-only property")})}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],(function(types){var getterReturnType=types[0];var desc={get:(function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))}),enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=(function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)})}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]}));return[]}))}function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv}),"toWireType":(function(destructors,value){return __emval_register(value)}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return(function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){return(function(){return Function})()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map((function(t){return t.name})).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function craftEmvalAllocator(argCount){var argsList="";for(var i=0;i> 2) + "+i+'], "parameter '+i+'");\n'+"var arg"+i+" = argType"+i+".readValueFromPointer(args);\n"+"args += argType"+i+"['argPackAdvance'];\n"}functionBody+="var obj = new constructor("+argsList+");\n"+"return __emval_register(obj);\n"+"}\n";return(new Function("requireRegisteredType","HEAP32","__emval_register",functionBody))(requireRegisteredType,HEAP32,__emval_register)}var emval_newers={};function __emval_new(handle,argCount,argTypes,args){handle=requireHandle(handle);var newer=emval_newers[argCount];if(!newer){newer=craftEmvalAllocator(argCount);emval_newers[argCount]=newer}return newer(handle,argTypes,args)}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){Module["abort"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break};case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg("i"+argSize*8);var origArg=currArg;var argText;if(argSize==8){currArg=makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],null);else argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],true);else argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(argSize==8&&typeof i64Math==="object"){if(origArg[1]){argText=(origArg[1]>>>0).toString(16);var lower=(origArg[0]>>>0).toString(16);while(lower.length<8)lower="0"+lower;argText+=lower}else{argText=(origArg[0]>>>0).toString(16)}}else if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.lengthexponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break};case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break};case"%":{ret.push(curr);break};default:{for(var i=startTextIndex;i>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(var i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}var lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=" at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?" = "+jsSymbolName:" at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){Module.printErr(str)}else{Module.print(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=4;var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _init(){window.AudioContext=window.AudioContext||window.webkitAudioContext;var context=new window.AudioContext;if(/(iPhone|iPad|iPod|iOS|Safari)/i.test(navigator.userAgent)){function _unlock(){context.resume();var source=context.createBufferSource();source.buffer=context.createBuffer(1,1,22050);source.connect(context.destination);if(source.noteOn)source.noteOn(0);else source.start(0)}document.addEventListener("mousedown",_unlock,true);document.addEventListener("touchend",_unlock,true)}function H264bsdCanvas(canvas,forceNoGL,contextOptions){this.canvasElement=canvas;this.contextOptions=contextOptions;if(!forceNoGL)this.initContextGL();if(this.contextGL){this.initProgram();this.initBuffers();this.initTextures()}}H264bsdCanvas.prototype.isWebGL=(function(){return!!this.contextGL});H264bsdCanvas.prototype.initContextGL=(function(){var canvas=this.canvasElement;var gl=null;var validContextNames=["webgl","experimental-webgl","moz-webgl","webkit-3d"];var nameIndex=0;while(!gl&&nameIndex3)return;_this.$play(url);reconnectCount++})}),close:(function(){if(!this.isPlaying)return;this.isPlaying=false;this.ws.onclose=null;this.ws.close();this.ws=null;this.webGLCanvas.clear();this.$close();delete this.timespan}),initAudio:(function(frameCount,samplerate,channels,outputPtr){var isPlaying=false;var audioBuffers=[];var allFrameCount=frameCount*channels;if(!context)return false;var resampled=samplerate<22050;var audioBuffer=resampled?context.createBuffer(channels,frameCount<<1,samplerate<<1):context.createBuffer(channels,frameCount,samplerate);var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);var playNextBuffer=(function(){isPlaying=false;if(audioBuffers.length){playAudio(audioBuffers.shift())}if(audioBuffers.length>1)audioBuffers.shift()});var copyAudioOutputArray=resampled?(function(target){for(var i=0;i1?(function(fromBuffer){for(var channel=0;channel>2)),HEAPU8.subarray(v,v+(w*h>>2))];this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)})}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));this.webGLCanvas.initRGB(w,h);this.draw=(function(){this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)})}})})}var _llvm_ceil_f64=Math_ceil;function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(){return _llvm_exp2_f32.apply(null,arguments)}var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;function _llvm_trap(){abort("trap!")}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_create(){return 11}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function _pthread_join(){}var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_mutex_destroy(){}function _pthread_mutex_init(){}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _tan=Math_tan;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}init_emval();PureVirtualError=Module["PureVirtualError"]=extendError(Error,"PureVirtualError");embind_init_charCodes();init_embind();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;assert(DYNAMIC_BASE0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){Module["printErr"]("node.js exiting due to unhandled promise rejection");process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};Module["setWindowTitle"]=(function(title){document.title=title})}else{throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)")}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;stackSave=stackRestore=stackAlloc=setTempRet0=getTempRet0=(function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")});function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){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(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function makeBigInt(low,high,unsigned){return unsigned?+(low>>>0)+ +(high>>>0)*4294967296:+(low>>>0)+ +(high|0)*4294967296}function dynCall(sig,ptr,args){if(args&&args.length){assert(args.length==sig.length-1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{assert(sig.length==1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}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 allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval((function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;Module.printErr("still waiting on run dependencies:")}Module.printErr("dependency: "+dep)}if(shown){Module.printErr("(end of list)")}}),1e4)}}else{Module.printErr("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{Module.printErr("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+263840;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_H5LiveClient_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})},{func:(function(){___emscripten_environ_constructor()})});memoryInitializer="data:application/octet-stream;base64,SKkBAIC/AQD4qQEAQb8BAAAAAAABAAAACAAAAAAAAABIqQEAq78BAEipAQDTwAEA3KkBAN3AAQAAAAAAMAAAANypAQDowAEAAQAAADAAAABIqQEAXMEBAPipAQA6wQEAAAAAAAIAAAAwAAAAAgAAAFgAAAACUAAAcKkBACvBAQBgAAAAAAAAANypAQCBwQEAAAAAAIAAAADcqQEAkcEBAAEAAACAAAAASKkBALvBAQBwqQEAs8EBALAAAAAAAAAAcOgBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB46AEAAwEAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDoAQADAAAAIAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAACAAAAAIAAAAHAAAAAQAAAAAAAAADAAAAAQAAAAAAAAAIAAAAAgAAAAcAAAACAAAAAAAAAAMAAAACAAAAAAAAAAgAAAACAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhugBAAMAAAAgAAAAAAAAAAAAAAADAAAAAgAAAAAAAAAIAAAAAgAAAAcAAAADAAAAAAAAAAMAAAABAAAAAAAAAAgAAAACAAAABwAAAAIAAAAAAAAAAwAAAAAAAAAAAAAACAAAAAIAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACM6AEAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJToAQADAAAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnOgBAAMCAgAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACk6AEAAwIAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBzAgABAAAAQAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKzoAQAAAAAAtegBAAEAAAAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC76AEAAQAAAAQAAAAAAAAAAAAAAAEAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHoAQABAAAAAgAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxugBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADP6AEAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANjoAQADAAAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4egBAAMBAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp6AEAAwIAAAAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABgAAAAAAAAAAAAAACAAAAAUAAAAHAAAAAQAAAAAAAAAGAAAAAwAAAAAAAAAIAAAABQAAAAcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPoAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAABgAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+OgBAAMAAAAkAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAABAAAAAwAAAAAAAAAEAAAAAAAAAAQAAAABAAAAAAAAAAIAAAADAAAAAQAAAAIAAAAAAAAABAAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD96AEAAwAAAGAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAMAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfpAQADAAAAYAAAAAAAAAAAAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAMAAAADAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAMAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADOkBAAMAAAAkAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAABAAAAAwAAAAAAAAABAAAAAAAAAAQAAAABAAAAAAAAAAIAAAADAAAAAQAAAAIAAAAAAAAABAAAAAMAAAAAAAAAAQAAAAMAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR6QEAAwAAAGAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABvpAQADAQEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIOkBAAMBAQAQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAIAAAABAAAAAAAAAAgAAAABAAAABwAAAAIAAAABAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl6QEABAAAAKAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAIAAAAAAAAACAAAAAMAAAAHAAAAAwAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAAAAAAACrpAQAEAAAAoAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAL+kBAAQAAACgAAAAAAAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAAAAAA06QEABAAAAKAAAAAAAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAwAAAAcAAAABAAAAAAAAAAQAAAADAAAAAAAAAAgAAAADAAAABwAAAAQAAAAAAAAAAAAAADnpAQABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAELpAQAAAAAASOkBAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUekBAAAAAABX6QEAAwABABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/pAQADAAEAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaOkBAAQBAQCQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAABx6QEAAwAAACEAAAAAAAAAAAAAAAYAAAAAAAAAAAAAABAAAAAFAAAADwAAAAEAAAAAAAAABgAAAAIAAAAAAAAAEAAAAAUAAAAPAAAAAwAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHnpAQADAAAAIAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAEAAAAAAAAABAAAAAFAAAADwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgekBAAMAAAAhAAAAAAAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAIAAAAAAAAABQAAAAYAAAABAAAABQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACK6QEAAwAAACAAAAAAAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJPpAQADAAAAIQAAAAAAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAACAAAAAAAAAAUAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnOkBAAMAAAAgAAAAAAAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACl6QEAAwAAACEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABgAAAAEAAAAFAAAAAQAAAAAAAAACAAAA/////wMAAAAFAAAAAQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK7pAQADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAGAAAAAQAAAAUAAAABAAAAAAAAAAIAAAABAAAAAwAAAAUAAAABAAAABAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt+kBAAMAAAAhAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAFAAAAAQAAAAQAAAABAAAAAAAAAAIAAAAAAAAABQAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAP////8CAAAABQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA6QEAAwAAACAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAUAAAABAAAABAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABQAAAAEAAAAEAAAAAQAAAAAAAAACAAAAAQAAAAIAAAAFAAAAAQAAAAQAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMnpAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1OkBAAABAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADf6QEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnpAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9ekBAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB6gEAAwEAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3qAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGeoBAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl6gEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHqAQAAAQEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+oBAAMAAAAgAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAEAAAAAQAAAAMAAAACAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABE6gEAAwAAACEAAAAAAAAAAAAAAAIAAAD/////AAAAAAQAAAABAAAAAwAAAAAAAAAAAAAAAgAAAAAAAAAEAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE3qAQADAAAAIAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVuoBAAMAAAAhAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAABAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAP////8AAAAABAAAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf6gEAAgAAAIAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAEAAAAAAAAACAAAAAEAAAAHAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABj6gEAAAAAAGrqAQADAAAAIQAAAAAAAAAAAAAABgAAAAQAAAAAAAAAEAAAAAUAAAAPAAAABQAAAAAAAAAGAAAAAgAAAAAAAAAQAAAABQAAAA8AAAADAAAAAAAAAAYAAAAAAAAAAAAAABAAAAAFAAAADwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcuoBAAMAAAAgAAAAAAAAAAAAAAAGAAAABAAAAAAAAAAQAAAABQAAAA8AAAAFAAAAAAAAAAYAAAACAAAAAAAAABAAAAAFAAAADwAAAAMAAAAAAAAABgAAAAAAAAAAAAAAEAAAAAUAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB66gEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIXqAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkOoBAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACc6gEAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKjqAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtOoBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA6gEAAwAAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMvqAQADAAAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1uoBAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADi6gEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO7qAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+eoBAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE6wEAAwAAADAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnrAQADAAAAMQAAAAAAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEesBAAMAAAAwAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ6wEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLrAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK+sBAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA06wEAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3rAQAEAQAAkAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAARusBAAQAAACQAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAAAAAAAAAABP6wEABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAFvrAQAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAZ+sBAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAABz6wEABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAABAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAH/rAQAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAADAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAi+sBAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAACAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAJAAAAAQAAAAgAAAABAAAAAAAAAAAAAACX6wEABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAKTrAQAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAsesBAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAC+6wEABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAMvrAQAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAADAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAA2OsBAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAACAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADl6wEABAEBAJEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAAPLrAQAEAQEAkAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAA/+sBAAQBAACRAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAM7AEABAEAAJAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAABnsAQAEAAAAkQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAADAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAAAAAAAAAAAJuwBAAQAAACQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAQAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAACAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAAAz7AEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADnsAQADAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAEAAAADAAAAAUAAAALAAAAAQAAAAAAAAAGAAAAAgAAAAQAAAAMAAAABQAAAAsAAAADAAAAAAAAAAYAAAAEAAAABAAAAAwAAAAFAAAACwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQewBAAMAAAABAAAAAAAAAAAAAAAGAAAAAAAAAAQAAAAMAAAABQAAAAsAAAABAAAAAAAAAAYAAAACAAAABAAAAAwAAAAFAAAACwAAAAMAAAAAAAAABgAAAAQAAAAEAAAADAAAAAUAAAALAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJ7AEAAwEAABAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAABAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAEAAAACAAAAAQAAAAAAAAAIAAAAAQAAAAcAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE7sAQADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAAAAAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVewBAAMBAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAAAAAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAAAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc7AEABAAAAKEAAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAHAAAADwAAAAEAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAGXsAQAEAAAAoAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAAAAAAbuwBAAQAAAChAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAACAAAAAAAAABAAAAAHAAAADwAAAAMAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAIAAAABgAAAAAAAAAQAAAABwAAAA8AAAAHAAAAAAAAAAAAAAB37AEABAAAAKAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAAAAAAAIDsAQADAQAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAAEAAAAAwAAAAAAAAAIAAAAAwAAAAcAAAAEAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiOwBAAIAAACBAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAAAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACP7AEAAgAAAIAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABAAAAADAAAADwAAAAEAAAAAAAAABAAAAAIAAAAAAAAAEAAAAAMAAAAPAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJbsAQAEAAAAsAAAAAAAAAACAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAADAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAnOwBAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAAAAAAAAAACm7AEABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAQAAAAAQAAAA8AAAABAAAAAwAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAAAAAAAAAAAALDsAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtOwBAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC57AEAAAEBAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMXsAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyuwBAAMAAAAgAAAAAAAAAAAAAAAEAAAAAQAAAAAAAAAIAAAAAwAAAAcAAAACAAAAAAAAAAQAAAACAAAAAAAAAAgAAAADAAAABwAAAAMAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADP7AEAAwAAACAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAADAAAABwAAAAEAAAAAAAAABAAAAAEAAAAAAAAACAAAAAMAAAAHAAAAAgAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANTsAQADAAAAIAAAAAAAAAAAAAAABAAAAAMAAAAAAAAACAAAAAMAAAAHAAAABAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2ewBAAMAAAAgAAAAAAAAAAAAAAAEAAAAAgAAAAAAAAAIAAAAAwAAAAcAAAADAAAAAAAAAAQAAAABAAAAAAAAAAgAAAADAAAABwAAAAIAAAAAAAAABAAAAAAAAAAAAAAACAAAAAMAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADe7AEAAwEBABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOrsAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9uwBAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7QEAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7tAQADAQAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGu0BAAMBAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm7QEAAwEAABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADLtAQADAQAAEAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPu0BAAMAAAARAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABK7QEAAwAAABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFbtAQADAAAAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYu0BAAMAAAAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAQAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAACAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABu7QEAAwAAADEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHftAQADAAAAMAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgO0BAAMAAAAxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAABAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJ7QEAAwAAADAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA4AAAABAAAADQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADgAAAAEAAAANAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAOAAAAAQAAAA0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJLtAQADAgAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAIAAAAAAAAAAcAAAABAAAAAgAAAAEAAAAAAAAAAAAAAAgAAAAAAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm+0BAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACn7QEAAwAAACABAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAABAAAAAAAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALPtAQADAAAAIAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv+0BAAMAAAAgAQAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAQAAAAAAAAAAwAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADL7QEAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANrtAQADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6e0BAAMAAAAgAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD47QEAAwAAACEBAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfuAQADAAAAIAEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFu4BAAMAAAAhAQAAAAAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAgAAAABAAAABwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl7gEAAwAAACABAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACAAAAAEAAAAHAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAQAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADTuAQADAAAAIQEAAAAAAAAAAAAAAgAAAAAAAAAAAAAABAAAAAEAAAADAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAIAAAAAQAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ+4BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABI7gEAAwABABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFTuAQADAAEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYO4BAAMAAQAQAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABs7gEAAwABABEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAABAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAIAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHjuAQAEAAAAgAAAAAAAAAAAAAAACAAAAAIAAAAAAAAAEAAAAAcAAAAPAAAAAwAAAAAAAAAIAAAABAAAAAAAAAAQAAAABwAAAA8AAAAFAAAAAAAAAAgAAAAGAAAAAAAAABAAAAAHAAAADwAAAAcAAAAAAAAACAAAAAAAAAAAAAAAEAAAAAcAAAAPAAAAAQAAAAAAAAAAAAAAge4BAAQAAACBAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAQAAAABwAAAA8AAAADAAAAAAAAAAgAAAAEAAAAAAAAABAAAAAHAAAADwAAAAUAAAAAAAAACAAAAAYAAAAAAAAAEAAAAAcAAAAPAAAABwAAAAAAAAAIAAAAAAAAAAAAAAAQAAAABwAAAA8AAAABAAAAAAAAAAAAAACK7gEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJvuAQADAQEAEAAAAAAAAAAAAAAAAgAAAAAAAAAGAAAACgAAAAEAAAAJAAAAAQAAAAEAAAAEAAAAAAAAAAYAAAAKAAAAAwAAAAkAAAABAAAAAQAAAAQAAAACAAAABgAAAAoAAAADAAAACQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAou4BAAMBAQARAAAAAAAAAAAAAAACAAAAAAAAAAYAAAAKAAAAAQAAAAkAAAABAAAAAQAAAAQAAAAAAAAABgAAAAoAAAADAAAACQAAAAEAAAABAAAABAAAAAIAAAAGAAAACgAAAAMAAAAJAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACp7gEABAAAALEAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAALPuAQAEAAAAsAAAAAAAAAACAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAQAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAADAAAAAgAAAAAAAAAAAAAADAAAAAEAAAALAAAAAQAAAAAAAAAAAAAAve4BAAQAAACxAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAABAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAMAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAADH7gEABAAAALAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAwAAAAIAAAAAAAAAAAAAAAoAAAABAAAACQAAAAEAAAAAAAAAAAAAANHuAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3O4BAAEAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAMAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5e4BAAAAAADr7gEAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAwAAAABAAAACwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD07gEAAAAAAPruAQABAAAAAQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACgAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPvAQAAAAAACe8BAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAKAAAAAQAAAAkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEu8BAAAAAAAY7wEAAwEBABAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAABAAAAABAAAADwAAAAEAAAABAAAABAAAAAAAAAAAAAAAEAAAAAMAAAAPAAAAAQAAAAEAAAAEAAAAAgAAAAAAAAAQAAAAAwAAAA8AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/vAQADAQEAEQAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAEAAAAAEAAAAPAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAQAAAAAwAAAA8AAAABAAAAAQAAAAQAAAACAAAAAAAAABAAAAADAAAADwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJu8BAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs7wEAAQAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAkAAAABAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA07wEAAAAAADnvAQABAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAACQAAAAEAAAAIAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHvAQAAAAAARu8BAAMAAAAxAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQ7wEAAwAAADACAAAAAAAAAgAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFrvAQAEAAAAsQIAAAAAAAACAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAQAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAADAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAAAAAAAAAAAZe8BAAQAAACwAgAAAAAAAAIAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAQAAAAAAAAAAAAAACAAAAADAAAAHwAAAAEAAAABAAAABAAAAAAAAAAAAAAAIAAAAAMAAAAfAAAAAQAAAAMAAAAEAAAAAAAAAAAAAAAgAAAAAwAAAB8AAAABAAAAAAAAAAAAAABw7wEAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHrvAQAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAADEeQIAAAAAAAwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAADQeQIAAAAAABACAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAADbeQIAAAAAABQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAADmeQIAAAAAABgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAADueQIAAAAAABwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAD2eQIAAAAAACACAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAABegIAAAAAACQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAALegIAAAAAACgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAWegIAAAAAABQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAgegIAJHoCADQCAAAAAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgBOegIAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgBZegIAZHoCAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgCaegIAn3oCAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDAegIAy3oCAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDmegIAAAAAAAAAAAAKAAAAIAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDqegIAAAAAAAAAAAAKAAAAQAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgD2egIA/3oCAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgAzewIAAAAAAAAAAAAKAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgBAewIAUXsCAAAAAAAKAAAAAAIAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgCNewIAknsCAAAAAAAKAAAAAAQAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDFewIAAAAAAAAAAAAKAAAAAAgAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDRewIAAAAAAAAAAAAKAAAAABAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgDZewIA3HsCAAAAAAAKAAAAACAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgAUfAIAGnwCAAAAAAAKAAAAAEAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgArfAIAAAAAAAAAAAAKAAAAAIAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAACB6AgAxfAIAOHwCADgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGwAAADF8AgBdfAIAYnwCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BGwAAADF8AgAxfAIAtHwCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BGwAAADF8AgADfQIAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGwAAADF8AgAKfQIAFX0CAAAAAAAKAAAA//////////8AAAAAAADgwQAAwP///99BGwAAADF8AgAxfQIAPn0CAAAAAAAKAAAA/v////////8AAAAAAADgwQAAwP///99BGwAAADF8AgBpfQIAc30CAIgAAAAEAAAAAAAAAAAA9D8AAADg///vxwAAAOD//+9HEQAAAAAAAACVfQIAoH0CAEQCAAAAAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgC6fQIAw30CAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgDYfQIA4n0CAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgAMfgIAE34CAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgA0fgIAPH4CAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgBkfgIAb34CAAAAAAAKAAAAAIAAAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgB9fgIAhX4CAAAAAAAKAAAAAAABAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgDrfgIA9X4CAAAAAAAKAAAAAAACAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgAifwIALX8CAAAAAAAKAAAAAAAEAAAAAAAAAAAAAADgwQAAwP///99BGgAAAJV9AgBrfwIAAAAAAIwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BAAAAAAAAAAB4fwIAAAAAAGwBAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BAAAAAAAAAACEfwIAj38CAJAAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAC0fwIAAAAAALABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAADGfwIAzn8CALgBAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BGQAAAAAAAAAPgAIAF4ACAMABAAACAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGQAAAAAAAAB7gAIAg4ACAKwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGQAAAAAAAACpgAIAs4ACAJQAAAAEAAAAmpmZmZmZ6b8AAADg///vxwAAAOD//+9HEQAAAAAAAADVgAIA34ACAJgAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAABgQIABYECAJgCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BEQAAAAGBAgATgQIAGIECAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgAugQIANoECAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgDUpwIAQ4ECAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgBUgQIAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgBYgQIAAAAAAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgBggQIAZYECAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAGBAgB8gQIAhoECAJwAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAC4gQIAw4ECAKAAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAADfgQIA6oECAKQAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAAFggIADIICAKgAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAAAaggIAJIICAKwAAAAEAAAAAAAAAAAAAAAAAADg///vxwAAAOD//+9HEQAAAAAAAABUggIAWYICAJwCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BEwAAAFSCAgATgQIAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgDUpwIAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgB0ggIAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgB7ggIAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgCFggIAAAAAAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgBYgQIAAAAAAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgCJggIAAAAAAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgCTggIAAAAAAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgChggIAAAAAAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgCtggIAAAAAAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgC4ggIAAAAAAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgC9ggIAxYICAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgDoggIA7oICAAAAAAAKAAAAFAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgAGgwIAAAAAAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAFSCAgARgwIAAAAAALAAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAdgwIAIIMCADwCAAAAAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAB2DAgA/gwIASYMCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAB2DAgB0gwIAfIMCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAB2DAgCmgwIAsoMCAAAAAAAKAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAB2DAgDbgwIAAAAAAKACAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BAAAAAAAAAADxgwIA9oMCALQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAPGDAgAIhAIAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAPGDAgANhAIAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAPGDAgAThAIAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAPGDAgAahAIAIYQCALwAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRAEQAAAAAAAAA1hAIAIYQCALwAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRAEQAAAAAAAAA5hAIAP4QCAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BOwAAADmEAgBZhAIAXoQCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgBrhAIAboQCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAADmEAgDYfQIAAAAAAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgB7hAIAg4QCAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgCYhAIAm4QCAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgDBhAIAAAAAAAAAAAAKAAAAQAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgDLhAIAAAAAAAAAAAAKAAAAAACAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgDahAIAAAAAAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgDfhAIAAAAAAAAAAAAKAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgDphAIA7IQCAAAAAAAKAAAAAAQAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgD+hAIAA4UCAAAAAAAKAAAAAAgAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgAwhQIAAAAAAAAAAAAKAAAAABAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgA1hQIAPYUCAAAAAAAKAAAAAIAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAADmEAgBYhQIAY4UCAAAAAAAKAAAAAAABAAAAAAAAAAAAAADgwQAAwP///99BGgAAADmEAgB4hQIAfYUCAAAAAAAKAAAAAAAAAQAAAAAAAAAAAADgwQAAwP///99BGgAAADmEAgCWhQIAmoUCAMQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDAhQIAx4UCAMgAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDjhQIA6YUCAMwAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgAFhgIADoYCANAAAAABAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgAuhgIAN4YCANQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABhhgIAa4YCANgAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAACfhgIApYYCANwAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAC7hgIAwoYCAOAAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDphgIA7YYCAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgAPhwIAE4cCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgAphwIALocCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgABgQIAX4cCAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgBycwIAi4cCAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDDhwIAx4cCAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDrhwIA7ocCAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgAMiAIAEYgCAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgATiAIAGIgCAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgA9iAIAQogCAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgBmiAIAa4gCAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgCXiAIAAAAAAAAAAAAKAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgCeiAIAAAAAAAAAAAAKAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgCliAIAqogCAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgDYiAIA5YgCAOQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAAYiQIAHYkCAOgAAAABAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAA/iQIASIkCAOwAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAB6iQIAAAAAADQAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGQAAAAAAAACJiQIAAAAAANQBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAImJAgCPiQIAk4kCAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAImJAgB8dwIAuYkCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAImJAgDKiQIAzokCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAImJAgDgiQIA5IkCAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAImJAgD1iQIA/YkCANgBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAALigIAAAAAAPAAAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BAAAAAAAAAAAXigIAG4oCAPQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAEQAAABeKAgB0ggIATYoCAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAABeKAgBXigIAXIoCAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAABeKAgDrhwIAbIoCAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAABeKAgCFigIAkooCAAABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAACpigIArIoCAAQBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAC8igIAzooCANABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABcdQIAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P///+9BGwAAAFx1AgAeiwIAJosCALACAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAwP///99BGwAAAB6LAgATgQIAQIsCAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAB6LAgBviwIAcosCAAgBAAABAAAAAAAAAAAAAAAAAAAAAAAgwAAAAAAAADBAEQAAAAAAAACFiwIAi4sCAMgCAAABAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAACXiwIAoIsCAAwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAAAAAADXiwIA44sCABABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAAAAAAAdjAIAAAAAAMwCAAABAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAB2MAgAljAIAAAAAAAAAAAAKAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAB2MAgAtjAIAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgA2jAIAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgA+jAIAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBGjAIAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBOjAIAAAAAAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBVjAIAAAAAAAAAAAAKAAAAHAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBfjAIAAAAAAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBmjAIAAAAAAAAAAAAKAAAAJgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgBujAIAAAAAAAAAAAAKAAAAgAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgB8jAIAAAAAAAAAAAAKAAAAgwAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCJjAIAAAAAAAAAAAAKAAAAFAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCNjAIAAAAAAAAAAAAKAAAAHgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCUjAIAAAAAAAAAAAAKAAAAKAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCejAIAAAAAAAAAAAAKAAAAMgAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCpjAIAAAAAAAAAAAAKAAAAPAAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgCzjAIAAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAB2MAgC8jAIAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAB2MAgDHjAIAAAAAAAAAAAAKAAAAAwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAB2MAgDSjAIAAAAAAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAB2MAgDcjAIAAAAAAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAB2MAgDjjAIAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BCQAAAB2MAgDojAIAAAAAANACAAABAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAOiMAgAljAIAAAAAAAAAAAAKAAAAnf////////8AAAAAAADgwQAAwP///99BGQAAAOiMAgDujAIA9YwCAKgCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BGgAAAAAAAAAgjQIAL40CANwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABEjQIAUI0CAOABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABijQIAa40CAOQBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAB/jQIAh40CAOgBAAABAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAALeFAgCjjQIAqo0CABQBAAABAAAA7AAAAAAAAAAAAAAAAADwPwAAAADA/99AEQAAAAAAAADTjQIA2o0CABgBAAABAAAASg4AAAAAAAAAAAAAAADwPwAAAADA/99AEQAAAAAAAAADjgIACI4CABwBAAABAAAAAAEAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAABDjgIAVI4CANQCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgCSjgIAnI4CANgCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgDNjgIA2I4CANwCAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgD+jgIAA48CAAAAAAAKAAAA8P////////8AAAAAAADgwQAAwP///99BEgAAAIiOAgAUjwIAHI8CAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgAzjwIAOY8CAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgBajwIAYI8CAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgCBjwIAh48CAAAAAAAKAAAAIAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgCrjwIAs48CAAAAAAAKAAAAGAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgDWjwIA2o8CAAAAAAAKAAAAMAAAAAAAAAAAAAAAAADgwQAAwP///99BEgAAAIiOAgDtjwIA+o8CACABAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAABBAEQAAAAAAAAA6kAIARJACACQBAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRAEQAAAAAAAABykAIAfZACACgBAAABAAAAGQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAChkAIAppACACwBAAABAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAADbkAIA6JACADABAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEQAAAAAAAAADkQIAC5ECAOwBAAABAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BGQAAAAAAAAAwkQIAAAAAADQBAAABAAAAAAEAAAAAAAAAAAAAAAAAAAAAwP///99BEQAAAAAAAAA+kQIATJECADgBAAABAAAAKAAAAAAAAAAAAAAAAADwPwAAwP///99BEQAAAAAAAAB1kQIAAAAAADgAAAABAAAA//////////8AAAAAAADgwQAAwP///99BGQAAAAAAAACHkQIAAAAAAPABAAABAAAA//////////8AAAAAAADgwQAAwP///99BCQAAAAAAAACckQIAAAAAAPQBAAABAAAA//////////8AAAAAAADgwQAAwP///99BCQAAAAAAAACxkQIAxpECAPgBAAACAAAA//////////8AAAAAAADwvwAAAAAAAOBDEQAAAAAAAAAAkgIAAAAAAKQCAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAwP///99BAAAAAAAAAAAUkgIAAAAAAHgBAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBDCwAAABSSAgAjkgIAAAAAAIABAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPBDCgAAACOSAgA6kgIAAAAAAMgBAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD//+9HEQAAAAAAAABJkgIAAAAAAMwBAAAEAAAAAAAAAAAACEAAAAAAAAAAAAAAAOD//+9HEQAAAAAAAABYkgIAAAAAAFQAAAABAAAAAQAAAAAAAAAAAAAAAADwPwAAwP///99BGwAAAAAAAABokgIAeJICADwBAAABAAAAAgAAAAAAAAAAAAAAAADwPwAAwP///99BEwAAAIiSAgCdkgIAo5ICAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgAljAIAqpICAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgC2kgIAvZICAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgDGkgIAzpICAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgDYkgIA4pICAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgDukgIA+JICAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgAEkwIACZMCAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgAOkwIAFZMCAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgAdkwIAJpMCAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgAykwIAJpMCAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgA9kwIARpMCAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgBSkwIAW5MCAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgBnkwIAcZMCAAAAAAAKAAAAFgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgB7kwIAqpICAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAIiSAgCHkwIAkZMCAEABAAABAAAAAgAAAAAAAAAAAAAAAADwPwAAwP///99BEwAAALCTAgCdkgIAo5ICAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgAljAIAqpICAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgC/kwIAvZICAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDHkwIAzpICAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDYkgIA4pICAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDukgIA+JICAAAAAAAKAAAABwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDPkwIA1pMCAAAAAAAKAAAACAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDdkwIA5JMCAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDokwIA75MCAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgD/kwIADJQCAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgAalAIAIpQCAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgAqlAIAN5QCAAAAAAAKAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgBFlAIAT5QCAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgBglAIAapQCAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgB7lAIAhZQCAAAAAAAKAAAAEAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgAdkwIAJpMCAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgCQlAIAnZQCAAAAAAAKAAAAEgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgB7kwIAqpICAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgCqlAIA5JMCAAAAAAAKAAAACQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgCulAIA75MCAAAAAAAKAAAACgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgC3lAIADJQCAAAAAAAKAAAACwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDElAIAIpQCAAAAAAAKAAAADAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDLlAIAN5QCAAAAAAAKAAAADQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDYlAIAT5QCAAAAAAAKAAAADgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDllAIAapQCAAAAAAAKAAAADwAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgAykwIAJpMCAAAAAAAKAAAAEQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAALCTAgDylAIA/ZQCAEQBAAABAAAAAgAAAAAAAAAAAAAAAAAAAAAAwP///99BEwAAAAmVAgAZlQIAHZUCAAAAAAAKAAAAAAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgCdkgIAo5ICAAAAAAAKAAAAAQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgAljAIAqpICAAAAAAAKAAAAAgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgAhlQIAJZUCAAAAAAAKAAAABAAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgDGkgIAzpICAAAAAAAKAAAABQAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgDYkgIA4pICAAAAAAAKAAAABgAAAAAAAAAAAAAAAADgwQAAwP///99BEwAAAAmVAgDukgIA+JICAAAAAAAKAAAA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sAAAAAkAAAAKAAAACwAAAAMAAAACAAAAAQAAADDOAAB4zgAAeM4AAHDOAAAoAAAAEAAAACgAAAAYqgEAUKoBAHCqAQAAAAAAcqoBAAAAAwCCqgEAAAADAKKqAQAAAAMAAAAAAAAAAADCqgEAAAADAPaqAQAAAAQALqsBAAAABACuqwEAAAAEADKsAQAAAAQAnqwBAAAABABqrQEAAAAEADquAQAAAAQA+q4BAAAABAAAAAAAAAAAABayAQAAAAQADrUBAAEABAAOtQEAAgAEAA61AQADAAQADrUBAAQABAAOtQEABgAEAA61AQAIAAQADrUBAAoABAAOtQEADQAEADK4AQAEAAQAMrgBAAUABAAyuAEABgAEADK4AQAHAAQAMrgBAAgABAAyuAEACQAEADK4AQALAAQAMrgBAA0ABAAAAAAA+f///zUAAACN/////QEAAPj6//9sBgAAZNv//0hJAACcJAAAbAYAAAgFAAD9AQAAcwAAADUAAAAHAAAAAAAAAPn///81AAAAjf////0BAAD4+v//bAYAAGTb//9ISQAAnCQAAGwGAAAIBQAA/QEAAHMAAAA1AAAABwAAAAAAAAD4////NwAAAH7////0AQAAnfr//9IFAACW2f//PEkAAM4iAAD4BgAArQQAAAQCAABkAAAANAAAAAcAAAAAAAAA+P///zcAAAB+////9AEAAJ36///SBQAAltn//zxJAADOIgAA+AYAAK0EAAAEAgAAZAAAADQAAAAHAAAAAAAAAPf///84AAAAb////+gBAABC+v//KgUAAMrX//8aSQAAACEAAHYHAABSBAAACAIAAFcAAAAzAAAABgAAAAAAAAD3////OAAAAG/////oAQAAQvr//yoFAADK1///GkkAAAAhAAB2BwAAUgQAAAgCAABXAAAAMwAAAAYAAAAAAAAA9v///zgAAABf////2QEAAOn5//90BAAAANb//+JIAAAzHwAA5wcAAPgDAAAKAgAASgAAADEAAAAFAAAAAAAAAPb///84AAAAX////9kBAADp+f//dAQAAADW///iSAAAMx8AAOcHAAD4AwAACgIAAEoAAAAxAAAABQAAAAAAAAD2////OQAAAE7////IAQAAkfn//7ADAAA71P//kkgAAGgdAABLCAAAngMAAAkCAAA9AAAAMAAAAAUAAAAAAAAA9v///zkAAABO////yAEAAJH5//+wAwAAO9T//5JIAABoHQAASwgAAJ4DAAAJAgAAPQAAADAAAAAFAAAAAAAAAPX///85AAAAPf///7MBAAA6+f//3gIAAHrS//8tSAAAoBsAAKIIAABGAwAABwIAADEAAAAuAAAABAAAAAAAAAD1////OQAAAD3///+zAQAAOvn//94CAAB60v//LUgAAKAbAACiCAAARgMAAAcCAAAxAAAALgAAAAQAAAAAAAAA9P///zkAAAAs////mwEAAOb4///9AQAAvtD//7JHAADdGQAA7QgAAO8CAAACAgAAJgAAACwAAAAEAAAAAAAAAPT///85AAAALP///5sBAADm+P///QEAAL7Q//+yRwAA3RkAAO0IAADvAgAAAgIAACYAAAAsAAAABAAAAP/////z////OQAAABr///+AAQAAlfj//w8BAAAKz///IUcAAB4YAAArCQAAmgIAAPwBAAAcAAAAKgAAAAQAAAD/////8////zkAAAAa////gAEAAJX4//8PAQAACs///yFHAAAeGAAAKwkAAJoCAAD8AQAAHAAAACoAAAAEAAAA//////H///84AAAACP///2IBAABG+P//EgAAAF3N//96RgAAZBYAAF4JAABHAgAA9AEAABIAAAAoAAAAAwAAAP/////x////OAAAAAj///9iAQAARvj//xIAAABdzf//ekYAAGQWAABeCQAARwIAAPQBAAASAAAAKAAAAAMAAAD/////8P///zcAAAD2/v//QAEAAPz3//8G////uMv//79FAACxFAAAhgkAAPYBAADrAQAACQAAACcAAAADAAAA//////D///83AAAA9v7//0ABAAD89///Bv///7jL//+/RQAAsRQAAIYJAAD2AQAA6wEAAAkAAAAnAAAAAwAAAP/////v////NgAAAOT+//8bAQAAtff//+39//8dyv//8EQAAAYTAACiCQAApwEAAOABAAABAAAAJQAAAAMAAAD/////7////zYAAADk/v//GwEAALX3///t/f//Hcr///BEAAAGEwAAogkAAKcBAADgAQAAAQAAACUAAAADAAAA/////+7///80AAAA0f7///MAAABz9///x/z//43I//8MRAAAYhEAALQJAABbAQAA1AEAAPn///8jAAAAAgAAAP/////u////NAAAANH+///zAAAAc/f//8f8//+NyP//DEQAAGIRAAC0CQAAWwEAANQBAAD5////IwAAAAIAAAD/////7P///zIAAAC//v//xwAAADb3//+T+///Ccf//xVDAADHDwAAvAkAABIBAADGAQAA8v///yEAAAACAAAA/////+z///8yAAAAv/7//8cAAAA29///k/v//wnH//8VQwAAxw8AALwJAAASAQAAxgEAAPL///8hAAAAAgAAAP/////r////LwAAAK3+//+XAAAA//b//1H6//+Qxf//C0IAADUOAAC6CQAAzAAAALgBAADr////HwAAAAIAAAD/////6////y8AAACt/v//lwAAAP/2//9R+v//kMX//wtCAAA1DgAAugkAAMwAAAC4AQAA6////x8AAAACAAAA/////+n///8sAAAAm/7//2UAAADO9v//A/n//ybE///wQAAArQwAAK8JAACIAAAAqQEAAOX///8dAAAAAgAAAP/////p////LAAAAJv+//9lAAAAzvb//wP5//8mxP//8EAAAK0MAACvCQAAiAAAAKkBAADl////HQAAAAIAAAD/////6P///ykAAACJ/v//LgAAAKT2//+p9///ycL//8M/AAAwCwAAnAkAAEgAAACZAQAA4P///xwAAAACAAAA/////+j///8pAAAAif7//y4AAACk9v//qff//8nC///DPwAAMAsAAJwJAABIAAAAmQEAAOD///8cAAAAAgAAAP/////m////JQAAAHj+///1////gPb//0L2//97wf//hT4AAL4JAACACQAACwAAAIgBAADb////GgAAAAEAAAD/////5v///yUAAAB4/v//9f///4D2//9C9v//e8H//4U+AAC+CQAAgAkAAAsAAACIAQAA2////xoAAAABAAAAhcMBAJvDAQDCwwEA6MMBAP7DAQAlxAEAS8QBAGHEAQCIxAEArsQBAMTEAQDrxAEAD8UBACXFAQBMxQEAD8UBAHDFAQCXxQEAD8UBAHDFAQCXxQEAD8UBAHDFAQCXxQEAu8UBANHFAQD4xQEAAAAAAAAAABS+KAodzaVTJKl/WSZ1YkYscoxzLYH8sS4AAAA01yCuNJTWYjWWrh029EfeNnpPpDdlvjc8JMifPL4oCj31xnY9C4zlPWFjVj4uOsk+Pv89P7yitD8FixZE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RwmVA5UDNwlXCIcFZwclCSUJlQKVAlcHdwU1CDUIhQOFA2cGRwd3BFcGZwV3AxMJkwEFCZUARQiFBHUCdQJHBmcEIwgjCCMIIwiDAhMINQclBxMHEwdzAXMBVQUFB3UANQZlA0UFVQQlBmUCNQUDCIMAEwZjAQMGYwBVA0UEIwUjBVMCAwUzBEMDUwAjBEMCMwNGGPkP6Q/ZD+kOyQ/ZDrkP+QvJDtkMwhjnDOcM1w3XDfkKyQ23DrcO5wvnC5cPlw/3CfcJ5wrnCrcNtw3XC9cLhw+HD/cI9wjHDMcMqQ6ZDocOhw55D3kO9Qf1B/UH9QfVCtUKpw23DMcL9wZlD2UP5QhVD5UN1Qn1BeUHpQy1C0UPRQ/1BPUExwrnBvUD9QMzDzMPhQ3VCCMP8wJlDpUMAw8DD8UJVQ6jC6MLdQ3VB0MOQw7FCNUGMw4zDrMJswmVC6UKswrjBeMEgwxjDeMDIw4DDuMAUw3TBXMMwwdDDYMLswjTBJMKowljDNMDcwtTDMMFkwlzCqMHkwf3DvcM9Q31DeMN4w3jDeMNow/jCQgBCAIIAwgECAUGBoYGBAdCB2IHFwEXAQkBGQAHAAcAiAeICIgJiAqIC4YMBg2IDYYOBg+GDwYQhBDGEEYRxBEEEkQShBLEEgQTRBOEE8QTAhQiFEIUZBSiFMIU5BQiFUIVYhWZAYIVohXCFeIVAhYpCIkCGQiJASIWQhZiFoIWKQd5AmkEGQdZBXkBohY5BmkDSQVZBCkGaQIZBsIWOQVnAWcBWQNJBCcFJwVXAlcCFwUXBVcBVwEJBVkANwQ3BEcDJwRHAjcDRQFFARcEBwQlAyUDNQI1AkcABwMVAxUDNQE1ACMCIwITAiMBAwIjAOIWAhfpDiIXQhdiF/kLghfZDakP+Qq5DukLyQ3ZDJkP+QnpCrkN2QuJD/kIyQyZDukJeQ/5B6kN2Qq5DGkPohfHC8cL9wb3BokO6QhZD5kN9wX3BXcOdw7nB+cHpwynDMcKxwq3C7cL2QmJDUcPRw/3BPcENw83D/cD9wPXCNcI5wbnBicPJw/3AvcCaQ75ABcPFw/3AfcBlwyXDMcJxwlXDqcLtwrnBXcN1wdHDucEhwzHCDcOZw3XBucDlwu3CScOJw6nCqcK5wLnAhcOFw7nAecBCQ7pAFcNVw3XBdcFdwzHB0cNhwvVBNUEtwiXCqcJZwzHBjcN1QPVA9UC1QInDQcNFQ0VDXULdQu1B7UH1QHVAVcM1wDFBcUFhQqFCqUIRQzFBGULtQa1BpcJBww1DDUMxQPFA3UKdQqlB6UHpQalBscABwvDAsMCJQxVC7UFFQyFCZUIxQFFC7UEZQo1C3UJswOzA5UHhQglC1UKswKzAqUFFQuzAbMBtQBlCZUGRQqlBHUIhQc1CqMDowNTCZMFIwqjAhMKowEFCqUAYwhjCIMGQwmTBDMJkwOTA3UHBQlTCIMFIwljB3MGkwITCZMAQwiDBFMHcwUzCIMDYwZDB3MEAwiDAFMGYwUzB3MDQwYDB3MAAwZjAPMP4w/zDtMP8w3DD/MM0w7jDbMPww7jDKMOAw8IAQgCCAMEBBkBCQEXABcAAwADAAMAAwADAAMAAwADAEYExgREBfkPhAXCBegF+QLiBhkP+QEIBwgICAkICggLCAwGDYYNBg6GDgYPhg8GEIQQxBACESQRZBGiEVkBwhHiEQISIhIZBEkBQhIpAzkCFwMXAzcBNwEJAzkAJwInAhUCJQEFAiUA5w/3DtcP9w3HD/cMtw/3C6UPpQ/3CpcP9wn3CIUPhQ91D/UHZQ/1BlUP9QVDD0MP8wTzA/MA8wDzAPMA8wDzAPMA8wA1DzUPNQ81D2gSZhPmE2YUIw8DD+QUJBVkFaIVxBUEFkIWZBakFuQWJBfpA2IXgheiF8IX4hcCGCIYCQ1CGGIYghg5DKIYGQzJAMIY5wLnAikOGQ7ZAykN2QLZATkL4hgXDRcNyQRpC8kDqQcnDCcMyQK5BckBCQxJC7kEaQqpBrcDtwNZCqkFJwsnC7cCtwIXCxcLtwG3AQkLuQBpCZkGSQqpBHkIiQenA6cDOQpZCScKJwqZBWkIpwGnAYkGeQeXBJcESQlZB2cHZwelAqUCpQKlAhUKFQoHCqcANwmXA1cIhwUlCSUJlQKVAncGBwkVCRUJlQGVAZcARwiHBHcFNwiHA2cGJwiFAoUCRwd3BBUIFQiFAYUBhQCFAAcIVwY1BzUHdQN1A2cFRwYlByUHdQJ1AmcEVwUFBwUHEwcTBxMHEwdzAXMBdQA1BmUDRQVVBCUGYwITBmMBYwEFBmUAUwNTAzUFRQQjBVMCEwUDBTMEQwNTACMEQwIzAwMEQwDJDgIZ1w7XDucJ5wnpCtkJ5Q7lDuUO5Q7nDecN5wvnC7UOtQ7FDcUN1wzXC6UOpQ7FDMUMpw3XCncOpwzFCsUKxwl3DVUOVQ6zDbMNsw2zDZMOkw61DMULhQ7lCJUN5Qe1C4UN1QhlDuMGkwylC7UK5QXVB0MOQw7lBIUMwwgzDmMNYw3VBpULtQmlCuMB4wHTBNMEtQilCXMLcwu1B9UAAw7jAFMN0wVzDMMHQw2DC5MKYwzDBjMNUwzDBYMKowiTCUMMswZzClMLgwmTCHMJkweDCOMM0w0IAQgCCAP5DwgECAUIBggHCAgICQYKhAoZAQkBGQAJAOkP+Q7ZD/kNyQ/5DLkP+Qv3CvcKqQ+ZD/cJ9wn3CPcIiQ95D/cH9wdnD2cP9wb3BlcPVw/3BfcFRw9HD/cE9wQ3DzcP9wP3AycPJw/3AvcC9wH3ARkP+QDGCkYLxgtGDMgMxg1GDsYORA+ED8QPBBBEEIQQxBAEEUQRhhEEEkQShBLGEkQThhMCFCQUZBSiFMQUAhUiFUIVYhWCFaIVwhXiFQIWIhZCFmIWghaiFsIW4hYCFyQXYheEF3kDwhd5AkkGaQRZBXkBOQZpA0kFWQQpBmkCGQZpAeIXOQVZA0kEKQVZAhkFAhhXAVcBOQRJAycEJwRHAkcCNwM3AxcEFwRHAUcBCQRJACcDJwM3AjcCFQMVAxUDFQM1ATUBNQE1AQcDNwAlAiUCEwITAhMCEwIjASMBBQIlAAMPAw8DDwMP5w7XDucNxw7nDNcNtw7nC8cN1wynDucKtw3XC8cMlw7nCacN1wq3DMcLhw7nCJcN1wl3DucHpwzHCscKtwu3C4cNhw3XCNcICQ7pAAcNBw3lBuUG5QblBmcOlwzFCcUJVQ5VDrUKtQrlBeUFpwt3DdUH1QflBOUEhQyFDMUIxQhHDicONQ41DmUN1QblA5ULtQmlCuUCFQ7lAVUN1QV1DMUHRQ2FC7UI1QSVCqUJZQzFBjUN1QMlDdUCFQ11C7UH1QFVDMUFhQqlCJUJRQzFBGULZQu1BrUG1wAHDDUMNQzFA3UKpQclDMUCVQu1BRUMhQmVCMUBRQvHAAcLNQs1C7cABwoVChUKswSzBGUKpQZ1CXUJlQeVB6cABwmVAJUAswODCCULVQqzArMCpQUVC7UBZQmTBqMERQp1CIMHgwczCqMDUwmTBSMKowKjAWMIgwZzB0MJkwQzCZMDUwiDBSMJYwdzBpMCEwmTAUMIgwRTB3MFMwiDA2MGIwiDAhMIQwdzBIMBgwEFCIUAUwZjBRMHEwcFB3UAMwcjBwMGYwADBVMAAAAFgA+ACgAbgB4AFAARgDOANgA8ADmAKAAtgCeAIgBjgGYAbABpgHgAfYB3gHIAUABVgF+AWgBLgE4ARABBgMOAxgDMAMmA2ADdgNeA0gDwAPWA/4D6AOuA7gDkAOGAoAClgK+AqgC7gL4AtACxgJOAlgCcAJmAiACNgIeAggCDgYYBjAGJgZgBnYGXgZIBsAG1gb+BugGrga4BpAGhgeAB5YHvgeoB+4H+AfQB8YHTgdYB3AHZgcgBzYHHgcIBQAFFgU+BSgFbgV4BVAFRgXOBdgF8AXmBaAFtgWeBYgEjgSYBLAEpgTgBPYE3gTIBEAEVgR+BGgELgQ4BBAEBgQODBgMMAwmDGAMdgxeDEgMwAzWDP4M6AyuDLgMkAyGDYANlg2+DagN7g34DdANxg1ODVgNcA1mDSANNg0eDQgPAA8WDz4PKA9uD3gPUA9GD84P2A/wD+YPoA+2D54PiA6ODpgOsA6mDuAO9g7eDsgOQA5WDn4OaA4uDjgOEA4GDgAKFgo+CigKbgp4ClAKRgrOCtgK8ArmCqAKtgqeCogLjguYC7ALpgvgC/YL3gvIC0ALVgt+C2gLLgs4CxALBgkOCRgJMAkmCWAJdgleCUgJwAnWCf4J6AmuCbgJkAmGCIAIlgi+CKgI7gj4CNAIxghOCFgIcAhmCCAINggeCAgIBAP//AgACAAIAAQACAAAAAgADAAIAAhACAAEQAgAAEAIAAxACAAIgAgABIAIAACACAAMgAgACDwIAAQ8CAAAPAgADDwIAAh8CAAEfAgAAHwIAAx8CAAIvAgABLwIAAC8CAAMvBAD//wgQAQAQMAIAIDACAEAwBABAMgQACBABABAQAgAgEAIAQBAEAADxAQAIEAEACEABAAhQAQAQMAIAIDACABDAAgAgwAIAEJACACCQAgAQYAIAIGACABCwAgAgsAIAEOACACDgAgAQcAIAIHACABDQAgAg0AIAEPACACDwAgBA8AQAAAEBAAgQAQAIQAEACFABABAwAgAgMAIAEMACACDAAgAQ8AIAIPACAEAwBABAwAQAQPAEAAABgAEAAgADAwADAAMAAwAEAAQABAAEAEg1TENCYXNlACRwbGF5AG9uRGF0YQAkY2xvc2UAZGVjb2RlVmlkZW9CdWZmZXIAaXNQbGF5aW5nAGZsdk1vZGUAYXVkaW9CdWZmZXIAdmlkZW9CdWZmZXIASDVMaXZlQ2xpZW50AGNsb3NlAHdlYkdMQ2FudmFzAGlzV2ViR0wAd2ViZ2w6JXMAdHJ1ZQBmYWxzZQAuZmx2AFdlYlNvY2tldABiaW5hcnlUeXBlAGFycmF5YnVmZmVyAG9ubWVzc2FnZQBvbmVycm9yAG9uRXJyb3IAd3MATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBiaW5kAE4xMGVtc2NyaXB0ZW4zdmFsRQBkYXRhAGVycm9yIHR5cGUgOiVkAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAcGxheUF1ZGlvAGluaXRBdWRpbwBhdWRpbyBpbml0ISAlZABtcDMgaW5pdCEAZ290IGgyNjQgdmlkZW8AZ290IGgyNjUgdmlkZW8AT25seSBzdXBwb3J0IHZpZGVvIGguMjY0L2F2YyBvciBoLjI2NS9oZXZjIGNvZGVjLiBhY3R1YWw9JWQAdmlkZW8gaW5mbyBzZXQhAHBsYXlWaWRlb0J1ZmZlcgB0aW1lc3BhbgBjbGVhclRpbWVvdXQAOEg1TENCYXNlAFA4SDVMQ0Jhc2UAUEs4SDVMQ0Jhc2UAaWkAdgB2aWlpAHZpaQBpaWkAbm90aWZ5T25EZXN0cnVjdGlvbgBpbXBsZW1lbnQAZXh0ZW5kADEySDVMaXZlQ2xpZW50AE4xMGVtc2NyaXB0ZW43d3JhcHBlckk4SDVMQ0Jhc2VFRQBOMTBlbXNjcmlwdGVuOGludGVybmFsMTFXcmFwcGVyQmFzZUUAUDEySDVMaXZlQ2xpZW50AFBLMTJINUxpdmVDbGllbnQAaWlpaQBGRk1wZWcgaW5pdAA2RkZtcGVnADEyVmlkZW9EZWNvZGVyAGNvZGVjID0gJWQAdmlkZW8gZGVjb2RlciByZWxlYXNlIQoARkZNcGVnIGRlc3RvcnkAY29kZWMgPSAlZCxw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MG0AG1s0ODs1OyV1bRtbMzg7NTsldW0lcxtbMG0AVEVSTQBOT19DT0xPUgBBVl9MT0dfRk9SQ0VfTk9DT0xPUgBBVl9MT0dfRk9SQ0VfQ09MT1IAQVZfTE9HX0ZPUkNFXzI1NkNPTE9SADI1NmNvbG9yAFslcyBAICVwXSAAWyVzXSAAcGFuaWMAZmF0YWwAZXJyb3IAd2FybmluZwBpbmZvAHZlcmJvc2UAcXVpZXQAAAECAwQFBghBIG5vbi1OVUxMIHBhY2tldCBzZW50IGFmdGVyIGFuIEVPRi4KAENvZGVjICclcycgKCVkKSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBiaXRzdHJlYW0gZmlsdGVyICclcycuIFN1cHBvcnRlZCBjb2RlY3MgYXJlOiAAJXMgKCVkKSAAbXBlZzF2aWRlbwBtcGVnMnZpZGVvAGgyNjEAaDI2MwBydjEwAHJ2MjAAbWpwZWcAbWpwZWdiAGxqcGVnAHNwNXgAanBlZ2xzAG1wZWc0AHJhd3ZpZGVvAG1zbXBlZzR2MQBtc21wZWc0djIAbXNtcGVnNHYzAHdtdjEAd212MgBoMjYzcABoMjYzaQBmbHYxAHN2cTEAc3ZxMwBkdnZpZGVvAGh1ZmZ5dXYAY3l1dgBpbmRlbzMAdnAzAHRoZW9yYQBhc3YxAGFzdjIAZmZ2MQA0eG0AdmNyMQBjbGpyAG1kZWMAcm9xAGludGVycGxheXZpZGVvAHhhbl93YzMAeGFuX3djNABycHphAGNpbmVwYWsAd3NfdnFhAG1zcmxlAG1zdmlkZW8xAGlkY2luADhicHMAc21jAGZsaWMAdHJ1ZW1vdGlvbjEAdm1kdmlkZW8AbXN6aAB6bGliAHF0cmxlAHRzY2MAdWx0aQBxZHJhdwB2aXhsAHFwZWcAcG5nAHBwbQBwYm0AcGdtAHBnbXl1dgBwYW0AZmZ2aHVmZgBydjMwAHJ2NDAAdmMxAHdtdjMAbG9jbwB3bnYxAGFhc2MAaW5kZW8yAGZyYXBzAHRydWVtb3Rpb24yAGJtcABjc2NkAG1tdmlkZW8Aem1idgBhdnMAc21hY2t2aWRlbwBudXYAa212YwBmbGFzaHN2AGNhdnMAanBlZzIwMDAAdm1uYwB2cDUAdnA2AHZwNmYAdGFyZ2EAZHNpY2ludmlkZW8AdGllcnRleHNlcXZpZGVvAHRpZmYAZ2lmAGR4YQBkbnhoZAB0aHAAc2dpAGM5MwBiZXRoc29mdHZpZABwdHgAdHhkAHZwNmEAdmIAcGN4AHN1bnJhc3QAaW5kZW80AGluZGVvNQBtaW1pYwBybDIAZXNjYXBlMTI0AGRpcmFjAGJmaQBjbXYAbW90aW9ucGl4ZWxzAHRndgB0Z3EAdHFpAGF1cmEAYXVyYTIAdjIxMHgAdG12AHYyMTAAZHB4AG1hZABmcnd1AGZsYXNoc3YyAGNkZ3JhcGhpY3MAcjIxMABhbm0AYmlua3ZpZGVvAGlmZl9pbGJtAGtndjEAeW9wAHZwOABwaWN0b3IAYW5zaQBhNjRfbXVsdGkAYTY0X211bHRpNQByMTBrAG14cGVnAGxhZ2FyaXRoAHByb3JlcwBqdgBkZmEAd212M2ltYWdlAHZjMWltYWdlAHV0dmlkZW8AYm12X3ZpZGVvAHZibGUAZHh0b3J5AHY0MTAAeHdkAGNkeGwAeGJtAHplcm9jb2RlYwBtc3MxAG1zYTEAdHNjYzIAbXRzMgBjbGxjAG1zczIAdnA5AGVzY2FwZTEzMABnMm0Ad2VicABobm00dmlkZW8AaGV2YwBmaWMAYWxpYXNfcGl4AGJyZW5kZXJfcGl4AHBhZl92aWRlbwBleHIAdnA3AHNhbm0Ac2dpcmxlAG12YzEAbXZjMgBocXgAdGRzYwBocV9ocWEAaGFwAGRkcwBkeHYAc2NyZWVucHJlc3NvAHJzY2MAeTQxcABhdnJwADAxMnYAYXZ1aQBheXV2AHRhcmdhX3kyMTYAdjMwOAB2NDA4AHl1djQAYXZybgBjcGlhAHhmYWNlAHNub3cAc212anBlZwBhcG5nAGRhYWxhAGNmaGQAdHJ1ZW1vdGlvbjJydABtMTAxAG1hZ2ljeXV2AHNoZWVydmlkZW8AeWxjAHBzZABwaXhsZXQAc3BlZWRocQBmbXZjAHNjcHIAY2xlYXJ2aWRlbwB4cG0AYXYxAGJpdHBhY2tlZABtc2NjAHNyZ2MAc3ZnAGdkdgBmaXRzAHBjbV9zMTZsZQBwY21fczE2YmUAcGNtX3UxNmxlAHBjbV91MTZiZQBwY21fczgAcGNtX3U4AHBjbV9tdWxhdwBwY21fYWxhdwBwY21fczMybGUAcGNtX3MzMmJlAHBjbV91MzJsZQBwY21fdTMyYmUAcGNtX3MyNGxlAHBjbV9zMjRiZQBwY21fdTI0bGUAcGNtX3UyNGJlAHBjbV9zMjRkYXVkAHBjbV96b3JrAHBjbV9zMTZsZV9wbGFuYXIAcGNtX2R2ZABwY21fZjMyYmUAcGNtX2YzMmxlAHBjbV9mNjRiZQBwY21fZjY0bGUAcGNtX2JsdXJheQBwY21fbHhmAHMzMDJtAHBjbV9zOF9wbGFuYXIAcGNtX3MyNGxlX3BsYW5hcgBwY21fczMybGVfcGxhbmFyAHBjbV9zMTZiZV9wbGFuYXIAcGNtX3M2NGxlAHBjbV9zNjRiZQBwY21fZjE2bGUAcGNtX2YyNGxlAGFkcGNtX2ltYV9xdABhZHBjbV9pbWFfd2F2AGFkcGNtX2ltYV9kazMAYWRwY21faW1hX2RrNABhZHBjbV9pbWFfd3MAYWRwY21faW1hX3NtanBlZwBhZHBjbV9tcwBhZHBjbV80eG0AYWRwY21feGEAYWRwY21fYWR4AGFkcGNtX2VhAGFkcGNtX2c3MjYAYWRwY21fY3QAYWRwY21fc3dmAGFkcGNtX3lhbWFoYQBhZHBjbV9zYnByb180AGFkcGNtX3NicHJvXzMAYWRwY21fc2Jwcm9fMgBhZHBjbV90aHAAYWRwY21faW1hX2FtdgBhZHBjbV9lYV9yMQBhZHBjbV9lYV9yMwBhZHBjbV9lYV9yMgBhZHBjbV9pbWFfZWFfc2VhZABhZHBjbV9pbWFfZWFfZWFjcwBhZHBjbV9lYV94YXMAYWRwY21fZWFfbWF4aXNfeGEAYWRwY21faW1hX2lzcwBhZHBjbV9nNzIyAGFkcGNtX2ltYV9hcGMAYWRwY21fdmltYQBhZHBjbV9hZmMAYWRwY21faW1hX29raQBhZHBjbV9kdGsAYWRwY21faW1hX3JhZABhZHBjbV9nNzI2bGUAYWRwY21fdGhwX2xlAGFkcGNtX3BzeABhZHBjbV9haWNhAGFkcGNtX2ltYV9kYXQ0AGFkcGNtX210YWYAYW1yX25iAGFtcl93YgByYV8xNDQAcmFfMjg4AHJvcV9kcGNtAGludGVycGxheV9kcGNtAHhhbl9kcGNtAHNvbF9kcGNtAHNkeDJfZHBjbQBncmVtbGluX2RwY20AbXAyAG1wMwBhYWMAYWMzAHZvcmJpcwBkdmF1ZGlvAHdtYXYxAHdtYXYyAG1hY2UzAG1hY2U2AHZtZGF1ZGlvAGZsYWMAbXAzYWR1AG1wM29uNABzaG9ydGVuAGFsYWMAd2VzdHdvb2Rfc25kMQBnc20AcWRtMgBjb29rAHRydWVzcGVlY2gAdHRhAHNtYWNrYXVkaW8AcWNlbHAAd2F2cGFjawBkc2ljaW5hdWRpbwBpbWMAbXVzZXBhY2s3AG1scABnc21fbXMAYXRyYWMzAGFwZQBuZWxseW1vc2VyAG11c2VwYWNrOABzcGVleAB3bWF2b2ljZQB3bWFwcm8Ad21hbG9zc2xlc3MAYXRyYWMzcABlYWMzAHNpcHIAbXAxAHR3aW52cQB0cnVlaGQAbXA0YWxzAGF0cmFjMQBiaW5rYXVkaW9fcmRmdABiaW5rYXVkaW9fZGN0AGFhY19sYXRtAHFkbWMAY2VsdABnNzIzXzEAZzcyOQA4c3Z4X2V4cAA4c3Z4X2ZpYgBibXZfYXVkaW8AcmFsZgBpYWMAaWxiYwBvcHVzAGNvbWZvcnRub2lzZQB0YWsAbWV0YXNvdW5kAHBhZl9hdWRpbwBhdmMAZHNzX3NwAGNvZGVjMgB3YXZlc3ludGgAc29uaWMAc29uaWNscwBldnJjAHNtdgBkc2RfbHNiZgBkc2RfbXNiZgBkc2RfbHNiZl9wbGFuYXIAZHNkX21zYmZfcGxhbmFyADRndgBpbnRlcnBsYXlhY20AeG1hMQB4bWEyAGRzdABhdHJhYzNhbABhdHJhYzNwYWwAZG9sYnlfZQBhcHR4AGFwdHhfaGQAc2JjAGR2ZF9zdWJ0aXRsZQBkdmJfc3VidGl0bGUAdGV4dAB4c3ViAHNzYQBtb3ZfdGV4dABoZG12X3Bnc19zdWJ0aXRsZQBkdmJfdGVsZXRleHQAc3J0AG1pY3JvZHZkAGVpYV82MDgAamFjb3N1YgBzYW1pAHJlYWx0ZXh0AHN0bABzdWJ2aWV3ZXIxAHN1YnZpZXdlcgBzdWJyaXAAd2VidnR0AG1wbDIAdnBsYXllcgBwanMAaGRtdl90ZXh0X3N1YnRpdGxlAHR0ZgBzY3RlXzM1AGJpbnRleHQAeGJpbgBpZGYAb3RmAGtsdgBkdmRfbmF2X3BhY2tldAB0aW1lZF9pZDMAYmluX2RhdGEAd3JhcHBlZF9hdmZyYW1l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AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEgICAgICAgIB8gICAgICAgDxAREhMUFRYXGBkaGxwdHgcHBwcICAgICQkJCQoKCgoLCwsLDAwMDA0NDQ0ODg4OAwMDAwMDAwMDAwMDAwMDAwQEBAQEBAQEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEREREREREREBEREREREREI+An3CvYL9Qz0DfMO8g/xBAQEBPz8/PwFBQUF+/v7+wYGBgb6+vr6BwcHB/n5+fkCAgICAgICAgICAgICAgIC/v7+/v7+/v7+/v7+/v7+/gMDAwMDAwMDAwMDAwMDAwP9/f39/f39/f39/f39/f39AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgMBBgUvHw8AFxsdHgcLDQ4nKy0uEAMFCgwTFRocIyUqLAECBAgREhQYBgkWGSAhIiQoJikAEAECBAggAwUKDA8vBwsNDgYJHyMlKiwhIiQoJystLhESFBgTFRocFxsdHhYZJikAECAwACAQQGAwUHAKDRALDhINEBQOEhcQFBkSFx0AAwQDAwEFAQQFAgUDAQUBFBIgExkYFhMjFRwaGhcqGCEfHBktGiMhIBwzHigmJCA6Ii4rAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwQFAAECAwAAAAAAAAEBAQEBAQICAgICAgMDAwMDAwQEBAQEBAUFBQUFBQYGBgYGBgcHBwcHBwgICAgICAkJCQkJCQoKCgoKCgsLCwsLCwwMDAwMDA0NDQ0NDQ4ODg4AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0dHh8gICEiIiMjJCQlJSUmJiYnJycnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjIyQlJiYnKCgpKSoqKysrLCwsLS0tLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSkqKywsLS4uLy8wMDExMTIyMjMzMzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8vMDEyMjM0NDU1NjY3Nzc4ODg5OTk5AAAAAAAAAAAAAAAAAAAAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1NTY3ODg5Ojo7Ozw8PT09Pj4+Pz8/PwAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozs8PT4+P0BAQUFCQkNDQ0REREVFRUUAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFBQkNEREVGRkdHSEhJSUlKSkpLS0tLaDI2NAB0aHJlYWRfcmVsZWFzZV9idWZmZXIgY2FsbGVkIG9uIHBpYyAlcAoAZnJhbWUtPm5iX2V4dGVuZGVkX2J1ZiA9PSAwAGxpYmF2Y29kZWMvZGVjb2RlLmMAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBmcmFtZSAlcABwaWMtPmRhdGFbKl0hPU5VTEwgaW4gYXZjb2RlY19kZWZhdWx0X2dldF9idWZmZXIKAFVuYWJsZSB0byBnZXQgcGl4ZWwgZm9ybWF0IGRlc2NyaXB0b3IgZm9yIGZvcm1hdCAlcwoAZGVmYXVsdF9nZXRfYnVmZmVyIGNhbGxlZCBvbiBwaWMgJXAKAHl1djQyMHAAeXV5djQyMgByZ2IyNABiZ3IyNAB5dXY0MjJwAHl1djQ0NHAAeXV2NDEwcAB5dXY0MTFwAGdyYXk4LHk4AG1vbm93AG1vbm9iAHBhbDgAeXV2ajQyMHAAeXV2ajQyMnAAeXV2ajQ0NHAAdXl2eTQyMgB1eXl2eXk0MTEAYmdyOABiZ3I0AGJncjRfYnl0ZQByZ2I4AHJnYjQAcmdiNF9ieXRlAG52MTIAbnYyMQBhcmdiAHJnYmEAYWJncgBiZ3JhAGdyYXkxNmJlAHkxNmJlAGdyYXkxNmxlAHkxNmxlAHl1djQ0MHAAeXV2ajQ0MHAAeXV2YTQyMHAAcmdiNDhiZQByZ2I0OGxlAHJnYjU2NWJlAHJnYjU2NWxlAHJnYjU1NWJlAHJnYjU1NWxlAGJncjU2NWJlAGJncjU2NWxlAGJncjU1NWJlAGJncjU1NWxlAHZhYXBpX21vY28AdmFhcGlfaWRjdAB2YWFwaV92bGQAeXV2NDIwcDE2bGUAeXV2NDIwcDE2YmUAeXV2NDIycDE2bGUAeXV2NDIycDE2YmUAeXV2NDQ0cDE2bGUAeXV2NDQ0cDE2YmUAZHh2YTJfdmxkAHJnYjQ0NGxlAHJnYjQ0NGJlAGJncjQ0NGxlAGJncjQ0NGJlAHlhOABncmF5OGEAYmdyNDhiZQBiZ3I0OGxlAHl1djQyMHA5YmUAeXV2NDIwcDlsZQB5dXY0MjBwMTBiZQB5dXY0MjBwMTBsZQB5dXY0MjJwMTBiZQB5dXY0MjJwMTBsZQB5dXY0NDRwOWJlAHl1djQ0NHA5bGUAeXV2NDQ0cDEwYmUAeXV2NDQ0cDEwbGUAeXV2NDIycDliZQB5dXY0MjJwOWxlAGdicnAAZ2JycDliZQBnYnJwOWxlAGdicnAxMGJlAGdicnAxMGxlAGdicnAxNmJlAGdicnAxNmxlAHl1dmE0MjJwAHl1dmE0NDRwAHl1dmE0MjBwOWJlAHl1dmE0MjBwOWxlAHl1dmE0MjJwOWJlAHl1dmE0MjJwOWxlAHl1dmE0NDRwOWJlAHl1dmE0NDRwOWxlAHl1dmE0MjBwMTBiZQB5dXZhNDIwcDEwbGUAeXV2YTQyMnAxMGJlAHl1dmE0MjJwMTBsZQB5dXZhNDQ0cDEwYmUAeXV2YTQ0NHAxMGxlAHl1dmE0MjBwMTZiZQB5dXZhNDIwcDE2bGUAeXV2YTQyMnAxNmJlAHl1dmE0MjJwMTZsZQB5dXZhNDQ0cDE2YmUAeXV2YTQ0NHAxNmxlAHZkcGF1AHh5ejEybGUAeHl6MTJiZQBudjE2AG52MjBsZQBudjIwYmUAcmdiYTY0YmUAcmdiYTY0bGUAYmdyYTY0YmUAYmdyYTY0bGUAeXZ5dTQyMgB5YTE2YmUAeWExNmxlAGdicmFwAGdicmFwMTZiZQBnYnJhcDE2bGUAcXN2AG1tYWwAZDNkMTF2YV92bGQAY3VkYQAwcmdiAHJnYjAAMGJncgBiZ3IwAHl1djQyMHAxMmJlAHl1djQyMHAxMmxlAHl1djQyMHAxNGJlAHl1djQyMHAxNGxlAHl1djQyMnAxMmJlAHl1djQyMnAxMmxlAHl1djQyMnAxNGJlAHl1djQyMnAxNGxlAHl1djQ0NHAxMmJlAHl1djQ0NHAxMmxlAHl1djQ0NHAxNGJlAHl1djQ0NHAxNGxlAGdicnAxMmJlAGdicnAxMmxlAGdicnAxNGJlAGdicnAxNGxlAHl1dmo0MTFwAGJheWVyX2JnZ3I4AGJheWVyX3JnZ2I4AGJheWVyX2dicmc4AGJheWVyX2dyYmc4AGJheWVyX2JnZ3IxNmxlAGJheWVyX2JnZ3IxNmJlAGJheWVyX3JnZ2IxNmxlAGJheWVyX3JnZ2IxNmJlAGJheWVyX2dicmcxNmxlAGJheWVyX2dicmcxNmJlAGJheWVyX2dyYmcxNmxlAGJheWVyX2dyYmcxNmJlAHh2bWMAeXV2NDQwcDEwbGUAeXV2NDQwcDEwYmUAeXV2NDQwcDEybGUAeXV2NDQwcDEyYmUAYXl1djY0bGUAYXl1djY0YmUAdmlkZW90b29sYm94X3ZsZABwMDEwbGUAcDAxMGJlAGdicmFwMTJiZQBnYnJhcDEybGUAZ2JyYXAxMGJlAGdicmFwMTBsZQBtZWRpYWNvZGVjAGdyYXkxMmJlAHkxMmJlAGdyYXkxMmxlAHkxMmxlAGdyYXkxMGJlAHkxMGJlAGdyYXkxMGxlAHkxMGxlAHAwMTZsZQBwMDE2YmUAZDNkMTEAZ3JheTliZQB5OWJlAGdyYXk5bGUAeTlsZQBnYnJwZjMyYmUAZ2JycGYzMmxlAGdicmFwZjMyYmUAZ2JyYXBmMzJsZQBkcm1fcHJpbWUAb3BlbmNsAEZhaWxlZCB0byBtYXAgZnJhbWUgaW50byBkZXJpdmVkIGZyYW1lIGNvbnRleHQ6ICVkLgoASW52YWxpZCBtYXBwaW5nIGZvdW5kIHdoZW4gYXR0ZW1wdGluZyB1bm1hcC4KAGF2X2ltYWdlX2dldF9saW5lc2l6ZSBmYWlsZWQKAGFicyhzcmNfbGluZXNpemUpID49IGJ5dGV3aWR0aABsaWJhdnV0aWwvaW1ndXRpbHMuYwBhYnMoZHN0X2xpbmVzaXplKSA+PSBieXRld2lkdGgAUGljdHVyZSBzaXplICV1eCV1IGlzIGludmFsaWQKAFBpY3R1cmUgc2l6ZSAldXgldSBleGNlZWRzIHNwZWNpZmllZCBtYXggcGl4ZWwgY291bnQgJWxsZCwgc2VlIHRoZSBkb2N1bWVudGF0aW9uIGlmIHlvdSB3aXNoIHRvIGluY3JlYXNlIGl0CgBJTUdVVElMUwAhZHN0LT5mLT5idWZbMF0AbGliYXZjb2RlYy9oMjY0X3BpY3R1cmUuYwBzcmMtPmYtPmJ1ZlswXQBzcmMtPnRmLmYgPT0gc3JjLT5mACFkc3QtPnByb2dyZXNzAGxpYmF2Y29kZWMvdXRpbHMuYwBidWZfaW5kZXggPD0gYnVmX3NpemUAbGliYXZjb2RlYy9oMjY0ZGVjLmMAbm8gZnJhbWUhCgBwaWN0LT5idWZbMF0gfHwgISpnb3RfZnJhbWUARHVwbGljYXRpbmcgZmllbGQgJWQgdG8gZmlsbCBtaXNzaW5nCgBzdGVyZW9fbW9kZQBjaGVja2VyYm9hcmRfcmwAY2hlY2tlcmJvYXJkX2xyAGNvbF9pbnRlcmxlYXZlZF9ybABjb2xfaW50ZXJsZWF2ZWRfbHIAcm93X2ludGVybGVhdmVkX3JsAHJvd19pbnRlcmxlYXZlZF9scgByaWdodF9sZWZ0AGxlZnRfcmlnaHQAYm90dG9tX3RvcAB0b3BfYm90dG9tAGJsb2NrX3JsAGJsb2NrX2xyAGhhcmR3YXJlIGFjY2VsZXJhdG9yIGZhaWxlZCB0byBkZWNvZGUgcGljdHVyZQoAJXAgZmluaXNoZWQgJWQgZmllbGQgJWQKAFNQUyBpcyB1bnNldAoAbm8gbW1jbyBoZXJlCgBtbWNvOiVkICVkICVkCgBtbWNvOiB1bnJlZiBzaG9ydCBmYWlsdXJlCgBtbWNvOiB1bnJlZiBzaG9ydCAlZCBjb3VudCAlZAoAbW1jbzogdW5yZWYgbG9uZyBmYWlsdXJlCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byBzaG9ydCBhbmQgbG9uZyBhdCB0aGUgc2FtZSB0aW1lCgBtbWNvOiBjYW5ub3QgYXNzaWduIGN1cnJlbnQgcGljdHVyZSB0byAyIGxvbmcgdGVybSByZWZlcmVuY2VzCgAhaC0+Y3VyX3BpY19wdHItPmxvbmdfcmVmAGxpYmF2Y29kZWMvaDI2NF9yZWZzLmMAaWxsZWdhbCBzaG9ydCB0ZXJtIHJlZmVyZW5jZSBhc3NpZ25tZW50IGZvciBzZWNvbmQgZmllbGQgaW4gY29tcGxlbWVudGFyeSBmaWVsZCBwYWlyIChmaXJzdCBmaWVsZCBpcyBsb25nIHRlcm0pCgBpbGxlZ2FsIHNob3J0IHRlcm0gYnVmZmVyIHN0YXRlIGRldGVjdGVkCgBudW1iZXIgb2YgcmVmZXJlbmNlIGZyYW1lcyAoJWQrJWQpIGV4Y2VlZHMgbWF4ICglZDsgcHJvYmFibHkgY29ycnVwdCBpbnB1dCksIGRpc2NhcmRpbmcgb25lCgBsb25nIHRlcm0gbGlzdDoKACV1IGZuOiVkIHBvYzolZCAlcAoAc2hvcnQgdGVybSBsaXN0OgoAcmVtb3ZlIHNob3J0ICVkIGNvdW50ICVkCgAlZCAlZCAlcAoARXJyb3Igc3BsaXR0aW5nIHRoZSBpbnB1dCBpbnRvIE5BTCB1bml0cy4KAEludmFsaWQgaW50ZXIgSURSIGZyYW1lCgBpbnZhbGlkIG1peGVkIElEUiAvIG5vbiBJRFIgZnJhbWVzIGNhbm5vdCBiZSBkZWNvZGVkIGluIHNsaWNlIG11bHRpdGhyZWFkaW5nIG1vZGUKAGRhdGEgcGFydGl0aW9uaW5nAFNQUyBkZWNvZGluZyBmYWlsdXJlLCB0cnlpbmcgYWdhaW4gd2l0aCB0aGUgY29tcGxldGUgTkFMCgBVbmtub3duIE5BTCBjb2RlOiAlZCAoJWQgYml0cykKAGRlY29kZV9zbGljZV9oZWFkZXIgZXJyb3IKAGlnbm9yaW5nIGxhc3QgbWlzc2luZyBzbGljZQoAQ2Fubm90IHVzZSBwcmV2aW91cyBwaWN0dXJlIGluIGVycm9yIGNvbmNlYWxtZW50CgBDYW5ub3QgdXNlIG5leHQgcGljdHVyZSBpbiBlcnJvciBjb25jZWFsbWVudAoAV2FybmluZyBNVnMgbm90IGF2YWlsYWJsZQoAJTJYIAAKAGNvbmNlYWxpbmcgJWQgREMsICVkIEFDLCAlZCBNViBlcnJvcnMgaW4gJWMgZnJhbWUKAHMtPmF2Y3R4LT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9IMjY0AGxpYmF2Y29kZWMvZXJyb3JfcmVzaWxpZW5jZS5jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3MtPnF1YXJ0ZXJfc2FtcGxlAGd1ZXNzX2RjKCkgaXMgb3V0IG9mIG1lbW9yeQoAbmV4dF9ibG9ja2xpc3RfbGVuZ3RoIDw9IG1iX2hlaWdodCAqIG1iX3dpZHRoAHRocmVhZCBhd2FpdGluZyAlZCBmaWVsZCAlZCBmcm9tICVwCgBUcnVuY2F0aW5nIGxpa2VseSBvdmVyc2l6ZWQgUFBTICglenUgPiAlenUpCgBzcHNfaWQgJXUgb3V0IG9mIHJhbmdlCgBJbnZhbGlkIGx1bWEgYml0IGRlcHRoPSVkCgBVbmltcGxlbWVudGVkIGx1bWEgYml0IGRlcHRoPSVkAEZNTyBub3Qgc3VwcG9ydGVkCgByZWZlcmVuY2Ugb3ZlcmZsb3cgKHBwcykKAENBQkFDAENBVkxDAHdlaWdodGVkAExQQVIAQ09OU1RSAFJFRFUAOHg4RENUAHBwczoldSBzcHM6JXUgJXMgc2xpY2VfZ3JvdXBzOiVkIHJlZjoldS8ldSAlcyBxcDolZC8lZC8lZC8lZCAlcyAlcyAlcyAlcwoABgoNEBIXGRsKCxASFxkbHQ0QEhcZGx0fEBIXGRsdHyESFxkbHR8hJBcZGx0fISQmGRsdHyEkJigbHR8hJCYoKgkNDxETFRYYDQ0RExUWGBkPERMVFhgZGxETFRYYGRscExUWGBkbHB4VFhgZGxweIBYYGRscHiAhGBkbHB4gISMGDRQcDRQcIBQcICUcICUqCg4UGA4UGBsUGBseGBseIgABBAgFAgMGCQwNCgcLDg8AAAEIEAkCAwoRGCAZEgsEBQwTGiEoMCkiGxQNBgcOFRwjKjE4OTIrJB0WDxceJSwzOjs0LSYfJy41PD02Lzc+P2RlbHRhIHNjYWxlICVkIGlzIGludmFsaWQKAEN1cnJlbnQgcHJvZmlsZSBkb2Vzbid0IHByb3ZpZGUgbW9yZSBSQlNQIGRhdGEgaW4gUFBTLCBza2lwcGluZwoAIGlzIG5vdCBpbXBsZW1lbnRlZC4gVXBkYXRlIHlvdXIgRkZtcGVnIHZlcnNpb24gdG8gdGhlIG5ld2VzdCBvbmUgZnJvbSBHaXQuIElmIHRoZSBwcm9ibGVtIHN0aWxsIG9jY3VycywgaXQgbWVhbnMgdGhhdCB5b3VyIGZpbGUgaGFzIGEgZmVhdHVyZSB3aGljaCBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuCgBJZiB5b3Ugd2FudCB0byBoZWxwLCB1cGxvYWQgYSBzYW1wbGUgb2YgdGhpcyBmaWxlIHRvIGZ0cDovL3VwbG9hZC5mZm1wZWcub3JnL2luY29taW5nLyBhbmQgY29udGFjdCB0aGUgZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdC4gKGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnKQoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFNQUwoAY2hyb21hX2Zvcm1hdF9pZGMgJXUAc2VwYXJhdGUgY29sb3IgcGxhbmVzIGFyZSBub3Qgc3VwcG9ydGVkCgBEaWZmZXJlbnQgY2hyb21hIGFuZCBsdW1hIGJpdCBkZXB0aABpbGxlZ2FsIGJpdCBkZXB0aCB2YWx1ZSAoJWQsICVkKQoAbG9nMl9tYXhfZnJhbWVfbnVtX21pbnVzNCBvdXQgb2YgcmFuZ2UgKDAtMTIpOiAlZAoAbG9nMl9tYXhfcG9jX2xzYiAoJWQpIGlzIG91dCBvZiByYW5nZQoAcG9jX2N5Y2xlX2xlbmd0aCBvdmVyZmxvdyAlZAoAaWxsZWdhbCBQT0MgdHlwZSAlZAoAdG9vIG1hbnkgcmVmZXJlbmNlIGZyYW1lcyAlZAoAaGVpZ2h0IG92ZXJmbG93CgBtYl93aWR0aC9oZWlnaHQgb3ZlcmZsb3cKAGRpc2NhcmRpbmcgc3BzIGNyb3BwaW5nLCBvcmlnaW5hbCB2YWx1ZXMgYXJlIGw6JWQgcjolZCB0OiVkIGI6JWQKAGNyb3AgdmFsdWVzIGludmFsaWQgJWQgJWQgJWQgJWQgLyAlZCAlZAoAVlVJAE92ZXJyZWFkICVzIGJ5ICVkIGJpdHMKAE1CLUFGRgBQSUMtQUZGAEZSTQA4QjgAR3JheQA0MjAAADQyMgAANDQ0AABzcHM6JXUgcHJvZmlsZTolZC8lZCBwb2M6JWQgcmVmOiVkICVkeCVkICVzICVzIGNyb3A6JXUvJXUvJXUvJXUgJXMgJXMgJWQvJWQgYiVkIHJlbzolZAoAaWxsZWdhbCBhc3BlY3QgcmF0aW8KAFRydW5jYXRlZCBWVUkKAHRpbWVfc2NhbGUvbnVtX3VuaXRzX2luX3RpY2sgaW52YWxpZCBvciB1bnN1cHBvcnRlZCAoJXUvJXUpCgBDbGlwcGluZyBpbGxlZ2FsIG51bV9yZW9yZGVyX2ZyYW1lcyAlZAoAY3BiX2NvdW50ICVkIGludmFsaWQKAGdicgByZXNlcnZlZABjaHJvbWEtZGVyaXZlZC1uYwBjaHJvbWEtZGVyaXZlZC1jAGljdGNwAEdyZWVuIE1ldGFkYXRhIEluZm8gU0VJIG1lc3NhZ2UKACAgZ3JlZW5fbWV0YWRhdGFfdHlwZTogJWQKACAgZ3JlZW5fbWV0YWRhdGFfcGVyaW9kX3R5cGU6ICVkCgAgIGdyZWVuX21ldGFkYXRhX251bV9zZWNvbmRzOiAlZAoAICBncmVlbl9tZXRhZGF0YV9udW1fcGljdHVyZXM6ICVkCgAgIFNFSSBHUkVFTiBDb21wbGV4aXR5IE1ldHJpY3M6ICVmICVmICVmICVmCgAgIHhzZF9tZXRyaWNfdHlwZTogJWQKACAgeHNkX21ldHJpY192YWx1ZTogJWYKAFNFSSB0eXBlICVkIHNpemUgJWQgdHJ1bmNhdGVkIGF0ICVkCgB1bmtub3duIFNFSSB0eXBlICVkCgBub24tZXhpc3RpbmcgU1BTICVkIHJlZmVyZW5jZWQgaW4gYnVmZmVyaW5nIHBlcmlvZAoAeDI2NCAtIGNvcmUgJWQAeDI2NCAtIGNvcmUgMDAwMABTUFMgdW5hdmFpbGFibGUgaW4gZGVjb2RlX3BpY3R1cmVfdGltaW5nCgABAQECAgMDAgNjdF90eXBlOiVYIHBpY19zdHJ1Y3Q6JWQKAGNvbnRleHRfY291bnQgJiYgaC0+c2xpY2VfY3R4W2NvbnRleHRfY291bnQgLSAxXS5tYl95IDwgaC0+bWJfaGVpZ2h0AGxpYmF2Y29kZWMvaDI2NF9zbGljZS5jAGNvbnRleHRfY291bnQgPiAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgICAwMDAwQEBAYGBwcICAkJCgoLCwwMDQ0ODg8PEBARERISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQFBgcICQoMDQ8RFBYZHCAkKC0yOD9HUFplcX+QorbL4v////////////////////////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8A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UEFUAFRFTVAAc2xpY2U6JWQgJXMgbWI6JWQgJWMlcyVzIGZyYW1lOiVkIHBvYzolZC8lZCByZWY6JWQvJWQgcXA6JWQgbG9vcDolZDolZDolZCB3ZWlnaHQ6JWQlcyAlcwoAY3VyLT5tYmFmZiA9PSAoaCktPm1iX2FmZl9mcmFtZQBsaWJhdmNvZGVjL2gyNjRfZGlyZWN0LmMAY28gbG9jYXRlZCBQT0NzIHVuYXZhaWxhYmxlCgBwb2NkaWZmIG92ZXJmbG93CgBwb2NkaWZmMCBvdmVyZmxvdwoAYWJzX2RpZmZfcGljX251bSBvdmVyZmxvdwoAbG9uZ190ZXJtX3BpY19pZHggb3ZlcmZsb3cKAHJlZmVyZW5jZSBwaWN0dXJlIG1pc3NpbmcgZHVyaW5nIHJlb3JkZXIKAE1pc3NpbmcgcmVmZXJlbmNlIHBpY3R1cmUsIGRlZmF1bHQgaXMgJWQKAGF2X2J1ZmZlcl9nZXRfcmVmX2NvdW50KHNsLT5yZWZfbGlzdFtsaXN0XVtpbmRleF0ucGFyZW50LT5mLT5idWZbMF0pID4gMABsZW4gPD0gMzIARGlzY2FyZGluZyBtaXNtYXRjaGluZyByZWZlcmVuY2UKAGluZGV4IDwgZGVmX2xlbgBoLT5jdXJfcGljX3B0cgBoLT5jdXJfcGljX3B0ci0+Zi0+YnVmWzBdAEludmFsaWQgZmllbGQgbW9kZSBjb21iaW5hdGlvbiAlZC8lZAoARm91bmQgcmVmZXJlbmNlIGFuZCBub24tcmVmZXJlbmNlIGZpZWxkcyBpbiB0aGUgc2FtZSBmcmFtZSwgd2hpY2gARnJhbWUgbnVtIGdhcCAlZCAlZAoASW52YWxpZCBQT0MgJWQ8JWQKAEluY3JlYXNpbmcgcmVvcmRlciBidWZmZXIgdG8gJWQKAHBpY3MgPD0gMTYAb29vAG5vIHBpY3R1cmUgJXMKAEF0dGVtcHQgdG8gc3RhcnQgYSBmcmFtZSBvdXRzaWRlIFNFVFVQIHN0YXRlCgBubyBmcmFtZSBidWZmZXIgYXZhaWxhYmxlCgBkZXNjLT5mbGFncyAmICgxIDw8IDQpACFwaWMtPmYtPmRhdGFbMF0AIXBpYy0+aHdhY2NlbF9waWN0dXJlX3ByaXZhdGUAdGhyZWFkX2dldF9idWZmZXIoKSBmYWlsZWQKAGdldF9idWZmZXIoKSBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIGZmX3RocmVhZF9maW5pc2hfc2V0dXAoKQoAZ2V0X2J1ZmZlcigpIGZhaWxlZAoAdmlkZW9fZ2V0X2J1ZmZlcjogaW1hZ2UgcGFyYW1ldGVycyBpbnZhbGlkCgBwaWMtPmRhdGFbKl0hPU5VTEwgaW4gZ2V0X2J1ZmZlcl9pbnRlcm5hbAoAZnJhbWUtPmRhdGFbaV0AQnVmZmVyIHJldHVybmVkIGJ5IGdldF9idWZmZXIyKCkgZGlkIG5vdCB6ZXJvIHVudXNlZCBwbGFuZSBwb2ludGVycwoASW5jb25zaXN0ZW50IGNoYW5uZWwgY29uZmlndXJhdGlvbi4KAFRvbyBtYW55IGNoYW5uZWxzOiAlZC4KAGNoYW5naW5nIHdpZHRoICVkIC0+ICVkIC8gaGVpZ2h0ICVkIC0+ICVkIG9uIHNsaWNlICVkCgBSZWluaXQgY29udGV4dCB0byAlZHglZCwgcGl4X2ZtdDogJXMKAGgyNjRfc2xpY2VfaGVhZGVyX2luaXQoKSBmYWlsZWQKAENvdWxkIG5vdCBhbGxvY2F0ZSBtZW1vcnkKAFVuc3VwcG9ydGVkIGJpdCBkZXB0aCAlZAoAY29udGV4dF9pbml0KCkgZmFpbGVkLgoAQ2Fubm90IGFsbG9jYXRlIG1lbW9yeS4KAFJlZmVyZW5jZSBub3QgYXZhaWxhYmxlIGZvciBlcnJvciBjb25jZWFsaW5nCgBSZWZlcmVuY2UgaW52YWxpZAoAbGliYXZjb2RlYy9oMjY0cHJlZC5jAGJpdF9kZXB0aDw9OABsaWJhdmNvZGVjL2gyNjRkc3AuYwAAEAAggKAMDRQVDg8WFxwdJCUeHyYnNDU8PTY3Pj9ERUxNRkdOT1xdZGVeX2ZnbG10dW5vdncAKFAABAEIDAUJDQIGCg4DBwsPAAAJERIMKBsHIzkdHjomNS8BAhgLEzAUDioyFiU7Hzw3CAMgBBopDRUxKw8sNCc9PhAKGQUhIgYcOCQXMy0uNj8AAAgQAQkYIBECGSgwOCEKAxIpMTkaCwQTIioyOhsMBRQjKzM7HA0GFSQsNDwdDhYlLTU9HgcPJi42PhcfJy83PwAACQI4EhoiGyMcJB0tBzYnCBgZISkLKgwrDSwONQ8+LxAgKAoxBDIFMwY0Fj0mFzcBETADORM6FDsVPCUeLh8/AAABAjUDBzYbBCYpCCI3MBw+BScuLCoWCRgjOzgxEh0LPzQGGiUoIS89LSsVFzoRCjMZJCA8FDkQMh8TDx4ODQxpZ25vcmluZyBpbnZhbGlkIFNBUjogJWQvJWQKAHNwcy0+Y3JvcF9yaWdodCArIHNwcy0+Y3JvcF9sZWZ0IDwgKHVuc2lnbmVkKWgtPndpZHRoAHNwcy0+Y3JvcF90b3AgKyBzcHMtPmNyb3BfYm90dG9tIDwgKHVuc2lnbmVkKWgtPmhlaWdodABnZXRfZm9ybWF0KCkgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBmZl90aHJlYWRfZmluaXNoX3NldHVwKCkKAG4gPj0gMQBJbnZhbGlkIGZvcm1hdCByZXR1cm5lZCBieSBnZXRfZm9ybWF0KCkgY2FsbGJhY2suCgBGb3JtYXQgJXMgY2hvc2VuIGJ5IGdldF9mb3JtYXQoKS4KAEludmFsaWQgcmV0dXJuIGZyb20gZ2V0X2Zvcm1hdCgpOiAlcyBub3QgaW4gcG9zc2libGUgbGlzdC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogZG9lcyBub3QgbWF0Y2ggdGhlIGZvcm1hdCBvZiB0aGUgcHJvdmlkZWQgZnJhbWVzIGNvbnRleHQuCgBJbnZhbGlkIHNldHVwIGZvciBmb3JtYXQgJXM6IGRvZXMgbm90IG1hdGNoIHRoZSB0eXBlIG9mIHRoZSBwcm92aWRlZCBkZXZpY2UgY29udGV4dC4KAEludmFsaWQgc2V0dXAgZm9yIGZvcm1hdCAlczogbWlzc2luZyBjb25maWd1cmF0aW9uLgoARm9ybWF0ICVzIHJlcXVpcmVzIGh3YWNjZWwgaW5pdGlhbGlzYXRpb24uCgBGb3JtYXQgJXMgbm90IHVzYWJsZSwgcmV0cnlpbmcgZ2V0X2Zvcm1hdCgpIHdpdGhvdXQgaXQuCgBJZ25vcmluZyBleHBlcmltZW50YWwgaHdhY2NlbDogJXMKAEZhaWxlZCBzZXR1cCBmb3IgZm9ybWF0ICVzOiBod2FjY2VsIGluaXRpYWxpc2F0aW9uIHJldHVybmVkIGVycm9yLgoAIWgtPnNldHVwX2ZpbmlzaGVkAHNsaWNlIHR5cGUgJWQgdG9vIGxhcmdlIGF0ICVkCgBBIG5vbi1pbnRyYSBzbGljZSBpbiBhbiBJRFIgTkFMIHVuaXQuCgBGcmFtZSBudW0gY2hhbmdlIGZyb20gJWQgdG8gJWQKAFRoaXMgc3RyZWFtIHdhcyBnZW5lcmF0ZWQgYnkgYSBicm9rZW4gZW5jb2RlciwgaW52YWxpZCA4eDggaW5mZXJlbmNlCgBjYWJhY19pbml0X2lkYyAldSBvdmVyZmxvdwoAUVAgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nX2ZpbHRlcl9pZGMgJXUgb3V0IG9mIHJhbmdlCgBkZWJsb2NraW5nIGZpbHRlciBwYXJhbWV0ZXJzICVkICVkIG91dCBvZiByYW5nZQoAaWxsZWdhbCBsb25nIHJlZiBpbiBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoAbHVtYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAGNocm9tYV9sb2cyX3dlaWdodF9kZW5vbSAlZCBpcyBvdXQgb2YgcmFuZ2UKAE91dCBvZiByYW5nZSB3ZWlnaHQKAHJlZmVyZW5jZSBjb3VudCBvdmVyZmxvdwoAaWxsZWdhbCBtb2RpZmljYXRpb25fb2ZfcGljX251bXNfaWRjICV1CgByZWZlcmVuY2Ugb3ZlcmZsb3cgJXUgPiAldSBvciAldSA+ICV1CgBJbnZhbGlkIHplcm8tc2l6ZWQgVkNMIE5BTCB1bml0CgBFeGNlZWRlZCBuZXh0IE5BTEZGIHBvc2l0aW9uLCByZS1zeW5jaW5nLgoATm8gc3RhcnQgY29kZSBpcyBmb3VuZC4KAE5BTEZGOiBDb25zdW1lZCBvbmx5ICVkIGJ5dGVzIGluc3RlYWQgb2YgJWQKAEludmFsaWQgTkFMIHVuaXQgJWQsIHNraXBwaW5nLgoAbmFsX3VuaXRfdHlwZTogJWQsIG5hbF9yZWZfaWRjOiAlZAoAbmFsX3VuaXRfdHlwZTogJWQoJXMpLCBudWhfbGF5ZXJfaWQ6ICVkLCB0ZW1wb3JhbF9pZDogJWQKAD8AU0VJX1NVRkZJWABTRUlfUFJFRklYAEZEX05VVABF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AHJlZmVyZW5jZSBjb3VudCAlZCBvdmVyZmxvdwoAaWxsZWdhbCBtZW1vcnkgbWFuYWdlbWVudCBjb250cm9sIG9wZXJhdGlvbiAlZAoASW52YWxpZCBOQUwgdW5pdCBzaXplICglZCA+ICVkKS4KAEFWQy1wYXJzZXI6IG5hbCBsZW5ndGggc2l6ZSBpbnZhbGlkCgBBVkMtcGFyc2VyOiBuYWwgc2l6ZSAlZCByZW1haW5pbmcgJWQKAAAAAQABAgABAgMBAgMCAwMAAQACAQADAgEAAwIBAwIDAAABAAECAAECAwABAgMEAAECAwQFAAECAwQFBgABAgMEBQYHAQIDBAUGBwIDBAUGBwMEBQYHBAUGBwUGBwYHBwABAAIBAAMCAQAEAwIBAAUEAwIBAAYFBAMCAQAHBgUEAwIBAAcGBQQDAgEHBgUEAwIHBgUEAwcGBQQHBgUHBgdtaXNzaW5nIHBpY3R1cmUgaW4gYWNjZXNzIHVuaXQKAEludmFsaWQgc2xpY2Ugc2VnbWVudCBhZGRyZXNzOiAldS4KAFVua25vd24gc2xpY2UgdHlwZTogJWQuCgBJbnZhbGlkIFVFIGdvbG9tYiBjb2RlCgBEZWNvZGluZyBTRUkKAFNraXBwZWQgU1VGRklYIFNFSSAlZAoAU2tpcHBlZCBQUkVGSVggU0VJICVkCgBudW1fc3BzX2lkc19taW51czEgJWQgaW52YWxpZAoAYWN0aXZlX3BhcmFtZXRlcl9zZXRfaWQgJWQgaW52YWxpZAoAQk9UVE9NIEZpZWxkCgBUT1AgRmllbGQKAERlY29kaW5nIFBQUwoAVHJ1bmNhdGluZyBsaWtlbHkgb3ZlcnNpemVkIFBQUyAoJXRkID4gJXp1KQoAUFBTIGlkIG91dCBvZiByYW5nZTogJWQKAFNQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBTUFMgJXUgZG9lcyBub3QgZXhpc3QuCgBkaWZmX2N1X3FwX2RlbHRhX2RlcHRoICVkIGlzIGludmFsaWQKAHBwc19jYl9xcF9vZmZzZXQgb3V0IG9mIHJhbmdlOiAlZAoAcHBzX2NyX3FwX29mZnNldCBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9jb2x1bW5zX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBudW1fdGlsZV9yb3dzX21pbnVzMSBvdXQgb2YgcmFuZ2U6ICVkCgBJbnZhbGlkIHRpbGUgd2lkdGhzLgoASW52YWxpZCB0aWxlIGhlaWdodHMuCgBwcHNfYmV0YV9vZmZzZXRfZGl2MiBvdXQgb2YgcmFuZ2U6ICVkCgBwcHNfdGNfb2Zmc2V0X2RpdjIgb3V0IG9mIHJhbmdlOiAlZAoAbG9nMl9wYXJhbGxlbF9tZXJnZV9sZXZlbF9taW51czIgb3V0IG9mIHJhbmdlOiAlZAoAT3ZlcnJlYWQgUFBTIGJ5ICVkIGJpdHMKAGNocm9tYV9xcF9vZmZzZXRfbGlzdF9sZW5fbWludXMxIHNoYWxsIGJlIGluIHRoZSByYW5nZSBbMCwgNV0uCgBjYl9xcF9vZmZzZXRfbGlzdCBub3QgdGVzdGVkIHlldC4KAEludmFsaWQgZGVsdGEgaW4gc2NhbGluZyBsaXN0IGRhdGE6ICVkLgoAEBAQEBESFRgQEBAQERMWGRAQERIUFhkdEBASFRgbHyQRERQYHiMpLxITFhsjLDZBFRYZHyk2RlgYGR0kL0FYcxAQEBAREhQYEBAQERIUGBkQEBESFBgZHBAREhQYGRwhERIUGBkcISkSFBgZHCEpNhQYGRwhKTZHGBkcISk2R1tEZWNvZGluZyBTUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBTUFMgKCV0ZCA+ICV6dSkKAFBhcnNlZCBTUFM6IGlkICVkOyBjb2RlZCB3eGg6ICVkeCVkOyBjcm9wcGVkIHd4aDogJWR4JWQ7IHBpeF9mbXQ6ICVzLgoAIShzLT5zcHNfbGlzdFtpZF0gJiYgcy0+c3BzID09IChIRVZDU1BTKilzLT5zcHNfbGlzdFtpZF0tPmRhdGEpAGxpYmF2Y29kZWMvaGV2Y19wcy5jAFZQUyBpZCBvdXQgb2YgcmFuZ2U6ICVkCgBWUFMgJWQgZG9lcyBub3QgZXhpc3QKAHNwc19tYXhfc3ViX2xheWVycyBvdXQgb2YgcmFuZ2U6ICVkCgBjaHJvbWFfZm9ybWF0X2lkYyAlZCBpcyBpbnZhbGlkCgBkaXNjYXJkaW5nIHNwcyBjb25mb3JtYW5jZSB3aW5kb3csIG9yaWdpbmFsIHZhbHVlcyBhcmUgbDoldSByOiV1IHQ6JXUgYjoldQoATHVtYSBiaXQgZGVwdGggKCVkKSBpcyBkaWZmZXJlbnQgZnJvbSBjaHJvbWEgYml0IGRlcHRoICglZCksIHRoaXMgaXMgdW5zdXBwb3J0ZWQuCgBsb2cyX21heF9waWNfb3JkZXJfY250X2xzYl9taW51czQgb3V0IHJhbmdlOiAlZAoAc3BzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAc3BzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAEludmFsaWQgdmFsdWUgJWQgZm9yIGxvZzJfbWluX2NiX3NpemUASW52YWxpZCB2YWx1ZSAlZCBmb3IgbG9nMl9kaWZmX21heF9taW5fY29kaW5nX2Jsb2NrX3NpemUASW52YWxpZCB2YWx1ZSBmb3IgbG9nMl9taW5fdGJfc2l6ZQBJbnZhbGlkIHZhbHVlICVkIGZvciBsb2cyX2RpZmZfbWF4X21pbl90cmFuc2Zvcm1fYmxvY2tfc2l6ZQBQQ00gYml0IGRlcHRoICglZCwgJWQpIGlzIGdyZWF0ZXIgdGhhbiBub3JtYWwgYml0IGRlcHRoICglZCkKAFRvbyBtYW55IHNob3J0IHRlcm0gUlBTOiAlZC4KAFRvbyBtYW55IGxvbmcgdGVybSByZWYgcGljczogJWQuCgBleHRlbmRlZF9wcmVjaXNpb25fcHJvY2Vzc2luZ19mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGhpZ2hfcHJlY2lzaW9uX29mZnNldHNfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAGNhYmFjX2J5cGFzc19hbGlnbm1lbnRfZW5hYmxlZF9mbGFnIG5vdCB5ZXQgaW1wbGVtZW50ZWQKAEludmFsaWQgY3JvcHBpbmcgb2Zmc2V0czogJXUvJXUvJXUvJXUKAERpc3BsYXlpbmcgdGhlIHdob2xlIHZpZGVvIHN1cmZhY2UuCgBDVEIgc2l6ZSBvdXQgb2YgcmFuZ2U6IDJeJWQKAGxvZzJfY3RiX3NpemUgJWQgZGlmZmVycyBmcm9tIHRoZSBib3VuZHMgb2YgYW55IGtub3duIHByb2ZpbGUKAGxvZzJfY3RiX3NpemUgJWQASW52YWxpZCBjb2RlZCBmcmFtZSBkaW1lbnNpb25zLgoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50ZXIgb3V0IG9mIHJhbmdlOiAlZAoAbWF4X3RyYW5zZm9ybV9oaWVyYXJjaHlfZGVwdGhfaW50cmEgb3V0IG9mIHJhbmdlOiAlZAoAbWF4IHRyYW5zZm9ybSBibG9jayBzaXplIG91dCBvZiByYW5nZTogJWQKAE92ZXJyZWFkIFNQUyBieSAlZCBiaXRzCgBEZWNvZGluZyBWVUkKAFVua25vd24gU0FSIGluZGV4OiAldS4KAEludmFsaWQgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdwoAZGlzY2FyZGluZyB2dWkgZGVmYXVsdCBkaXNwbGF5IHdpbmRvdywgb3JpZ2luYWwgdmFsdWVzIGFyZSBsOiV1IHI6JXUgdDoldSBiOiV1CgBTdHJhbmdlIFZVSSB0aW1pbmcgaW5mb3JtYXRpb24sIHJldHJ5aW5nLi4uCgBSZXRyeSBnb3QgJXUvJXUgZnBzCgBTdHJhbmdlIFZVSSBiaXRzdHJlYW0gcmVzdHJpY3Rpb24gaW5mb3JtYXRpb24sIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBPdmVycmVhZCBpbiBWVUksIHJldHJ5aW5nIGZyb20gdGltaW5nIGluZm9ybWF0aW9uLi4uCgBuYl9jcGIgJWQgaW52YWxpZAoASW52YWxpZCB2YWx1ZSBvZiBkZWx0YV9pZHggaW4gc2xpY2UgaGVhZGVyIFJQUzogJWQgPiAlZC4KAEludmFsaWQgdmFsdWUgb2YgYWJzX2RlbHRhX3JwczogJWQKAEludmFsaWQgbnVtX2RlbHRhX3BvY3M6ICVkCgBUb28gbWFueSByZWZzIGluIGEgc2hvcnQgdGVybSBSUFMuCgBJbnZhbGlkIHZhbHVlIG9mIGRlbHRhX3BvYzogJWQKAFRoZSBmb2xsb3dpbmcgYml0LWRlcHRocyBhcmUgY3VycmVudGx5IHNwZWNpZmllZDogOCwgOSwgMTAgYW5kIDEyIGJpdHMsIGNocm9tYV9mb3JtYXRfaWRjIGlzICVkLCBkZXB0aCBpcyAlZAoAUFRMIGluZm9ybWF0aW9uIHRvbyBzaG9ydAoAUFRMIGluZm9ybWF0aW9uIGZvciBzdWJsYXllciAlaSB0b28gc2hvcnQKAE5vdCBlbm91Z2ggZGF0YSBmb3Igc3VibGF5ZXIgJWkgbGV2ZWxfaWRjCgBNYWluIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIDEwIHByb2ZpbGUgYml0c3RyZWFtCgBNYWluIFN0aWxsIFBpY3R1cmUgcHJvZmlsZSBiaXRzdHJlYW0KAFJhbmdlIEV4dGVuc2lvbiBwcm9maWxlIGJpdHN0cmVhbQoAVW5rbm93biBIRVZDIHByb2ZpbGU6ICVkCgBEZWNvZGluZyBWUFMKAFRydW5jYXRpbmcgbGlrZWx5IG92ZXJzaXplZCBWUFMgKCV0ZCA+ICV6dSkKAHZwc19yZXNlcnZlZF90aHJlZV8yYml0cyBpcyBub3QgdGhyZWUKAHZwc19yZXNlcnZlZF9mZmZmXzE2Yml0cyBpcyBub3QgMHhmZmZmCgB2cHNfbWF4X3N1Yl9sYXllcnMgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9kZWNfcGljX2J1ZmZlcmluZ19taW51czEgb3V0IG9mIHJhbmdlOiAlZAoAdnBzX21heF9udW1fcmVvcmRlcl9waWNzIG91dCBvZiByYW5nZTogJWQKAHRvbyBtYW55IGxheWVyX2lkX2luY2x1ZGVkX2ZsYWdzCgB2cHNfbnVtX2hyZF9wYXJhbWV0ZXJzICVkIGlzIGludmFsaWQKAE92ZXJyZWFkIFZQUyBieSAlZCBiaXRzCgBidWZfc2l6ZSA+PSAwAGxpYmF2Y29kZWMvYnl0ZXN0cmVhbS5oAEludmFsaWQgTkFMIHVuaXQgc2l6ZSBpbiBleHRyYWRhdGEuCgBEZWNvZGluZyBuYWwgdW5pdCAlZCAlZCBmcm9tIGh2Y0MgZmFpbGVkCgBJZ25vcmluZyBOQUwgdHlwZSAlZCBpbiBleHRyYWRhdGEKAC9kZXYvdXJhbmRvbQAvZGV2L3JhbmRvbQBzaXplb2YodG1wKSA+PSBhdl9zaGFfc2l6ZQBsaWJhdnV0aWwvcmFuZG9tX3NlZWQuYwCAAEZhaWxlZCB0byBzZXQgY2xvc2Ugb24gZXhlYwoAIAoJDQBBTEwARkwAZnJvbnQgbGVmdABGUgBmcm9udCByaWdodABGQwBmcm9udCBjZW50ZXIATEZFAGxvdyBmcmVxdWVuY3kAQkwAYmFjayBsZWZ0AEJSAGJhY2sgcmlnaHQARkxDAGZyb250IGxlZnQtb2YtY2VudGVyAEZSQwBmcm9udCByaWdodC1vZi1jZW50ZXIAQkMAYmFjayBjZW50ZXIAU0wAc2lkZSBsZWZ0AFNSAHNpZGUgcmlnaHQAVEMAdG9wIGNlbnRlcgBURkwAdG9wIGZyb250IGxlZnQAVEZDAHRvcCBmcm9udCBjZW50ZXIAVEZSAHRvcCBmcm9udCByaWdodABUQkwAdG9wIGJhY2sgbGVmdABUQkMAdG9wIGJhY2sgY2VudGVyAFRCUgB0b3AgYmFjayByaWdodABETABkb3dubWl4IGxlZnQARFIAZG93bm1peCByaWdodABXTAB3aWRlIGxlZnQAV1IAd2lkZSByaWdodABTREwAc3Vycm91bmQgZGlyZWN0IGxlZnQAU0RSAHN1cnJvdW5kIGRpcmVjdCByaWdodABMRkUyAGxvdyBmcmVxdWVuY3kgMgBtb25vAHN0ZXJlbwAyLjEAMy4wADMuMChiYWNrKQA0LjAAcXVhZABxdWFkKHNpZGUpADMuMQA1LjAANS4wKHNpZGUpADQuMQA1LjEANS4xKHNpZGUpADYuMAA2LjAoZnJvbnQpAGhleGFnb25hbAA2LjEANi4xKGJhY2spADYuMShmcm9udCkANy4wADcuMChmcm9udCkANy4xADcuMSh3aWRlKQA3LjEod2lkZS1zaWRlKQBvY3RhZ29uYWwAaGV4YWRlY2Fnb25hbABkb3dubWl4ACVzACVkIGNoYW5uZWxzACAoACsAKQAlZCUqMVs6L10lZCVjAGNvbnN0X3ZhbHVlcyBhcnJheSB0b28gc21hbGwgZm9yICVzCgBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIKACVmCgBJbnZhbGlkIGNoYXJzICclcycgYXQgdGhlIGVuZCBvZiBleHByZXNzaW9uICclcycKAFVuZGVmaW5lZCBjb25zdGFudCBvciBtaXNzaW5nICcoJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBpbiAnJXMnCgBNaXNzaW5nICcpJyBvciB0b28gbWFueSBhcmdzIGluICclcycKAHNpbmgAY29zaAB0YW5oAHNpbgBjb3MAdGFuAGF0YW4AYXNpbgBhY29zAGV4cABhYnMAdGltZQBzcXVpc2gAZ2F1c3MAbW9kAG1heABtaW4AZXEAZ3RlAGd0AGx0ZQBsdABsZABpc25hbgBpc2luZgBzdAB3aGlsZQB0YXlsb3IAcm9vdABmbG9vcgBjZWlsAHJvdW5kAHNxcnQAbm90AHBvdwBwcmludABoeXBvdABnY2QAaWYAaWZub3QAYml0YW5kAGJpdG9yAGJldHdlZW4AY2xpcABhdGFuMgBsZXJwAFVua25vd24gZnVuY3Rpb24gaW4gJyVzJwoARQBQSQBQSEkAUVAyTEFNQkRBAEV2YWwAVmFsdWUgJWYgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiByYW5nZSBbJWcgLSAlZ10KAFZhbHVlICVmIGZvciBwYXJhbWV0ZXIgJyVzJyBpcyBub3QgYSB2YWxpZCBzZXQgb2YgMzJiaXQgaW50ZWdlciBmbGFncwoAZGV0ZWN0ZWQgJWQgbG9naWNhbCBjb3JlcwoAAAEcAh0OGAMeFhQPGREECB8bDRcVExAHGgwSBgsFCglVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgZHVyYXRpb24KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjaGFubmVsIGxheW91dAoASW52YWxpZCBvcHRpb24gdHlwZS4KAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBjb2xvcgoAMHgAcmFuZG9tAGJpa2VzaGVkADAxMjM0NTY3ODlBQkNERUZhYmNkZWYASW52YWxpZCAweFJSR0dCQltBQV0gY29sb3Igc3RyaW5nOiAnJXMnCgBDYW5ub3QgZmluZCBjb2xvciAnJXMnCgBJbnZhbGlkIGFscGhhIHZhbHVlIHNwZWNpZmllciAnJXMnIGluICclcycKAEFsaWNlQmx1ZQBBbnRpcXVlV2hpdGUAQXF1YQBBcXVhbWFyaW5lAEF6dXJlAEJlaWdlAEJpc3F1ZQBCbGFjawBCbGFuY2hlZEFsbW9uZABCbHVlAEJsdWVWaW9sZXQAQnJvd24AQnVybHlXb29kAENhZGV0Qmx1ZQBDaGFydHJldXNlAENob2NvbGF0ZQBDb3JhbABDb3JuZmxvd2VyQmx1ZQBDb3Juc2lsawBDcmltc29uAEN5YW4ARGFya0JsdWUARGFya0N5YW4ARGFya0dvbGRlblJvZABEYXJrR3JheQBEYXJrR3JlZW4ARGFya0toYWtpAERhcmtNYWdlbnRhAERhcmtPbGl2ZUdyZWVuAERhcmtvcmFuZ2UARGFya09yY2hpZABEYXJrUmVkAERhcmtTYWxtb24ARGFya1NlYUdyZWVuAERhcmtTbGF0ZUJsdWUARGFya1NsYXRlR3JheQBEYXJrVHVycXVvaXNlAERhcmtWaW9sZXQARGVlcFBpbmsARGVlcFNreUJsdWUARGltR3JheQBEb2RnZXJCbHVlAEZpcmVCcmljawBGbG9yYWxXaGl0ZQBGb3Jlc3RHcmVlbgBGdWNoc2lhAEdhaW5zYm9ybwBHaG9zdFdoaXRlAEdvbGQAR29sZGVuUm9kAEdyYXkAR3JlZW4AR3JlZW5ZZWxsb3cASG9uZXlEZXcASG90UGluawBJbmRpYW5SZWQASW5kaWdvAEl2b3J5AEtoYWtpAExhdmVuZGVyAExhdmVuZGVyQmx1c2gATGF3bkdyZWVuAExlbW9uQ2hpZmZvbgBMaWdodEJsdWUATGlnaHRDb3JhbABMaWdodEN5YW4ATGlnaHRHb2xkZW5Sb2RZZWxsb3cATGlnaHRHcmVlbgBMaWdodEdyZXkATGlnaHRQaW5rAExpZ2h0U2FsbW9uAExpZ2h0U2VhR3JlZW4ATGlnaHRTa3lCbHVlAExpZ2h0U2xhdGVHcmF5AExpZ2h0U3RlZWxCbHVlAExpZ2h0WWVsbG93AExpbWUATGltZUdyZWVuAExpbmVuAE1hZ2VudGEATWFyb29uAE1lZGl1bUFxdWFNYXJpbmUATWVkaXVtQmx1ZQBNZWRpdW1PcmNoaWQATWVkaXVtUHVycGxlAE1lZGl1bVNlYUdyZWVuAE1lZGl1bVNsYXRlQmx1ZQBNZWRpdW1TcHJpbmdHcmVlbgBNZWRpdW1UdXJxdW9pc2UATWVkaXVtVmlvbGV0UmVkAE1pZG5pZ2h0Qmx1ZQBNaW50Q3JlYW0ATWlzdHlSb3NlAE1vY2Nhc2luAE5hdmFqb1doaXRlAE5hdnkAT2xkTGFjZQBPbGl2ZQBPbGl2ZURyYWIAT3JhbmdlAE9yYW5nZVJlZABPcmNoaWQAUGFsZUdvbGRlblJvZABQYWxlR3JlZW4AUGFsZVR1cnF1b2lzZQBQYWxlVmlvbGV0UmVkAFBhcGF5YVdoaXAAUGVhY2hQdWZmAFBlcnUAUGluawBQbHVtAFBvd2RlckJsdWUAUHVycGxlAFJlZABSb3N5QnJvd24AUm95YWxCbHVlAFNhZGRsZUJyb3duAFNhbG1vbgBTYW5keUJyb3duAFNlYUdyZWVuAFNlYVNoZWxsAFNpZW5uYQBTaWx2ZXIAU2t5Qmx1ZQBTbGF0ZUJsdWUAU2xhdGVHcmF5AFNub3cAU3ByaW5nR3JlZW4AU3RlZWxCbHVlAFRhbgBUZWFsAFRoaXN0bGUAVG9tYXRvAFR1cnF1b2lzZQBWaW9sZXQAV2hlYXQAV2hpdGUAV2hpdGVTbW9rZQBZZWxsb3cAWWVsbG93R3JlZW4Abm93ACVKOiVNOiVTACVNOiVTACVIOiVNACVIJU0AJUgAJUg6JU06JVMAJUglTSVTAGphbnVhcnkAZmVicnVhcnkAbWFyY2gAYXByaWwAbWF5AGp1bmUAanVseQBhdWd1c3QAc2VwdGVtYmVyAG9jdG9iZXIAbm92ZW1iZXIAZGVjZW1iZXIAJVkgLSAlbSAtICVkACVZJW0lZABzYW1wbGUgZm9ybWF0AFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyAlcwoAVmFsdWUgJWQgZm9yIHBhcmFtZXRlciAnJXMnIG91dCBvZiAlcyBmb3JtYXQgcmFuZ2UgWyVkIC0gJWRdCgBwaXhlbCBmb3JtYXQAcmdiMzIAYmdyMzIAJXMlcwBsZQB2YWFwaQBVbmFibGUgdG8gcGFyc2Ugb3B0aW9uIHZhbHVlICIlcyIgYXMgdmlkZW8gcmF0ZQoAJWQ6JWQlYwBudHNjAHBhbABxbnRzYwBxcGFsAHNudHNjAHNwYWwAbnRzYy1maWxtAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBpbWFnZSBzaXplCgBzcWNpZgBxY2lmAGNpZgA0Y2lmADE2Y2lmAHFxdmdhAHF2Z2EAdmdhAHN2Z2EAeGdhAHV4Z2EAcXhnYQBzeGdhAHFzeGdhAGhzeGdhAHd2Z2EAd3hnYQB3c3hnYQB3dXhnYQB3b3hnYQB3cXN4Z2EAd3F1eGdhAHdoc3hnYQB3aHV4Z2EAY2dhAGVnYQBoZDQ4MABoZDcyMABoZDEwODAAMmsAMmtkY2kAMmtmbGF0ADJrc2NvcGUANGsANGtkY2kANGtmbGF0ADRrc2NvcGUAbmhkAGhxdmdhAHdxdmdhAGZ3cXZnYQBodmdhAHFoZAB1aGQyMTYwAHVoZDQzMjAAdHJ1ZSx5LHllcyxlbmFibGUsZW5hYmxlZCxvbgBmYWxzZSxuLG5vLGRpc2FibGUsZGlzYWJsZWQsb2ZmAFVuYWJsZSB0byBwYXJzZSBvcHRpb24gdmFsdWUgIiVzIiBhcyBib29sZWFuCgBBVk9wdGlvbiB0eXBlICVkIG9mIG9wdGlvbiAlcyBub3QgaW1wbGVtZW50ZWQgeWV0CgBFcnJvciBzZXR0aW5nIG9wdGlvbiAlcyB0byB2YWx1ZSAlcy4KAG5iX3RocmVhZHMgPj0gMABsaWJhdnV0aWwvc2xpY2V0aHJlYWQuYwBuYl9qb2JzID4gMABGaW5hbCB0aHJlYWQgdXBkYXRlIGZhaWxlZAoAcC0+YXZjdHgtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPIHx8IHAtPmF2Y3R4LT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTwBsaWJhdmNvZGVjL3B0aHJlYWRfZnJhbWUuYwBmY3R4LT5hc3luY19sb2NrAEFzc2VydGlvbiAlcyBmYWlsZWQgYXQgJXM6JWQKAHJldCA+PSAwAGxpYmF2Y29kZWMvb3B0aW9ucy5jAEFWQ29kZWNDb250ZXh0AGIAc2V0IGJpdHJhdGUgKGluIGJpdHMvcykAYWIAYnQAU2V0IHZpZGVvIGJpdHJhdGUgdG9sZXJhbmNlIChpbiBiaXRzL3MpLiBJbiAxLXBhc3MgbW9kZSwgYml0cmF0ZSB0b2xlcmFuY2Ugc3BlY2lmaWVzIGhvdyBmYXIgcmF0ZWNvbnRyb2wgaXMgd2lsbGluZyB0byBkZXZpYXRlIGZyb20gdGhlIHRhcmdldCBhdmVyYWdlIGJpdHJhdGUgdmFsdWUuIFRoaXMgaXMgbm90IHJlbGF0ZWQgdG8gbWluaW11bS9tYXhpbXVtIGJpdHJhdGUuIExvd2VyaW5nIHRvbGVyYW5jZSB0b28gbXVjaCBoYXMgYW4gYWR2ZXJzZSBlZmZlY3Qgb24gcXVhbGl0eS4AZmxhZ3MAdW5hbGlnbmVkAGFsbG93IGRlY29kZXJzIHRvIHByb2R1Y2UgdW5hbGlnbmVkIG91dHB1dABtdjQAdXNlIGZvdXIgbW90aW9uIHZlY3RvcnMgcGVyIG1hY3JvYmxvY2sgKE1QRUctNCkAcXBlbAB1c2UgMS80LXBlbCBtb3Rpb24gY29tcGVuc2F0aW9uAGxvb3AAdXNlIGxvb3AgZmlsdGVyAHFzY2FsZQB1c2UgZml4ZWQgcXNjYWxlAHBhc3MxAHVzZSBpbnRlcm5hbCAyLXBhc3MgcmF0ZWNvbnRyb2wgaW4gZmlyc3QgIHBhc3MgbW9kZQBwYXNzMgB1c2UgaW50ZXJuYWwgMi1wYXNzIHJhdGVjb250cm9sIGluIHNlY29uZCBwYXNzIG1vZGUAZ3JheQBvbmx5IGRlY29kZS9lbmNvZGUgZ3JheXNjYWxlAHBzbnIAZXJyb3JbP10gdmFyaWFibGVzIHdpbGwgYmUgc2V0IGR1cmluZyBlbmNvZGluZwB0cnVuY2F0ZWQASW5wdXQgYml0c3RyZWFtIG1pZ2h0IGJlIHJhbmRvbWx5IHRydW5jYXRlZABpbGRjdAB1c2UgaW50ZXJsYWNlZCBEQ1QAbG93X2RlbGF5AGZvcmNlIGxvdyBkZWxheQBnbG9iYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGluIGV4dHJhZGF0YSBpbnN0ZWFkIG9mIGV2ZXJ5IGtleWZyYW1lAGJpdGV4YWN0AHVzZSBvbmx5IGJpdGV4YWN0IGZ1bmN0aW9ucyAoZXhjZXB0IChJKURDVCkAYWljAEguMjYzIGFkdmFuY2VkIGludHJhIGNvZGluZyAvIE1QRUctNCBBQyBwcmVkaWN0aW9uAGlsbWUAaW50ZXJsYWNlZCBtb3Rpb24gZXN0aW1hdGlvbgBjZ29wAGNsb3NlZCBHT1AAb3V0cHV0X2NvcnJ1cHQAT3V0cHV0IGV2ZW4gcG90ZW50aWFsbHkgY29ycnVwdGVkIGZyYW1lcwBmYXN0AGFsbG93IG5vbi1zcGVjLWNvbXBsaWFudCBzcGVlZHVwIHRyaWNrcwBmbGFnczIAbm9vdXQAc2tpcCBiaXRzdHJlYW0gZW5jb2RpbmcAaWdub3JlY3JvcABpZ25vcmUgY3JvcHBpbmcgaW5mb3JtYXRpb24gZnJvbSBzcHMAbG9jYWxfaGVhZGVyAHBsYWNlIGdsb2JhbCBoZWFkZXJzIGF0IGV2ZXJ5IGtleWZyYW1lIGluc3RlYWQgb2YgaW4gZXh0cmFkYXRhAGNodW5rcwBGcmFtZSBkYXRhIG1pZ2h0IGJlIHNwbGl0IGludG8gbXVsdGlwbGUgY2h1bmtzAHNob3dhbGwAU2hvdyBhbGwgZnJhbWVzIGJlZm9yZSB0aGUgZmlyc3Qga2V5ZnJhbWUAZXhwb3J0X212cwBleHBvcnQgbW90aW9uIHZlY3RvcnMgdGhyb3VnaCBmcmFtZSBzaWRlIGRhdGEAc2tpcF9tYW51YWwAZG8gbm90IHNraXAgc2FtcGxlcyBhbmQgZXhwb3J0IHNraXAgaW5mb3JtYXRpb24gYXMgZnJhbWUgc2lkZSBkYXRhAGFzc19yb19mbHVzaF9ub29wAGRvIG5vdCByZXNldCBBU1MgUmVhZE9yZGVyIGZpZWxkIG9uIGZsdXNoAHRpbWVfYmFzZQBnAHNldCB0aGUgZ3JvdXAgb2YgcGljdHVyZSAoR09QKSBzaXplAGFyAHNldCBhdWRpbyBzYW1wbGluZyByYXRlIChpbiBIeikAYWMAc2V0IG51bWJlciBvZiBhdWRpbyBjaGFubmVscwBjdXRvZmYAc2V0IGN1dG9mZiBiYW5kd2lkdGgAZnJhbWVfc2l6ZQBmcmFtZV9udW1iZXIAZGVsYXkAcWNvbXAAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGNvbXByZXNzaW9uIChWQlIpLiBDb25zdGFudCBvZiByYXRlY29udHJvbCBlcXVhdGlvbi4gUmVjb21tZW5kZWQgcmFuZ2UgZm9yIGRlZmF1bHQgcmNfZXE6IDAuMC0xLjAAcWJsdXIAdmlkZW8gcXVhbnRpemVyIHNjYWxlIGJsdXIgKFZCUikAcW1pbgBtaW5pbXVtIHZpZGVvIHF1YW50aXplciBzY2FsZSAoVkJSKQBxbWF4AG1heGltdW0gdmlkZW8gcXVhbnRpemVyIHNjYWxlIChWQlIpAHFkaWZmAG1heGltdW0gZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBxdWFudGl6ZXIgc2NhbGVzIChWQlIpAGJmAHNldCBtYXhpbXVtIG51bWJlciBvZiBCLWZyYW1lcyBiZXR3ZWVuIG5vbi1CLWZyYW1lcwBiX3FmYWN0b3IAUVAgZmFjdG9yIGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGJfc3RyYXRlZ3kAc3RyYXRlZ3kgdG8gY2hvb3NlIGJldHdlZW4gSS9QL0ItZnJhbWVzAHBzAFJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMAbXZfYml0cwBoZWFkZXJfYml0cwBpX3RleF9iaXRzAHBfdGV4X2JpdHMAaV9jb3VudABwX2NvdW50AHNraXBfY291bnQAbWlzY19iaXRzAGZyYW1lX2JpdHMAY29kZWNfdGFnAGJ1ZwB3b3JrIGFyb3VuZCBub3QgYXV0b2RldGVjdGVkIGVuY29kZXIgYnVncwBhdXRvZGV0ZWN0AHh2aWRfaWxhY2UAWHZpZCBpbnRlcmxhY2luZyBidWcgKGF1dG9kZXRlY3RlZCBpZiBGT1VSQ0MgPT0gWFZJWCkAdW1wNAAoYXV0b2RldGVjdGVkIGlmIEZPVVJDQyA9PSBVTVA0KQBub19wYWRkaW5nAHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQpAGFtdgBxcGVsX2Nocm9tYQBzdGRfcXBlbABvbGQgc3RhbmRhcmQgcXBlbCAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAcXBlbF9jaHJvbWEyAGRpcmVjdF9ibG9ja3NpemUAZGlyZWN0LXFwZWwtYmxvY2tzaXplIGJ1ZyAoYXV0b2RldGVjdGVkIHBlciBGT1VSQ0MvdmVyc2lvbikAZWRnZQBlZGdlIHBhZGRpbmcgYnVnIChhdXRvZGV0ZWN0ZWQgcGVyIEZPVVJDQy92ZXJzaW9uKQBocGVsX2Nocm9tYQBkY19jbGlwAG1zAHdvcmsgYXJvdW5kIHZhcmlvdXMgYnVncyBpbiBNaWNyb3NvZnQncyBicm9rZW4gZGVjb2RlcnMAdHJ1bmMAdHJ1bmNhdGVkIGZyYW1lcwBpZWRnZQBzdHJpY3QAaG93IHN0cmljdGx5IHRvIGZvbGxvdyB0aGUgc3RhbmRhcmRzAHZlcnkAc3RyaWN0bHkgY29uZm9ybSB0byBhIG9sZGVyIG1vcmUgc3RyaWN0IHZlcnNpb24gb2YgdGhlIHNwZWMgb3IgcmVmZXJlbmNlIHNvZnR3YXJlAHN0cmljdGx5IGNvbmZvcm0gdG8gYWxsIHRoZSB0aGluZ3MgaW4gdGhlIHNwZWMgbm8gbWF0dGVyIHdoYXQgdGhlIGNvbnNlcXVlbmNlcwBub3JtYWwAdW5vZmZpY2lhbABhbGxvdyB1bm9mZmljaWFsIGV4dGVuc2lvbnMAZXhwZXJpbWVudGFsAGFsbG93IG5vbi1zdGFuZGFyZGl6ZWQgZXhwZXJpbWVudGFsIHRoaW5ncwBiX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEItZnJhbWVzAGVycl9kZXRlY3QAc2V0IGVycm9yIGRldGVjdGlvbiBmbGFncwBjcmNjaGVjawB2ZXJpZnkgZW1iZWRkZWQgQ1JDcwBiaXRzdHJlYW0AZGV0ZWN0IGJpdHN0cmVhbSBzcGVjaWZpY2F0aW9uIGRldmlhdGlvbnMAYnVmZmVyAGRldGVjdCBpbXByb3BlciBiaXRzdHJlYW0gbGVuZ3RoAGV4cGxvZGUAYWJvcnQgZGVjb2Rpbmcgb24gbWlub3IgZXJyb3IgZGV0ZWN0aW9uAGlnbm9yZV9lcnIAaWdub3JlIGVycm9ycwBjYXJlZnVsAGNvbnNpZGVyIHRoaW5ncyB0aGF0IHZpb2xhdGUgdGhlIHNwZWMsIGFyZSBmYXN0IHRvIGNoZWNrIGFuZCBoYXZlIG5vdCBiZWVuIHNlZW4gaW4gdGhlIHdpbGQgYXMgZXJyb3JzAGNvbXBsaWFudABjb25zaWRlciBhbGwgc3BlYyBub24gY29tcGxpYW5jaWVzIGFzIGVycm9ycwBhZ2dyZXNzaXZlAGNvbnNpZGVyIHRoaW5ncyB0aGF0IGEgc2FuZSBlbmNvZGVyIHNob3VsZCBub3QgZG8gYXMgYW4gZXJyb3IAaGFzX2JfZnJhbWVzAGJsb2NrX2FsaWduAG1wZWdfcXVhbnQAdXNlIE1QRUcgcXVhbnRpemVycyBpbnN0ZWFkIG9mIEguMjYzAHJjX292ZXJyaWRlX2NvdW50AG1heHJhdGUAbWF4aW11bSBiaXRyYXRlIChpbiBiaXRzL3MpLiBVc2VkIGZvciBWQlYgdG9nZXRoZXIgd2l0aCBidWZzaXplLgBtaW5yYXRlAG1pbmltdW0gYml0cmF0ZSAoaW4gYml0cy9zKS4gTW9zdCB1c2VmdWwgaW4gc2V0dGluZyB1cCBhIENCUiBlbmNvZGUuIEl0IGlzIG9mIGxpdHRsZSB1c2Ugb3RoZXJ3aXNlLgBidWZzaXplAHNldCByYXRlY29udHJvbCBidWZmZXIgc2l6ZSAoaW4gYml0cykAaV9xZmFjdG9yAFFQIGZhY3RvciBiZXR3ZWVuIFAtIGFuZCBJLWZyYW1lcwBpX3FvZmZzZXQAUVAgb2Zmc2V0IGJldHdlZW4gUC0gYW5kIEktZnJhbWVzAGRjdABEQ1QgYWxnb3JpdGhtAGF1dG8AYXV0b3NlbGVjdCBhIGdvb2Qgb25lAGZhc3RpbnQAZmFzdCBpbnRlZ2VyAGFjY3VyYXRlIGludGVnZXIAbW14AGFsdGl2ZWMAZmFhbgBmbG9hdGluZyBwb2ludCBBQU4gRENUAGx1bWlfbWFzawBjb21wcmVzc2VzIGJyaWdodCBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAHRjcGx4X21hc2sAdGVtcG9yYWwgY29tcGxleGl0eSBtYXNraW5nAHNjcGx4X21hc2sAc3BhdGlhbCBjb21wbGV4aXR5IG1hc2tpbmcAcF9tYXNrAGludGVyIG1hc2tpbmcAZGFya19tYXNrAGNvbXByZXNzZXMgZGFyayBhcmVhcyBzdHJvbmdlciB0aGFuIG1lZGl1bSBvbmVzAGlkY3QAc2VsZWN0IElEQ1QgaW1wbGVtZW50YXRpb24Ac2ltcGxlAHNpbXBsZW1teABhcm0Ac2ltcGxlYXJtAHNpbXBsZWFybXY1dGUAc2ltcGxlYXJtdjYAc2ltcGxlbmVvbgB4dmlkAHh2aWRtbXgAZGVwcmVjYXRlZCwgZm9yIGNvbXBhdGliaWxpdHkgb25seQBmYWFuaQBmbG9hdGluZyBwb2ludCBBQU4gSURDVABzaW1wbGVhdXRvAHNsaWNlX2NvdW50AGVjAHNldCBlcnJvciBjb25jZWFsbWVudCBzdHJhdGVneQBndWVzc19tdnMAaXRlcmF0aXZlIG1vdGlvbiB2ZWN0b3IgKE1WKSBzZWFyY2ggKHNsb3cpAGRlYmxvY2sAdXNlIHN0cm9uZyBkZWJsb2NrIGZpbHRlciBmb3IgZGFtYWdlZCBNQnMAZmF2b3JfaW50ZXIAZmF2b3IgcHJlZGljdGluZyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBiaXRzX3Blcl9jb2RlZF9zYW1wbGUAcHJlZABwcmVkaWN0aW9uIG1ldGhvZABsZWZ0AHBsYW5lAG1lZGlhbgBhc3BlY3QAc2FtcGxlIGFzcGVjdCByYXRpbwBzYXIAZGVidWcAcHJpbnQgc3BlY2lmaWMgZGVidWcgaW5mbwBwaWN0AHBpY3R1cmUgaW5mbwByYwByYXRlIGNvbnRyb2wAbWJfdHlwZQBtYWNyb2Jsb2NrIChNQikgdHlwZQBxcABwZXItYmxvY2sgcXVhbnRpemF0aW9uIHBhcmFtZXRlciAoUVApAGRjdF9jb2VmZgBncmVlbl9tZXRhZGF0YQBza2lwAHN0YXJ0Y29kZQBlcgBlcnJvciByZWNvZ25pdGlvbgBtbWNvAG1lbW9yeSBtYW5hZ2VtZW50IGNvbnRyb2wgb3BlcmF0aW9ucyAoSC4yNjQpAGJ1Z3MAYnVmZmVycwBwaWN0dXJlIGJ1ZmZlciBhbGxvY2F0aW9ucwB0aHJlYWRfb3BzAHRocmVhZGluZyBvcGVyYXRpb25zAG5vbWMAc2tpcCBtb3Rpb24gY29tcGVuc2F0aW9uAGNtcABmdWxsLXBlbCBNRSBjb21wYXJlIGZ1bmN0aW9uAGNtcF9mdW5jAHN1YmNtcABzdWItcGVsIE1FIGNvbXBhcmUgZnVuY3Rpb24AbWJjbXAAbWFjcm9ibG9jayBjb21wYXJlIGZ1bmN0aW9uAGlsZGN0Y21wAGludGVybGFjZWQgRENUIGNvbXBhcmUgZnVuY3Rpb24AZGlhX3NpemUAZGlhbW9uZCB0eXBlICYgc2l6ZSBmb3IgbW90aW9uIGVzdGltYXRpb24AbGFzdF9wcmVkAGFtb3VudCBvZiBtb3Rpb24gcHJlZGljdG9ycyBmcm9tIHRoZSBwcmV2aW91cyBmcmFtZQBwcmVtZQBwcmUgbW90aW9uIGVzdGltYXRpb24AcHJlY21wAHByZSBtb3Rpb24gZXN0aW1hdGlvbiBjb21wYXJlIGZ1bmN0aW9uAHNhZABzdW0gb2YgYWJzb2x1dGUgZGlmZmVyZW5jZXMsIGZhc3QAc3NlAHN1bSBvZiBzcXVhcmVkIGVycm9ycwBzYXRkAHN1bSBvZiBhYnNvbHV0ZSBIYWRhbWFyZCB0cmFuc2Zvcm1lZCBkaWZmZXJlbmNlcwBzdW0gb2YgYWJzb2x1dGUgRENUIHRyYW5zZm9ybWVkIGRpZmZlcmVuY2VzAHN1bSBvZiBzcXVhcmVkIHF1YW50aXphdGlvbiBlcnJvcnMgKGF2b2lkLCBsb3cgcXVhbGl0eSkAYml0AG51bWJlciBvZiBiaXRzIG5lZWRlZCBmb3IgdGhlIGJsb2NrAHJkAHJhdGUgZGlzdG9ydGlvbiBvcHRpbWFsLCBzbG93AHplcm8AMAB2c2FkAHN1bSBvZiBhYnNvbHV0ZSB2ZXJ0aWNhbCBkaWZmZXJlbmNlcwB2c3NlAHN1bSBvZiBzcXVhcmVkIHZlcnRpY2FsIGRpZmZlcmVuY2VzAG5zc2UAbm9pc2UgcHJlc2VydmluZyBzdW0gb2Ygc3F1YXJlZCBkaWZmZXJlbmNlcwBkY3RtYXgAY2hyb21hAG1zYWQAc3VtIG9mIGFic29sdXRlIGRpZmZlcmVuY2VzLCBtZWRpYW4gcHJlZGljdGVkAHByZV9kaWFfc2l6ZQBkaWFtb25kIHR5cGUgJiBzaXplIGZvciBtb3Rpb24gZXN0aW1hdGlvbiBwcmUtcGFzcwBzdWJxAHN1Yi1wZWwgbW90aW9uIGVzdGltYXRpb24gcXVhbGl0eQBtZV9yYW5nZQBsaW1pdCBtb3Rpb24gdmVjdG9ycyByYW5nZSAoMTAyMyBmb3IgRGl2WCBwbGF5ZXIpAGdsb2JhbF9xdWFsaXR5AGNvZGVyAHZsYwB2YXJpYWJsZSBsZW5ndGggY29kZXIgLyBIdWZmbWFuIGNvZGVyAGFyaXRobWV0aWMgY29kZXIAcmF3AHJhdyAobm8gZW5jb2RpbmcpAHJsZQBydW4tbGVuZ3RoIGNvZGVyAGNvbnRleHQAY29udGV4dCBtb2RlbABzbGljZV9mbGFncwBtYmQAbWFjcm9ibG9jayBkZWNpc2lvbiBhbGdvcml0aG0gKGhpZ2ggcXVhbGl0eSBtb2RlKQB1c2UgbWJjbXAAYml0cwB1c2UgZmV3ZXN0IGJpdHMAdXNlIGJlc3QgcmF0ZSBkaXN0b3J0aW9uAHNjX3RocmVzaG9sZABzY2VuZSBjaGFuZ2UgdGhyZXNob2xkAG5yAG5vaXNlIHJlZHVjdGlvbgByY19pbml0X29jY3VwYW5jeQBudW1iZXIgb2YgYml0cyB3aGljaCBzaG91bGQgYmUgbG9hZGVkIGludG8gdGhlIHJjIGJ1ZmZlciBiZWZvcmUgZGVjb2Rpbmcgc3RhcnRzAHRocmVhZHMAc2V0IHRoZSBudW1iZXIgb2YgdGhyZWFkcwBhdXRvZGV0ZWN0IGEgc3VpdGFibGUgbnVtYmVyIG9mIHRocmVhZHMgdG8gdXNlAGRjAGludHJhX2RjX3ByZWNpc2lvbgBuc3NldwBuc3NlIHdlaWdodABza2lwX3RvcABudW1iZXIgb2YgbWFjcm9ibG9jayByb3dzIGF0IHRoZSB0b3Agd2hpY2ggYXJlIHNraXBwZWQAc2tpcF9ib3R0b20AbnVtYmVyIG9mIG1hY3JvYmxvY2sgcm93cyBhdCB0aGUgYm90dG9tIHdoaWNoIGFyZSBza2lwcGVkAHByb2ZpbGUAdW5rbm93bgBhYWNfbWFpbgBhYWNfbG93AGFhY19zc3IAYWFjX2x0cABhYWNfaGUAYWFjX2hlX3YyAGFhY19sZABhYWNfZWxkAG1wZWcyX2FhY19sb3cAbXBlZzJfYWFjX2hlAGR0cwBkdHNfZXMAZHRzXzk2XzI0AGR0c19oZF9ocmEAZHRzX2hkX21hAG1wZWc0X3NwAG1wZWc0X2NvcmUAbXBlZzRfbWFpbgBtcGVnNF9hc3AAbWFpbjEwAG1zYmMAbGV2ZWwAbG93cmVzAGRlY29kZSBhdCAxPSAxLzIsIDI9MS80LCAzPTEvOCByZXNvbHV0aW9ucwBza2lwX3RocmVzaG9sZABmcmFtZSBza2lwIHRocmVzaG9sZABza2lwX2ZhY3RvcgBmcmFtZSBza2lwIGZhY3RvcgBza2lwX2V4cABmcmFtZSBza2lwIGV4cG9uZW50AHNraXBjbXAAZnJhbWUgc2tpcCBjb21wYXJlIGZ1bmN0aW9uAG1ibG1pbgBtaW5pbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1ibG1heABtYXhpbXVtIG1hY3JvYmxvY2sgTGFncmFuZ2UgZmFjdG9yIChWQlIpAG1lcGMAbW90aW9uIGVzdGltYXRpb24gYml0cmF0ZSBwZW5hbHR5IGNvbXBlbnNhdGlvbiAoMS4wID0gMjU2KQBza2lwX2xvb3BfZmlsdGVyAHNraXAgbG9vcCBmaWx0ZXJpbmcgcHJvY2VzcyBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBhdmRpc2NhcmQAc2tpcF9pZGN0AHNraXAgSURDVC9kZXF1YW50aXphdGlvbiBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lcwBza2lwX2ZyYW1lAHNraXAgZGVjb2RpbmcgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZXMAbm9uZQBkaXNjYXJkIG5vIGZyYW1lAGRlZmF1bHQAZGlzY2FyZCB1c2VsZXNzIGZyYW1lcwBub3JlZgBkaXNjYXJkIGFsbCBub24tcmVmZXJlbmNlIGZyYW1lcwBiaWRpcgBkaXNjYXJkIGFsbCBiaWRpcmVjdGlvbmFsIGZyYW1lcwBub2tleQBkaXNjYXJkIGFsbCBmcmFtZXMgZXhjZXB0IGtleWZyYW1lcwBub2ludHJhAGRpc2NhcmQgYWxsIGZyYW1lcyBleGNlcHQgSSBmcmFtZXMAYWxsAGRpc2NhcmQgYWxsIGZyYW1lcwBiaWRpcl9yZWZpbmUAcmVmaW5lIHRoZSB0d28gbW90aW9uIHZlY3RvcnMgdXNlZCBpbiBiaWRpcmVjdGlvbmFsIG1hY3JvYmxvY2tzAGJyZF9zY2FsZQBkb3duc2NhbGUgZnJhbWVzIGZvciBkeW5hbWljIEItZnJhbWUgZGVjaXNpb24Aa2V5aW50X21pbgBtaW5pbXVtIGludGVydmFsIGJldHdlZW4gSURSLWZyYW1lcwByZWZzAHJlZmVyZW5jZSBmcmFtZXMgdG8gY29uc2lkZXIgZm9yIG1vdGlvbiBjb21wZW5zYXRpb24AY2hyb21hb2Zmc2V0AGNocm9tYSBRUCBvZmZzZXQgZnJvbSBsdW1hAHRyZWxsaXMAcmF0ZS1kaXN0b3J0aW9uIG9wdGltYWwgcXVhbnRpemF0aW9uAG12MF90aHJlc2hvbGQAYl9zZW5zaXRpdml0eQBhZGp1c3Qgc2Vuc2l0aXZpdHkgb2YgYl9mcmFtZV9zdHJhdGVneSAxAGNvbXByZXNzaW9uX2xldmVsAG1pbl9wcmVkaWN0aW9uX29yZGVyAG1heF9wcmVkaWN0aW9uX29yZGVyAHRpbWVjb2RlX2ZyYW1lX3N0YXJ0AEdPUCB0aW1lY29kZSBmcmFtZSBzdGFydCBudW1iZXIsIGluIG5vbi1kcm9wLWZyYW1lIGZvcm1hdABiaXRzX3Blcl9yYXdfc2FtcGxlAGNoYW5uZWxfbGF5b3V0AHJlcXVlc3RfY2hhbm5lbF9sYXlvdXQAcmNfbWF4X3Zidl91c2UAcmNfbWluX3Zidl91c2UAdGlja3NfcGVyX2ZyYW1lAGNvbG9yX3ByaW1hcmllcwBjb2xvciBwcmltYXJpZXMAY29sb3JfcHJpbWFyaWVzX3R5cGUAYnQ3MDkAQlQuNzA5AFVuc3BlY2lmaWVkAGJ0NDcwbQBCVC40NzAgTQBidDQ3MGJnAEJULjQ3MCBCRwBzbXB0ZTE3MG0AU01QVEUgMTcwIE0Ac21wdGUyNDBtAFNNUFRFIDI0MCBNAGZpbG0ARmlsbQBidDIwMjAAQlQuMjAyMABzbXB0ZTQyOABTTVBURSA0MjgtMQBzbXB0ZTQyOF8xAHNtcHRlNDMxAFNNUFRFIDQzMS0yAHNtcHRlNDMyAFNNUFRFIDQyMi0xAGplZGVjLXAyMgBKRURFQyBQMjIAdW5zcGVjaWZpZWQAY29sb3JfdHJjAGNvbG9yIHRyYW5zZmVyIGNoYXJhY3RlcmlzdGljcwBjb2xvcl90cmNfdHlwZQBnYW1tYTIyAGdhbW1hMjgAbGluZWFyAExpbmVhcgBsb2cxMDAATG9nAGxvZzMxNgBMb2cgc3F1YXJlIHJvb3QAaWVjNjE5NjYtMi00AElFQyA2MTk2Ni0yLTQAYnQxMzYxZQBCVC4xMzYxAGllYzYxOTY2LTItMQBJRUMgNjE5NjYtMi0xAGJ0MjAyMC0xMABCVC4yMDIwIC0gMTAgYml0AGJ0MjAyMC0xMgBCVC4yMDIwIC0gMTIgYml0AHNtcHRlMjA4NABTTVBURSAyMDg0AGFyaWItc3RkLWI2NwBBUklCIFNURC1CNjcAbG9nAGxvZ19zcXJ0AGllYzYxOTY2XzJfNABidDEzNjEAaWVjNjE5NjZfMl8xAGJ0MjAyMF8xMGJpdABidDIwMjBfMTJiaXQAY29sb3JzcGFjZQBjb2xvciBzcGFjZQBjb2xvcnNwYWNlX3R5cGUAcmdiAFJHQgBmY2MARkNDAHljZ2NvAFlDR0NPAGJ0MjAyMG5jAEJULjIwMjAgTkNMAGJ0MjAyMGMAQlQuMjAyMCBDTABzbXB0ZTIwODUAU01QVEUgMjA4NQB5Y29jZwBidDIwMjBfbmNsAGJ0MjAyMF9jbABjb2xvcl9yYW5nZQBjb2xvciByYW5nZQBjb2xvcl9yYW5nZV90eXBlAHR2AE1QRUcgKDIxOSoyXihuLTgpKQBwYwBKUEVHICgyXm4tMSkAbXBlZwBqcGVnAGNocm9tYV9zYW1wbGVfbG9jYXRpb24AY2hyb21hIHNhbXBsZSBsb2NhdGlvbgBjaHJvbWFfc2FtcGxlX2xvY2F0aW9uX3R5cGUATGVmdABjZW50ZXIAQ2VudGVyAHRvcGxlZnQAVG9wLWxlZnQAdG9wAFRvcABib3R0b21sZWZ0AEJvdHRvbS1sZWZ0AGJvdHRvbQBCb3R0b20AbG9nX2xldmVsX29mZnNldABzZXQgdGhlIGxvZyBsZXZlbCBvZmZzZXQAc2xpY2VzAHNldCB0aGUgbnVtYmVyIG9mIHNsaWNlcywgdXNlZCBpbiBwYXJhbGxlbGl6ZWQgZW5jb2RpbmcAdGhyZWFkX3R5cGUAc2VsZWN0IG11bHRpdGhyZWFkaW5nIHR5cGUAc2xpY2UAZnJhbWUAYXVkaW9fc2VydmljZV90eXBlAGF1ZGlvIHNlcnZpY2UgdHlwZQBtYQBNYWluIEF1ZGlvIFNlcnZpY2UAZWYARWZmZWN0cwB2aQBWaXN1YWxseSBJbXBhaXJlZABoaQBIZWFyaW5nIEltcGFpcmVkAGRpAERpYWxvZ3VlAGNvAENvbW1lbnRhcnkAZW0ARW1lcmdlbmN5AHZvAFZvaWNlIE92ZXIAa2EAS2FyYW9rZQByZXF1ZXN0X3NhbXBsZV9mbXQAc2FtcGxlIGZvcm1hdCBhdWRpbyBkZWNvZGVycyBzaG91bGQgcHJlZmVyAHBrdF90aW1lYmFzZQBzdWJfY2hhcmVuYwBzZXQgaW5wdXQgdGV4dCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nAHN1Yl9jaGFyZW5jX21vZGUAc2V0IGlucHV0IHRleHQgc3VidGl0bGVzIGNoYXJhY3RlciBlbmNvZGluZyBtb2RlAGRvX25vdGhpbmcAcHJlX2RlY29kZXIAc3ViX3RleHRfZm9ybWF0AHNldCBkZWNvZGVkIHRleHQgc3VidGl0bGUgZm9ybWF0AGFzcwBhc3Nfd2l0aF90aW1pbmdzAHJlZmNvdW50ZWRfZnJhbWVzAHNpZGVfZGF0YV9vbmx5X3BhY2tldHMAYXBwbHlfY3JvcHBpbmcAc2tpcF9hbHBoYQBTa2lwIHByb2Nlc3NpbmcgYWxwaGEAZmllbGRfb3JkZXIARmllbGQgb3JkZXIAcHJvZ3Jlc3NpdmUAdHQAYmIAdGIAZHVtcF9zZXBhcmF0b3IAc2V0IGluZm9ybWF0aW9uIGR1bXAgZmllbGQgc2VwYXJhdG9yAGNvZGVjX3doaXRlbGlzdABMaXN0IG9mIGRlY29kZXJzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgdXNlZABwaXhlbF9mb3JtYXQAc2V0IHBpeGVsIGZvcm1hdAB2aWRlb19zaXplAHNldCB2aWRlbyBzaXplAG1heF9waXhlbHMATWF4aW11bSBudW1iZXIgb2YgcGl4ZWxzAGh3YWNjZWxfZmxhZ3MAaWdub3JlX2xldmVsAGlnbm9yZSBsZXZlbCBldmVuIGlmIHRoZSBjb2RlYyBsZXZlbCB1c2VkIGlzIHVua25vd24gb3IgaGlnaGVyIHRoYW4gdGhlIG1heGltdW0gc3VwcG9ydGVkIGxldmVsIHJlcG9ydGVkIGJ5IHRoZSBoYXJkd2FyZSBkcml2ZXIAYWxsb3dfaGlnaF9kZXB0aABhbGxvdyB0byBvdXRwdXQgWVVWIHBpeGVsIGZvcm1hdHMgd2l0aCBhIGRpZmZlcmVudCBjaHJvbWEgc2FtcGxpbmcgdGhhbiA0OjI6MCBhbmQvb3Igb3RoZXIgdGhhbiA4IGJpdHMgcGVyIGNvbXBvbmVudABhbGxvd19wcm9maWxlX21pc21hdGNoAGF0dGVtcHQgdG8gZGVjb2RlIGFueXdheSBpZiBIVyBhY2NlbGVyYXRlZCBkZWNvZGVyJ3Mgc3VwcG9ydGVkIHByb2ZpbGVzIGRvIG5vdCBleGFjdGx5IG1hdGNoIHRoZSBzdHJlYW0AZXh0cmFfaHdfZnJhbWVzAE51bWJlciBvZiBleHRyYSBoYXJkd2FyZSBmcmFtZXMgdG8gYWxsb2NhdGUgZm9yIHRoZSB1c2VyAE5VTEwAQVZCU0ZDb250ZXh0AFRoaXMgZGVjb2RlciBkb2VzIG5vdCBzdXBwb3J0IHBhcmFtZXRlciBjaGFuZ2VzLCBidXQgUEFSQU1fQ0hBTkdFIHNpZGUgZGF0YSB3YXMgc2VudCB0byBpdC4KAEludmFsaWQgY2hhbm5lbCBjb3VudABJbnZhbGlkIHNhbXBsZSByYXRlAFBBUkFNX0NIQU5HRSBzaWRlIGRhdGEgdG9vIHNtYWxsLgoARXJyb3IgYXBwbHlpbmcgcGFyYW1ldGVyIGNoYW5nZXMuCgBFcnJvciBwcmUtcHJvY2Vzc2luZyBhIHBhY2tldCBiZWZvcmUgZGVjb2RpbmcKACFmcmFtZS0+YnVmWzBdAChmcmFtZS0+cHJpdmF0ZV9yZWYgJiYgZnJhbWUtPnByaXZhdGVfcmVmLT5zaXplID09IHNpemVvZihGcmFtZURlY29kZURhdGEpKSB8fCAhKGF2Y3R4LT5jb2RlYy0+Y2FwYWJpbGl0aWVzICYgKDEgPDwgMSkpAHNraXAgJWQgLyBkaXNjYXJkICVkIHNhbXBsZXMgZHVlIHRvIHNpZGUgZGF0YQoAc2tpcCB3aG9sZSBmcmFtZSwgc2tpcCBsZWZ0OiAlZAoAQ291bGQgbm90IHVwZGF0ZSB0aW1lc3RhbXBzIGZvciBza2lwcGVkIHNhbXBsZXMuCgBza2lwICVkLyVkIHNhbXBsZXMKAENvdWxkIG5vdCB1cGRhdGUgdGltZXN0YW1wcyBmb3IgZGlzY2FyZGVkIHNhbXBsZXMuCgBkaXNjYXJkICVkLyVkIHNhbXBsZXMKAE11bHRpcGxlIGZyYW1lcyBpbiBhIHBhY2tldC4KAFRvbyBtYW55IGVycm9ycyB3aGVuIGRyYWluaW5nLCB0aGlzIGlzIGEgYnVnLiBTdG9wIGRyYWluaW5nIGFuZCBmb3JjZSBFT0YuCgBmcmFtZS0+YnVmWzBdAGF2X3BhY2tldF9yZWYoKSBmYWlsZWQgaW4gc3VibWl0X3BhY2tldCgpCgBudWxsACwAQSBub24tZXhpc3RpbmcgYml0c3RyZWFtIGZpbHRlciAlcyByZXF1ZXN0ZWQgYnkgYSBkZWNvZGVyLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0LgoASW52YWxpZCBjcm9wcGluZyBpbmZvcm1hdGlvbiBzZXQgYnkgYSBkZWNvZGVyOiAlenUvJXp1LyV6dS8lenUgKGZyYW1lIHNpemUgJWR4JWQpLiBUaGlzIGlzIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0CgBpbmRleCA+IC0weDIwMDAwMDAwACFwLT5od2FjY2VsX3NlcmlhbGl6aW5nAEEgZnJhbWUgdGhyZWFkZWQgZGVjb2RlciBkaWQgbm90IGZyZWUgdGhlIGZyYW1lIG9uIGZhaWx1cmUuIFRoaXMgaXMgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQuCgBBcHBsaWNhdGlvbiBoYXMgcmVxdWVzdGVkICVkIHRocmVhZHMuIFVzaW5nIGEgdGhyZWFkIGNvdW50IGdyZWF0ZXIgdGhhbiAlZCBpcyBub3QgcmVjb21tZW5kZWQuCgBObyBjb2RlYyBwcm92aWRlZCB0byBhdmNvZGVjX29wZW4yKCkKAFRoaXMgQVZDb2RlY0NvbnRleHQgd2FzIGFsbG9jYXRlZCBmb3IgJXMsIGJ1dCAlcyBwYXNzZWQgdG8gYXZjb2RlY19vcGVuMigpCgBDb2RlYyAoJXMpIG5vdCBvbiB3aGl0ZWxpc3QgJyVzJwoASWdub3JpbmcgaW52YWxpZCB3aWR0aC9oZWlnaHQgdmFsdWVzCgBpZ25vcmluZyBpbnZhbGlkIFNBUjogJXUvJXUKAENvZGVjIHR5cGUgb3IgaWQgbWlzbWF0Y2hlcwoAZW5jb2RlcgBkZWNvZGVyAFRoZSAlcyAnJXMnIGlzIGV4cGVyaW1lbnRhbCBidXQgZXhwZXJpbWVudGFsIGNvZGVjcyBhcmUgbm90IGVuYWJsZWQsIGFkZCAnLXN0cmljdCAlZCcgaWYgeW91IHdhbnQgdG8gdXNlIGl0LgoAQWx0ZXJuYXRpdmVseSB1c2UgdGhlIG5vbiBleHBlcmltZW50YWwgJXMgJyVzJy4KAFRoZSBtYXhpbXVtIHZhbHVlIGZvciBsb3dyZXMgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvZGVyIGlzICVkCgBUaGUgZW5jb2RlciB0aW1lYmFzZSBpcyBub3Qgc2V0LgoAJWQAU3BlY2lmaWVkIHNhbXBsZSBmb3JtYXQgJXMgaXMgaW52YWxpZCBvciBub3Qgc3VwcG9ydGVkCgBTcGVjaWZpZWQgcGl4ZWwgZm9ybWF0ICVzIGlzIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZAoAU3BlY2lmaWVkIHNhbXBsZSByYXRlICVkIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0IG5vdCBzcGVjaWZpZWQKAFNwZWNpZmllZCBjaGFubmVsIGxheW91dCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBudW1iZXIgb2Ygc3BlY2lmaWVkIGNoYW5uZWxzICVkCgBTcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkIGlzIG5vdCBzdXBwb3J0ZWQKAFNwZWNpZmllZCBiaXQgZGVwdGggJWQgbm90IHBvc3NpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBwaXhlbCBmb3JtYXRzIGRlcHRoICVkCgBkaW1lbnNpb25zIG5vdCBzZXQKAEJpdHJhdGUgJWxsZCBpcyBleHRyZW1lbHkgbG93LCBtYXliZSB5b3UgbWVhbiAlbGxkawoAdGlja3NfcGVyX2ZyYW1lICVkIHRvbyBsYXJnZSBmb3IgdGhlIHRpbWViYXNlICVkLyVkLgBNaXNtYXRjaGluZyBBVkNvZGVjQ29udGV4dC5waXhfZm10IGFuZCBBVkhXRnJhbWVzQ29udGV4dC5mb3JtYXQKAE1pc21hdGNoaW5nIEFWQ29kZWNDb250ZXh0LnN3X3BpeF9mbXQgKCVzKSBhbmQgQVZIV0ZyYW1lc0NvbnRleHQuc3dfZm9ybWF0ICglcykKAGdyYXkgZGVjb2RpbmcgcmVxdWVzdGVkIGJ1dCBub3QgZW5hYmxlZCBhdCBjb25maWd1cmF0aW9uIHRpbWUKAENoYW5uZWwgbGF5b3V0ICclcycgd2l0aCAlZCBjaGFubmVscyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgbnVtYmVyIG9mIGNoYW5uZWxzICVkOiBpZ25vcmluZyBzcGVjaWZpZWQgY2hhbm5lbCBsYXlvdXQKAENoYXJhY3RlciBlbmNvZGluZyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIHN1YnRpdGxlcyBjb2RlY3MKAENvZGVjICclcycgaXMgYml0bWFwLWJhc2VkLCBzdWJ0aXRsZXMgY2hhcmFjdGVyIGVuY29kaW5nIHdpbGwgYmUgaWdub3JlZAoAVVRGLTgAVW5hYmxlIHRvIG9wZW4gaWNvbnYgY29udGV4dCB3aXRoIGlucHV0IGNoYXJhY3RlciBlbmNvZGluZyAiJXMiCgAqKGNvbnN0IEFWQ2xhc3MgKiopYXZjdHgtPnByaXZfZGF0YSA9PSBjb2RlYy0+cHJpdl9jbGFzcwB2b2lkAGJvb2wAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AGludAB1bnNpZ25lZCBpbnQAbG9uZwB1bnNpZ25lZCBsb25nAGZsb2F0AGRvdWJsZQBzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgB1dGY4AGNoYXIAAMh3Y2hhcnQAAMZ1Y3MyAHVjczJiZQAAxHVjczJsZQAAxXV0ZjE2AHV0ZjE2YmUAAMJ1dGYxNmxlAADBdWNzNAB1Y3M0YmUAdXRmMzIAdXRmMzJiZQAAwHVjczRsZQB1dGYzMmxlAADDYXNjaWkAdXNhc2NpaQBpc282NDYAaXNvNjQ2dXMAAMdldWNqcAAA0HNoaWZ0amlzAHNqaXMAANFnYjE4MDMwAADYZ2JrAADZZ2IyMzEyAADaYmlnNQBiaWdmaXZlAGNwOTUwAGJpZzVoa3NjcwAA4GV1Y2tyAGtzYzU2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5NFHIMEUkkgjkXTRRC2xhFFKLqmE0kprb2k4dQAAAGCGKeaYZJZp5plopqkmookquiijjTr6qJeQZqnlllx2KcCXByCQwANrstlmVFS9adVVcs5JZ512goVnnnruyedABvmJUEKBCjoooYV+dWgBT8Uk01E12VQUTUblpNNOPPXk009AQRWUUEMRddNMTTGFU1JOKYXUUi9FJNFJFVlUEkUmZaTRRhx15NFHIMEUkkgjkXTRRC2xhFFKLqmE0kpjcDQzNwAAABfAQIIHH3QAggglmDBCCiicQEEFGDiwwAosqPCCCzFkwEEEEkxgpSmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ/LZZ5xw+smmnHjeaeeYZKaJpplgqpmnnnW+SWige655qKCD/gkonXO26aahhZYppqKJLsooouVEigw919wTKT7aNNMNOpHqk06kkUbaJZdefvnAlgdkmYCWkSIAqQBjcDg1MAAAABfAQIIHH3QAggglmDBCCiicQEEFGDiwwAosqPCCCzFkwAEEEjTAgCmRRhpppJFGGmmkkUYaaaSRRhpppI06+miYZ0YaaaQF+MmmnHhGMMGYZKaJpplgqhlppHW+SWige655aKSRRhpppJF+EWmkkZYppqKJRhopopFGGmmkkUYaaaSRRhpppJFGakCkkUZKZKSRDvCAAgcQkECkkSIAqQAAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";var tempDoublePtr=STATICTOP;STATICTOP+=16;assert(tempDoublePtr%8==0);function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___gxx_personality_v0(){}function ___lock(){}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};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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else Module.printErr("failed to set errno from JS");return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!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 node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,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(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),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(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function count_emval_handles(){var count=0;for(var i=5;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.constructor;if(undefined===proto[methodName]){unboundTypesHandler.argCount=argCount-1;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-1]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));var func=craftInvokerFunction(humanName,invokerArgsArray,null,rawInvoker,fn);if(undefined===proto[methodName].overloadTable){proto[methodName]=func}else{proto[methodName].overloadTable[argCount-1]=func}return[]}));return[]}))}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]}));return[]}))}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError("cannot call emscripten binding method "+humanName+" on deleted object")}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],(function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:(function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])}),enumerable:true,configurable:true};if(setter){desc.set=(function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])})}else{desc.set=(function(v){throwBindingError(humanName+" is a read-only property")})}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],(function(types){var getterReturnType=types[0];var desc={get:(function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))}),enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=(function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)})}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]}));return[]}))}function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv}),"toWireType":(function(destructors,value){return __emval_register(value)}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return(function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){return(function(){return Function})()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map((function(t){return t.name})).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function craftEmvalAllocator(argCount){var argsList="";for(var i=0;i> 2) + "+i+'], "parameter '+i+'");\n'+"var arg"+i+" = argType"+i+".readValueFromPointer(args);\n"+"args += argType"+i+"['argPackAdvance'];\n"}functionBody+="var obj = new constructor("+argsList+");\n"+"return __emval_register(obj);\n"+"}\n";return(new Function("requireRegisteredType","HEAP32","__emval_register",functionBody))(requireRegisteredType,HEAP32,__emval_register)}var emval_newers={};function __emval_new(handle,argCount,argTypes,args){handle=requireHandle(handle);var newer=emval_newers[argCount];if(!newer){newer=craftEmvalAllocator(argCount);emval_newers[argCount]=newer}return newer(handle,argTypes,args)}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){Module["abort"]()}var _acos=Math_acos;var _asin=Math_asin;var _atan=Math_atan;function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}var _cos=Math_cos;function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break};case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg("i"+argSize*8);var origArg=currArg;var argText;if(argSize==8){currArg=makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],null);else argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){if(argSize==8&&typeof i64Math==="object")argText=i64Math.stringify(origArg[0],origArg[1],true);else argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(argSize==8&&typeof i64Math==="object"){if(origArg[1]){argText=(origArg[1]>>>0).toString(16);var lower=(origArg[0]>>>0).toString(16);while(lower.length<8)lower="0"+lower;argText+=lower}else{argText=(origArg[0]>>>0).toString(16)}}else if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.lengthexponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break};case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break};case"%":{ret.push(curr);break};default:{for(var i=startTextIndex;i>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(var i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}var lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=" at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?" = "+jsSymbolName:" at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){Module.printErr(str)}else{Module.print(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=4;var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _init(){window.AudioContext=window.AudioContext||window.webkitAudioContext;var context=new window.AudioContext;if(/(iPhone|iPad|iPod|iOS|Safari)/i.test(navigator.userAgent)){function _unlock(){context.resume();var source=context.createBufferSource();source.buffer=context.createBuffer(1,1,22050);source.connect(context.destination);if(source.noteOn)source.noteOn(0);else source.start(0)}document.addEventListener("mousedown",_unlock,true);document.addEventListener("touchend",_unlock,true)}function H264bsdCanvas(canvas,forceNoGL,contextOptions){this.canvasElement=canvas;this.contextOptions=contextOptions;if(!forceNoGL)this.initContextGL();if(this.contextGL){this.initProgram();this.initBuffers();this.initTextures()}}H264bsdCanvas.prototype.isWebGL=(function(){return!!this.contextGL});H264bsdCanvas.prototype.initContextGL=(function(){var canvas=this.canvasElement;var gl=null;var validContextNames=["webgl","experimental-webgl","moz-webgl","webkit-3d"];var nameIndex=0;while(!gl&&nameIndex3)return;_this.$play(url);reconnectCount++})}),close:(function(){if(!this.isPlaying)return;this.isPlaying=false;this.ws.onclose=null;this.ws.close();this.ws=null;this.webGLCanvas.clear();this.$close();delete this.timespan}),initAudio:(function(frameCount,samplerate,channels,outputPtr){var isPlaying=false;var audioBuffers=[];var allFrameCount=frameCount*channels;if(!context)return false;var resampled=samplerate<22050;var audioBuffer=resampled?context.createBuffer(channels,frameCount<<1,samplerate<<1):context.createBuffer(channels,frameCount,samplerate);var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);var playNextBuffer=(function(){isPlaying=false;if(audioBuffers.length){playAudio(audioBuffers.shift())}if(audioBuffers.length>1)audioBuffers.shift()});var copyAudioOutputArray=resampled?(function(target){for(var i=0;i1?(function(fromBuffer){for(var channel=0;channel>2)),HEAPU8.subarray(v,v+(w*h>>2))];this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)})}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));this.webGLCanvas.initRGB(w,h);this.draw=(function(){this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)})}})})}var _llvm_ceil_f64=Math_ceil;var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;function _llvm_trap(){abort("trap!")}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}var _log=Math_log;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_create(){return 11}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function _pthread_join(){}var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_mutex_destroy(){}function _pthread_mutex_init(){}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}var _sin=Math_sin;function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _tan=Math_tan;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}init_emval();PureVirtualError=Module["PureVirtualError"]=extendError(Error,"PureVirtualError");embind_init_charCodes();init_embind();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;assert(DYNAMIC_BASE0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i>1;b=uZ(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=uZ(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function vu(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function wu(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function xu(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function yu(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function zu(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Au(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Bu(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function Cu(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=uZ(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Du(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;d=a+(d*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function Eu(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;d=a+(d*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function Fu(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=uZ(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Gu(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;d=a+(d*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function Hu(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Iu(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=uZ((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=uZ((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=uZ((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=uZ((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=uZ((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=uZ((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=uZ((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=uZ((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Ju(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Ku(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Lu(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Mu(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Nu(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Ou(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Pu(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Qu(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=uZ(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Ru(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Su(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Vu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Wu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Xu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Yu(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+p>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+o>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Zu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=uZ(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=uZ(k|0,l|0,65537,65537)|0;h=y;d=uZ(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function _u(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=uZ(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=uZ(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function $u(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function av(a,b){a=a|0;b=b|0;$u(a,b);vu(a,0,b);return}function bv(a,b){a=a|0;b=b|0;Zu(a,b);Fu(a,0,b);return}function cv(a,b){a=a|0;b=b|0;_u(a,b);a=a+(b<<2)|0;Gu(a,0,b);Gu(a+8|0,0,b);return}function dv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=uZ(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=uZ(m|0,n|0,65537,65537)|0;q=y;m=uZ(f|0,o|0,65537,65537)|0;n=y;k=uZ(r|0,s|0,65537,65537)|0;l=y;i=uZ(g|0,t|0,65537,65537)|0;j=y;g=uZ(u|0,v|0,65537,65537)|0;h=y;d=uZ(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function ev(a,b){a=a|0;b=b|0;_u(a,b);_u(a+(b<<3)|0,b);return}function fv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function gv(a,b){a=a|0;b=b|0;fv(a,b);vu(a,0,b);return}function hv(a,b){a=a|0;b=b|0;dv(a,b);Fu(a,0,b);return}function iv(a,b){a=a|0;b=b|0;ev(a,b);a=a+(b<<2)|0;Gu(a,0,b);Gu(a+8|0,0,b);return}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function lv(a,b){a=a|0;b=b|0;ev(a,b);Gu(a,0,b);Gu(a+8|0,0,b);return}function mv(a,b){a=a|0;b=b|0;_u(a,b);Gu(a,0,b);Gu(a+8|0,0,b);return}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function ov(a,b){a=a|0;b=b|0;nv(a,b);nv(a+(b<<3)|0,b);return}function pv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function qv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function rv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function sv(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function tv(a,b){a=a|0;b=b|0;gx(a,b);return}function uv(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function vv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function wv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function xv(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function yv(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function zv(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Av(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}FZ(d|0,0,256)|0;return}function Bv(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}FZ(d|0,0,256)|0;return}function Cv(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}FZ(d|0,0,256)|0;l=s;return}function Dv(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}FZ(d|0,0,256)|0;l=k;return}function Ev(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;yv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}yv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;yv(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Gv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;zv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Hv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}zv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;zv(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Iv(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function Jv(a,b,e){a=a|0;b=b|0;e=e|0;c[a>>2]=N(d[a+-1>>0]|0,16843009)|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;b=e<<1;c[a+b>>2]=N(d[a+(b+-1)>>0]|0,16843009)|0;e=e*3|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;return}function Kv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Lv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[b+(1-e)>>0]|0;h=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+2+h+(l<<1)|0)>>>2;c=(l+2+k+(h<<1)|0)>>>2&255;a[b+e>>0]=c;a[b+1>>0]=c;c=(h+2+j+(k<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+2+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function Mv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d[b+~e>>0]|0;h=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;k=d[b+-1>>0]|0;n=d[b+(e+-1)>>0]|0;j=e<<1;i=d[b+(j+-1)>>0]|0;l=e*3|0;a[b+l>>0]=(n+2+(d[b+(l+-1)>>0]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&255;a[b+(l+1)>>0]=i;a[b+j>>0]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&255;a[b+(l+2)>>0]=n;a[b+(j|1)>>0]=n;a[b+e>>0]=n;k=((m<<1)+2+h+k|0)>>>2&255;a[b+(l+3)>>0]=k;a[b+(j+2)>>0]=k;a[b+(e+1)>>0]=k;a[b>>0]=k;i=(i+(h<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+2+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function Nv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;o=(j+1+n|0)>>>1&255;a[b+(i|1)>>0]=o;a[b>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(i+2)>>0]=o;a[b+1>>0]=o;o=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=o;a[b+2>>0]=o;a[b+3>>0]=(l+1+k|0)>>>1;o=((j<<1)+2+n+h|0)>>>2&255;a[b+(c+1)>>0]=o;a[b+e>>0]=o;j=j+2|0;o=(j+(n<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+2+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Ov(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;o=(k+1+j|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=((k<<1)+2+n+j|0)>>>2&255;a[b+(e+3)>>0]=o;a[b+1>>0]=o;k=k+2|0;a[b+2>>0]=(k+(n<<1)+m|0)>>>2;a[b+3>>0]=(n+2+(m<<1)+l|0)>>>2;l=(j+1+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Pv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d[b+(0-e)>>0]|0;k=d[b+(1-e)>>0]|0;j=d[b+(2-e)>>0]|0;i=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;a[b>>0]=(l+1+k|0)>>>1;m=(k+1+j|0)>>>1&255;c=e<<1;a[b+c>>0]=m;a[b+1>>0]=m;m=(j+1+i|0)>>>1&255;a[b+(c|1)>>0]=m;a[b+2>>0]=m;m=(i+1+h|0)>>>1&255;a[b+(c+2)>>0]=m;a[b+3>>0]=m;a[b+(c+3)>>0]=(h+1+g|0)>>>1;a[b+e>>0]=(l+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(e+1)>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Qv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d[b+-1>>0]|0;j=d[b+(e+-1)>>0]|0;c=e<<1;i=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;a[b>>0]=(k+1+j|0)>>>1;a[b+1>>0]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&255;a[b+e>>0]=k;a[b+2>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=(i+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+2+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Rv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Sv(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function Tv(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function Uv(a,b,e){a=a|0;b=b|0;e=e|0;b=N(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Vv(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function Wv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=d[b+(0-g)>>0]|0;n=d[b+(1-g)>>0]|0;h=d[b+(2-g)>>0]|0;m=d[b+(3-g)>>0]|0;l=d[b+(4-g)>>0]|0;k=d[b+(5-g)>>0]|0;j=d[b+(6-g)>>0]|0;i=d[b+(7-g)>>0]|0;f=(j+2+(d[b+((f|0?8:7)-g)>>0]|0)+(i<<1)|0)>>>2;a[b>>0]=((d[b+((((e|0)!=0)<<31>>31)-g)>>0]|0)+2+(o<<1)+n|0)>>>2;a[b+1>>0]=(o+2+(n<<1)+h|0)>>>2;a[b+2>>0]=(n+2+(h<<1)+m|0)>>>2;a[b+3>>0]=(h+2+(m<<1)+l|0)>>>2;h=b+4|0;a[h>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+5>>0]=(l+2+(k<<1)+j|0)>>>2;a[b+6>>0]=(k+2+(j<<1)+i|0)>>>2;a[b+7>>0]=f;f=c[b>>2]|0;h=c[h>>2]|0;e=1;while(1){if((e|0)==8)break;o=b+(N(e,g)|0)|0;c[o>>2]=f;c[o+4>>2]=h;e=e+1|0}return}function Xv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;r=d[a+-1>>0]|0;p=d[a+(f+-1)>>0]|0;q=f<<1;n=d[a+(q+-1)>>0]|0;o=f*3|0;l=d[a+(o+-1)>>0]|0;m=f<<2;j=d[a+(m+-1)>>0]|0;k=f*5|0;h=d[a+(k+-1)>>0]|0;i=f*6|0;g=d[a+(i+-1)>>0]|0;b=f*7|0;e=d[a+(b+-1)>>0]|0;s=N((s+2+(r<<1)+p|0)>>>2,16843009)|0;c[a>>2]=s;c[a+4>>2]=s;r=N((r+2+(p<<1)+n|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=r;c[f+4>>2]=r;p=N((p+2+(n<<1)+l|0)>>>2,16843009)|0;f=a+q|0;c[f>>2]=p;c[f+4>>2]=p;n=N((n+2+(l<<1)+j|0)>>>2,16843009)|0;f=a+o|0;c[f>>2]=n;c[f+4>>2]=n;l=N((l+2+(j<<1)+h|0)>>>2,16843009)|0;f=a+m|0;c[f>>2]=l;c[f+4>>2]=l;j=N((j+2+(h<<1)+g|0)>>>2,16843009)|0;f=a+k|0;c[f>>2]=j;c[f+4>>2]=j;h=N((h+2+(g<<1)+e|0)>>>2,16843009)|0;f=a+i|0;c[f>>2]=h;c[f+4>>2]=h;e=N((g+2+(e*3|0)|0)>>>2,16843009)|0;f=a+b|0;c[f>>2]=e;c[f+4>>2]=e;return}function Yv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=((b|0)!=0)<<31>>31;w=d[a+((N(n,f)|0)+-1)>>0]|0;v=d[a+-1>>0]|0;u=d[a+(f+-1)>>0]|0;t=d[a+((f<<1)+-1)>>0]|0;s=d[a+((f*3|0)+-1)>>0]|0;r=d[a+((f<<2)+-1)>>0]|0;q=d[a+((f*5|0)+-1)>>0]|0;p=d[a+((f*6|0)+-1)>>0]|0;o=d[a+((f*7|0)+-1)>>0]|0;m=d[a+(0-f)>>0]|0;l=d[a+(1-f)>>0]|0;k=d[a+(2-f)>>0]|0;j=d[a+(3-f)>>0]|0;i=d[a+(4-f)>>0]|0;h=d[a+(5-f)>>0]|0;g=d[a+(6-f)>>0]|0;b=d[a+(7-f)>>0]|0;e=N(((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((d[a+(n-f)>>0]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(d[a+((e|0?8:7)-f)>>0]|0)+(b<<1)|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function Zv(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=d[b+(0-f)>>0]|0;q=d[b+(1-f)>>0]|0;t=d[b+(2-f)>>0]|0;r=(p+2+(q<<1)+t|0)>>>2;u=d[b+(3-f)>>0]|0;s=(q+2+(t<<1)+u|0)>>>2;v=d[b+(4-f)>>0]|0;t=(t+2+(u<<1)+v|0)>>>2;w=d[b+(5-f)>>0]|0;u=(u+2+(v<<1)+w|0)>>>2;o=d[b+(6-f)>>0]|0;v=(v+2+(w<<1)+o|0)>>>2;n=d[b+(7-f)>>0]|0;w=(w+2+(o<<1)+n|0)>>>2;m=(e|0)!=0;o=(o+2+(d[b+((m?8:7)-f)>>0]|0)+(n<<1)|0)>>>2;if(m){x=d[b+(8-f)>>0]|0;e=d[b+(9-f)>>0]|0;m=d[b+(10-f)>>0]|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+2+(l<<1)+k|0)>>>2;l=(e+2+(m<<1)+l|0)>>>2;m=(x+2+(e<<1)+m|0)>>>2;e=(n+2+(x<<1)+e|0)>>>2}else{g=n;h=n;i=n;j=n;k=n;l=n;m=n;e=n}a[b>>0]=((((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(p<<1)+q|0)>>>2)+2+(r<<1)+s|0)>>>2;r=(r+2+(s<<1)+t|0)>>>2&255;a[b+1>>0]=r;a[b+f>>0]=r;s=(s+2+(t<<1)+u|0)>>>2&255;a[b+2>>0]=s;a[b+(f+1)>>0]=s;r=f<<1;a[b+r>>0]=s;t=(t+2+(u<<1)+v|0)>>>2&255;a[b+3>>0]=t;a[b+(f+2)>>0]=t;a[b+(r|1)>>0]=t;s=f*3|0;a[b+s>>0]=t;u=(u+2+(v<<1)+w|0)>>>2&255;a[b+4>>0]=u;a[b+(f+3)>>0]=u;a[b+(r+2)>>0]=u;a[b+(s+1)>>0]=u;t=f<<2;a[b+t>>0]=u;v=(v+2+(w<<1)+o|0)>>>2&255;a[b+5>>0]=v;a[b+(f+4)>>0]=v;a[b+(r+3)>>0]=v;a[b+(s+2)>>0]=v;a[b+(t|1)>>0]=v;u=f*5|0;a[b+u>>0]=v;w=(w+2+(o<<1)+e|0)>>>2&255;a[b+6>>0]=w;a[b+(f+5)>>0]=w;a[b+(r+4)>>0]=w;a[b+(s+3)>>0]=w;a[b+(t|2)>>0]=w;a[b+(u+1)>>0]=w;v=f*6|0;a[b+v>>0]=w;w=(o+2+(e<<1)+m|0)>>>2&255;a[b+7>>0]=w;a[b+(f+6)>>0]=w;a[b+(r+5)>>0]=w;a[b+(s+4)>>0]=w;a[b+(t|3)>>0]=w;a[b+(u+2)>>0]=w;a[b+(v|1)>>0]=w;x=f*7|0;a[b+x>>0]=w;w=(e+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=w;a[b+(r+6)>>0]=w;a[b+(s+5)>>0]=w;a[b+(t+4)>>0]=w;a[b+(u+3)>>0]=w;a[b+(v+2)>>0]=w;a[b+(x+1)>>0]=w;w=(m+2+(l<<1)+k|0)>>>2&255;a[b+(r+7)>>0]=w;a[b+(s+6)>>0]=w;a[b+(t+5)>>0]=w;a[b+(u+4)>>0]=w;a[b+(v+3)>>0]=w;a[b+(x+2)>>0]=w;w=(l+2+(k<<1)+j|0)>>>2&255;a[b+(s+7)>>0]=w;a[b+(t+6)>>0]=w;a[b+(u+5)>>0]=w;a[b+(v+4)>>0]=w;a[b+(x+3)>>0]=w;w=(k+2+(j<<1)+i|0)>>>2&255;a[b+(t+7)>>0]=w;a[b+(u+6)>>0]=w;a[b+(v+5)>>0]=w;a[b+(x+4)>>0]=w;w=(j+2+(i<<1)+h|0)>>>2&255;a[b+(u+7)>>0]=w;a[b+(v+6)>>0]=w;a[b+(x+5)>>0]=w;w=(i+2+(h<<1)+g|0)>>>2&255;a[b+(v+7)>>0]=w;a[b+(x+6)>>0]=w;a[b+(x+7)>>0]=(h+2+(g*3|0)|0)>>>2;return}function _v(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;t=((c|0)!=0)<<31>>31;C=d[b+(0-f)>>0]|0;k=d[b+(1-f)>>0]|0;s=((d[b+(t-f)>>0]|0)+2+(C<<1)+k|0)>>>2;i=d[b+(2-f)>>0]|0;C=C+2|0;m=(C+(k<<1)+i|0)>>>2;h=d[b+(3-f)>>0]|0;k=(k+2+(i<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;v=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+v|0)>>>2;q=d[b+(7-f)>>0]|0;c=(c+2+(v<<1)+q|0)>>>2;e=(v+2+(d[b+((e|0?8:7)-f)>>0]|0)+(q<<1)|0)>>>2;t=d[b+((N(t,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;v=d[b+(f+-1)>>0]|0;t=(t+2+(q<<1)+v|0)>>>2;j=f<<1;w=d[b+(j+-1)>>0]|0;o=(q+2+(v<<1)+w|0)>>>2;l=f*3|0;x=d[b+(l+-1)>>0]|0;v=(v+2+(w<<1)+x|0)>>>2;n=f<<2;y=d[b+(n+-1)>>0]|0;w=(w+2+(x<<1)+y|0)>>>2;p=f*5|0;z=d[b+(p+-1)>>0]|0;x=(x+2+(y<<1)+z|0)>>>2;r=f*6|0;B=d[b+(r+-1)>>0]|0;y=(y+2+(z<<1)+B|0)>>>2;u=f*7|0;A=d[b+(u+-1)>>0]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+u>>0]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=z;a[b+r>>0]=z;y=(w+2+(x<<1)+y|0)>>>2&255;a[b+(u+2)>>0]=y;a[b+(r|1)>>0]=y;a[b+p>>0]=y;x=(v+2+(w<<1)+x|0)>>>2&255;a[b+(u+3)>>0]=x;a[b+(r+2)>>0]=x;a[b+(p+1)>>0]=x;a[b+n>>0]=x;w=(o+2+(v<<1)+w|0)>>>2&255;a[b+(u+4)>>0]=w;a[b+(r+3)>>0]=w;a[b+(p+2)>>0]=w;a[b+(n|1)>>0]=w;a[b+l>>0]=w;v=(t+2+(o<<1)+v|0)>>>2&255;a[b+(u+5)>>0]=v;a[b+(r+4)>>0]=v;a[b+(p+3)>>0]=v;a[b+(n|2)>>0]=v;a[b+(l+1)>>0]=v;a[b+j>>0]=v;o=((t<<1)+2+o+q|0)>>>2&255;a[b+(u+6)>>0]=o;a[b+(r+5)>>0]=o;a[b+(p+4)>>0]=o;a[b+(n|3)>>0]=o;a[b+(l+2)>>0]=o;a[b+(j|1)>>0]=o;a[b+f>>0]=o;o=s+2|0;t=(o+t+(q<<1)|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(r+6)>>0]=t;a[b+(p+5)>>0]=t;a[b+(n+4)>>0]=t;a[b+(l+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;a[b>>0]=t;q=((s<<1)+2+m+q|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+6)>>0]=q;a[b+(n+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+(j+3)>>0]=q;a[b+(f+2)>>0]=q;a[b+1>>0]=q;o=(o+(m<<1)+k|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(n+6)>>0]=o;a[b+(l+5)>>0]=o;a[b+(j+4)>>0]=o;a[b+(f+3)>>0]=o;a[b+2>>0]=o;m=(m+2+(k<<1)+i|0)>>>2&255;a[b+(n+7)>>0]=m;a[b+(l+6)>>0]=m;a[b+(j+5)>>0]=m;a[b+(f+4)>>0]=m;a[b+3>>0]=m;k=(k+2+(i<<1)+h|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;a[b+4>>0]=k;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(j+7)>>0]=i;a[b+(f+6)>>0]=i;a[b+5>>0]=i;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(f+7)>>0]=h;a[b+6>>0]=h;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function $v(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;n=d[b+(1-f)>>0]|0;u=((d[b+(s-f)>>0]|0)+2+(A<<1)+n|0)>>>2;k=d[b+(2-f)>>0]|0;A=A+2|0;q=(A+(n<<1)+k|0)>>>2;h=d[b+(3-f)>>0]|0;n=(n+2+(k<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;k=(k+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;r=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+r|0)>>>2;t=d[b+(7-f)>>0]|0;c=(c+2+(r<<1)+t|0)>>>2;e=(r+2+(d[b+((e|0?8:7)-f)>>0]|0)+(t<<1)|0)>>>2;s=d[b+((N(s,f)|0)+-1)>>0]|0;t=d[b+-1>>0]|0;r=d[b+(f+-1)>>0]|0;s=(s+2+(t<<1)+r|0)>>>2;i=f<<1;x=d[b+(i+-1)>>0]|0;v=(t+2+(r<<1)+x|0)>>>2;j=f*3|0;w=d[b+(j+-1)>>0]|0;r=(r+2+(x<<1)+w|0)>>>2;l=f<<2;z=d[b+(l+-1)>>0]|0;x=(x+2+(w<<1)+z|0)>>>2;m=f*5|0;B=d[b+(m+-1)>>0]|0;w=(w+2+(z<<1)+B|0)>>>2;o=f*6|0;y=d[b+(o+-1)>>0]|0;z=(z+2+(B<<1)+y|0)>>>2;p=f*7|0;y=(B+2+(y<<1)+(d[b+(p+-1)>>0]|0)|0)>>>2;t=(A+t+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+o>>0]=(x+2+(w<<1)+z|0)>>>2;a[b+p>>0]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(r<<1)+x|0)>>>2&255;a[b+(o|1)>>0]=y;a[b+l>>0]=y;w=(r+2+(x<<1)+w|0)>>>2&255;a[b+(p+1)>>0]=w;a[b+m>>0]=w;w=((s<<1)+2+v+t|0)>>>2&255;a[b+(o+2)>>0]=w;a[b+(l|1)>>0]=w;a[b+i>>0]=w;r=(s+2+(v<<1)+r|0)>>>2&255;a[b+(p+2)>>0]=r;a[b+(m+1)>>0]=r;a[b+j>>0]=r;r=u+2|0;s=(r+s+(t<<1)|0)>>>2&255;a[b+(p+3)>>0]=s;a[b+(m+2)>>0]=s;a[b+(j+1)>>0]=s;a[b+f>>0]=s;s=u+1|0;v=(s+t|0)>>>1&255;a[b+(o+3)>>0]=v;a[b+(l|2)>>0]=v;a[b+(i|1)>>0]=v;a[b>>0]=v;t=((u<<1)+2+q+t|0)>>>2&255;a[b+(p+4)>>0]=t;a[b+(m+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;s=(s+q|0)>>>1&255;a[b+(o+4)>>0]=s;a[b+(l|3)>>0]=s;a[b+(i+2)>>0]=s;a[b+1>>0]=s;r=(r+(q<<1)+n|0)>>>2&255;a[b+(p+5)>>0]=r;a[b+(m+4)>>0]=r;a[b+(j+3)>>0]=r;a[b+(f+2)>>0]=r;r=(q+1+n|0)>>>1&255;a[b+(o+5)>>0]=r;a[b+(l+4)>>0]=r;a[b+(i+3)>>0]=r;a[b+2>>0]=r;q=(q+2+(n<<1)+k|0)>>>2&255;a[b+(p+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(j+4)>>0]=q;a[b+(f+3)>>0]=q;q=(n+1+k|0)>>>1&255;a[b+(o+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(i+4)>>0]=q;a[b+3>>0]=q;n=(n+2+(k<<1)+h|0)>>>2&255;a[b+(p+7)>>0]=n;a[b+(m+6)>>0]=n;a[b+(j+5)>>0]=n;a[b+(f+4)>>0]=n;n=(k+1+h|0)>>>1&255;a[b+(o+7)>>0]=n;a[b+(l+6)>>0]=n;a[b+(i+5)>>0]=n;a[b+4>>0]=n;k=(k+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;k=(h+1+g|0)>>>1&255;a[b+(l+7)>>0]=k;a[b+(i+6)>>0]=k;a[b+5>>0]=k;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(j+7)>>0]=h;a[b+(f+6)>>0]=h;h=(g+1+c|0)>>>1&255;a[b+(i+7)>>0]=h;a[b+6>>0]=h;a[b+(f+7)>>0]=(g+2+(c<<1)+e|0)>>>2;a[b+7>>0]=(c+1+e|0)>>>1;return}function aw(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;i=d[b+(1-f)>>0]|0;n=((d[b+(o-f)>>0]|0)+2+(A<<1)+i|0)>>>2;h=d[b+(2-f)>>0]|0;A=A+2|0;j=(A+(i<<1)+h|0)>>>2;g=d[b+(3-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(4-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;m=d[b+(5-f)>>0]|0;g=(g+2+(c<<1)+m|0)>>>2;e=d[b+(6-f)>>0]|0;c=(c+2+(m<<1)+e|0)>>>2;e=(m+2+(e<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;o=d[b+((N(o,f)|0)+-1)>>0]|0;m=d[b+-1>>0]|0;k=d[b+(f+-1)>>0]|0;o=(o+2+(m<<1)+k|0)>>>2;l=f<<1;t=d[b+(l+-1)>>0]|0;q=(m+2+(k<<1)+t|0)>>>2;p=f*3|0;v=d[b+(p+-1)>>0]|0;k=(k+2+(t<<1)+v|0)>>>2;r=f<<2;x=d[b+(r+-1)>>0]|0;t=(t+2+(v<<1)+x|0)>>>2;s=f*5|0;y=d[b+(s+-1)>>0]|0;v=(v+2+(x<<1)+y|0)>>>2;u=f*6|0;B=d[b+(u+-1)>>0]|0;x=(x+2+(y<<1)+B|0)>>>2;w=f*7|0;z=d[b+(w+-1)>>0]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+w>>0]=(z+1+y|0)>>>1;a[b+(w+1)>>0]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&255;a[b+(w+2)>>0]=z;a[b+u>>0]=z;y=(v+2+(x<<1)+y|0)>>>2&255;a[b+(w+3)>>0]=y;a[b+(u|1)>>0]=y;y=(v+1+x|0)>>>1&255;a[b+(w+4)>>0]=y;a[b+(u+2)>>0]=y;a[b+s>>0]=y;x=(t+2+(v<<1)+x|0)>>>2&255;a[b+(w+5)>>0]=x;a[b+(u+3)>>0]=x;a[b+(s+1)>>0]=x;x=(t+1+v|0)>>>1&255;a[b+(w+6)>>0]=x;a[b+(u+4)>>0]=x;a[b+(s+2)>>0]=x;a[b+r>>0]=x;v=(k+2+(t<<1)+v|0)>>>2&255;a[b+(w+7)>>0]=v;a[b+(u+5)>>0]=v;a[b+(s+3)>>0]=v;a[b+(r|1)>>0]=v;v=(k+1+t|0)>>>1&255;a[b+(u+6)>>0]=v;a[b+(s+4)>>0]=v;a[b+(r|2)>>0]=v;a[b+p>>0]=v;t=(q+2+(k<<1)+t|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(s+5)>>0]=t;a[b+(r|3)>>0]=t;a[b+(p+1)>>0]=t;t=(q+1+k|0)>>>1&255;a[b+(s+6)>>0]=t;a[b+(r+4)>>0]=t;a[b+(p+2)>>0]=t;a[b+l>>0]=t;k=(o+2+(q<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=k;a[b+(r+5)>>0]=k;a[b+(p+3)>>0]=k;a[b+(l|1)>>0]=k;k=o+1|0;s=(k+q|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(l+2)>>0]=s;a[b+f>>0]=s;q=((o<<1)+2+q+m|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+5)>>0]=q;a[b+(l+3)>>0]=q;a[b+(f+1)>>0]=q;k=(k+m|0)>>>1&255;a[b+(p+6)>>0]=k;a[b+(l+4)>>0]=k;a[b+(f+2)>>0]=k;a[b>>0]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(l+5)>>0]=o;a[b+(f+3)>>0]=o;a[b+1>>0]=o;m=((n<<1)+2+j+m|0)>>>2&255;a[b+(l+6)>>0]=m;a[b+(f+4)>>0]=m;a[b+2>>0]=m;k=(k+(j<<1)+i|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(f+5)>>0]=k;a[b+3>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(f+6)>>0]=j;a[b+4>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(f+7)>>0]=i;a[b+5>>0]=i;a[b+6>>0]=(h+2+(g<<1)+c|0)>>>2;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function bw(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=d[b+(0-f)>>0]|0;m=d[b+(1-f)>>0]|0;k=((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(l<<1)+m|0)>>>2;n=d[b+(2-f)>>0]|0;l=(l+2+(m<<1)+n|0)>>>2;o=d[b+(3-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(4-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;o=(o+2+(p<<1)+q|0)>>>2;j=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+j|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(j<<1)+c|0)>>>2;i=(e|0)!=0;j=(j+2+(d[b+((i?8:7)-f)>>0]|0)+(c<<1)|0)>>>2;if(i){s=d[b+(8-f)>>0]|0;r=d[b+(9-f)>>0]|0;i=d[b+(10-f)>>0]|0;h=d[b+(11-f)>>0]|0;g=d[b+(12-f)>>0]|0;e=(h+2+(g<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(r+2+(i<<1)+h|0)>>>2;i=(s+2+(r<<1)+i|0)>>>2;c=(c+2+(s<<1)+r|0)>>>2}else{e=c;g=c;h=c;i=c}a[b>>0]=(k+1+l|0)>>>1;a[b+f>>0]=(k+2+(l<<1)+m|0)>>>2;s=(l+1+m|0)>>>1&255;a[b+1>>0]=s;t=f<<1;a[b+t>>0]=s;s=(l+2+(m<<1)+n|0)>>>2&255;a[b+(f+1)>>0]=s;k=f*3|0;a[b+k>>0]=s;s=(m+1+n|0)>>>1&255;a[b+2>>0]=s;a[b+(t|1)>>0]=s;l=f<<2;a[b+l>>0]=s;s=(m+2+(n<<1)+o|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;m=f*5|0;a[b+m>>0]=s;s=(n+1+o|0)>>>1&255;a[b+3>>0]=s;a[b+(t+2)>>0]=s;a[b+(l|1)>>0]=s;r=f*6|0;a[b+r>>0]=s;n=(n+2+(o<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=n;a[b+(k+2)>>0]=n;a[b+(m+1)>>0]=n;s=f*7|0;a[b+s>>0]=n;n=(o+1+p|0)>>>1&255;a[b+4>>0]=n;a[b+(t+3)>>0]=n;a[b+(l|2)>>0]=n;a[b+(r|1)>>0]=n;o=(o+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=o;a[b+(k+3)>>0]=o;a[b+(m+2)>>0]=o;a[b+(s+1)>>0]=o;o=(p+1+q|0)>>>1&255;a[b+5>>0]=o;a[b+(t+4)>>0]=o;a[b+(l|3)>>0]=o;a[b+(r+2)>>0]=o;p=(p+2+(q<<1)+j|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(m+3)>>0]=p;a[b+(s+2)>>0]=p;p=(q+1+j|0)>>>1&255;a[b+6>>0]=p;a[b+(t+5)>>0]=p;a[b+(l+4)>>0]=p;a[b+(r+3)>>0]=p;q=(q+2+(j<<1)+c|0)>>>2&255;a[b+(f+6)>>0]=q;a[b+(k+5)>>0]=q;a[b+(m+4)>>0]=q;a[b+(s+3)>>0]=q;q=(j+1+c|0)>>>1&255;a[b+7>>0]=q;a[b+(t+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(r+4)>>0]=q;q=(j+2+(c<<1)+i|0)>>>2&255;a[b+(f+7)>>0]=q;a[b+(k+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(s+4)>>0]=q;f=(c+1+i|0)>>>1&255;a[b+(t+7)>>0]=f;a[b+(l+6)>>0]=f;a[b+(r+5)>>0]=f;f=(c+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(m+6)>>0]=f;a[b+(s+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(l+7)>>0]=f;a[b+(r+6)>>0]=f;f=(i+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=f;a[b+(s+6)>>0]=f;a[b+(r+7)>>0]=(h+1+g|0)>>>1;a[b+(s+7)>>0]=(h+2+(g<<1)+e|0)>>>2;return}function cw(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=d[b+((N(((c|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;p=d[b+(f+-1)>>0]|0;r=(r+2+(q<<1)+p|0)>>>2;l=f<<1;o=d[b+(l+-1)>>0]|0;q=(q+2+(p<<1)+o|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;p=(p+2+(o<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;o=(o+2+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;s=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+s|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(s<<1)+i|0)>>>2;i=(s+2+(i*3|0)|0)>>>2;a[b>>0]=(r+1+q|0)>>>1;a[b+1>>0]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&255;a[b+2>>0]=r;a[b+f>>0]=r;q=(q+2+(p<<1)+o|0)>>>2&255;a[b+3>>0]=q;a[b+(f+1)>>0]=q;q=(p+1+o|0)>>>1&255;a[b+4>>0]=q;a[b+(f+2)>>0]=q;a[b+l>>0]=q;p=(p+2+(o<<1)+n|0)>>>2&255;a[b+5>>0]=p;a[b+(f+3)>>0]=p;a[b+(l|1)>>0]=p;p=(o+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+2+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(i+1+k|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function dw(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;l=d[a+-1>>0]|0;k=d[a+(f+-1)>>0]|0;j=d[a+((f<<1)+-1)>>0]|0;i=d[a+((f*3|0)+-1)>>0]|0;h=d[a+((f<<2)+-1)>>0]|0;g=d[a+((f*5|0)+-1)>>0]|0;b=d[a+((f*6|0)+-1)>>0]|0;e=d[a+((f*7|0)+-1)>>0]|0;e=N(((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(b<<1)+e|0)>>>2)+((b+2+(e*3|0)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function ew(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[a+(0-f)>>0]|0;m=d[a+(1-f)>>0]|0;l=d[a+(2-f)>>0]|0;k=d[a+(3-f)>>0]|0;j=d[a+(4-f)>>0]|0;i=d[a+(5-f)>>0]|0;h=d[a+(6-f)>>0]|0;g=d[a+(7-f)>>0]|0;e=N((((d[a+((((b|0)!=0)<<31>>31)-f)>>0]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(d[a+((e|0?8:7)-f)>>0]|0)+(g<<1)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function fw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function gw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function iw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function jw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function kw(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(N((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(N((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(N(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function lw(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(N((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(N((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if((e|0)>=9)break;o=p+c|0;n=q+m|0;f=(N((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(N(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function mw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;j=d[a+((N(e,b)|0)+-1)>>0]|0;j=f+j+(d[a+(e-b)>>0]|0)|0;k=e+4|0;e=e+1|0;f=j;g=g+(d[a+(k-b)>>0]|0)|0;h=h+(d[a+((N(k,b)|0)+-1)>>0]|0)|0}i=N(f+4>>3,16843009)|0;j=N(g+2>>2,16843009)|0;k=h+2>>2;f=h+4+g>>3;e=0;while(1){if((e|0)==4)break;h=a+(N(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=N(k,16843009)|0;f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(N(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function nw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=f+(d[a+((N(e,b)|0)+-1)>>0]|0)|0;h=g+(d[a+((N(e+4|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=i;g=h}h=N(f+2>>2,16843009)|0;f=g+2>>2;e=0;while(1){if((e|0)==4)break;i=a+(N(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(N(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function ow(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function pw(a,b){a=a|0;b=b|0;ow(a,b);Kv(a,0,b);return}function qw(a,b){a=a|0;b=b|0;mw(a,b);Uv(a,0,b);return}function rw(a,b){a=a|0;b=b|0;nw(a,b);a=a+(b<<2)|0;Vv(a,0,b);Vv(a+4|0,0,b);return}function sw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;f=0;i=0;g=0;h=0;j=0;while(1){if((e|0)==4)break;k=d[a+((N(e,b)|0)+-1)>>0]|0;k=f+k+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=g+(d[a+((N(l,b)|0)+-1)>>0]|0)|0;n=h+(d[a+((N(e+8|0,b)|0)+-1)>>0]|0)|0;o=j+(d[a+((N(e+12|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=k;i=i+(d[a+(l-b)>>0]|0)|0;g=m;h=n;j=o}f=N(f+4>>3,16843009)|0;k=N(i+2>>2,16843009)|0;l=g+2>>2;g=g+4+i>>3;m=h+2>>2;h=h+4+i>>3;o=j+2>>2;n=j+4+i>>3;e=0;while(1){if((e|0)==4)break;j=a+(N(e,b)|0)|0;c[j>>2]=f;c[j+4>>2]=k;e=e+1|0}k=N(l,16843009)|0;i=N(g,16843009)|0;j=N(m,16843009)|0;g=N(h,16843009)|0;h=N(o,16843009)|0;f=N(n,16843009)|0;e=4;while(1){if((e|0)==8){e=8;break}o=a+(N(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}while(1){if((e|0)==12){e=12;break}o=a+(N(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}while(1){if((e|0)==16)break;o=a+(N(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function tw(a,b){a=a|0;b=b|0;nw(a,b);nw(a+(b<<3)|0,b);return}function uw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function vw(a,b){a=a|0;b=b|0;uw(a,b);Kv(a,0,b);return}function ww(a,b){a=a|0;b=b|0;sw(a,b);Uv(a,0,b);return}function xw(a,b){a=a|0;b=b|0;tw(a,b);a=a+(b<<2)|0;Vv(a,0,b);Vv(a+4|0,0,b);return}function yw(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function zw(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function Aw(a,b){a=a|0;b=b|0;tw(a,b);Vv(a,0,b);Vv(a+4|0,0,b);return}function Bw(a,b){a=a|0;b=b|0;nw(a,b);Vv(a,0,b);Vv(a+4|0,0,b);return}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function Dw(a,b){a=a|0;b=b|0;Cw(a,b);Cw(a+(b<<3)|0,b);return}function Ew(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16){f=0;break}e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+16>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Fw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(N(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function Gw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function Hw(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function Iw(a,b){a=a|0;b=b|0;fx(a,b,0,0);return}function Jw(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function Kw(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Lw(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Mw(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function Nw(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Ow(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Pw(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Qw(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Rw(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;v=d[c+(0-i)>>0]|0;u=d[c+(1-i)>>0]|0;j=d[c+(2-i)>>0]|0;r=d[c+(3-i)>>0]|0;q=d[c+(4-i)>>0]|0;p=d[c+(5-i)>>0]|0;o=d[c+(6-i)>>0]|0;n=d[c+(7-i)>>0]|0;k=(o+2+(d[c+((h|0?8:7)-i)>>0]|0)+(n<<1)|0)>>>2;a[s>>0]=((d[c+((((g|0)!=0)<<31>>31)-i)>>0]|0)+2+(v<<1)+u|0)>>>2;a[s+1>>0]=(v+2+(u<<1)+j|0)>>>2;a[s+2>>0]=(u+2+(j<<1)+r|0)>>>2;a[s+3>>0]=(j+2+(r<<1)+q|0)>>>2;a[s+4>>0]=(r+2+(q<<1)+p|0)>>>2;a[s+5>>0]=(q+2+(p<<1)+o|0)>>>2;a[s+6>>0]=(p+2+(o<<1)+n|0)>>>2;a[s+7>>0]=k;k=i<<1;n=i*3|0;o=i<<2;p=i*5|0;q=i*6|0;r=i*7|0;j=0;g=c;h=f;while(1){if((j|0)==8)break;v=(e[h>>1]|0)+(d[s+j>>0]|0)|0;a[g>>0]=v;v=v+(e[h+16>>1]|0)|0;a[g+i>>0]=v;v=v+(e[h+32>>1]|0)|0;a[g+k>>0]=v;v=v+(e[h+48>>1]|0)|0;a[g+n>>0]=v;v=v+(e[h+64>>1]|0)|0;a[g+o>>0]=v;v=v+(e[h+80>>1]|0)|0;a[g+p>>0]=v;v=v+(e[h+96>>1]|0)|0;a[g+q>>0]=v;a[g+r>>0]=v+(e[h+112>>1]|0);j=j+1|0;g=g+1|0;h=h+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));l=t;return}function Sw(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;t=d[c+((N(((g|0)!=0)<<31>>31,i)|0)+-1)>>0]|0;s=d[c+-1>>0]|0;r=d[c+(i+-1)>>0]|0;q=d[c+((i<<1)+-1)>>0]|0;p=d[c+((i*3|0)+-1)>>0]|0;o=d[c+((i<<2)+-1)>>0]|0;g=d[c+((i*5|0)+-1)>>0]|0;h=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(t+2+(s<<1)+r|0)>>>2;a[k+1>>0]=(s+2+(r<<1)+q|0)>>>2;a[k+2>>0]=(r+2+(q<<1)+p|0)>>>2;a[k+3>>0]=(q+2+(p<<1)+o|0)>>>2;a[k+4>>0]=(p+2+(o<<1)+g|0)>>>2;a[k+5>>0]=(o+2+(g<<1)+h|0)>>>2;a[k+6>>0]=(g+2+(h<<1)+j|0)>>>2;a[k+7>>0]=(h+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;t=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=t;t=t+(e[g+2>>1]|0)|0;a[h+1>>0]=t;t=t+(e[g+4>>1]|0)|0;a[h+2>>0]=t;t=t+(e[g+6>>1]|0)|0;a[h+3>>0]=t;t=t+(e[g+8>>1]|0)|0;a[h+4>>0]=t;t=t+(e[g+10>>1]|0)|0;a[h+5>>0]=t;t=t+(e[g+12>>1]|0)|0;a[h+6>>0]=t;a[h+7>>0]=t+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));l=n;return}function Tw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Nw(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Uw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Nw(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Nw(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Vw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ow(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Ww(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Ow(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Ow(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Xw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Nw(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Yw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;yv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Zw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;ju(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function _w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Hr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ax(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Ow(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function bx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;zv(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function cx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;ku(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function dx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Xs(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ex(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Ir(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fx(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(N((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(N((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(N(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if((j|0)>0){g=i;h=-16}else break;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function gx(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function hx(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function ix(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function jx(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:0-q>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function kx(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;o=n<<1;a[b>>0]=(f+4+h+o+(p+g<<1)|0)>>>3;q=(n+1+m|0)>>>1&255;f=e<<1;a[b+f>>0]=q;a[b+1>>0]=q;q=(m+1+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(g+4+(h<<1)+i+p+o+m|0)>>>3;h=(n+2+(m<<1)+l|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=(m+2+(l<<1)+k|0)>>>2&255;a[b+(i+1)>>0]=h;a[b+(e+2)>>0]=h;h=(l+2+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=h;a[b+(e+3)>>0]=h;a[b+(i+3)>>0]=(k+2+(j<<1)+c|0)>>>2;return}function lx(a,b,c){a=a|0;b=b|0;c=c|0;lL(a,b,c);return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;kL(a,b,c);return}function nx(a,b,c){a=a|0;b=b|0;c=c|0;jL(a,b,c);return}function ox(a,b,c){a=a|0;b=b|0;c=c|0;iL(a,b,c);return}function px(a,b,c){a=a|0;b=b|0;c=c|0;hL(a,b,c);return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;FJ(e,b,32,c);gL(a,b,e,c,c);l=d;return}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;BJ(e,b,32,c);fL(a,b,e,c,c);l=d;return}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;xJ(e,b,32,c);eL(a,b,e,c,c);l=d;return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;tJ(e,b,16,c);dL(a,b,e,c,c);l=d;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pJ(e,b,32,c);cL(a,b,e,c,c);l=d;return}function vx(a,b,c){a=a|0;b=b|0;c=c|0;FJ(a,b,c,c);return}function wx(a,b,c){a=a|0;b=b|0;c=c|0;BJ(a,b,c,c);return}function xx(a,b,c){a=a|0;b=b|0;c=c|0;xJ(a,b,c,c);return}function yx(a,b,c){a=a|0;b=b|0;c=c|0;tJ(a,b,c,c);return}function zx(a,b,c){a=a|0;b=b|0;c=c|0;pJ(a,b,c,c);return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;FJ(e,b,32,c);gL(a,b+2|0,e,c,c);l=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;BJ(e,b,32,c);fL(a,b+2|0,e,c,c);l=d;return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;xJ(e,b,32,c);eL(a,b+2|0,e,c,c);l=d;return}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;tJ(e,b,16,c);dL(a,b+1|0,e,c,c);l=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pJ(e,b,32,c);cL(a,b+2|0,e,c,c);l=d;return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;GJ(g,b+(0-(c<<1))|0,c);HJ(e,f,32);gL(a,f,e,c,32);l=d;return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;CJ(g,b+(0-(c<<1))|0,c);DJ(e,f,32);fL(a,f,e,c,32);l=d;return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;yJ(g,b+(0-(c<<1))|0,c);zJ(e,f,32);eL(a,f,e,c,32);l=d;return}function Ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;uJ(g,b+(0-(c<<1))|0,c);vJ(e,f,16);dL(a,f,e,c,16);l=d;return}function Jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;qJ(g,b+(0-(c<<1))|0,c);rJ(e,f,32);cL(a,f,e,c,32);l=d;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b,32,c);GJ(g,b+(0-(c<<1))|0,c);HJ(e,g+64|0,32);gL(a,f,e,c,32);l=d;return}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b,32,c);CJ(g,b+(0-(c<<1))|0,c);DJ(e,g+64|0,32);fL(a,f,e,c,32);l=d;return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b,32,c);yJ(g,b+(0-(c<<1))|0,c);zJ(e,g+64|0,32);eL(a,f,e,c,32);l=d;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b,16,c);uJ(g,b+(0-(c<<1))|0,c);vJ(e,g+32|0,16);dL(a,f,e,c,16);l=d;return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b,32,c);qJ(g,b+(0-(c<<1))|0,c);rJ(e,g+64|0,32);cL(a,f,e,c,32);l=d;return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;FJ(f,b,32,c);NJ(e,d,b,32,c);gL(a,f,e,c,32);l=d;return}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;BJ(f,b,32,c);MJ(e,d,b,32,c);fL(a,f,e,c,32);l=d;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;xJ(f,b,32,c);LJ(e,d,b,32,c);eL(a,f,e,c,32);l=d;return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;tJ(f,b,16,c);KJ(e,d,b,16,c);dL(a,f,e,c,16);l=d;return}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;pJ(f,b,32,c);JJ(e,d,b,32,c);cL(a,f,e,c,32);l=d;return}function Ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b,32,c);GJ(g,b+(0-(c<<1))+2|0,c);HJ(e,g+64|0,32);gL(a,f,e,c,32);l=d;return}function Vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b,32,c);CJ(g,b+(0-(c<<1))+2|0,c);DJ(e,g+64|0,32);fL(a,f,e,c,32);l=d;return}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b,32,c);yJ(g,b+(0-(c<<1))+2|0,c);zJ(e,g+64|0,32);eL(a,f,e,c,32);l=d;return}function Xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b,16,c);uJ(g,b+(0-(c<<1))+1|0,c);vJ(e,g+32|0,16);dL(a,f,e,c,16);l=d;return}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b,32,c);qJ(g,b+(0-(c<<1))+2|0,c);rJ(e,g+64|0,32);cL(a,f,e,c,32);l=d;return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;GJ(e,b+(0-(c<<1))|0,c);HJ(a,e+64|0,c);l=d;return}function _x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;CJ(e,b+(0-(c<<1))|0,c);DJ(a,e+64|0,c);l=d;return}function $x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;yJ(e,b+(0-(c<<1))|0,c);zJ(a,e+64|0,c);l=d;return}function ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;uJ(e,b+(0-(c<<1))|0,c);vJ(a,e+32|0,c);l=d;return}function by(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;qJ(e,b+(0-(c<<1))|0,c);rJ(a,e+64|0,c);l=d;return}function cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;GJ(g,b+(0-(c<<1))|0,c);HJ(f,g+64|0,32);NJ(e,d,b,32,c);gL(a,f,e,c,32);l=d;return}function dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;CJ(g,b+(0-(c<<1))|0,c);DJ(f,g+64|0,32);MJ(e,d,b,32,c);fL(a,f,e,c,32);l=d;return}function ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;yJ(g,b+(0-(c<<1))|0,c);zJ(f,g+64|0,32);LJ(e,d,b,32,c);eL(a,f,e,c,32);l=d;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;uJ(g,b+(0-(c<<1))|0,c);vJ(f,g+32|0,16);KJ(e,d,b,16,c);dL(a,f,e,c,16);l=d;return}function gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;qJ(g,b+(0-(c<<1))|0,c);rJ(f,g+64|0,32);JJ(e,d,b,32,c);cL(a,f,e,c,32);l=d;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);NJ(a,d,b,c,c);l=d;return}function iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);MJ(a,d,b,c,c);l=d;return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);LJ(a,d,b,c,c);l=d;return}function ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);KJ(a,d,b,c,c);l=d;return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);JJ(a,d,b,c,c);l=d;return}function my(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;GJ(g,b+(0-(c<<1))+2|0,c);HJ(f,g+64|0,32);NJ(e,d,b,32,c);gL(a,f,e,c,32);l=d;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;CJ(g,b+(0-(c<<1))+2|0,c);DJ(f,g+64|0,32);MJ(e,d,b,32,c);fL(a,f,e,c,32);l=d;return}function oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;yJ(g,b+(0-(c<<1))+2|0,c);zJ(f,g+64|0,32);LJ(e,d,b,32,c);eL(a,f,e,c,32);l=d;return}function py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;uJ(g,b+(0-(c<<1))+1|0,c);vJ(f,g+32|0,16);KJ(e,d,b,16,c);dL(a,f,e,c,16);l=d;return}function qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;qJ(g,b+(0-(c<<1))+2|0,c);rJ(f,g+64|0,32);JJ(e,d,b,32,c);cL(a,f,e,c,32);l=d;return}function ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;GJ(f,b+(0-(c<<1))|0,c);HJ(e,f+64|0,32);gL(a,f+96|0,e,c,32);l=d;return}function sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;CJ(f,b+(0-(c<<1))|0,c);DJ(e,f+64|0,32);fL(a,f+96|0,e,c,32);l=d;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;yJ(f,b+(0-(c<<1))|0,c);zJ(e,f+64|0,32);eL(a,f+96|0,e,c,32);l=d;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;uJ(f,b+(0-(c<<1))|0,c);vJ(e,f+32|0,16);dL(a,f+48|0,e,c,16);l=d;return}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;qJ(f,b+(0-(c<<1))|0,c);rJ(e,f+64|0,32);cL(a,f+96|0,e,c,32);l=d;return}function wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b+c|0,32,c);GJ(g,b+(0-(c<<1))|0,c);HJ(e,g+64|0,32);gL(a,f,e,c,32);l=d;return}function xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b+c|0,32,c);CJ(g,b+(0-(c<<1))|0,c);DJ(e,g+64|0,32);fL(a,f,e,c,32);l=d;return}function yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b+c|0,32,c);yJ(g,b+(0-(c<<1))|0,c);zJ(e,g+64|0,32);eL(a,f,e,c,32);l=d;return}function zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b+c|0,16,c);uJ(g,b+(0-(c<<1))|0,c);vJ(e,g+32|0,16);dL(a,f,e,c,16);l=d;return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b+c|0,32,c);qJ(g,b+(0-(c<<1))|0,c);rJ(e,g+64|0,32);cL(a,f,e,c,32);l=d;return}function By(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;FJ(f,b+c|0,32,c);NJ(e,d,b,32,c);gL(a,f,e,c,32);l=d;return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;BJ(f,b+c|0,32,c);MJ(e,d,b,32,c);fL(a,f,e,c,32);l=d;return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;xJ(f,b+c|0,32,c);LJ(e,d,b,32,c);eL(a,f,e,c,32);l=d;return}function Ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;tJ(f,b+c|0,16,c);KJ(e,d,b,16,c);dL(a,f,e,c,16);l=d;return}function Fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;pJ(f,b+c|0,32,c);JJ(e,d,b,32,c);cL(a,f,e,c,32);l=d;return}function Gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b+c|0,32,c);GJ(g,b+(0-(c<<1))+2|0,c);HJ(e,g+64|0,32);gL(a,f,e,c,32);l=d;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b+c|0,32,c);CJ(g,b+(0-(c<<1))+2|0,c);DJ(e,g+64|0,32);fL(a,f,e,c,32);l=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b+c|0,32,c);yJ(g,b+(0-(c<<1))+2|0,c);zJ(e,g+64|0,32);eL(a,f,e,c,32);l=d;return}function Jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b+c|0,16,c);uJ(g,b+(0-(c<<1))+1|0,c);vJ(e,g+32|0,16);dL(a,f,e,c,16);l=d;return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b+c|0,32,c);qJ(g,b+(0-(c<<1))+2|0,c);rJ(e,g+64|0,32);cL(a,f,e,c,32);l=d;return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;bL(a,b,c,8);return}function My(a,b,c){a=a|0;b=b|0;c=c|0;aL(a,b,c,8);return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;$K(a,b,c,8);return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;_K(a,b,c,8);return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;ZK(a,b,c,8);return}function Qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;OI(e,b,16,c);YK(a,b,e,c,c,16,8);l=d;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;KI(e,b,16,c);XK(a,b,e,c,c,16,8);l=d;return}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;GI(e,b,16,c);WK(a,b,e,c,c,16,8);l=d;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;CI(e,b,8,c);VK(a,b,e,c,c,8,8);l=d;return}function Uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yI(e,b,16,c);UK(a,b,e,c,c,16,8);l=d;return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;OI(a,b,c,c);return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;KI(a,b,c,c);return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;GI(a,b,c,c);return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;CI(a,b,c,c);return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;yI(a,b,c,c);return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;OI(e,b,16,c);YK(a,b+2|0,e,c,c,16,8);l=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;KI(e,b,16,c);XK(a,b+2|0,e,c,c,16,8);l=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;GI(e,b,16,c);WK(a,b+2|0,e,c,c,16,8);l=d;return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;CI(e,b,8,c);VK(a,b+1|0,e,c,c,8,8);l=d;return}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yI(e,b,16,c);UK(a,b+2|0,e,c,c,16,8);l=d;return}function dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;PI(g,b+(0-(c<<1))|0,c);QI(e,f,16,16);YK(a,f,e,c,16,16,8);l=d;return}function ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;LI(g,b+(0-(c<<1))|0,c);MI(e,f,16,16);XK(a,f,e,c,16,16,8);l=d;return}function fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;HI(g,b+(0-(c<<1))|0,c);II(e,f,16,16);WK(a,f,e,c,16,16,8);l=d;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;DI(g,b+(0-(c<<1))|0,c);EI(e,f,8,8);VK(a,f,e,c,8,8,8);l=d;return}function hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;zI(g,b+(0-(c<<1))|0,c);AI(e,f,16,16);UK(a,f,e,c,16,16,8);l=d;return}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b,16,c);PI(g,b+(0-(c<<1))|0,c);QI(e,g+32|0,16,16);YK(a,f,e,c,16,16,8);l=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b,16,c);LI(g,b+(0-(c<<1))|0,c);MI(e,g+32|0,16,16);XK(a,f,e,c,16,16,8);l=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b,16,c);HI(g,b+(0-(c<<1))|0,c);II(e,g+32|0,16,16);WK(a,f,e,c,16,16,8);l=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b,8,c);DI(g,b+(0-(c<<1))|0,c);EI(e,g+16|0,8,8);VK(a,f,e,c,8,8,8);l=d;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b,16,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+32|0,16,16);UK(a,f,e,c,16,16,8);l=d;return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;OI(f,b,16,c);WI(e,d,b,16,16,c);YK(a,f,e,c,16,16,8);l=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;KI(f,b,16,c);VI(e,d,b,16,16,c);XK(a,f,e,c,16,16,8);l=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;GI(f,b,16,c);UI(e,d,b,16,16,c);WK(a,f,e,c,16,16,8);l=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;CI(f,b,8,c);TI(e,d,b,8,8,c);VK(a,f,e,c,8,8,8);l=d;return}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;yI(f,b,16,c);SI(e,d,b,16,16,c);UK(a,f,e,c,16,16,8);l=d;return}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b,16,c);PI(g,b+(0-(c<<1))+2|0,c);QI(e,g+32|0,16,16);YK(a,f,e,c,16,16,8);l=d;return}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b,16,c);LI(g,b+(0-(c<<1))+2|0,c);MI(e,g+32|0,16,16);XK(a,f,e,c,16,16,8);l=d;return}function uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b,16,c);HI(g,b+(0-(c<<1))+2|0,c);II(e,g+32|0,16,16);WK(a,f,e,c,16,16,8);l=d;return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b,8,c);DI(g,b+(0-(c<<1))+1|0,c);EI(e,g+16|0,8,8);VK(a,f,e,c,8,8,8);l=d;return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b,16,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+32|0,16,16);UK(a,f,e,c,16,16,8);l=d;return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;PI(e,b+(0-(c<<1))|0,c);QI(a,e+32|0,c,16);l=d;return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;LI(e,b+(0-(c<<1))|0,c);MI(a,e+32|0,c,16);l=d;return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;HI(e,b+(0-(c<<1))|0,c);II(a,e+32|0,c,16);l=d;return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;DI(e,b+(0-(c<<1))|0,c);EI(a,e+16|0,c,8);l=d;return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;zI(e,b+(0-(c<<1))|0,c);AI(a,e+32|0,c,16);l=d;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;PI(g,b+(0-(c<<1))|0,c);QI(f,g+32|0,16,16);WI(e,d,b,16,16,c);YK(a,f,e,c,16,16,8);l=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;LI(g,b+(0-(c<<1))|0,c);MI(f,g+32|0,16,16);VI(e,d,b,16,16,c);XK(a,f,e,c,16,16,8);l=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;HI(g,b+(0-(c<<1))|0,c);II(f,g+32|0,16,16);UI(e,d,b,16,16,c);WK(a,f,e,c,16,16,8);l=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;DI(g,b+(0-(c<<1))|0,c);EI(f,g+16|0,8,8);TI(e,d,b,8,8,c);VK(a,f,e,c,8,8,8);l=d;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;zI(g,b+(0-(c<<1))|0,c);AI(f,g+32|0,16,16);SI(e,d,b,16,16,c);UK(a,f,e,c,16,16,8);l=d;return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);WI(a,d,b,c,16,c);l=d;return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);VI(a,d,b,c,16,c);l=d;return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);UI(a,d,b,c,16,c);l=d;return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);TI(a,d,b,c,8,c);l=d;return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);SI(a,d,b,c,16,c);l=d;return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;PI(g,b+(0-(c<<1))+2|0,c);QI(f,g+32|0,16,16);WI(e,d,b,16,16,c);YK(a,f,e,c,16,16,8);l=d;return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;LI(g,b+(0-(c<<1))+2|0,c);MI(f,g+32|0,16,16);VI(e,d,b,16,16,c);XK(a,f,e,c,16,16,8);l=d;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;HI(g,b+(0-(c<<1))+2|0,c);II(f,g+32|0,16,16);UI(e,d,b,16,16,c);WK(a,f,e,c,16,16,8);l=d;return}function Pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;DI(g,b+(0-(c<<1))+1|0,c);EI(f,g+16|0,8,8);TI(e,d,b,8,8,c);VK(a,f,e,c,8,8,8);l=d;return}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;zI(g,b+(0-(c<<1))+2|0,c);AI(f,g+32|0,16,16);SI(e,d,b,16,16,c);UK(a,f,e,c,16,16,8);l=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;PI(f,b+(0-(c<<1))|0,c);QI(e,f+32|0,16,16);YK(a,f+48|0,e,c,16,16,8);l=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;LI(f,b+(0-(c<<1))|0,c);MI(e,f+32|0,16,16);XK(a,f+48|0,e,c,16,16,8);l=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;HI(f,b+(0-(c<<1))|0,c);II(e,f+32|0,16,16);WK(a,f+48|0,e,c,16,16,8);l=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;DI(f,b+(0-(c<<1))|0,c);EI(e,f+16|0,8,8);VK(a,f+24|0,e,c,8,8,8);l=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;zI(f,b+(0-(c<<1))|0,c);AI(e,f+32|0,16,16);UK(a,f+48|0,e,c,16,16,8);l=d;return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b+c|0,16,c);PI(g,b+(0-(c<<1))|0,c);QI(e,g+32|0,16,16);YK(a,f,e,c,16,16,8);l=d;return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b+c|0,16,c);LI(g,b+(0-(c<<1))|0,c);MI(e,g+32|0,16,16);XK(a,f,e,c,16,16,8);l=d;return}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b+c|0,16,c);HI(g,b+(0-(c<<1))|0,c);II(e,g+32|0,16,16);WK(a,f,e,c,16,16,8);l=d;return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b+c|0,8,c);DI(g,b+(0-(c<<1))|0,c);EI(e,g+16|0,8,8);VK(a,f,e,c,8,8,8);l=d;return}function _z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b+c|0,16,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+32|0,16,16);UK(a,f,e,c,16,16,8);l=d;return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;OI(f,b+c|0,16,c);WI(e,d,b,16,16,c);YK(a,f,e,c,16,16,8);l=d;return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;KI(f,b+c|0,16,c);VI(e,d,b,16,16,c);XK(a,f,e,c,16,16,8);l=d;return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;GI(f,b+c|0,16,c);UI(e,d,b,16,16,c);WK(a,f,e,c,16,16,8);l=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;CI(f,b+c|0,8,c);TI(e,d,b,8,8,c);VK(a,f,e,c,8,8,8);l=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;yI(f,b+c|0,16,c);SI(e,d,b,16,16,c);UK(a,f,e,c,16,16,8);l=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b+c|0,16,c);PI(g,b+(0-(c<<1))+2|0,c);QI(e,g+32|0,16,16);YK(a,f,e,c,16,16,8);l=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b+c|0,16,c);LI(g,b+(0-(c<<1))+2|0,c);MI(e,g+32|0,16,16);XK(a,f,e,c,16,16,8);l=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b+c|0,16,c);HI(g,b+(0-(c<<1))+2|0,c);II(e,g+32|0,16,16);WK(a,f,e,c,16,16,8);l=d;return}function hA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b+c|0,8,c);DI(g,b+(0-(c<<1))+1|0,c);EI(e,g+16|0,8,8);VK(a,f,e,c,8,8,8);l=d;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b+c|0,16,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+32|0,16,16);UK(a,f,e,c,16,16,8);l=d;return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;TK(a,b,c);return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;SK(a,b,c);return}function lA(a,b,c){a=a|0;b=b|0;c=c|0;RK(a,b,c);return}function mA(a,b,c){a=a|0;b=b|0;c=c|0;QK(a,b,c);return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;PK(a,b,c);return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;XH(e,b,8,c);OK(a,b,e,c,c);l=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;TH(e,b,8,c);NK(a,b,e,c,c);l=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;PH(e,b,8,c);MK(a,b,e,c,c);l=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;KH(e,b,4,c);LK(a,b,e,c,c);l=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FH(e,b,8,c);KK(a,b,e,c,c);l=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;XH(a,b,c,c);return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;TH(a,b,c,c);return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;PH(a,b,c,c);return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;KH(a,b,c,c);return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;FH(a,b,c,c);return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;XH(e,b,8,c);OK(a,b+2|0,e,c,c);l=d;return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;TH(e,b,8,c);NK(a,b+2|0,e,c,c);l=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;PH(e,b,8,c);MK(a,b+2|0,e,c,c);l=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;KH(e,b,4,c);LK(a,b+1|0,e,c,c);l=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FH(e,b,8,c);KK(a,b+2|0,e,c,c);l=d;return}function DA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;YH(g,b+(0-(c<<1))|0,c);ZH(e,f,8);OK(a,f,e,c,8);l=d;return}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;UH(g,b+(0-(c<<1))|0,c);VH(e,f,8);NK(a,f,e,c,8);l=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;QH(g,b+(0-(c<<1))|0,c);RH(e,f,8);MK(a,f,e,c,8);l=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;LH(g,b+(0-(c<<1))|0,c);MH(e,f,4);LK(a,f,e,c,4);l=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;GH(g,b+(0-(c<<1))|0,c);HH(e,f,8);KK(a,f,e,c,8);l=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b,8,c);YH(g,b+(0-(c<<1))|0,c);ZH(e,g+16|0,8);OK(a,f,e,c,8);l=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b,8,c);UH(g,b+(0-(c<<1))|0,c);VH(e,g+16|0,8);NK(a,f,e,c,8);l=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b,8,c);QH(g,b+(0-(c<<1))|0,c);RH(e,g+16|0,8);MK(a,f,e,c,8);l=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b,4,c);LH(g,b+(0-(c<<1))|0,c);MH(e,g+8|0,4);LK(a,f,e,c,4);l=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b,8,c);GH(g,b+(0-(c<<1))|0,c);HH(e,g+16|0,8);KK(a,f,e,c,8);l=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;XH(f,b,8,c);dI(e,d,b,8,c);OK(a,f,e,c,8);l=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;TH(f,b,8,c);cI(e,d,b,8,c);NK(a,f,e,c,8);l=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;PH(f,b,8,c);bI(e,d,b,8,c);MK(a,f,e,c,8);l=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;KH(f,b,4,c);aI(e,d,b,4,c);LK(a,f,e,c,4);l=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;FH(f,b,8,c);$H(e,d,b,8,c);KK(a,f,e,c,8);l=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b,8,c);YH(g,b+(0-(c<<1))+2|0,c);ZH(e,g+16|0,8);OK(a,f,e,c,8);l=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b,8,c);UH(g,b+(0-(c<<1))+2|0,c);VH(e,g+16|0,8);NK(a,f,e,c,8);l=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b,8,c);QH(g,b+(0-(c<<1))+2|0,c);RH(e,g+16|0,8);MK(a,f,e,c,8);l=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b,4,c);LH(g,b+(0-(c<<1))+1|0,c);MH(e,g+8|0,4);LK(a,f,e,c,4);l=d;return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b,8,c);GH(g,b+(0-(c<<1))+2|0,c);HH(e,g+16|0,8);KK(a,f,e,c,8);l=d;return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;YH(e,b+(0-(c<<1))|0,c);ZH(a,e+16|0,c);l=d;return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;UH(e,b+(0-(c<<1))|0,c);VH(a,e+16|0,c);l=d;return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;QH(e,b+(0-(c<<1))|0,c);RH(a,e+16|0,c);l=d;return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;LH(e,b+(0-(c<<1))|0,c);MH(a,e+8|0,c);l=d;return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;GH(e,b+(0-(c<<1))|0,c);HH(a,e+16|0,c);l=d;return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;YH(g,b+(0-(c<<1))|0,c);ZH(f,g+16|0,8);dI(e,d,b,8,c);OK(a,f,e,c,8);l=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;UH(g,b+(0-(c<<1))|0,c);VH(f,g+16|0,8);cI(e,d,b,8,c);NK(a,f,e,c,8);l=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;QH(g,b+(0-(c<<1))|0,c);RH(f,g+16|0,8);bI(e,d,b,8,c);MK(a,f,e,c,8);l=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;LH(g,b+(0-(c<<1))|0,c);MH(f,g+8|0,4);aI(e,d,b,4,c);LK(a,f,e,c,4);l=d;return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;GH(g,b+(0-(c<<1))|0,c);HH(f,g+16|0,8);$H(e,d,b,8,c);KK(a,f,e,c,8);l=d;return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);dI(a,d,b,c,c);l=d;return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);cI(a,d,b,c,c);l=d;return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);bI(a,d,b,c,c);l=d;return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);aI(a,d,b,c,c);l=d;return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);$H(a,d,b,c,c);l=d;return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;YH(g,b+(0-(c<<1))+2|0,c);ZH(f,g+16|0,8);dI(e,d,b,8,c);OK(a,f,e,c,8);l=d;return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;UH(g,b+(0-(c<<1))+2|0,c);VH(f,g+16|0,8);cI(e,d,b,8,c);NK(a,f,e,c,8);l=d;return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;QH(g,b+(0-(c<<1))+2|0,c);RH(f,g+16|0,8);bI(e,d,b,8,c);MK(a,f,e,c,8);l=d;return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;LH(g,b+(0-(c<<1))+1|0,c);MH(f,g+8|0,4);aI(e,d,b,4,c);LK(a,f,e,c,4);l=d;return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;GH(g,b+(0-(c<<1))+2|0,c);HH(f,g+16|0,8);$H(e,d,b,8,c);KK(a,f,e,c,8);l=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;YH(f,b+(0-(c<<1))|0,c);ZH(e,f+16|0,8);OK(a,f+24|0,e,c,8);l=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;UH(f,b+(0-(c<<1))|0,c);VH(e,f+16|0,8);NK(a,f+24|0,e,c,8);l=d;return}function rB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;QH(f,b+(0-(c<<1))|0,c);RH(e,f+16|0,8);MK(a,f+24|0,e,c,8);l=d;return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;LH(f,b+(0-(c<<1))|0,c);MH(e,f+8|0,4);LK(a,f+12|0,e,c,4);l=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;GH(f,b+(0-(c<<1))|0,c);HH(e,f+16|0,8);KK(a,f+24|0,e,c,8);l=d;return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b+c|0,8,c);YH(g,b+(0-(c<<1))|0,c);ZH(e,g+16|0,8);OK(a,f,e,c,8);l=d;return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b+c|0,8,c);UH(g,b+(0-(c<<1))|0,c);VH(e,g+16|0,8);NK(a,f,e,c,8);l=d;return}function wB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b+c|0,8,c);QH(g,b+(0-(c<<1))|0,c);RH(e,g+16|0,8);MK(a,f,e,c,8);l=d;return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b+c|0,4,c);LH(g,b+(0-(c<<1))|0,c);MH(e,g+8|0,4);LK(a,f,e,c,4);l=d;return}function yB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b+c|0,8,c);GH(g,b+(0-(c<<1))|0,c);HH(e,g+16|0,8);KK(a,f,e,c,8);l=d;return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;XH(f,b+c|0,8,c);dI(e,d,b,8,c);OK(a,f,e,c,8);l=d;return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;TH(f,b+c|0,8,c);cI(e,d,b,8,c);NK(a,f,e,c,8);l=d;return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;PH(f,b+c|0,8,c);bI(e,d,b,8,c);MK(a,f,e,c,8);l=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;KH(f,b+c|0,4,c);aI(e,d,b,4,c);LK(a,f,e,c,4);l=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;FH(f,b+c|0,8,c);$H(e,d,b,8,c);KK(a,f,e,c,8);l=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b+c|0,8,c);YH(g,b+(0-(c<<1))+2|0,c);ZH(e,g+16|0,8);OK(a,f,e,c,8);l=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b+c|0,8,c);UH(g,b+(0-(c<<1))+2|0,c);VH(e,g+16|0,8);NK(a,f,e,c,8);l=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b+c|0,8,c);QH(g,b+(0-(c<<1))+2|0,c);RH(e,g+16|0,8);MK(a,f,e,c,8);l=d;return}function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b+c|0,4,c);LH(g,b+(0-(c<<1))+1|0,c);MH(e,g+8|0,4);LK(a,f,e,c,4);l=d;return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b+c|0,8,c);GH(g,b+(0-(c<<1))+2|0,c);HH(e,g+16|0,8);KK(a,f,e,c,8);l=d;return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;JK(a,b,c);return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;IK(a,b,c);return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;HK(a,b,c);return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;GK(a,b,c);return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;FK(a,b,c);return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wK(e,b,4,c);zK(a,b,e,c,c);l=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;sK(e,b,4,c);vK(a,b,e,c,c);l=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;oK(e,b,4,c);rK(a,b,e,c,c);l=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;kK(e,b,2,c);nK(a,b,e,c,c);l=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;gK(e,b,4,c);jK(a,b,e,c,c);l=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;wK(a,b,c,c);return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;sK(a,b,c,c);return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;oK(a,b,c,c);return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;kK(a,b,c,c);return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;gK(a,b,c,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;wK(e,b,4,c);zK(a,b+2|0,e,c,c);l=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;sK(e,b,4,c);vK(a,b+2|0,e,c,c);l=d;return}function _B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;oK(e,b,4,c);rK(a,b+2|0,e,c,c);l=d;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;kK(e,b,2,c);nK(a,b+1|0,e,c,c);l=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;gK(e,b,4,c);jK(a,b+2|0,e,c,c);l=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;xK(g,b+(0-(c<<1))|0,c);yK(e,f,4);zK(a,f,e,c,4);l=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;tK(g,b+(0-(c<<1))|0,c);uK(e,f,4);vK(a,f,e,c,4);l=d;return}function dC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;pK(g,b+(0-(c<<1))|0,c);qK(e,f,4);rK(a,f,e,c,4);l=d;return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+4|0;e=d;f=g+4|0;lK(g,b+(0-(c<<1))|0,c);mK(e,f,2);nK(a,f,e,c,2);l=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;hK(g,b+(0-(c<<1))|0,c);iK(e,f,4);jK(a,f,e,c,4);l=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;wK(f,b,4,c);xK(g,b+(0-(c<<1))|0,c);yK(e,g+8|0,4);zK(a,f,e,c,4);l=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;sK(f,b,4,c);tK(g,b+(0-(c<<1))|0,c);uK(e,g+8|0,4);vK(a,f,e,c,4);l=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;oK(f,b,4,c);pK(g,b+(0-(c<<1))|0,c);qK(e,g+8|0,4);rK(a,f,e,c,4);l=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;kK(f,b,2,c);lK(g,b+(0-(c<<1))|0,c);mK(e,g+4|0,2);nK(a,f,e,c,2);l=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gK(f,b,4,c);hK(g,b+(0-(c<<1))|0,c);iK(e,g+8|0,4);jK(a,f,e,c,4);l=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;wK(f,b,4,c);EK(e,d,b,4,c);zK(a,f,e,c,4);l=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;sK(f,b,4,c);DK(e,d,b,4,c);vK(a,f,e,c,4);l=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;oK(f,b,4,c);CK(e,d,b,4,c);rK(a,f,e,c,4);l=d;return}function oC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;kK(f,b,2,c);BK(e,d,b,2,c);nK(a,f,e,c,2);l=d;return}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;gK(f,b,4,c);AK(e,d,b,4,c);jK(a,f,e,c,4);l=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;wK(f,b,4,c);xK(g,b+(0-(c<<1))+2|0,c);yK(e,g+8|0,4);zK(a,f,e,c,4);l=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;sK(f,b,4,c);tK(g,b+(0-(c<<1))+2|0,c);uK(e,g+8|0,4);vK(a,f,e,c,4);l=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;oK(f,b,4,c);pK(g,b+(0-(c<<1))+2|0,c);qK(e,g+8|0,4);rK(a,f,e,c,4);l=d;return}function tC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;kK(f,b,2,c);lK(g,b+(0-(c<<1))+1|0,c);mK(e,g+4|0,2);nK(a,f,e,c,2);l=d;return}function uC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gK(f,b,4,c);hK(g,b+(0-(c<<1))+2|0,c);iK(e,g+8|0,4);jK(a,f,e,c,4);l=d;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;xK(e,b+(0-(c<<1))|0,c);yK(a,e+8|0,c);l=d;return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;tK(e,b+(0-(c<<1))|0,c);uK(a,e+8|0,c);l=d;return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;pK(e,b+(0-(c<<1))|0,c);qK(a,e+8|0,c);l=d;return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;lK(e,b+(0-(c<<1))|0,c);mK(a,e+4|0,c);l=d;return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;hK(e,b+(0-(c<<1))|0,c);iK(a,e+8|0,c);l=d;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;xK(g,b+(0-(c<<1))|0,c);yK(f,g+8|0,4);EK(e,d,b,4,c);zK(a,f,e,c,4);l=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;tK(g,b+(0-(c<<1))|0,c);uK(f,g+8|0,4);DK(e,d,b,4,c);vK(a,f,e,c,4);l=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;pK(g,b+(0-(c<<1))|0,c);qK(f,g+8|0,4);CK(e,d,b,4,c);rK(a,f,e,c,4);l=d;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;lK(g,b+(0-(c<<1))|0,c);mK(f,g+4|0,2);BK(e,d,b,2,c);nK(a,f,e,c,2);l=d;return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;hK(g,b+(0-(c<<1))|0,c);iK(f,g+8|0,4);AK(e,d,b,4,c);jK(a,f,e,c,4);l=d;return}function FC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);EK(a,d,b,c,c);l=d;return}function GC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);DK(a,d,b,c,c);l=d;return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);CK(a,d,b,c,c);l=d;return}function IC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);BK(a,d,b,c,c);l=d;return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);AK(a,d,b,c,c);l=d;return}function KC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;xK(g,b+(0-(c<<1))+2|0,c);yK(f,g+8|0,4);EK(e,d,b,4,c);zK(a,f,e,c,4);l=d;return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;tK(g,b+(0-(c<<1))+2|0,c);uK(f,g+8|0,4);DK(e,d,b,4,c);vK(a,f,e,c,4);l=d;return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;pK(g,b+(0-(c<<1))+2|0,c);qK(f,g+8|0,4);CK(e,d,b,4,c);rK(a,f,e,c,4);l=d;return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;lK(g,b+(0-(c<<1))+1|0,c);mK(f,g+4|0,2);BK(e,d,b,2,c);nK(a,f,e,c,2);l=d;return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;hK(g,b+(0-(c<<1))+2|0,c);iK(f,g+8|0,4);AK(e,d,b,4,c);jK(a,f,e,c,4);l=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;xK(f,b+(0-(c<<1))|0,c);yK(e,f+8|0,4);zK(a,f+12|0,e,c,4);l=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;tK(f,b+(0-(c<<1))|0,c);uK(e,f+8|0,4);vK(a,f+12|0,e,c,4);l=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;pK(f,b+(0-(c<<1))|0,c);qK(e,f+8|0,4);rK(a,f+12|0,e,c,4);l=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=d+4|0;e=d;lK(f,b+(0-(c<<1))|0,c);mK(e,f+4|0,2);nK(a,f+6|0,e,c,2);l=d;return}function TC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;hK(f,b+(0-(c<<1))|0,c);iK(e,f+8|0,4);jK(a,f+12|0,e,c,4);l=d;return}function UC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;wK(f,b+c|0,4,c);xK(g,b+(0-(c<<1))|0,c);yK(e,g+8|0,4);zK(a,f,e,c,4);l=d;return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;sK(f,b+c|0,4,c);tK(g,b+(0-(c<<1))|0,c);uK(e,g+8|0,4);vK(a,f,e,c,4);l=d;return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;oK(f,b+c|0,4,c);pK(g,b+(0-(c<<1))|0,c);qK(e,g+8|0,4);rK(a,f,e,c,4);l=d;return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;kK(f,b+c|0,2,c);lK(g,b+(0-(c<<1))|0,c);mK(e,g+4|0,2);nK(a,f,e,c,2);l=d;return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gK(f,b+c|0,4,c);hK(g,b+(0-(c<<1))|0,c);iK(e,g+8|0,4);jK(a,f,e,c,4);l=d;return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;wK(f,b+c|0,4,c);EK(e,d,b,4,c);zK(a,f,e,c,4);l=d;return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;sK(f,b+c|0,4,c);DK(e,d,b,4,c);vK(a,f,e,c,4);l=d;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;oK(f,b+c|0,4,c);CK(e,d,b,4,c);rK(a,f,e,c,4);l=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;kK(f,b+c|0,2,c);BK(e,d,b,2,c);nK(a,f,e,c,2);l=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;gK(f,b+c|0,4,c);AK(e,d,b,4,c);jK(a,f,e,c,4);l=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;wK(f,b+c|0,4,c);xK(g,b+(0-(c<<1))+2|0,c);yK(e,g+8|0,4);zK(a,f,e,c,4);l=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;sK(f,b+c|0,4,c);tK(g,b+(0-(c<<1))+2|0,c);uK(e,g+8|0,4);vK(a,f,e,c,4);l=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;oK(f,b+c|0,4,c);pK(g,b+(0-(c<<1))+2|0,c);qK(e,g+8|0,4);rK(a,f,e,c,4);l=d;return}function fD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;kK(f,b+c|0,2,c);lK(g,b+(0-(c<<1))+1|0,c);mK(e,g+4|0,2);nK(a,f,e,c,2);l=d;return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;gK(f,b+c|0,4,c);hK(g,b+(0-(c<<1))+2|0,c);iK(e,g+8|0,4);jK(a,f,e,c,4);l=d;return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;eK(a,b,c);return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;dK(a,b,c);return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;cK(a,b,c);return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;bK(a,b,c);return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;FJ(e,b,32,c);IJ(a,b,e,c,c);l=d;return}function nD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;BJ(e,b,32,c);EJ(a,b,e,c,c);l=d;return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;xJ(e,b,32,c);AJ(a,b,e,c,c);l=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;tJ(e,b,16,c);wJ(a,b,e,c,c);l=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pJ(e,b,32,c);sJ(a,b,e,c,c);l=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;aK(a,b,c,c);return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c,c);return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;_J(a,b,c,c);return}function uD(a,b,c){a=a|0;b=b|0;c=c|0;ZJ(a,b,c,c);return}function vD(a,b,c){a=a|0;b=b|0;c=c|0;YJ(a,b,c,c);return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;FJ(e,b,32,c);IJ(a,b+2|0,e,c,c);l=d;return}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;BJ(e,b,32,c);EJ(a,b+2|0,e,c,c);l=d;return}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;xJ(e,b,32,c);AJ(a,b+2|0,e,c,c);l=d;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;tJ(e,b,16,c);wJ(a,b+1|0,e,c,c);l=d;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;pJ(e,b,32,c);sJ(a,b+2|0,e,c,c);l=d;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;GJ(g,b+(0-(c<<1))|0,c);HJ(e,f,32);IJ(a,f,e,c,32);l=d;return}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;CJ(g,b+(0-(c<<1))|0,c);DJ(e,f,32);EJ(a,f,e,c,32);l=d;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;yJ(g,b+(0-(c<<1))|0,c);zJ(e,f,32);AJ(a,f,e,c,32);l=d;return}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;uJ(g,b+(0-(c<<1))|0,c);vJ(e,f,16);wJ(a,f,e,c,16);l=d;return}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;qJ(g,b+(0-(c<<1))|0,c);rJ(e,f,32);sJ(a,f,e,c,32);l=d;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b,32,c);GJ(g,b+(0-(c<<1))|0,c);HJ(e,g+64|0,32);IJ(a,f,e,c,32);l=d;return}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b,32,c);CJ(g,b+(0-(c<<1))|0,c);DJ(e,g+64|0,32);EJ(a,f,e,c,32);l=d;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b,32,c);yJ(g,b+(0-(c<<1))|0,c);zJ(e,g+64|0,32);AJ(a,f,e,c,32);l=d;return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b,16,c);uJ(g,b+(0-(c<<1))|0,c);vJ(e,g+32|0,16);wJ(a,f,e,c,16);l=d;return}function KD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b,32,c);qJ(g,b+(0-(c<<1))|0,c);rJ(e,g+64|0,32);sJ(a,f,e,c,32);l=d;return}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;FJ(f,b,32,c);NJ(e,d,b,32,c);IJ(a,f,e,c,32);l=d;return}function MD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;BJ(f,b,32,c);MJ(e,d,b,32,c);EJ(a,f,e,c,32);l=d;return}function ND(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;xJ(f,b,32,c);LJ(e,d,b,32,c);AJ(a,f,e,c,32);l=d;return}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;tJ(f,b,16,c);KJ(e,d,b,16,c);wJ(a,f,e,c,16);l=d;return}function PD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;pJ(f,b,32,c);JJ(e,d,b,32,c);sJ(a,f,e,c,32);l=d;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b,32,c);GJ(g,b+(0-(c<<1))+2|0,c);HJ(e,g+64|0,32);IJ(a,f,e,c,32);l=d;return}function RD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b,32,c);CJ(g,b+(0-(c<<1))+2|0,c);DJ(e,g+64|0,32);EJ(a,f,e,c,32);l=d;return}function SD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b,32,c);yJ(g,b+(0-(c<<1))+2|0,c);zJ(e,g+64|0,32);AJ(a,f,e,c,32);l=d;return}function TD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b,16,c);uJ(g,b+(0-(c<<1))+1|0,c);vJ(e,g+32|0,16);wJ(a,f,e,c,16);l=d;return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b,32,c);qJ(g,b+(0-(c<<1))+2|0,c);rJ(e,g+64|0,32);sJ(a,f,e,c,32);l=d;return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;GJ(e,b+(0-(c<<1))|0,c);XJ(a,e+64|0,c);l=d;return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;CJ(e,b+(0-(c<<1))|0,c);WJ(a,e+64|0,c);l=d;return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;yJ(e,b+(0-(c<<1))|0,c);VJ(a,e+64|0,c);l=d;return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;uJ(e,b+(0-(c<<1))|0,c);UJ(a,e+32|0,c);l=d;return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;qJ(e,b+(0-(c<<1))|0,c);TJ(a,e+64|0,c);l=d;return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;GJ(g,b+(0-(c<<1))|0,c);HJ(f,g+64|0,32);NJ(e,d,b,32,c);IJ(a,f,e,c,32);l=d;return}function $D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;CJ(g,b+(0-(c<<1))|0,c);DJ(f,g+64|0,32);MJ(e,d,b,32,c);EJ(a,f,e,c,32);l=d;return}function aE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;yJ(g,b+(0-(c<<1))|0,c);zJ(f,g+64|0,32);LJ(e,d,b,32,c);AJ(a,f,e,c,32);l=d;return}function bE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;uJ(g,b+(0-(c<<1))|0,c);vJ(f,g+32|0,16);KJ(e,d,b,16,c);wJ(a,f,e,c,16);l=d;return}function cE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;qJ(g,b+(0-(c<<1))|0,c);rJ(f,g+64|0,32);JJ(e,d,b,32,c);sJ(a,f,e,c,32);l=d;return}function dE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);SJ(a,d,b,c,c);l=d;return}function eE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);RJ(a,d,b,c,c);l=d;return}function fE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);QJ(a,d,b,c,c);l=d;return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);PJ(a,d,b,c,c);l=d;return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);OJ(a,d,b,c,c);l=d;return}function iE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;GJ(g,b+(0-(c<<1))+2|0,c);HJ(f,g+64|0,32);NJ(e,d,b,32,c);IJ(a,f,e,c,32);l=d;return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;CJ(g,b+(0-(c<<1))+2|0,c);DJ(f,g+64|0,32);MJ(e,d,b,32,c);EJ(a,f,e,c,32);l=d;return}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;yJ(g,b+(0-(c<<1))+2|0,c);zJ(f,g+64|0,32);LJ(e,d,b,32,c);AJ(a,f,e,c,32);l=d;return}function lE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;uJ(g,b+(0-(c<<1))+1|0,c);vJ(f,g+32|0,16);KJ(e,d,b,16,c);wJ(a,f,e,c,16);l=d;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;qJ(g,b+(0-(c<<1))+2|0,c);rJ(f,g+64|0,32);JJ(e,d,b,32,c);sJ(a,f,e,c,32);l=d;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;GJ(f,b+(0-(c<<1))|0,c);HJ(e,f+64|0,32);IJ(a,f+96|0,e,c,32);l=d;return}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;CJ(f,b+(0-(c<<1))|0,c);DJ(e,f+64|0,32);EJ(a,f+96|0,e,c,32);l=d;return}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;yJ(f,b+(0-(c<<1))|0,c);zJ(e,f+64|0,32);AJ(a,f+96|0,e,c,32);l=d;return}function qE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;uJ(f,b+(0-(c<<1))|0,c);vJ(e,f+32|0,16);wJ(a,f+48|0,e,c,16);l=d;return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;qJ(f,b+(0-(c<<1))|0,c);rJ(e,f+64|0,32);sJ(a,f+96|0,e,c,32);l=d;return}function sE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b+c|0,32,c);GJ(g,b+(0-(c<<1))|0,c);HJ(e,g+64|0,32);IJ(a,f,e,c,32);l=d;return}function tE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b+c|0,32,c);CJ(g,b+(0-(c<<1))|0,c);DJ(e,g+64|0,32);EJ(a,f,e,c,32);l=d;return}function uE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b+c|0,32,c);yJ(g,b+(0-(c<<1))|0,c);zJ(e,g+64|0,32);AJ(a,f,e,c,32);l=d;return}function vE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b+c|0,16,c);uJ(g,b+(0-(c<<1))|0,c);vJ(e,g+32|0,16);wJ(a,f,e,c,16);l=d;return}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b+c|0,32,c);qJ(g,b+(0-(c<<1))|0,c);rJ(e,g+64|0,32);sJ(a,f,e,c,32);l=d;return}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;FJ(f,b+c|0,32,c);NJ(e,d,b,32,c);IJ(a,f,e,c,32);l=d;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;BJ(f,b+c|0,32,c);MJ(e,d,b,32,c);EJ(a,f,e,c,32);l=d;return}function zE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;xJ(f,b+c|0,32,c);LJ(e,d,b,32,c);AJ(a,f,e,c,32);l=d;return}function AE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;tJ(f,b+c|0,16,c);KJ(e,d,b,16,c);wJ(a,f,e,c,16);l=d;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;pJ(f,b+c|0,32,c);JJ(e,d,b,32,c);sJ(a,f,e,c,32);l=d;return}function CE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;FJ(f,b+c|0,32,c);GJ(g,b+(0-(c<<1))+2|0,c);HJ(e,g+64|0,32);IJ(a,f,e,c,32);l=d;return}function DE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;BJ(f,b+c|0,32,c);CJ(g,b+(0-(c<<1))+2|0,c);DJ(e,g+64|0,32);EJ(a,f,e,c,32);l=d;return}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;xJ(f,b+c|0,32,c);yJ(g,b+(0-(c<<1))+2|0,c);zJ(e,g+64|0,32);AJ(a,f,e,c,32);l=d;return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;tJ(f,b+c|0,16,c);uJ(g,b+(0-(c<<1))+1|0,c);vJ(e,g+32|0,16);wJ(a,f,e,c,16);l=d;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;pJ(f,b+c|0,32,c);qJ(g,b+(0-(c<<1))+2|0,c);rJ(e,g+64|0,32);sJ(a,f,e,c,32);l=d;return}function HE(a,b,c){a=a|0;b=b|0;c=c|0;oJ(a,b,c,8);return}function IE(a,b,c){a=a|0;b=b|0;c=c|0;nJ(a,b,c,8);return}function JE(a,b,c){a=a|0;b=b|0;c=c|0;mJ(a,b,c,8);return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;lJ(a,b,c,8);return}function LE(a,b,c){a=a|0;b=b|0;c=c|0;kJ(a,b,c,8);return}function ME(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;OI(e,b,16,c);RI(a,b,e,c,c,16,8);l=d;return}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;KI(e,b,16,c);NI(a,b,e,c,c,16,8);l=d;return}function OE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;GI(e,b,16,c);JI(a,b,e,c,c,16,8);l=d;return}function PE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;CI(e,b,8,c);FI(a,b,e,c,c,8,8);l=d;return}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yI(e,b,16,c);BI(a,b,e,c,c,16,8);l=d;return}function RE(a,b,c){a=a|0;b=b|0;c=c|0;jJ(a,b,c,c);return}function SE(a,b,c){a=a|0;b=b|0;c=c|0;iJ(a,b,c,c);return}function TE(a,b,c){a=a|0;b=b|0;c=c|0;hJ(a,b,c,c);return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;gJ(a,b,c,c);return}function VE(a,b,c){a=a|0;b=b|0;c=c|0;fJ(a,b,c,c);return}function WE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;OI(e,b,16,c);RI(a,b+2|0,e,c,c,16,8);l=d;return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;KI(e,b,16,c);NI(a,b+2|0,e,c,c,16,8);l=d;return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;GI(e,b,16,c);JI(a,b+2|0,e,c,c,16,8);l=d;return}function ZE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;CI(e,b,8,c);FI(a,b+1|0,e,c,c,8,8);l=d;return}function _E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;yI(e,b,16,c);BI(a,b+2|0,e,c,c,16,8);l=d;return}function $E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;PI(g,b+(0-(c<<1))|0,c);QI(e,f,16,16);RI(a,f,e,c,16,16,8);l=d;return}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;LI(g,b+(0-(c<<1))|0,c);MI(e,f,16,16);NI(a,f,e,c,16,16,8);l=d;return}function bF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;HI(g,b+(0-(c<<1))|0,c);II(e,f,16,16);JI(a,f,e,c,16,16,8);l=d;return}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;DI(g,b+(0-(c<<1))|0,c);EI(e,f,8,8);FI(a,f,e,c,8,8,8);l=d;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;zI(g,b+(0-(c<<1))|0,c);AI(e,f,16,16);BI(a,f,e,c,16,16,8);l=d;return}function eF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b,16,c);PI(g,b+(0-(c<<1))|0,c);QI(e,g+32|0,16,16);RI(a,f,e,c,16,16,8);l=d;return}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b,16,c);LI(g,b+(0-(c<<1))|0,c);MI(e,g+32|0,16,16);NI(a,f,e,c,16,16,8);l=d;return}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b,16,c);HI(g,b+(0-(c<<1))|0,c);II(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function hF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b,8,c);DI(g,b+(0-(c<<1))|0,c);EI(e,g+16|0,8,8);FI(a,f,e,c,8,8,8);l=d;return}function iF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b,16,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+32|0,16,16);BI(a,f,e,c,16,16,8);l=d;return}function jF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;OI(f,b,16,c);WI(e,d,b,16,16,c);RI(a,f,e,c,16,16,8);l=d;return}function kF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;KI(f,b,16,c);VI(e,d,b,16,16,c);NI(a,f,e,c,16,16,8);l=d;return}function lF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;GI(f,b,16,c);UI(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function mF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;CI(f,b,8,c);TI(e,d,b,8,8,c);FI(a,f,e,c,8,8,8);l=d;return}function nF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;yI(f,b,16,c);SI(e,d,b,16,16,c);BI(a,f,e,c,16,16,8);l=d;return}function oF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b,16,c);PI(g,b+(0-(c<<1))+2|0,c);QI(e,g+32|0,16,16);RI(a,f,e,c,16,16,8);l=d;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b,16,c);LI(g,b+(0-(c<<1))+2|0,c);MI(e,g+32|0,16,16);NI(a,f,e,c,16,16,8);l=d;return}function qF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b,16,c);HI(g,b+(0-(c<<1))+2|0,c);II(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function rF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b,8,c);DI(g,b+(0-(c<<1))+1|0,c);EI(e,g+16|0,8,8);FI(a,f,e,c,8,8,8);l=d;return}function sF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b,16,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+32|0,16,16);BI(a,f,e,c,16,16,8);l=d;return}function tF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;PI(e,b+(0-(c<<1))|0,c);eJ(a,e+32|0,c,16);l=d;return}function uF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;LI(e,b+(0-(c<<1))|0,c);dJ(a,e+32|0,c,16);l=d;return}function vF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;HI(e,b+(0-(c<<1))|0,c);cJ(a,e+32|0,c,16);l=d;return}function wF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;DI(e,b+(0-(c<<1))|0,c);bJ(a,e+16|0,c,8);l=d;return}function xF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;zI(e,b+(0-(c<<1))|0,c);aJ(a,e+32|0,c,16);l=d;return}function yF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;PI(g,b+(0-(c<<1))|0,c);QI(f,g+32|0,16,16);WI(e,d,b,16,16,c);RI(a,f,e,c,16,16,8);l=d;return}function zF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;LI(g,b+(0-(c<<1))|0,c);MI(f,g+32|0,16,16);VI(e,d,b,16,16,c);NI(a,f,e,c,16,16,8);l=d;return}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;HI(g,b+(0-(c<<1))|0,c);II(f,g+32|0,16,16);UI(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function BF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;DI(g,b+(0-(c<<1))|0,c);EI(f,g+16|0,8,8);TI(e,d,b,8,8,c);FI(a,f,e,c,8,8,8);l=d;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;zI(g,b+(0-(c<<1))|0,c);AI(f,g+32|0,16,16);SI(e,d,b,16,16,c);BI(a,f,e,c,16,16,8);l=d;return}function DF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);$I(a,d,b,c,16,c);l=d;return}function EF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);_I(a,d,b,c,16,c);l=d;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);ZI(a,d,b,c,16,c);l=d;return}function GF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);YI(a,d,b,c,8,c);l=d;return}function HF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);XI(a,d,b,c,16,c);l=d;return}function IF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;PI(g,b+(0-(c<<1))+2|0,c);QI(f,g+32|0,16,16);WI(e,d,b,16,16,c);RI(a,f,e,c,16,16,8);l=d;return}function JF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;LI(g,b+(0-(c<<1))+2|0,c);MI(f,g+32|0,16,16);VI(e,d,b,16,16,c);NI(a,f,e,c,16,16,8);l=d;return}function KF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;HI(g,b+(0-(c<<1))+2|0,c);II(f,g+32|0,16,16);UI(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function LF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;DI(g,b+(0-(c<<1))+1|0,c);EI(f,g+16|0,8,8);TI(e,d,b,8,8,c);FI(a,f,e,c,8,8,8);l=d;return}function MF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;zI(g,b+(0-(c<<1))+2|0,c);AI(f,g+32|0,16,16);SI(e,d,b,16,16,c);BI(a,f,e,c,16,16,8);l=d;return}function NF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;PI(f,b+(0-(c<<1))|0,c);QI(e,f+32|0,16,16);RI(a,f+48|0,e,c,16,16,8);l=d;return}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;LI(f,b+(0-(c<<1))|0,c);MI(e,f+32|0,16,16);NI(a,f+48|0,e,c,16,16,8);l=d;return}function PF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;HI(f,b+(0-(c<<1))|0,c);II(e,f+32|0,16,16);JI(a,f+48|0,e,c,16,16,8);l=d;return}function QF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;DI(f,b+(0-(c<<1))|0,c);EI(e,f+16|0,8,8);FI(a,f+24|0,e,c,8,8,8);l=d;return}function RF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;zI(f,b+(0-(c<<1))|0,c);AI(e,f+32|0,16,16);BI(a,f+48|0,e,c,16,16,8);l=d;return}function SF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b+c|0,16,c);PI(g,b+(0-(c<<1))|0,c);QI(e,g+32|0,16,16);RI(a,f,e,c,16,16,8);l=d;return}function TF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b+c|0,16,c);LI(g,b+(0-(c<<1))|0,c);MI(e,g+32|0,16,16);NI(a,f,e,c,16,16,8);l=d;return}function UF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b+c|0,16,c);HI(g,b+(0-(c<<1))|0,c);II(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function VF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b+c|0,8,c);DI(g,b+(0-(c<<1))|0,c);EI(e,g+16|0,8,8);FI(a,f,e,c,8,8,8);l=d;return}function WF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b+c|0,16,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+32|0,16,16);BI(a,f,e,c,16,16,8);l=d;return}function XF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;OI(f,b+c|0,16,c);WI(e,d,b,16,16,c);RI(a,f,e,c,16,16,8);l=d;return}function YF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;KI(f,b+c|0,16,c);VI(e,d,b,16,16,c);NI(a,f,e,c,16,16,8);l=d;return}function ZF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;GI(f,b+c|0,16,c);UI(e,d,b,16,16,c);JI(a,f,e,c,16,16,8);l=d;return}function _F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;CI(f,b+c|0,8,c);TI(e,d,b,8,8,c);FI(a,f,e,c,8,8,8);l=d;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;yI(f,b+c|0,16,c);SI(e,d,b,16,16,c);BI(a,f,e,c,16,16,8);l=d;return}function aG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;OI(f,b+c|0,16,c);PI(g,b+(0-(c<<1))+2|0,c);QI(e,g+32|0,16,16);RI(a,f,e,c,16,16,8);l=d;return}function bG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;KI(f,b+c|0,16,c);LI(g,b+(0-(c<<1))+2|0,c);MI(e,g+32|0,16,16);NI(a,f,e,c,16,16,8);l=d;return}function cG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;GI(f,b+c|0,16,c);HI(g,b+(0-(c<<1))+2|0,c);II(e,g+32|0,16,16);JI(a,f,e,c,16,16,8);l=d;return}function dG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;CI(f,b+c|0,8,c);DI(g,b+(0-(c<<1))+1|0,c);EI(e,g+16|0,8,8);FI(a,f,e,c,8,8,8);l=d;return}function eG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;yI(f,b+c|0,16,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+32|0,16,16);BI(a,f,e,c,16,16,8);l=d;return}function fG(a,b,c){a=a|0;b=b|0;c=c|0;xI(a,b,c);return}function gG(a,b,c){a=a|0;b=b|0;c=c|0;wI(a,b,c);return}function hG(a,b,c){a=a|0;b=b|0;c=c|0;vI(a,b,c);return}function iG(a,b,c){a=a|0;b=b|0;c=c|0;uI(a,b,c);return}function jG(a,b,c){a=a|0;b=b|0;c=c|0;tI(a,b,c);return}function kG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;XH(e,b,8,c);_H(a,b,e,c,c);l=d;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;TH(e,b,8,c);WH(a,b,e,c,c);l=d;return}function mG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;PH(e,b,8,c);SH(a,b,e,c,c);l=d;return}function nG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;KH(e,b,4,c);NH(a,b,e,c,c);l=d;return}function oG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FH(e,b,8,c);IH(a,b,e,c,c);l=d;return}function pG(a,b,c){a=a|0;b=b|0;c=c|0;sI(a,b,c,c);return}function qG(a,b,c){a=a|0;b=b|0;c=c|0;rI(a,b,c,c);return}function rG(a,b,c){a=a|0;b=b|0;c=c|0;qI(a,b,c,c);return}function sG(a,b,c){a=a|0;b=b|0;c=c|0;pI(a,b,c,c);return}function tG(a,b,c){a=a|0;b=b|0;c=c|0;oI(a,b,c,c);return}function uG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;XH(e,b,8,c);_H(a,b+2|0,e,c,c);l=d;return}function vG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;TH(e,b,8,c);WH(a,b+2|0,e,c,c);l=d;return}function wG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;PH(e,b,8,c);SH(a,b+2|0,e,c,c);l=d;return}function xG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;KH(e,b,4,c);NH(a,b+1|0,e,c,c);l=d;return}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;FH(e,b,8,c);IH(a,b+2|0,e,c,c);l=d;return}function zG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;YH(g,b+(0-(c<<1))|0,c);ZH(e,f,8);_H(a,f,e,c,8);l=d;return}function AG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;UH(g,b+(0-(c<<1))|0,c);VH(e,f,8);WH(a,f,e,c,8);l=d;return}function BG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;QH(g,b+(0-(c<<1))|0,c);RH(e,f,8);SH(a,f,e,c,8);l=d;return}function CG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;LH(g,b+(0-(c<<1))|0,c);MH(e,f,4);NH(a,f,e,c,4);l=d;return}function DG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;GH(g,b+(0-(c<<1))|0,c);HH(e,f,8);IH(a,f,e,c,8);l=d;return}function EG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b,8,c);YH(g,b+(0-(c<<1))|0,c);ZH(e,g+16|0,8);_H(a,f,e,c,8);l=d;return}function FG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b,8,c);UH(g,b+(0-(c<<1))|0,c);VH(e,g+16|0,8);WH(a,f,e,c,8);l=d;return}function GG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b,8,c);QH(g,b+(0-(c<<1))|0,c);RH(e,g+16|0,8);SH(a,f,e,c,8);l=d;return}function HG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b,4,c);LH(g,b+(0-(c<<1))|0,c);MH(e,g+8|0,4);NH(a,f,e,c,4);l=d;return}function IG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b,8,c);GH(g,b+(0-(c<<1))|0,c);HH(e,g+16|0,8);IH(a,f,e,c,8);l=d;return}function JG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;XH(f,b,8,c);dI(e,d,b,8,c);_H(a,f,e,c,8);l=d;return}function KG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;TH(f,b,8,c);cI(e,d,b,8,c);WH(a,f,e,c,8);l=d;return}function LG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;PH(f,b,8,c);bI(e,d,b,8,c);SH(a,f,e,c,8);l=d;return}function MG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;KH(f,b,4,c);aI(e,d,b,4,c);NH(a,f,e,c,4);l=d;return}function NG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;FH(f,b,8,c);$H(e,d,b,8,c);IH(a,f,e,c,8);l=d;return}function OG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b,8,c);YH(g,b+(0-(c<<1))+2|0,c);ZH(e,g+16|0,8);_H(a,f,e,c,8);l=d;return}function PG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b,8,c);UH(g,b+(0-(c<<1))+2|0,c);VH(e,g+16|0,8);WH(a,f,e,c,8);l=d;return}function QG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b,8,c);QH(g,b+(0-(c<<1))+2|0,c);RH(e,g+16|0,8);SH(a,f,e,c,8);l=d;return}function RG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b,4,c);LH(g,b+(0-(c<<1))+1|0,c);MH(e,g+8|0,4);NH(a,f,e,c,4);l=d;return}function SG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b,8,c);GH(g,b+(0-(c<<1))+2|0,c);HH(e,g+16|0,8);IH(a,f,e,c,8);l=d;return}function TG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;YH(e,b+(0-(c<<1))|0,c);nI(a,e+16|0,c);l=d;return}function UG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;UH(e,b+(0-(c<<1))|0,c);mI(a,e+16|0,c);l=d;return} -function uO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[215911+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)qO((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else oO((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function vO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=1;while(1){if((j|0)==3){j=1;break}k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[215911+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)qO((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else oO((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if((k|0)>=(l|0))break;n=k+4|0;if(!(a[i+(d[215911+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)qO((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else oO((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function wO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[215911+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)qO(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else oO(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function xO(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=i;g=0;while(1){if((g|0)==4){g=0;break}s=g<<2;o=b[e+(s<<1)>>1]|0;p=s|1;k=b[e+(p<<1)>>1]|0;r=k+o|0;k=o-k|0;o=s|2;q=b[e+(o<<1)>>1]|0;j=s|3;t=b[e+(j<<1)>>1]|0;n=q-t|0;q=t+q|0;c[h+(s<<2)>>2]=q+r;c[h+(p<<2)>>2]=r-q;c[h+(o<<2)>>2]=k-n;c[h+(j<<2)>>2]=n+k;g=g+1|0}while(1){if((g|0)==4)break;t=d[215907+g>>0]|0;s=c[h+(g<<2)>>2]|0;p=c[h+(g+8<<2)>>2]|0;r=p+s|0;p=s-p|0;s=c[h+(g+4<<2)>>2]|0;o=c[h+(g+12<<2)>>2]|0;q=s-o|0;s=o+s|0;b[a+(t<<1)>>1]=((N(s+r|0,f)|0)+128|0)>>>8;b[a+(t+16<<1)>>1]=((N(q+p|0,f)|0)+128|0)>>>8;b[a+(t+64<<1)>>1]=((N(p-q|0,f)|0)+128|0)>>>8;b[a+(t+80<<1)>>1]=((N(r-s|0,f)|0)+128|0)>>>8;g=g+1|0}l=i;return}function yO(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;b[a>>1]=(N(h+i|0,c)|0)>>>7;b[j>>1]=(N(e+f|0,c)|0)>>>7;b[g>>1]=(N(i-h|0,c)|0)>>>7;b[d>>1]=(N(f-e|0,c)|0)>>>7;return}function zO(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h;f=0;while(1){if((f|0)==4){f=0;break}j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}while(1){if((f|0)==2)break;k=d[215905+f>>0]|0;j=c[g+(f<<2)>>2]|0;o=c[g+(f+4<<2)>>2]|0;i=o+j|0;o=j-o|0;j=c[g+(f+2<<2)>>2]|0;p=c[g+(f+6<<2)>>2]|0;n=j-p|0;j=p+j|0;b[a+(k<<1)>>1]=((N(j+i|0,e)|0)+128|0)>>>8;b[a+(k+32<<1)>>1]=((N(n+o|0,e)|0)+128|0)>>>8;b[a+(k+64<<1)>>1]=((N(o-n|0,e)|0)+128|0)>>>8;b[a+(k+96<<1)>>1]=((N(i-j|0,e)|0)+128|0)>>>8;f=f+1|0}l=h;return}function AO(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function BO(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function CO(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function DO(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function EO(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function FO(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function GO(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function HO(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function IO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0-c|0;z=N(c,-2)|0;A=N(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function JO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function KO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function LO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=N(c,-3)|0;x=N(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=N(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;l=d[g>>0]|0;h=b+x|0;n=d[h>>0]|0;i=b+y|0;o=d[i>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[i>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){B=d[b+u>>0]|0;a[i>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[h>>0]=(l+2+n+o+p|0)>>>2;i=g;h=3;j=4;k=p;g=(l*3|0)+n+(B<<1)|0}else{h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}function MO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function NO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function OO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=N(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return}function PO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function QO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function RO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=0;while(1){if((h|0)==4)break;q=a[g+h>>0]|0;p=q<<24>>24;a:do if(q<<24>>24>=1){q=0-p|0;i=0;j=b;while(1){if((i|0)==1)break a;k=j+-1|0;l=d[k>>0]|0;m=d[j+-2>>0]|0;n=d[j>>0]|0;o=d[j+1>>0]|0;r=l-n|0;if(((((r|0)>-1?r:0-r|0)|0)<(e|0)?(r=m-l|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0)?(r=o-n|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0){r=m+4-o+(n-l<<2)>>3;r=(r|0)<(q|0)?q:(r|0)>(p|0)?p:r;o=r+l|0;a[k>>0]=o>>>0>255?(o^-2147483648)>>31:o;r=n-r|0;a[j>>0]=r>>>0>255?(r^-2147483648)>>31:r}i=i+1|0;j=j+c|0}}while(0);b=b+c|0;h=h+1|0}return}function SO(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function TO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=0-c|0;n=N(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function UO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function VO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function WO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function XO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function YO(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function ZO(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){l=pZ(0,0,b|0,c|0)|0;l=uZ(l&b|0,y&c|0,-862635923,36691299)|0;l=yZ(l|0,y|0,58)|0;l=a[216174+l>>0]|0;g=l&255;j=pZ(0,0,e|0,f|0)|0;j=uZ(j&e|0,y&f|0,-862635923,36691299)|0;j=yZ(j|0,y|0,58)|0;j=a[216174+j>>0]|0;h=j&255;i=g>>>0>h>>>0;l=xZ(b|0,c|0,l&255|0)|0;k=y;m=(k|0)>-1|(k|0)==-1&l>>>0>4294967295;b=pZ(0,0,l|0,k|0)|0;k=m?k:y;f=xZ(e|0,f|0,j&255|0)|0;e=y;j=(e|0)>-1|(e|0)==-1&f>>>0>4294967295;c=pZ(0,0,f|0,e|0)|0;b=m?l:b;c=j?f:c;f=k;e=j?e:y;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;n=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;k=n?c:b;m=n?e:f;n=pZ((n?b:c)|0,(n?f:e)|0,k|0,m|0)|0;j=y;l=pZ(0,0,n|0,j|0)|0;l=uZ(n&l|0,j&y|0,-862635923,36691299)|0;l=yZ(l|0,y|0,58)|0;l=xZ(n|0,j|0,d[216174+l>>0]|0|0)|0;b=k;c=l;f=m;e=y}b=zZ(b|0,f|0,(i?h:g)|0)|0;c=y}}else{c=f;b=e}y=c;return b|0}function _O(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=h;f=c[(c[a+28>>2]|0)+20>>2]|0;do if(((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)?(c[a+120>>2]|0)!=11:0){e=f+300|0;if((c[e>>2]|0)!=1){gi(a,16,216376,d);a=-1;break}d=f+184|0;HZ(d|0)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;GZ(a|0)|0;while(1){if((c[e>>2]|0)==1)break;wc(a|0,d|0)|0}a=c[f+328>>2]|0;IZ(d|0)|0}else g=4;while(0);if((g|0)==4)a=aP(a,b)|0;l=h;return a|0}function $O(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+880>>2]|0;a:do if((d|0)!=0?(i=c[(c[a+12>>2]|0)+124>>2]|0,(i|0)!=0):0){g=(c[d+4>>2]|0)+8|0;f=0;while(1){h=c[i+(f<<2)>>2]|0;if(!h){d=0;j=11;break a}b:do if(c[h+4>>2]&1|0?(c[g>>2]|0)==(c[h+8>>2]|0):0){e=0;while(1){d=c[b+(e<<2)>>2]|0;if((d|0)==-1)break b;if((c[h>>2]|0)==(d|0))break a;else e=e+1|0}}while(0);f=f+1|0}}else{d=0;j=11}while(0);c:do if((j|0)==11){while(1)if((c[b+(d<<2)>>2]|0)==-1)break;else{d=d+1|0;j=11}d=b+(d+-1<<2)|0;j=c[(Bj(c[d>>2]|0)|0)+8>>2]|0;if((j&8|0)==0&0==0){d=c[d>>2]|0;break}g=a+12|0;f=0;d:while(1){h=b+(f<<2)|0;if((c[h>>2]|0)==-1){d=-1;break c}else e=0;while(1){i=dP(c[g>>2]|0,e)|0;if(!i)break d;d=c[i>>2]|0;if((d|0)==(c[h>>2]|0))break;else e=e+1|0}if(!(c[i+4>>2]&4))f=f+1|0;else break c}d=c[h>>2]|0}while(0);return d|0}function aP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+80|0;if((l|0)>=(m|0))W(80);v=B+72|0;u=B+64|0;t=B+56|0;s=B+48|0;r=B+40|0;y=B+32|0;x=B+24|0;w=B+16|0;d=B;z=B+76|0;f=0;while(1){e=f+1|0;if((c[b+(f<<2)>>2]|0)==-1)break;else f=e}if((f|0)<=0){c[d>>2]=216438;c[d+4>>2]=194262;c[d+8>>2]=1310;gi(0,0,229320,d);Tb()}d=b+(f+-1<<2)|0;o=c[(Bj(c[d>>2]|0)|0)+8>>2]|0;if((o&8|0)==0&0==0)c[a+768>>2]=c[d>>2];d=Xj(e,4)|0;c[z>>2]=d;if(!d)d=-1;else{DZ(d|0,b|0,e<<2|0)|0;j=a+120|0;k=a+12|0;n=a+880|0;o=a+860|0;i=d;a:while(1){bP(a);d=Md[c[j>>2]&15](a,i)|0;if((d|0)==-1){d=-1;break}h=Bj(d)|0;if(!h){A=11;break}c[x>>2]=c[h>>2];gi(a,48,216496,x);b=0;while(1){if((b|0)>=(f|0))break;if((c[i+(b<<2)>>2]|0)==(d|0))break;b=b+1|0}if((b|0)==(f|0)){A=17;break}e=c[(c[k>>2]|0)+124>>2]|0;if(!e)break;else b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break a;if((c[g>>2]|0)==(d|0))break;else b=b+1|0}b=c[g+4>>2]|0;if((b&2|0)!=0?(p=c[o>>2]|0,(p|0)!=0):0)if((c[(c[p+4>>2]|0)+36>>2]|0)==(d|0))A=31;else{c[r>>2]=c[h>>2];gi(a,16,216591,r)}else A=25;do if((A|0)==25){A=0;if(b&1|0?(q=c[n>>2]|0,q|0):0){if((c[(c[q+4>>2]|0)+8>>2]|0)==(c[g+8>>2]|0)){A=31;break}c[s>>2]=c[h>>2];gi(a,16,216679,s);break}if(!(b&12)){c[t>>2]=c[h>>2];gi(a,16,216765,t)}else A=31}while(0);if((A|0)==31){A=0;if(!(c[g+12>>2]|0))break;c[u>>2]=c[h>>2];gi(a,48,216818,u);if((cP(a,g)|0)>=0)break}c[v>>2]=c[h>>2];gi(a,48,216862,v);b=0;while(1){if((b|0)>=(f|0)){d=b;break}if((c[i+(b<<2)>>2]|0)==(d|0)){d=b;break}b=b+1|0}while(1){b=d+1|0;if((b|0)>=(f|0))break;i=c[z>>2]|0;c[i+(d<<2)>>2]=c[i+(b<<2)>>2];d=b}f=f+-1|0;i=c[z>>2]|0}if((A|0)==11){gi(a,16,216445,w);d=-1}else if((A|0)==17){c[y>>2]=c[h>>2];gi(a,16,216531,y);d=0}ci(z)}l=B;return d|0}function bP(a){a=a|0;var b=0,d=0,e=0;b=a+592|0;d=c[b>>2]|0;if(d|0?(e=c[d+52>>2]|0,e|0):0)Ld[e&31](a)|0;ci((c[a+28>>2]|0)+60|0);c[b>>2]=0;Ni(a+860|0);return}function cP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i+8|0;e=i;g=c[b+12>>2]|0;if((c[g+16>>2]&512|0)!=0?(c[a+568>>2]|0)>-2:0){c[e>>2]=c[g>>2];gi(a,24,216919,e);d=-1163346256}else f=4;do if((f|0)==4){e=c[g+56>>2]|0;if(e|0?(f=Zi(e)|0,c[(c[a+28>>2]|0)+60>>2]=f,(f|0)==0):0){d=-12;break}f=a+592|0;c[f>>2]=g;e=c[g+48>>2]|0;if((e|0)!=0?(d=Ld[e&31](a)|0,(d|0)<0):0){c[h>>2]=Cj(c[b>>2]|0)|0;gi(a,16,216954,h);ci((c[a+28>>2]|0)+60|0);c[f>>2]=0}else d=0}while(0);l=i;return d|0}function dP(a,b){a=a|0;b=b|0;var d=0;d=c[a+124>>2]|0;a:do if((b|0)<0|(d|0)==0)a=0;else{a=0;while(1){if((a|0)>(b|0))break;if(!(c[d+(a<<2)>>2]|0)){a=0;break a}else a=a+1|0}a=c[d+(b<<2)>>2]|0}while(0);return a|0}function eP(a){a=a|0;var b=0,c=0,e=0;e=AP(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;BP(a,b);return (CP(a,b+1|0)|0)+-1|0}function fP(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[191678+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[192190+a>>0]|0|0}function gP(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[185709+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){gi(0,16,221068,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[191678+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[192190+a>>0]|0}while(0);l=i;return a|0}function hP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function iP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function jP(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[191678+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[192702+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[185709+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function kP(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(yP(d)|0){c[b>>2]=(xP(d)|0)+1;if((f|0)==3)e=(xP(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=c[j>>2]|0;if(g>>>0>i>>>0|(e+-1|0)>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e+-1;c[k+12>>2]=i;gi(h,16,217585,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;n=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;n=9}while(0);if((n|0)==9){c[a>>2]=e;e=0}l=o;return e|0}function lP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q+8|0;n=q;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(pP(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=qP(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){p=7;break a}if(i>>>0>2){p=9;break a}c[b+27256+(f<<8)+(e<<3)+4>>2]=rP(k)|0;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((p|0)==7){gi(d,16,217518,n);e=-1094995529}else if((p|0)==9){c[o>>2]=i;gi(d,16,217544,o);e=-1094995529}l=q;return e|0}function mP(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;if((l|0)>=(m|0))W(32);z=B+16|0;n=B+8|0;k=B;c[f>>2]=0;y=f+4|0;c[y>>2]=0;i=xP(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;gi(h,16,217409,k);c[j>>2]=0;i=0}v=1<>2]|0))t=0;else{i=xP(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[n>>2]=i;gi(h,16,217452,n);c[j>>2]=0;i=0}t=1<=2){A=35;break}p=f+16+(g<<2)|0;c[p>>2]=0;q=f+24+(g<<2)|0;c[q>>2]=0;r=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[r>>2]|0))break;if(yP(a)|0){j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=zP(a)|0;i=zP(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){A=38;break a}if((i<<24>>24|0)!=(i|0)){A=38;break a}if(!((i|0)==0&(j|0)==(v|0))){c[f>>2]=1;i=1;j=p;A=17}}else{c[f+32+(e<<4)+(g<<3)>>2]=v;i=0;j=f+32+(e<<4)+(g<<3)+4|0;A=17}if((A|0)==17){A=0;c[j>>2]=i}b:do if(c[u>>2]|0){if(!(yP(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=t;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}else i=0;while(1){if((i|0)>=2)break b;j=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[j>>2]=zP(a)|0;k=zP(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[b>>2]=k;n=c[j>>2]|0;if((n<<24>>24|0)!=(n|0)){A=26;break a}if((k<<24>>24|0)!=(k|0)){A=26;break a}if(!((k|0)==0&(n|0)==(t|0))){c[y>>2]=1;c[q>>2]=1}i=i+1|0}}while(0);c:do if(s?(n=c[f+32+(e<<4)+(g<<3)>>2]|0,x=e<<1,w=x+16|0,x=x+17|0,c[f+32+(x<<4)+(g<<3)>>2]=n,c[f+32+(w<<4)+(g<<3)>>2]=n,n=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(x<<4)+(g<<3)+4>>2]=n,c[f+32+(w<<4)+(g<<3)+4>>2]=n,c[u>>2]|0):0){i=0;while(1){if((i|0)==2)break c;n=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)>>2]=n;n=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)+4>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)+4>>2]=n;i=i+1|0}}while(0);e=e+1|0}if(o)g=g+1|0;else{A=35;break}}if((A|0)==26){c[j>>2]=t;c[b>>2]=0;A=38}else if((A|0)==35){if(!(c[f>>2]|0))i=(c[y>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((A|0)==38){Zk(h,217497,z);i=-1094995529}l=B;return i|0}function nP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+8|0;o=p;a:do if((c[d+44>>2]|0)!=5){k=pP(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if((d|0)>=66){f=21;break a}k=qP(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(rP(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=j&(c[g>>2]|0)+-1}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=qP(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[o>>2]=d;gi(e,16,217349,o);d=-1;break}else if((f|0)==18){c[n>>2]=k;gi(e,16,220658,n);d=-1;break}}else{d=0;f=21}}else{oP(b);if(!(pP(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}l=p;return d|0}function oP(a){a=a|0;wP(a);return}function pP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function qP(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[191678+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[192190+a>>0]|0|0}function rP(a){a=a|0;var b=0,c=0,e=0;e=sP(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;tP(a,b);return (uP(a,b+1|0)|0)+-1|0}function sP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=uP(d,32)|0;l=b;return a|0}function tP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function uP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=vP(a,b)|0;break}else{b=b+-16|0;c=(vP(a,16)|0)<>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function wP(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function xP(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[185709+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){gi(0,16,221068,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[191678+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[192190+a>>0]|0}while(0);l=i;return a|0}function yP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function zP(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[191678+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[192702+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[185709+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function AP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=CP(d,32)|0;l=b;return a|0}function BP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function CP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=hP(a,b)|0;break}else{b=b+-16|0;c=(hP(a,16)|0)<>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;FP(a,b);return (GP(a,b+1|0)|0)+-1|0}function EP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=GP(d,32)|0;l=b;return a|0}function FP(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function GP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=HP(a,b)|0;break}else{b=b+-16|0;c=(HP(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function IP(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967231){if(!(XP(b,d,e+64|0)|0)){b=(c[b>>2]|0)+e|0;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{ci(b);c[d>>2]=0}return}function JP(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;gi(g,16,220706,k);h=-1094995529}}else h=-11;l=n;return h|0}function KP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((b+3|0)>>>0>>0){d=0;while(1){f=b+d|0;if((f+3|0)>>>0>=c>>>0)break;e=d+1|0;if(a[f>>0]|0){d=e;continue}if(a[b+e>>0]|0){d=e;continue}if((a[b+(d+2)>>0]|0)==1)break;else d=e}d=d+3|0}else d=c-b|0;return d|0}function LP(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=ni(a,N(c,b)|0)|0;else a=0;return a|0}function MP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=x;s=f+52|0;c[s>>2]=0;h=0;while(1){if((h+1|0)>=(d|0))break;if(!(a[b+h>>0]|0)){i=h+-1|0;if((h|0)>0)h=(a[b+i>>0]|0)==0?i:h;i=h+2|0;if(((i|0)<(d|0)?(a[b+(h+1)>>0]|0)==0:0)?(j=a[b+i>>0]|0,(j&255)<4):0){v=9;break}}h=h+2|0}a:do if((v|0)==9){switch(j<<24>>24){case 0:case 3:break a;default:{}}d=h}while(0);b:do if((g|0)!=0&(h|0)>=(d+-1|0)){c[f+20>>2]=b;c[f+8>>2]=b;c[f+16>>2]=d;c[f+4>>2]=d}else{i=(h|0)>(d|0)?d:h;r=e+8|0;q=(c[e>>2]|0)+(c[r>>2]|0)|0;c[f>>2]=q;DZ(q|0,b|0,i|0)|0;o=f+60|0;p=f+56|0;h=i;while(1){j=i+2|0;if((j|0)>=(d|0)){v=30;break}e=b+j|0;g=a[e>>0]|0;if((g&255)<=3){j=a[b+i>>0]|0;if(!(j<<24>>24))if(g<<24>>24==0?1:(a[b+(i+1)>>0]|0)!=0)j=0;else{if(g<<24>>24!=3){w=h;u=i;break}n=h+1|0;a[q+h>>0]=0;h=h+2|0;a[q+n>>0]=0;i=i+3|0;j=c[o>>2]|0;if(!j)continue;k=c[s>>2]|0;g=k+1|0;c[s>>2]=g;e=c[p>>2]|0;if((e|0)<=(k|0)){j=e<<1;c[p>>2]=j;if((j|0)<=(k|0)){v=24;break}UP(o,j,4)|0;j=c[o>>2]|0;if(!j){v=27;break}g=c[s>>2]|0}c[j+(g+-1<<2)>>2]=n;continue}}else{a[q+h>>0]=a[b+i>>0]|0;a[q+(h+1)>>0]=a[b+(i+1)>>0]|0;h=h+2|0;i=j;j=a[e>>0]|0}a[q+h>>0]=j;h=h+1|0;i=i+1|0}c:do if((v|0)==24){c[t>>2]=218086;c[t+4>>2]=218136;c[t+8>>2]=114;gi(0,0,229320,t);Tb()}else if((v|0)==27){c[p>>2]=0;d=-12;break b}else if((v|0)==30)while(1){if((i|0)>=(d|0)){w=h;u=i;break c}a[q+h>>0]=a[b+i>>0]|0;h=h+1|0;i=i+1|0;v=30}while(0);d=q+w|0;h=d+64|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));c[f+8>>2]=q;c[f+4>>2]=w;c[f+20>>2]=b;c[f+16>>2]=u;c[r>>2]=(c[r>>2]|0)+u;d=u}while(0);l=x;return d|0}function NP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+8|0;h=c[b+4>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24)e=e+-1-(d[226463+((N(0-b&b,125613361)|0)>>>27)>>0]|0)|0}else e=-34}return e|0}function OP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function PP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;d=a+24|0;if((RP(d)|0)==0?(e=a+44|0,c[e>>2]=SP(d,6)|0,f=SP(d,6)|0,g=(SP(d,3)|0)+-1|0,c[a+48>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=TP(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;gi(b,48,217838,h);a=(f|0)==0&1}else a=-1094995529;l=i;return a|0}function QP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=a+24|0;if(!(RP(d)|0)){g=a+64|0;c[g>>2]=SP(d,2)|0;d=SP(d,5)|0;c[a+44>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;gi(b,48,217802,e);a=1}else a=-1094995529;l=f;return a|0}function RP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function SP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function TP(a){a=a|0;do switch(a|0){case 0:{a=218078;break}case 1:{a=218070;break}case 2:{a=218064;break}case 3:{a=218058;break}case 4:{a=218051;break}case 5:{a=218044;break}case 6:{a=218037;break}case 7:{a=218030;break}case 8:{a=218023;break}case 9:{a=218016;break}case 16:{a=218007;break}case 17:{a=217996;break}case 18:{a=217987;break}case 19:{a=217976;break}case 20:{a=217967;break}case 21:{a=217959;break}case 32:{a=217955;break}case 33:{a=217951;break}case 34:{a=217947;break}case 35:{a=217943;break}case 36:{a=217935;break}case 37:{a=217927;break}case 38:{a=217920;break}case 39:{a=217909;break}case 40:{a=217898;break}default:a=217896}while(0);return a|0}function UP(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=VP(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function VP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(!((WP(d,b,f)|0)==0?(e=ni(a,c[f>>2]|0)|0,(e|0)!=0):0)){di(a);e=0}l=g;return e|0}function WP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=N(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function XP(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=218161;c[h+4>>2]=218178;c[h+8>>2]=33;gi(0,0,229320,h);Tb()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;ci(b);h=Zi(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}l=i;return g|0}function YP(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;if((l|0)>=(m|0))W(48);n=u+24|0;j=u+8|0;s=u+36|0;do if((g&8|0)==0&(ZP(b,e,f,1,h)|0)<0){gi(h,24,218292,u);if((e|0)<=21801){i=e*3|0;k=((i|0)/2|0)+64|0;g=Zi(k)|0;c[s>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=224848;c[j+4>>2]=224862;c[j+8>>2]=137;gi(0,0,229320,j);Tb()}q=b+e|0;if((i|0)<=-130){c[n>>2]=224848;c[n+4>>2]=224862;c[n+8>>2]=147;gi(0,0,229320,n);Tb()}p=g;o=g+k|0;g=p;i=b;e=0;a:while(1){k=o-g|0;n=(k|0)<1;while(1){j=q-i|0;if(!j)break a;b=i;if(j>>>0>2){if((j|0)<3)break;i=b+1|0;if(((d[i>>0]|0)<<8|(d[b>>0]|0)<<16|(d[b+2>>0]|0))>>>0<4)break}else i=b+1|0;if(!((e|0)!=0|n)){t=20;break}else e=1}if((t|0)==20){t=0;e=g;a[e>>0]=a[b>>0]|0;g=e+1|0;e=0;continue}if((e|0)==0?(r=g,(k|0)>2):0){a[r+2>>0]=3;a[r+1>>0]=0;a[r>>0]=0;g=r+3|0;e=0}else e=1;i=b+2|0}g=g-p|0;r=AZ(g+65534&65535|0)|0;t=c[s>>2]|0;a[t>>0]=r;a[t+1>>0]=r>>8;ZP(c[s>>2]|0,g,f,1,h)|0;ci(s);g=0;break}}else g=-34}else g=0;while(0);l=u;return g|0}function ZP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=k;j=k+8|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;a=Uk(j,a,b,f,e,2,27,1)|0;a:do if((a|0)<0)a=0;else{h=j+16|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*68|0)+44>>2]|0;switch(e|0){case 7:{a=al(b+(g*68|0)+24|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=cl(b+(g*68|0)+24|0,f,d,c[b+(g*68|0)+12>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;gi(f,40,224965,i)}}g=g+1|0}}while(0);Ak(j);l=k;return a|0}function _P(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29592>>2]=-1;c[b+29664>>2]=c[a+92>>2];c[b+29668>>2]=c[a+96>>2];c[b+26380>>2]=3;c[b+25700>>2]=c[a+564>>2];c[b+25696>>2]=c[a+60>>2];c[b+28248>>2]=65536;c[b+29572>>2]=-1;c[b+29576>>2]=0;c[b+28264>>2]=-1;c[b+29860>>2]=-1;c[b+29712>>2]=-1;c[b+28744>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28676+(d<<2)>>2]=-2147483648;d=d+1|0}fj(b+29676|0);c[a+332>>2]=1;if(!(c[a+696>>2]&2))d=1;else d=c[a+688>>2]|0;e=b+25632|0;c[e>>2]=d;a=vj(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=Qj()|0;if((d|0)>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=Qj()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function $P(){var a=0,b=0,d=0;if(!(c[63314]|0)){c[63314]=1;c[63145]=255964;c[63147]=256;aQ(252576,8,20,218493,1,1,218513,1,1,0,0,0,4)|0;c[63149]=256988;c[63151]=8192;aQ(252592,13,36,218533,1,1,218569,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4){a=0;break}c[252608+(b<<4)+4>>2]=289756+(a<<2);d=c[166880+(b<<2)>>2]|0;c[252608+(b<<4)+12>>2]=d;aQ(252608+(b<<4)|0,8,68,218605+(b*68|0)|0,1,1,218877+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}while(1){if((a|0)==3){a=0;break}d=a+1|0;c[252672+(d<<4)+4>>2]=295308+(a<<5);c[252672+(d<<4)+12>>2]=8;aQ(252672+(d<<4)|0,3,4,219149+(a<<2)|0,1,1,219161+(a<<2)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==7){a=0;break}d=a+1|0;c[252736+(d<<4)+4>>2]=295404+(a<<7);c[252736+(d<<4)+12>>2]=32;aQ(252736+(d<<4)|0,5,8,219173+(a<<3)|0,1,1,219229+(a<<3)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==15){a=0;break}d=a+1|0;c[252864+(d<<4)+4>>2]=296300+(a<<11);c[252864+(d<<4)+12>>2]=512;aQ(252864+(d<<4)|0,9,16,219285+(a<<4)|0,1,1,219541+(a<<4)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==6)break;d=a+1|0;c[253120+(d<<4)+4>>2]=327020+(a<<5);c[253120+(d<<4)+12>>2]=8;aQ(253120+(d<<4)|0,3,7,219797+(a<<4)|0,1,1,219909+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[63309]=327212;c[63311]=96;aQ(253232,6,16,219893,1,1,220005,1,1,0,0,0,4)|0;bQ()}return}function aQ(f,g,h,i,j,k,n,o,p,q,r,s,t){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;V=l;l=l+12624|0;if((l|0)>=(m|0))W(12624);U=V+72|0;T=V+64|0;P=V+56|0;O=V+48|0;C=V+40|0;D=V+32|0;x=V+16|0;v=V;u=V+616|0;w=V+600|0;I=V+88|0;c[f>>2]=g;R=(t&4|0)!=0;do if(R)if((h+1|0)>>>0<1501){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+8>>2]=0;M=w;Q=6;break}else{c[v>>2]=220021;c[v+4>>2]=220080;c[v+8>>2]=282;gi(0,0,229320,v);Tb()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;u=Xj(h+1|0,8)|0;if(!u)S=-12;else{M=f;Q=6}}while(0);do if((Q|0)==6){L=(q|0)!=0;if(L&(s|0)>2){c[x>>2]=220103;c[x+4>>2]=220080;c[x+8>>2]=298;gi(0,0,229320,x);Tb()}J=g*3|0;K=(t&2|0)==0;B=0;v=0;while(1){if((B|0)>=(h|0)){Q=41;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=15;break}case 2:{w=b[w>>1]&255;Q=15;break}case 4:{w=c[w>>2]&255;Q=15;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==15){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if((A|0)>(g|0)){if((w&255)>32|(J|0)<(A|0)){Q=18;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=25;break}case 2:{x=e[x>>1]|0;Q=25;break}case 4:{x=c[x>>2]|0;Q=25;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==25){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}H=zZ(1,0,w&255|0)|0;G=y;if(!((G|0)>0|(G|0)==0&H>>>0>x>>>0)){Q=27;break}if(K)w=x<<32-A;else w=(d[185965+(x>>>8&255)>>0]|0)<<16|(d[185965+(x&255)>>0]|0)<<24|(d[185965+(x>>>16&255)>>0]|0)<<8|(d[185965+(x>>>24)>>0]|0);c[z>>2]=w;a:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=38;break a}case 2:{w=b[w>>1]|0;Q=38;break a}case 4:{w=c[w>>2]&65535;Q=38;break a}default:break a}}else{w=B&65535;Q=38}while(0);if((Q|0)==38){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==18){c[D>>2]=A;gi(0,16,220133,D);if(R){S=-1;break}di(u);S=-1;break}else if((Q|0)==27){c[C>>2]=x;c[C+4>>2]=B;gi(0,16,220164,C);if(R){S=-1;break}di(u);S=-1;break}else if((Q|0)==41){c[I>>2]=u;c[I+4>>2]=u+(v<<3)+-8;w=1;b:while(1){if(!w)break;w=w+-1|0;H=c[I+(w<<3)+4>>2]|0;x=c[I+(w<<3)>>2]|0;while(1){if(x>>>0>=H>>>0)continue b;C=H+-8|0;if(x>>>0>=C>>>0)break;z=H+-16|0;B=x+8|0;F=H;G=x;D=x+(F-G>>4<<3)|0;do if((cQ(x,H)|0)>0)if((cQ(H,D)|0)>0){E=D;X=c[E>>2]|0;E=c[E+4>>2]|0;Z=x;Y=c[Z+4>>2]|0;A=D;c[A>>2]=c[Z>>2];c[A+4>>2]=Y;A=x;c[A>>2]=X;c[A+4>>2]=E;A=0;break}else{Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0;break}else if((cQ(x,D)|0)>0){Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=D;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0}else A=1;while(0);if((cQ(D,H)|0)>0){Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=D;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=D;c[A>>2]=Y;c[A+4>>2]=Z;A=0}if((x|0)==(z|0))continue b;Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=C;X=c[_+4>>2]|0;E=D;c[E>>2]=c[_>>2];c[E+4>>2]=X;E=C;c[E>>2]=Y;c[E+4>>2]=Z;E=B;c:while(1){if(E>>>0>z>>>0)break;else B=E;while(1){if(B>>>0>z>>>0)break;if((cQ(B,C)|0)>=0)break;B=B+8|0}while(1){if(B>>>0>z>>>0){E=B;continue c}if((cQ(z,C)|0)<=0)break;z=z+-8|0}_=z;Z=c[_>>2]|0;_=c[_+4>>2]|0;X=B;Y=c[X+4>>2]|0;E=z;c[E>>2]=c[X>>2];c[E+4>>2]=Y;E=B;c[E>>2]=Z;c[E+4>>2]=_;E=B+8|0;z=z+-8|0}Z=E;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;B=C;X=c[B+4>>2]|0;_=E;c[_>>2]=c[B>>2];c[_+4>>2]=X;_=C;c[_>>2]=Y;c[_+4>>2]=Z;if(A|0?(D|0)==(E|0)|(D|0)==(E+-8|0):0){A=x;while(1){if(A>>>0>=H>>>0)break;if((cQ(A,A+8|0)|0)>=1)break;A=A+8|0}if((A|0)==(H|0))continue b}_=E;if((F-_|0)<(_-G|0)){A=H;B=E+8|0}else{A=z;B=x;z=H;x=E+8|0}c[I+(w<<3)>>2]=x;c[I+(w<<3)+4>>2]=z;H=A;x=B;w=w+1|0}if((cQ(x,H)|0)<=0)continue;Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;G=x;X=c[G+4>>2]|0;_=H;c[_>>2]=c[G>>2];c[_+4>>2]=X;_=x;c[_>>2]=Y;c[_+4>>2]=Z}B=0;while(1){if((B|0)>=(h|0)){Q=109;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=83;break}case 2:{w=b[w>>1]&255;Q=83;break}case 4:{w=c[w>>2]&255;Q=83;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==83){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if(!(w<<24>>24==0|(A|0)>(g|0))){if((w&255)>32|(J|0)<(A|0)){Q=86;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=93;break}case 2:{x=e[x>>1]|0;Q=93;break}case 4:{x=c[x>>2]|0;Q=93;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==93){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}_=zZ(1,0,w&255|0)|0;Z=y;if(!((Z|0)>0|(Z|0)==0&_>>>0>x>>>0)){Q=95;break}if(K)w=x<<32-A;else w=(d[185965+(x>>>8&255)>>0]|0)<<16|(d[185965+(x&255)>>0]|0)<<24|(d[185965+(x>>>16&255)>>0]|0)<<8|(d[185965+(x>>>24)>>0]|0);c[z>>2]=w;d:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=106;break d}case 2:{w=b[w>>1]|0;Q=106;break d}case 4:{w=c[w>>2]&65535;Q=106;break d}default:break d}}else{w=B&65535;Q=106}while(0);if((Q|0)==106){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==86){c[O>>2]=A;gi(0,16,220133,O);if(R){S=-1;break}di(u);S=-1;break}else if((Q|0)==95){c[P>>2]=x;c[P+4>>2]=B;gi(0,16,220164,P);if(R){S=-1;break}di(u);S=-1;break}else if((Q|0)==109){w=dQ(M,g,v,u,t)|0;if(!R){di(u);if((w|0)>=0){S=0;break}ci(M+4|0);S=w;break}u=c[M+8>>2]|0;v=c[M+12>>2]|0;if((u|0)!=(v|0)){c[T>>2]=u;c[T+4>>2]=v;gi(0,16,220200,T)}if((w|0)>-1){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];S=0;break}else{c[U>>2]=229350;c[U+4>>2]=220080;c[U+8>>2]=341;gi(0,0,229320,U);Tb()}}}}while(0);l=V;return S|0}function bQ(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<>>7&16777215)>>0]|0)|0;f=8-e|0;b=f+1|0;c=b+g|0;do if((c|0)>=9)if(!e){a[328620+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[328620+(g<<9)+(h<<1)>>0]=f+100;b=b&255;break}else{b=(h&65280|0)==0;f=(f<>>((b?0:8)-g+(d[185709+(b?h:h>>>8)>>0]|0)|0))|0;b=f&1;a[328620+(g<<9)+(h<<1)>>0]=((f+2|0)>>>1^0-b)+b;b=c&255}while(0);a[328620+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function cQ(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function dQ(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D;z=D+4|0;A=1<>2]=(c[v>>2]|0)+(B<<2);w=32-f|0;x=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0)){j=0;break}u=h+(j<<3)|0;o=a[u>>0]|0;s=o&255;n=h+(j<<3)+4|0;p=c[n>>2]|0;t=b[h+(j<<3)+2>>1]|0;c:do if((s|0)>(f|0)){t=s-f|0;k=p>>>w;a[u>>0]=t;c[n>>2]=p<=(g|0))break;o=h+(s<<3)|0;p=(d[o>>0]|0)-f|0;if((p|0)<1)break;q=h+(s<<3)+4|0;r=c[q>>2]|0;if((r>>>w|0)!=(k|0))break;a[o>>0]=p;c[q>>2]=r<(p|0)?n:p;t=s}n=(n|0)>(f|0)?f:n;if(!x)k=(d[185965+(k>>>8&255)>>0]<<16|d[185965+(k&255)>>0]<<24|d[185965+(k>>>16&255)>>0]<<8|d[185965+(k>>>24)>>0])>>>w;b[(c[z>>2]|0)+(k<<2)+2>>1]=0-n;j=dQ(e,n,s-j|0,u,i)|0;if((j|0)<0)break a;c[z>>2]=(c[v>>2]|0)+(B<<2);b[(c[z>>2]|0)+(k<<2)>>1]=j;j=t}else{r=1<>>w}else{q=1<>>8&255)>>0]<<16|d[185965+(p&255)>>0]<<24|d[185965+(p>>>16&255)>>0]<<8|d[185965+(p>>>24)>>0]}o=o&255;n=0;while(1){if((n|0)>=(r|0))break c;u=b[(c[z>>2]|0)+(k<<2)+2>>1]|0;if(!(u<<16>>16==0|(u<<16>>16|0)==(s|0))){C=11;break b}b[(c[z>>2]|0)+(k<<2)+2>>1]=o;b[(c[z>>2]|0)+(k<<2)>>1]=t;n=n+1|0;k=k+q|0}}while(0);j=j+1|0}if((C|0)==11){gi(0,16,220218,y);j=-1094995529;break}while(1){if((j|0)>=(A|0)){j=B;break a}if(!(b[(c[z>>2]|0)+(j<<2)+2>>1]|0))b[(c[z>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);l=D;return j|0}function eQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)Tb();b=(1<>2])+b|0;c[f>>2]=b;h=a+4|0;b=VP(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;FZ(b+(c[f>>2]<<2)+(-1<=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function gQ(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1672|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1680>>2]=2147483647;aq(a+1208|0,8,1);return 0}function hQ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=x+32|0;j=x+24|0;u=x+20|0;v=x+16|0;n=x+8|0;o=x;c[u>>2]=f;c[v>>2]=g;q=c[a>>2]|0;h=q+1644|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+72>>2]|0,i|0):0)Ek(c[b+68>>2]|0,i,q+40|0,q+1636|0,q+1640|0,c[b+580>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=lQ(q,f,g,b)|0;if((ei(q,g,u,v)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[v>>2]|0;break}if((g|0)<0&(g|0)!=-100){lQ(q,(c[q>>2]|0)+((c[q+8>>2]|0)+g)|0,0-g|0,b)|0;w=9}else w=9}else w=9;while(0);if((w|0)==9){mQ(a,b,c[u>>2]|0,c[v>>2]|0);h=b+760|0;if(c[h>>2]|0){c[o>>2]=c[b+84>>2];c[o+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];nQ(n,j,k);p=c[n>>2]|0;r=b+76|0;c[r>>2]=c[n+4>>2];c[r+4>>2]=p}h=c[q+1404>>2]|0;if((h|0)>-1){r=c[q+1432>>2]|0;k=h;p=c[q+1400>>2]|0}else{r=-2147483648;k=-2147483648;p=-2147483648}c[a+240>>2]=r;c[a+244>>2]=k;c[a+248>>2]=p;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((r|0)>-1?(s=c[b+80>>2]|0,t=c[b+772>>2]|0,s=uZ(t|0,((t|0)<0)<<31>>31|0,s|0,((s|0)<0)<<31>>31|0)|0,t=y,(t|0)>0|(t|0)==0&s>>>0>0):0){n=c[b+76>>2]|0;o=c[b+776>>2]|0;n=uZ(o|0,((o|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=q+1672|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{w=oQ(k,((k|0)<0)<<31>>31,n,o,s,t)|0;i=oZ(w|0,y|0,h|0,i|0)|0;h=y;w=j;c[w>>2]=i;c[w+4>>2]=h;w=21}}else{k=oQ(k,((k|0)<0)<<31>>31,n,o,s,t)|0;k=pZ(i|0,h|0,k|0,y|0)|0;b=y;f=q+1672|0;q=f;c[q>>2]=k;c[q+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))w=21}if((w|0)==21){j=a+40|0;w=j;if((c[w>>2]|0)==0?(c[w+4>>2]|0)==-2147483648:0){t=oQ(p,((p|0)<0)<<31>>31,n,o,s,t)|0;t=oZ(t|0,y|0,i|0,h|0)|0;w=j;c[w>>2]=t;c[w+4>>2]=y}}if((r|0)>0){w=f;c[w>>2]=i;c[w+4>>2]=h}}c[d>>2]=c[u>>2];c[e>>2]=c[v>>2]}l=x;return g|0}function iQ(a){a=a|0;a=c[a>>2]|0;ci(a);fj(a+1388|0);zk(a+40|0);return}function jQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[k>>2]=-1;j=d+e|0;b=0;e=d;i=0;a:while(1)b:while(1){h=(b|0)!=0;while(1){if(e>>>0>=j>>>0){b=0;break a}e=kQ(e,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}f=g&31;switch(g&31){case 8:{i=1;continue a}case 7:{b=1;continue b}default:{}}if(h&((f|0)!=15&((f|4|0)!=13&(i|(f|0)!=6)))){n=8;break a}}}if((n|0)==8){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;n=8}else break}b=b-d|0}l=o;return b|0}function kQ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;if(b>>>0>e>>>0){c[g>>2]=220443;c[g+4>>2]=196722;c[g+8>>2]=1892;gi(0,0,229320,g);Tb()}a:do if(b>>>0>>0){h=0;while(1){if((h|0)>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}while(1){if(b>>>0>=e>>>0)break;g=a[b+-1>>0]|0;if((g&255)>1){b=b+3|0;continue}if(!(a[b+-2>>0]|0)){h=b+1|0;if(!((g&255)+-1|d[b+-3>>0])){b=h;break}else{b=h;continue}}else{b=b+2|0;continue}}e=b>>>0>e>>>0?e:b;j=e+-4|0;c[f>>2]=BZ(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0}while(0);l=i;return e|0}function lQ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=z+8|0;h=z;t=z+16|0;x=b+1636|0;y=b+16|0;j=c[y>>2]|0;j=j>>>0>13?7:j;s=b+1640|0;if(c[x>>2]|0)if(!(c[s>>2]|0)){gi(g,16,220740,h);i=0}else i=0;else i=f;o=b+1340|0;p=b+1660|0;q=b+1664|0;r=b+1652|0;w=b+20|0;h=0;a:while(1){if((h|0)>=(f|0)){v=31;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Md[c[o>>2]&15](e+h|0,i-h|0)|0)+h|0;n=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{n=i;j=j^5;break b}case 0:{n=i;j=j>>>1;break b}default:{n=i;j=7;break b}}k=a[e+h>>0]|0;if(j>>>0>=6){n=c[p>>2]|0;c[p>>2]=n+1;a[b+1652+n>>0]=k;k=c[p>>2]|0;if((k|0)>5){n=c[q>>2]|0;CQ(t,r,k<<3)|0;c[p>>2]=0;k=uQ(t)|0;c[q>>2]=k;if(c[w>>2]|0){if(k>>>0<=n>>>0){v=29;break a}}else c[w>>2]=1;n=i;j=7}else n=i}else{n=i;i=k;v=20}}else{j=c[s>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){v=12;break a}h=i;n=i+k|0;j=5;i=a[e+i>>0]|0;v=20}while(0);c:do if((v|0)==20){v=0;if(((i&31)+-6&255)<4){k=(c[w>>2]|0)==0;h=h+((k^1)&1)|0;if(k){j=7;break}else{i=n;f=j;v=32;break a}}switch(i&31){case 1:case 2:case 5:break;default:{j=7;break c}}j=j+8|0}while(0);h=h+1|0;i=n}if((v|0)==12){c[u>>2]=k;c[u+4>>2]=h;gi(g,16,220777,u);v=33}else if((v|0)==29){f=j;v=32}else if((v|0)==31){c[y>>2]=j;f=(c[x>>2]|0)==0?-100:i;v=33}if((v|0)==32){c[y>>2]=7;c[w>>2]=0;l=z;return ((c[x>>2]|0)==0?h-(f&5)+(f>>>0>7?-5:0)|0:i)|0}else if((v|0)==33){l=z;return f|0}return 0}function mQ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+128|0;if((l|0)>=(m|0))W(128);w=L+24|0;B=L+16|0;y=L+8|0;x=L;K=L+112|0;u=L+44|0;v=L+40|0;H=L+32|0;J=c[b>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;h=u;i=h+68|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)p=(VV(220452,f,4)|0)==0;else p=0;z=b+32|0;c[z>>2]=1;A=b+224|0;c[A>>2]=0;G=b+312|0;c[G>>2]=0;F=J+1388|0;fj(F);c[J+1572>>2]=-1;a:do if(g|0?(IP(K,K+4|0,g),c[K>>2]|0):0){c[v>>2]=0;C=u+24|0;o=u+8|0;q=u+4|0;E=u+64|0;D=u+44|0;r=J+40|0;s=u+12|0;t=J+1640|0;i=c[J+1636>>2]|0?0:g;h=0;b:while(1){while(1){if((h|0)>=(i|0)){I=8;break}h=qQ(f,g,h,i)|0;if((h|0)>=(g|0)){I=103;break b}if((h|0)<(i|0)){I=12;break}}if((I|0)==8){I=0;c[v>>2]=h;h=pQ(c[t>>2]|0,f,g,v,e)|0;if((h|0)<0){I=104;break}k=c[v>>2]|0;n=k+h|0;h=k}else if((I|0)==12){I=0;c[v>>2]=h;n=i}i=n-h|0;k=f+h|0;M=a[k>>0]|0;j=M&255;c:do switch(M&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=MP(k,i,K,u,1)|0;if((i|0)<0){I=104;break}h=h+i|0;c[v>>2]=h;if((rQ(C,c[o>>2]|0,c[q>>2]|0)|0)<0)break;sQ(C)|0;c[E>>2]=tQ(C,2)|0;M=tQ(C,5)|0;c[D>>2]=M;switch(M|0){case 5:{I=23;break b}case 1:{I=24;break b}case 7:{al(C,e,r,0)|0;i=n;continue b}case 8:{cl(C,e,r,c[s>>2]|0)|0;i=n;continue b}case 6:{_k(F,C,r,e)|0;i=n;continue b}default:{i=n;continue b}}}if((I|0)==23){c[A>>2]=1;c[J+1384>>2]=0;c[J+1380>>2]=0;c[J+1372>>2]=0;c[J+1368>>2]=0;I=24}else if((I|0)==103){c[v>>2]=h;I=104}d:do if((I|0)==24){uQ(C)|0;c[z>>2]=d[193214+(((vQ(C)|0)>>>0)%5|0)>>0];if((c[J+1428>>2]|0)>-1)c[A>>2]=1;h=wQ(C)|0;if(h>>>0>255){c[x>>2]=h;gi(e,16,220457,x);break}i=J+168+(h<<2)|0;if(!(c[i>>2]|0)){c[y>>2]=h;gi(e,16,220481,y);break}M=J+1192|0;Ni(M);j=J+1196|0;Ni(j);q=J+1200|0;c[q>>2]=0;k=J+1204|0;c[k>>2]=0;h=Pj(c[i>>2]|0)|0;c[M>>2]=h;if(h|0){h=c[h+4>>2]|0;c[q>>2]=h;h=c[h>>2]|0;i=c[J+40+(h<<2)>>2]|0;if(!i){c[B>>2]=h;gi(e,16,220513,B);break}h=Pj(i)|0;c[j>>2]=h;if(h|0){o=c[h+4>>2]|0;c[k>>2]=o;if(((c[o+48>>2]|0)<2?(c[(c[q>>2]|0)+20>>2]|0)>>>0<2:0)?(c[z>>2]|0)==1:0)c[A>>2]=1;n=J+1344|0;p=J+1364|0;c[p>>2]=tQ(C,c[o+20>>2]|0)|0;h=c[o+56>>2]<<4;c[b+328>>2]=h;i=c[o+60>>2]<<4;c[b+332>>2]=i;M=h-(c[o+84>>2]|0)-(c[o+80>>2]|0)|0;j=b+320|0;c[j>>2]=M;B=i-(c[o+88>>2]|0)-(c[o+92>>2]|0)|0;k=b+324|0;c[k>>2]=B;if((B|0)<1|(M|0)<1){c[j>>2]=h;c[k>>2]=i}e:do switch(c[o+1184>>2]|0){case 9:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=68;break e}else{c[b+336>>2]=(h|0)==2?72:62;break e}}case 10:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=70;break e}else{c[b+336>>2]=(h|0)==2?66:64;break e}}case 8:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break e}else{c[b+336>>2]=(h|0)==2?4:0;break e}}default:c[b+336>>2]=-1}while(0);c[e+716>>2]=Up(o)|0;c[e+720>>2]=c[o+8>>2];if((c[o+64>>2]|0)==0?(sQ(C)|0)!=0:0)h=(sQ(C)|0)+1|0;else h=3;k=J+1648|0;c[k>>2]=h;if((c[D>>2]|0)==5)uQ(C)|0;i=o+24|0;h=c[i>>2]|0;if(!h){c[n>>2]=tQ(C,c[o+28>>2]|0)|0;if((c[(c[q>>2]|0)+8>>2]|0)==1?(c[k>>2]|0)==3:0)c[J+1352>>2]=xQ(C)|0;h=c[i>>2]|0}do if(((h|0)==1?(c[o+32>>2]|0)==0:0)?(c[J+1356>>2]=xQ(C)|0,(c[(c[q>>2]|0)+8>>2]|0)==1):0){if((c[k>>2]|0)!=3)break;c[J+1360>>2]=xQ(C)|0}while(0);j=H+4|0;c[j>>2]=2147483647;c[H>>2]=2147483647;if((Bo(H,b+316|0,o,n,c[k>>2]|0,c[E>>2]|0)|0)>=0){do if((c[E>>2]|0)==0|(c[D>>2]|0)==5)I=70;else{h=yQ(b,C,e)|0;if((h|0)<0)break d;if(!h){I=70;break}c[J+1384>>2]=0;h=0;i=1}while(0);if((I|0)==70){c[J+1384>>2]=c[p>>2];h=c[J+1376>>2]|0;i=0}c[J+1380>>2]=h;if(c[E>>2]|0){if(i){i=0;h=(c[k>>2]|0)==2?0:c[H>>2]|0}else{i=c[J+1348>>2]|0;h=c[n>>2]|0}c[J+1368>>2]=i;c[J+1372>>2]=h}i=(c[o+1160>>2]|0)==0;f:do if(i)I=85;else{if(!(c[F>>2]|0)){I=85;break}switch(c[J+1392>>2]|0){case 2:case 1:{h=0;break f}case 4:case 3:case 0:{h=1;break f}case 6:case 5:{h=2;break f}case 7:{h=3;break f}case 8:{h=5;break f}default:{h=(c[k>>2]|0)==3&1;break f}}}while(0);if((I|0)==85)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;g:do if((h|0)==3){c[G>>2]=3;do if(!i){if(!(c[F>>2]|0))break;switch(c[J+1392>>2]|0){case 5:case 3:{h=2;break}case 6:case 4:{h=3;break}default:h=1}c[b+308>>2]=h;break g}while(0);i=c[H>>2]|0;h=c[j>>2]|0;if((i|0)<(h|0)){c[b+308>>2]=2;break}else{c[b+308>>2]=(i|0)>(h|0)?3:1;break}}else{n=(h|0)==1?1:2;c[G>>2]=n;j=c[p>>2]|0;k=J+1680|0;h=J+1684|0;h:do if((j|0)==(c[k>>2]|0)){i=c[h>>2]|0;switch(i|0){case 3:case 0:{I=100;break h}default:{}}if((i|0)==(n|0)){I=100;break}c[b+308>>2]=(i|0)==1?2:3}else I=100;while(0);if((I|0)==100)c[b+308>>2]=0;c[h>>2]=n;c[k>>2]=j}while(0);ci(K);break a}}}}else if((I|0)==104)if(p){ci(K);break a}else{c[w>>2]=g;gi(e,16,220545,w);break}while(0);ci(K)}while(0);l=L;return}function nQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=uZ(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=y;e=c[h>>2]|0;d=c[d+4>>2]|0;e=uZ(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;Zp(b,h,g,f,e,y,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function oQ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=Pp(a,b,c,d,e,f,5)|0;return f|0}function pQ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;gi(g,16,220706,k);h=-1094995529}}else h=-11;l=n;return h|0}function qQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=-1;e=(kQ(a+d|0,a+e+1|0,g)|0)-a+-1|0;l=f;return ((e|0)>(b|0)?b:e)|0}function rQ(a,b,c){a=a|0;b=b|0;c=c|0;return CQ(a,b,c>>>0>268435455?-8:c<<3)|0}function sQ(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function tQ(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function uQ(a){a=a|0;var b=0,c=0,e=0;e=zQ(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;AQ(a,b);return (BQ(a,b+1|0)|0)+-1|0}function vQ(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[191678+a>>0]|0);return d[192190+a>>0]|0|0}function wQ(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[185709+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){gi(0,16,221068,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[191678+a>>0]|0);a=d[192190+a>>0]|0}while(0);l=h;return a|0}function xQ(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(BZ(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[191678+b>>0]|0);b=a[192702+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[185709+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function yQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+20816|0;if((l|0)>=(m|0))W(20816);t=u+16|0;k=u+8|0;j=u;q=u+40|0;i=u+32|0;r=u+24|0;s=c[a+32>>2]&3;p=c[a>>2]|0;g=p+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)wQ(b)|0;n=(s|0)==3;if(n)sQ(b)|0;o=p+1648|0;a:do if((kP(i,r,b,c[g>>2]|0,s,c[o>>2]|0,d)|0)>=0){if((s|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(sQ(b)|0){h=r+(f<<2)|0;e=0;c:while(1){a=vQ(b)|0;if(a>>>0<3){uQ(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;gi(d,16,220629,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;gi(d,16,220590,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((s|0)==2&(c[a+28>>2]|0)!=0)f=22;else f=21}else{a=c[g>>2]|0;f=21}if((f|0)==21?n&(c[a+32>>2]|0)==1:0)f=22;if((f|0)==22)mP(b,c[p+1204>>2]|0,r,s,q,c[o>>2]|0,d)|0;if(sQ(b)|0){a=0;d:while(1){if((a|0)>=66){f=33;break}e=vQ(b)|0;if(e>>>0>6){f=26;break}switch(e|0){case 5:{a=1;break a}case 0:{f=33;break d}default:{}}if((e|2|0)==3)uQ(b)|0;switch(e|0){case 2:case 3:case 4:case 6:{vQ(b)|0;break}default:{}}a=a+1|0}if((f|0)==26){c[t>>2]=e;gi(d,16,220658,t);a=-1094995529;break}else if((f|0)==33){a=0;break}}else a=0}else a=-1094995529;while(0);l=u;return a|0}function zQ(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=BQ(d,32)|0;l=b;return a|0}function AQ(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function BQ(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=tQ(a,b)|0;break}else{b=b+-16|0;c=(tQ(a,16)|0)<>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function DQ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=p+4|0;n=p;c[k>>2]=f;c[n>>2]=g;j=c[a>>2]|0;h=c[b+68>>2]|0;if(h|0?(i=j+1708|0,(c[i>>2]|0)==0):0){IQ(h,c[b+72>>2]|0,j+64|0,j+460|0,j+1700|0,j+1704|0,c[b+580>>2]|0,1,b)|0;c[i>>2]=1}do if(!(c[a+176>>2]&1)){h=JQ(a,f,g)|0;if((ei(j,h,k,n)|0)<0){c[d>>2]=0;c[e>>2]=0;h=c[n>>2]|0;break}else{f=c[k>>2]|0;i=c[n>>2]|0;o=8;break}}else{h=g;i=g;o=8}while(0);if((o|0)==8){KQ(a,f,i,b);c[d>>2]=c[k>>2];c[e>>2]=c[n>>2]}l=p;return h|0}function EQ(a){a=a|0;a=c[a>>2]|0;GQ(a+64|0);Ak(a+40|0);HQ(a+460|0);ci(a);return}function FQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p;k=d+e|0;c[n>>2]=-1;b=0;f=0;j=0;e=d;a:while(1)b:while(1){i=j&(f|0)!=0;c:while(1){h=(b|0)!=0;while(1){if(e>>>0>=k>>>0){b=0;break a}e=kQ(e,k,n)|0;g=c[n>>2]|0;if((g&-256|0)!=256){b=0;break a}q=g>>>1;g=q&63;switch(q&63){case 32:{j=1;continue a}case 33:{f=1;continue b}case 34:{b=1;continue c}default:{}}if((g|0)!=35&(h|(g|0)!=39)&i){o=9;break a}}}}if((o|0)==9){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;o=9}else break}b=b-d|0}l=p;return b|0}function GQ(a){a=a|0;var b=0;b=0;while(1){if((b|0)==16){b=0;break}Ni(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==16){b=0;break}Ni(a+64+(b<<2)|0);b=b+1|0}while(1){if((b|0)==64)break;Ni(a+128+(b<<2)|0);b=b+1|0}c[a+388>>2]=0;c[a+392>>2]=0;c[a+384>>2]=0;return}function HQ(a){a=a|0;c[a+92>>2]=0;ci(a+96|0);return}function IQ(b,e,f,g,h,i,j,k,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+32|0;if((l|0)>=(m|0))W(32);y=z+24|0;x=z+16|0;o=z;if((e|0)<=-1){c[o>>2]=224848;c[o+4>>2]=224862;c[o+8>>2]=137;gi(0,0,229320,o);Tb()}w=b+e|0;do if((e|0)>3){if(((a[b>>0]|0)==0?(a[b+1>>0]|0)==0:0)?(d[b+2>>0]|0)<=1:0){p=28;break}c[h>>2]=1;v=e>>>0<21?e:21;o=b+v|0;if((e-v|0)<1){v=1;o=w}else{v=(a[o>>0]&3)+1&255;o=o+1|0}b=o;if((w-o|0)<1){t=0;b=w}else{t=d[b>>0]|0;b=b+1|0}c[i>>2]=2;o=0;u=0;a:while(1){if((u|0)>=(t|0)){p=27;break}e=b;if((w-b|0)<1){s=0;b=w}else{s=a[e>>0]&63;b=e+1|0}if((w-b|0)<2){r=0;b=w}else{r=b;r=(AZ(d[r>>0]|d[r+1>>0]<<8|0)|0)&65535;b=b+2|0}q=0;while(1){if((q|0)>=(r|0))break;e=b;p=w-b|0;if((p|0)<2)o=0;else{o=b;o=(AZ(d[o>>0]|d[o+1>>0]<<8|0)|0)&65535}b=o+2|0;if(p>>>0>>0){p=22;break a}o=VR(e,b,f,g,c[h>>2]|0,c[i>>2]|0,j,k,n)|0;if((o|0)<0){p=24;break a}q=q+1|0;b=e+(p>>>0>b>>>0?b:p)|0}u=u+1|0}if((p|0)==22){gi(n,16,224886,x);o=-1094995529;break}else if((p|0)==24){c[y>>2]=s;c[y+4>>2]=u;gi(n,16,224923,y);break}else if((p|0)==27){c[i>>2]=v;break}}else p=28;while(0);if((p|0)==28){c[h>>2]=0;o=VR(b,e,f,g,0,c[i>>2]|0,j,k,n)|0}l=z;return o|0}function JQ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=c[b>>2]|0;j=k+32|0;k=k+20|0;h=0;a:while(1){if((h|0)>=(f|0)){b=-100;break}b=j;g=c[b>>2]|0;b=c[b+4>>2]|0;n=zZ(g|0,b|0,8)|0;i=e+h|0;m=j;c[m>>2]=n|d[i>>0];c[m+4>>2]=y;b:do if((g&-65536|0)==65536&(b&255|0)==0){b=yZ(g|0,b|0,9)|0;g=b&63;switch(b&63){case 32:case 33:case 34:case 35:case 36:case 37:case 39:break;default:if(!((b&56|0)==48|(g+-41|0)>>>0<4)){if(!(g>>>0<10|(g+-16|0)>>>0<6))break b;if((a[i>>0]|0)>=0)break b;if(c[k>>2]|0){l=12;break a}c[k>>2]=1;break b}}if(c[k>>2]|0){l=12;break a}}while(0);h=h+1|0}if((l|0)==12){c[k>>2]=0;b=h+-5|0}return b|0}function KQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o;f=c[a>>2]|0;j=f+64|0;k=f+460|0;c[a+32>>2]=1;c[a+224>>2]=0;c[a+312>>2]=0;HQ(k);i=f+40|0;a:do if((Uk(i,b,d,e,c[f+1700>>2]|0,c[f+1704>>2]|0,173,1)|0)>=0){d=f+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;f=c[i>>2]|0;g=f+(b*68|0)+24|0;h=c[f+(b*68|0)+44>>2]|0;switch(h|0){case 32:{LQ(g,e,j)|0;break}case 33:{MQ(g,e,j,1)|0;break}case 34:{NQ(g,e,j)|0;break}case 40:case 39:{OQ(g,e,k,j,h)|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 1:case 0:{if(PQ(a,f+(b*68|0)|0,e)|0)break a;break}default:{}}b=b+1|0}gi(e,16,220975,n)}while(0);l=o;return}function LQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+96|0;if((l|0)>=(m|0))W(96);x=D+80|0;v=D+72|0;s=D+64|0;q=D+56|0;p=D+48|0;o=D+40|0;n=D+32|0;k=D+24|0;j=D+16|0;i=D+8|0;B=D+84|0;z=Hj(4568)|0;c[B>>2]=z;C=z;a:do if(!z)f=-12;else{A=z+4|0;u=c[A>>2]|0;gi(d,48,224482,D);f=c[b>>2]|0;g=(c[b+4>>2]|0)-f|0;if(g>>>0>4096){c[i>>2]=g;c[i+4>>2]=4096;gi(d,24,224496,i);g=4096;f=c[b>>2]|0}c[u+4564>>2]=g;DZ(u+468|0,f|0,g|0)|0;w=vR(b,4)|0;b:do if((w|0)<=15){if((vR(b,2)|0)!=3){gi(d,16,224541,k);break}c[u+4>>2]=(vR(b,6)|0)+1;t=u+8|0;c[t>>2]=(vR(b,3)|0)+1;a[u>>0]=uR(b)|0;if((vR(b,16)|0)!=65535){gi(d,16,224580,n);break}f=c[t>>2]|0;if((f|0)>7){c[o>>2]=f;gi(d,16,224620,o);break}if((LR(b,d,u+12|0,f)|0)>=0){o=uR(b)|0;c[u+348>>2]=o;if(!o)f=(c[t>>2]|0)+-1|0;else f=0;j=d+580|0;while(1){if((f|0)>=(c[t>>2]|0))break;i=u+352+(f<<2)|0;c[i>>2]=(tR(b)|0)+1;g=u+380+(f<<2)|0;c[g>>2]=tR(b)|0;c[u+408+(f<<2)>>2]=(tR(b)|0)+-1;i=(c[i>>2]|0)+-1|0;if(i>>>0>15){r=18;break}g=c[g>>2]|0;if(g>>>0>i>>>0?(c[q>>2]=g,gi(d,24,224708,q),c[j>>2]&8|0):0)break b;f=f+1|0}if((r|0)==18){c[p>>2]=i;gi(d,16,224657,p);break}j=u+436|0;c[j>>2]=vR(b,6)|0;r=tR(b)|0;f=r+1|0;k=u+440|0;c[k>>2]=f;if(r>>>0<=1023?(o=oZ(f|0,((f|0)<0)<<31>>31|0,-1,-1)|0,q=y,h=c[j>>2]|0,r=oZ(h|0,((h|0)<0)<<31>>31|0,1,0)|0,q=uZ(r|0,y|0,o|0,q|0)|0,o=y,r=BR(b)|0,p=((r|0)<0)<<31>>31,!((o|0)>(p|0)|(o|0)==(p|0)&q>>>0>r>>>0)):0){i=1;while(1){if((i|0)<(f|0)){g=0;f=h}else break;while(1){if((g|0)>(f|0))break;PR(b,1);g=g+1|0;f=c[j>>2]|0}i=i+1|0;h=f;f=c[k>>2]|0}s=(uR(b)|0)&255;a[u+444>>0]=s;c:do if(s<<24>>24){c[u+448>>2]=HR(b,32)|0;c[u+452>>2]=HR(b,32)|0;s=(uR(b)|0)&255;a[u+456>>0]=s;if(s<<24>>24)c[u+460>>2]=(tR(b)|0)+1;f=tR(b)|0;h=u+464|0;c[h>>2]=f;if(f>>>0>(c[k>>2]|0)>>>0){c[v>>2]=f;gi(d,16,224785,v);break b}else g=0;while(1){if((g|0)>=(f|0))break c;tR(b)|0;if(!g)f=1;else f=uR(b)|0;QR(b,f,c[t>>2]|0);g=g+1|0;f=c[h>>2]|0}}while(0);uR(b)|0;f=BR(b)|0;if((f|0)<0){c[x>>2]=0-f;gi(d,16,224823,x);f=e+(w<<2)|0;if(c[f>>2]|0)break}else{f=e+(w<<2)|0;g=c[f>>2]|0;if((g|0)!=0?(VV(c[g+4>>2]|0,c[A>>2]|0,c[z+8>>2]|0)|0)==0:0){Ni(B);f=0;break a}}UR(e,w);c[f>>2]=C;f=0;break a}gi(d,16,224751,s)}}else{c[j>>2]=w;gi(d,16,222246,j)}while(0);Ni(B);f=-1094995529}while(0);l=D;return f|0}function MQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=r+16|0;h=r+8|0;n=r+44|0;i=r+40|0;o=Hj(17552)|0;c[n>>2]=o;p=o;do if(!o)f=-12;else{q=o+4|0;j=c[q>>2]|0;gi(b,48,222031,r);f=c[a>>2]|0;g=(c[a+4>>2]|0)-f|0;if(g>>>0>4096){c[h>>2]=g;c[h+4>>2]=4096;gi(b,24,222045,h);g=4096;f=c[a>>2]|0}c[j+17548>>2]=g;DZ(j+13452|0,f|0,g|0)|0;f=JR(j,a,i,e,d,b)|0;if((f|0)<0){Ni(n);break}h=c[i>>2]|0;if(c[b+576>>2]&4|0){g=c[j+13376>>2]|0;a=c[j+13380>>2]|0;e=g-(c[j+12>>2]|0)-(c[j+16>>2]|0)|0;i=a-(c[j+20>>2]|0)-(c[j+24>>2]|0)|0;j=Cj(c[j+56>>2]|0)|0;c[k>>2]=h;c[k+4>>2]=g;c[k+8>>2]=a;c[k+12>>2]=e;c[k+16>>2]=i;c[k+20>>2]=j;gi(b,48,222090,k)}f=d+64+(h<<2)|0;g=c[f>>2]|0;if(g|0?(VV(c[g+4>>2]|0,c[q>>2]|0,c[o+8>>2]|0)|0)==0:0){Ni(n);f=0;break}KR(d,h);c[f>>2]=p;f=0}while(0);l=r;return f|0}function NQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+144|0;if((l|0)>=(m|0))W(144);I=K+120|0;G=K+112|0;E=K+104|0;D=K+96|0;B=K+88|0;z=K+80|0;w=K+72|0;v=K+64|0;t=K+56|0;s=K+48|0;r=K+40|0;o=K+32|0;n=K+24|0;k=K+16|0;j=K+8|0;h=K;J=K+128|0;x=K+124|0;g=Zi(5792)|0;c[x>>2]=g;a:do if(!g)f=-12;else{C=yj(g,5792,200,0,0)|0;c[J>>2]=C;H=C;if(!C){ci(x);f=-12;break}gi(d,48,221244,h);h=c[b>>2]|0;i=(c[b+4>>2]|0)-h|0;if(i>>>0>4096){c[j>>2]=i;c[j+4>>2]=4096;gi(d,24,221258,j);i=4096;h=c[b>>2]|0}c[g+5788>>2]=i;DZ(g+1692|0,h|0,i|0)|0;a[g+53>>0]=1;u=g+44|0;c[u>>2]=1;p=g+48|0;c[p>>2]=1;q=g+52|0;a[q>>0]=1;a[g+57>>0]=0;c[g+60>>2]=0;c[g+64>>2]=0;a[g+1629>>0]=2;C=tR(b)|0;b:do if(C>>>0<=63){i=tR(b)|0;c[g>>2]=i;if(i>>>0>15){c[n>>2]=i;gi(d,16,221328,n);f=-1094995529;break}h=c[e+64+(i<<2)>>2]|0;if(!h){c[o>>2]=i;gi(d,16,221353,o);f=-1094995529;break}A=c[h+4>>2]|0;a[g+41>>0]=uR(b)|0;a[g+39>>0]=uR(b)|0;c[g+1624>>2]=vR(b,3)|0;a[g+4>>0]=uR(b)|0;a[g+5>>0]=uR(b)|0;c[g+8>>2]=(tR(b)|0)+1;c[g+12>>2]=(tR(b)|0)+1;c[g+16>>2]=wR(b)|0;a[g+20>>0]=uR(b)|0;a[g+21>>0]=uR(b)|0;o=(uR(b)|0)&255;a[g+22>>0]=o;h=g+24|0;c[h>>2]=0;do if(o<<24>>24){i=tR(b)|0;c[h>>2]=i;if((i|0)>=0?i>>>0<=(c[A+13324>>2]|0)>>>0:0)break;c[r>>2]=i;gi(d,16,221377,r);f=-1094995529;break b}while(0);h=wR(b)|0;c[g+28>>2]=h;if((h+12|0)>>>0>24){c[s>>2]=h;gi(d,16,221415,s);f=-1094995529;break}h=wR(b)|0;c[g+32>>2]=h;if((h+12|0)>>>0>24){c[t>>2]=h;gi(d,16,221450,t);f=-1094995529;break}a[g+36>>0]=uR(b)|0;a[g+37>>0]=uR(b)|0;a[g+38>>0]=uR(b)|0;a[g+40>>0]=uR(b)|0;t=g+42|0;a[t>>0]=uR(b)|0;a[g+43>>0]=uR(b)|0;do if(a[t>>0]|0){c[u>>2]=(tR(b)|0)+1;h=tR(b)|0;i=h+1|0;c[p>>2]=i;j=c[u>>2]|0;if((j|0)>=1?(j|0)<(c[A+13376>>2]|0):0){if((i|0)>=1?(i|0)<(c[A+13380>>2]|0):0){n=g+1648|0;c[n>>2]=Xj(j,4)|0;w=Xj(c[p>>2]|0,4)|0;c[g+1652>>2]=w;if((c[n>>2]|0)==0|(w|0)==0){f=-12;break b}w=(uR(b)|0)&255;a[q>>0]=w;do if(!(w<<24>>24)){g=0;j=0;k=0;while(1){i=(c[u>>2]|0)+-1|0;if((g|0)>=(i|0))break;w=(tR(b)|0)+1|0;c[(c[n>>2]|0)+(g<<2)>>2]=w;w=oZ(j|0,k|0,w|0,0)|0;g=g+1|0;j=w;k=y}g=c[A+13384>>2]|0;h=((g|0)<0)<<31>>31;if(!(k>>>0>>0|(k|0)==(h|0)&j>>>0>>0)){gi(d,16,221566,z);f=-1094995529;break b}g=pZ(g|0,h|0,j|0,k|0)|0;c[(c[n>>2]|0)+(i<<2)>>2]=g;g=c[x>>2]|0;i=g+48|0;j=g+1652|0;h=0;n=0;o=0;while(1){k=(c[i>>2]|0)+-1|0;if((h|0)>=(k|0))break;z=(tR(b)|0)+1|0;c[(c[j>>2]|0)+(h<<2)>>2]=z;z=oZ(n|0,o|0,z|0,0)|0;h=h+1|0;n=z;o=y}h=c[A+13388>>2]|0;i=((h|0)<0)<<31>>31;if(o>>>0>>0|(o|0)==(i|0)&n>>>0>>0){B=pZ(h|0,i|0,n|0,o|0)|0;c[(c[j>>2]|0)+(k<<2)>>2]=B;break}else{gi(d,16,221588,B);f=-1094995529;break b}}while(0);a[g+53>>0]=uR(b)|0;break}c[w>>2]=h;gi(d,16,221527,w);f=-1094995529;break b}c[v>>2]=j+-1;gi(d,16,221485,v);f=-1094995529;break b}while(0);a[g+54>>0]=uR(b)|0;B=(uR(b)|0)&255;a[g+55>>0]=B;do if(B<<24>>24?(a[g+56>>0]=uR(b)|0,B=(uR(b)|0)&255,a[g+57>>0]=B,B<<24>>24==0):0){h=wR(b)|0;i=wR(b)|0;if((h+6|0)>>>0>12){c[D>>2]=h;gi(d,16,221611,D);f=-1094995529;break b}if((i+6|0)>>>0>12){c[E>>2]=i;gi(d,16,221650,E);f=-1094995529;break b}else{c[g+60>>2]=h<<1;c[g+64>>2]=i<<1;break}}while(0);E=(uR(b)|0)&255;a[g+68>>0]=E;if(E<<24>>24?(xR(g+69|0),f=yR(b,d,g+69|0,A)|0,(f|0)<0):0)break;a[g+1617>>0]=uR(b)|0;f=tR(b)|0;if(f>>>0>(c[A+13336>>2]|0)>>>0){c[G>>2]=f;gi(d,16,221687,G);f=-1094995529;break}c[g+1620>>2]=f+2;a[g+1628>>0]=uR(b)|0;if((uR(b)|0?(G=uR(b)|0,vR(b,7)|0,(G|0)!=0&(a[A+302>>0]|0)==4):0)?(F=zR(b,d,g,A)|0,(F|0)<0):0){f=F;break}f=AR(g,A)|0;if((f|0)>=0){g=BR(b)|0;if((g|0)<0){c[I>>2]=0-g;gi(d,16,221738,I);break}else{CR(e,C);c[e+128+(C<<2)>>2]=H;f=0;break a}}}else{c[k>>2]=C;gi(d,16,221303,k);f=-1094995529}while(0);Ni(J)}while(0);l=K;return f|0}function OQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;while(1){f=VQ(a,b,c,d,e)|0;if((f|0)<0)break;if(!(WQ(a)|0)){f=1;break}}return f|0}function PQ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;if((l|0)>=(m|0))W(32);w=A+24|0;u=A+16|0;j=A+8|0;i=A;y=c[b>>2]|0;v=e+24|0;q=y+628|0;a[q>>0]=QQ(v)|0;x=c[y+548>>2]|0;c[b+312>>2]=x;c[b+308>>2]=x;x=e+44|0;if((c[x>>2]&-8|0)==16){c[b+224>>2]=1;a[y+1242>>0]=QQ(v)|0}g=RQ(v)|0;c[y+608>>2]=g;a:do if(g>>>0<=63?(h=c[y+192+(g<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;t=y+456|0;c[t>>2]=g;g=c[g>>2]|0;if(g>>>0<=15?(k=c[y+128+(g<<2)>>2]|0,k|0):0){s=y+452|0;h=c[s>>2]|0;g=c[k+4>>2]|0;if((h|0)==(g|0)){g=h;h=c[y+448>>2]|0}else{c[s>>2]=g;h=c[(c[y+64+(c[g>>2]<<2)>>2]|0)+4>>2]|0;c[y+448>>2]=h}j=c[g+13376>>2]|0;c[b+328>>2]=j;k=c[g+13380>>2]|0;c[b+332>>2]=k;c[b+320>>2]=j-(c[g+12>>2]|0)-(c[g+16>>2]|0);c[b+324>>2]=k-(c[g+20>>2]|0)-(c[g+24>>2]|0);c[b+336>>2]=c[g+56>>2];c[f+716>>2]=d[g+302>>0];c[f+720>>2]=d[g+335>>0];if(!(a[h+444>>0]|0)){if(c[g+240>>2]|0){o=g+244|0;p=g+248|0;z=16}}else{o=h+448|0;p=h+452|0;z=16}if((z|0)==16?(n=c[o>>2]|0,r=c[p>>2]|0,(n|0)!=0&(r|0)!=0):0)Zp(f+764|0,f+760|0,n,((n|0)<0)<<31>>31,r,((r|0)<0)<<31>>31,1073741824,0)|0;do if(!(a[q>>0]|0)){if(!(a[(c[t>>2]|0)+41>>0]|0))g=0;else g=(QQ(v)|0)&255;k=y+629|0;a[k>>0]=g;h=c[s>>2]|0;i=c[h+13384>>2]|0;h=c[h+13388>>2]|0;g=(N(i<<1,h)|0)+-2|0;q=g>>>0>65535;g=q?g>>>16:g;q=q?16:0;r=(g&65280|0)==0;g=(r?q:q|8)+(d[185709+(r?g:g>>>8)>>0]|0)|0;if(!g){j=0;g=i}else{j=SQ(v,g)|0;g=c[s>>2]|0;h=c[g+13388>>2]|0;g=c[g+13384>>2]|0}c[y+612>>2]=j;if(j>>>0<(N(h,g)|0)>>>0)if(!(a[k>>0]|0)){g=0;break}else{g=0;break a}else{c[u>>2]=j;gi(f,16,221007,u);g=-1094995529;break a}}else{a[y+629>>0]=0;g=0}while(0);while(1){if((g|0)>=(c[(c[t>>2]|0)+1624>>2]|0))break;TQ(v);g=g+1|0}g=RQ(v)|0;c[y+620>>2]=g;if(g>>>0>=3){c[w>>2]=g;gi(f,16,221043,w);g=-1094995529;break}c[b+32>>2]=(g|0)==0?3:(g|0)==1?2:1;if(a[(c[t>>2]|0)+39>>0]|0)a[y+630>>0]=QQ(v)|0;if(a[(c[s>>2]|0)+8>>0]|0)a[y+631>>0]=SQ(v,2)|0;if(((c[x>>2]|0)+-19|0)>>>0<2)g=0;else{g=SQ(v,c[(c[s>>2]|0)+60>>2]|0)|0;c[y+624>>2]=g;g=UQ(c[s>>2]|0,c[y+1716>>2]|0,g,c[x>>2]|0)|0}c[y+1712>>2]=g;c[b+316>>2]=g;if(c[e+48>>2]|0){g=1;break}switch(c[x>>2]|0){case 9:case 7:case 8:case 6:case 4:case 2:case 0:{g=1;break a}default:{}}c[y+1716>>2]=g;g=1;break}c[j>>2]=g;gi(f,16,221328,j);g=-1094995529}else z=5;while(0);if((z|0)==5){c[i>>2]=g;gi(f,16,221303,i);g=-1094995529}l=A;return g|0}function QQ(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function RQ(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[185709+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){gi(0,16,221068,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[191678+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[192190+a>>0]|0}while(0);l=i;return a|0}function SQ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function TQ(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function UQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=1<>2];g=(b|0)%(f|0)|0;a=b-g|0;if((g|0)>(d|0)?(g-d|0)>=((f|0)/2|0|0):0)a=a+f|0;else if((g|0)<(d|0))a=a-((d-g|0)>((f|0)/2|0|0)?f:0)|0;return ((e+-16|0)>>>0<3?0:a)+d|0}function VQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);gi(b,48,221092,j);f=255;h=0;while(1){if((f|0)!=255){f=0;g=255;i=5;break}if((h|0)>2147483392|(XQ(a)|0)<16){f=-1094995529;break}g=_Q(a,8)|0;f=g;h=g+h|0}a:do if((i|0)==5){while(1){if((g|0)!=255)break;i=XQ(a)|0;k=((i|0)<0)<<31>>31;g=zZ(f|0,((f|0)<0)<<31>>31|0,3)|0;g=oZ(g|0,y|0,8,0)|0;n=y;if((n|0)>(k|0)|(n|0)==(k|0)&g>>>0>i>>>0){f=-1094995529;break a}g=_Q(a,8)|0;f=g+f|0;i=5}if((e|0)==39){f=$Q(a,b,c,d,h,f)|0;break}else{aR(a,b,c,h,f);f=0;break}}while(0);l=j;return f|0}function WQ(a){a=a|0;if((XQ(a)|0)>0)a=(YQ(a)|0)!=128&1;else a=0;return a|0}function XQ(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(ZQ(a)|0)|0}function YQ(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>24|0}function ZQ(a){a=a|0;return c[a+8>>2]|0}function _Q(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function $Q(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;do switch(f|0){case 256:{bR(d,a);a=0;break}case 45:{eR(d+52|0,a);a=0;break}case 47:{fR(d+72|0,a);a=0;break}case 1:{a=gR(d,a,e,b,g)|0;break}case 137:{hR(d+100|0,a);a=0;break}case 144:{iR(d+128|0,a);a=0;break}case 129:{a=jR(d,a,b)|0;break}case 4:{a=kR(d,a,g)|0;break}case 147:{lR(d+140|0,a);a=0;break}default:{c[h>>2]=f;gi(b,48,221129,h);cR(a,g<<3);a=0}}while(0);l=i;return a|0}function aR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if((e|0)==132)bR(d,a);else{c[g>>2]=e;gi(b,48,221106,g);cR(a,f<<3)}l=h;return}function bR(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=(_Q(c,8)|0)&255;f=b+48|0;d=0;while(1){if((d|0)==3)break;a:do switch(g<<24>>24){case 0:{a[f>>0]=1;e=0;while(1){if((e|0)==16)break a;a[b+(d<<4)+e>>0]=_Q(c,8)|0;e=e+1|0}}case 1:{dR(c,16);break}case 2:{dR(c,32);break}default:{}}while(0);d=d+1|0}return}function cR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function dR(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;oR(b)|0;d=(rR(b)|0)==0;c[a>>2]=d&1;if(d){d=a+4|0;c[d>>2]=_Q(b,7)|0;e=a+12|0;c[e>>2]=rR(b)|0;c[a+8>>2]=_Q(b,6)|0;dR(b,3);c[a+16>>2]=rR(b)|0;dR(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)dR(b,16);dR(b,8);qR(b)}qR(b);return}function fR(a,b){a=a|0;b=b|0;var d=0;d=(rR(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=rR(b)|0;c[a+12>>2]=rR(b)|0;c[a+4>>2]=_Q(b,16)|0;qR(b)}return}function gR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j+8|0;g=j;d=c[d+64+(c[a+136>>2]<<2)>>2]|0;if(!d)f=-12;else{if(c[(c[d+4>>2]|0)+216>>2]|0){d=_Q(b,4)|0;a=a+88|0;c[a>>2]=0;switch(d|0){case 2:case 10:case 12:{gi(e,48,221219,g);d=2;i=6;break}case 1:case 9:case 11:{gi(e,48,221233,h);d=1;i=6;break}default:{}}if((i|0)==6)c[a>>2]=d;_Q(b,2)|0;_Q(b,1)|0;qR(b);f=f+-1|0}cR(b,f<<3);f=0}l=j;return f|0}function hR(a,d){a=a|0;d=d|0;var e=0,f=0;e=0;while(1){f=(_Q(d,16)|0)&65535;if((e|0)==3)break;b[a+4+(e<<2)>>1]=f;b[a+4+(e<<2)+2>>1]=_Q(d,16)|0;e=e+1|0}b[a+16>>1]=f;b[a+18>>1]=_Q(d,16)|0;c[a+20>>2]=mR(d,32)|0;c[a+24>>2]=mR(d,32)|0;c[a>>2]=2;return}function iR(a,d){a=a|0;d=d|0;b[a+4>>1]=mR(d,16)|0;b[a+6>>1]=mR(d,16)|0;c[a>>2]=2;return}function jR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h+8|0;e=h;_Q(b,4)|0;_Q(b,1)|0;_Q(b,1)|0;g=oR(b)|0;a:do if(g>>>0>15){c[e>>2]=g;gi(d,16,221152,e);e=-1094995529}else{e=oR(b)|0;if(e>>>0>15){c[f>>2]=e;gi(d,16,221183,f);e=-1094995529;break}c[a+136>>2]=e;e=1;while(1){if((e|0)>(g|0)){e=0;break a}oR(b)|0;e=e+1|0}}while(0);l=h;return e|0}function kR(a,b,c){a=a|0;b=b|0;c=c|0;do if((c|0)>=7){if((_Q(b,8)|0)==255){dR(b,8);c=c+-8|0}else c=c+-7|0;dR(b,8);dR(b,8);if((mR(b,32)|0)==1195456820){c=nR(a+92|0,b,c)|0;break}else{cR(b,c<<3);c=0;break}}else c=-22;while(0);return c|0}function lR(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=_Q(b,8)|0;return}function mR(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=_Q(a,b)|0;break}else{b=b+-16|0;c=(_Q(a,16)|0)<=3){if((_Q(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}dR(d,8);e=e+1|0}}dR(d,1);if(((_Q(d,1)|0)!=0?(dR(d,1),g=_Q(d,5)|0,dR(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=uZ(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=oZ(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=rm(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(_Q(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(_Q(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(_Q(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}dR(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function oR(a){a=a|0;var b=0,c=0,e=0;e=pR(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;cR(a,b);return (mR(a,b+1|0)|0)+-1|0}function pR(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=mR(d,32)|0;l=b;return a|0}function qR(a){a=a|0;dR(a,1);return}function rR(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function sR(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=a;c[d>>2]=b;ci(b+1648|0);ci(b+1652|0);ci(b+1656|0);ci(b+1660|0);ci(b+1664|0);ci(b+1668|0);ci(b+1672|0);ci(b+1680|0);ci(b+1676|0);ci(b+1688|0);ci(d);l=a;return}function tR(a){a=a|0;var b=0,c=0,e=0;e=FR(a,32)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;GR(a,b);return (HR(a,b+1|0)|0)+-1|0}function uR(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function vR(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function wR(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[191678+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[192702+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[185709+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function xR(b){b=b|0;var c=0,d=0,e=0;c=0;while(1){if((c|0)==6)break;d=b+(c<<6)|0;e=d+16|0;do{a[d>>0]=16;d=d+1|0}while((d|0)<(e|0));a[b+1536+c>>0]=16;a[b+1542+c>>0]=16;c=c+1|0}d=b+384|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+448|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+512|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+576|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+640|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+704|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+768|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+832|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+896|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+960|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1024|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1088|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1152|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1216|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1280|0;c=221903;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1344|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1408|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1472|0;c=221967;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));return}function yR(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);v=w;o=0;a:while(1){if((o|0)>=4){i=20;break}s=(o|0)==3?3:1;t=(o|0)>0?64:16;u=(o|0)>1;q=o+-2|0;n=1<<(o<<1)+4;n=(n|0)<64?n:64;r=(o|0)==0;p=0;while(1){if((p|0)>=6)break;b:do if(!(((uR(b)|0)&255)<<24>>24)){h=tR(b)|0;if(h|0){h=N(h,s)|0;if(p>>>0>>0){i=8;break a}h=p-h|0;DZ(f+(o*384|0)+(p<<6)|0,f+(o*384|0)+(h<<6)|0,t|0)|0;if(u)a[f+1536+(q*6|0)+p>>0]=a[f+1536+(q*6|0)+h>>0]|0}}else{if(u){i=(wR(b)|0)+8|0;a[f+1536+(q*6|0)+p>>0]=i;h=0}else{h=0;i=8}while(1){if((h|0)>=(n|0))break b;if(r){j=(d[220831+h>>0]|0)<<2;k=220815+h|0}else{j=(d[220911+h>>0]|0)<<3;k=220847+h|0}j=j+(d[k>>0]|0)|0;k=(wR(b)|0)+i|0;a[f+(o*384|0)+(p<<6)+j>>0]=k;h=h+1|0;i=k&255}}while(0);p=p+s|0}o=o+1|0}if((i|0)==8){c[v>>2]=h;gi(e,16,221862,v);h=-1094995529}else if((i|0)==20)if((c[g+4>>2]|0)==3){h=0;while(1){if((h|0)==64)break;a[f+1216+h>>0]=a[f+832+h>>0]|0;a[f+1280+h>>0]=a[f+896+h>>0]|0;a[f+1408+h>>0]=a[f+1024+h>>0]|0;a[f+1472+h>>0]=a[f+1088+h>>0]|0;h=h+1|0}a[f+1543>>0]=a[f+1537>>0]|0;a[f+1544>>0]=a[f+1538>>0]|0;a[f+1546>>0]=a[f+1540>>0]|0;a[f+1547>>0]=a[f+1541>>0]|0;h=0}else h=0;l=w;return h|0}function zR(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);p=q+16|0;o=q+8|0;i=q;if(a[f+21>>0]|0)a[f+1629>>0]=(tR(b)|0)+2;a[f+1630>>0]=uR(b)|0;k=(uR(b)|0)&255;a[f+1631>>0]=k;a:do if(!(k<<24>>24))j=12;else{a[f+1632>>0]=tR(b)|0;r=tR(b)|0;h=r&255;k=f+1633|0;a[k>>0]=h;if((r&254)>>>0>5){gi(e,16,221763,i);break}else i=0;while(1){if((i|0)>(h&255|0)){j=12;break a}r=(ER(b)|0)&255;a[f+1634+i>>0]=r;if(r<<24>>24)gi(e,24,221827,o);r=(ER(b)|0)&255;a[f+1640+i>>0]=r;if(r<<24>>24)gi(e,24,221827,p);i=i+1|0;h=a[k>>0]|0}}while(0);if((j|0)==12?(r=f+1646|0,a[r>>0]=tR(b)|0,n=tR(b)|0,a[f+1647>>0]=n,p=c[g+44>>2]|0,(((p|0)>10?p+-10|0:0)|0)>=(d[r>>0]|0)):0){r=c[g+48>>2]|0;l=q;return ((((r|0)>10?r+-10|0:0)|0)<(n&255|0)?-1094995529:0)|0}l=q;return -1094995529}function AR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=b+44|0;x=b+1656|0;c[x>>2]=Xj((c[w>>2]|0)+1|0,4)|0;y=b+48|0;v=b+1660|0;c[v>>2]=Xj((c[y>>2]|0)+1|0,4)|0;z=d+13384|0;t=Xj(c[z>>2]|0,4)|0;i=b+1664|0;c[i>>2]=t;e=c[x>>2]|0;a:do if((e|0)!=0?!((t|0)==0|(c[v>>2]|0)==0):0){q=b+1648|0;if(a[b+52>>0]|0){e=c[q>>2]|0;if(!e){c[q>>2]=Xj(c[w>>2]|0,4)|0;f=Xj(c[y>>2]|0,4)|0;c[b+1652>>2]=f;e=c[q>>2]|0;if(!e){e=-12;break}}else f=c[b+1652>>2]|0;if(!f){e=-12;break}else g=0;while(1){h=c[w>>2]|0;if((g|0)>=(h|0))break;t=g+1|0;s=c[z>>2]|0;c[e+(g<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,g)|0)/(h|0)|0);g=t}g=d+13388|0;e=0;while(1){h=c[y>>2]|0;if((e|0)>=(h|0))break;t=e+1|0;s=c[g>>2]|0;c[f+(e<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,e)|0)/(h|0)|0);e=t}e=c[x>>2]|0}c[e>>2]=0;f=0;g=0;while(1){if((f|0)>=(c[w>>2]|0))break;t=(c[(c[q>>2]|0)+(f<<2)>>2]|0)+g|0;s=f+1|0;c[e+(s<<2)>>2]=t;f=s;g=t}g=c[v>>2]|0;c[g>>2]=0;n=b+1652|0;f=0;h=0;while(1){if((f|0)>=(c[y>>2]|0)){f=0;g=0;break}t=(c[(c[n>>2]|0)+(f<<2)>>2]|0)+h|0;s=f+1|0;c[g+(s<<2)>>2]=t;f=s;h=t}while(1){h=c[z>>2]|0;if((g|0)>=(h|0))break;t=f+(g>>>0>(c[e+(f<<2)>>2]|0)>>>0&1)|0;c[(c[i>>2]|0)+(g<<2)>>2]=t;f=t;g=g+1|0}m=N(c[d+13388>>2]|0,h)|0;s=b+1668|0;c[s>>2]=Xj(m,4)|0;e=b+1672|0;c[e>>2]=Xj(m,4)|0;f=b+1676|0;c[f>>2]=Xj(m,4)|0;t=d+13420|0;g=(c[t>>2]|0)+2|0;g=Xj(N(g,g)|0,4)|0;p=b+1688|0;c[p>>2]=g;o=c[s>>2]|0;if(((o|0)!=0?(r=c[e>>2]|0,(r|0)!=0):0)?(u=c[f>>2]|0,!((g|0)==0|(u|0)==0)):0){i=0;while(1){if((i|0)>=(m|0)){e=0;l=0;break}j=c[z>>2]|0;k=(i|0)%(j|0)|0;l=(i|0)/(j|0)|0;f=c[w>>2]|0;e=0;while(1){if((e|0)>=(f|0)){e=0;break}g=e+1|0;if(k>>>0<(c[(c[x>>2]|0)+(g<<2)>>2]|0)>>>0)break;else e=g}g=c[y>>2]|0;f=0;while(1){if((f|0)>=(g|0)){h=0;break}h=f+1|0;if(l>>>0<(c[(c[v>>2]|0)+(h<<2)>>2]|0)>>>0){h=f;break}else f=h}f=0;g=0;while(1){if((g|0)>=(e|0)){g=0;break}f=(N(c[(c[q>>2]|0)+(g<<2)>>2]|0,c[(c[n>>2]|0)+(h<<2)>>2]|0)|0)+f|0;g=g+1|0}while(1){if((g|0)>=(h|0))break;f=(N(c[(c[n>>2]|0)+(g<<2)>>2]|0,j)|0)+f|0;g=g+1|0}l=N(c[(c[q>>2]|0)+(e<<2)>>2]|0,l-(c[(c[v>>2]|0)+(h<<2)>>2]|0)|0)|0;l=f+k+l-(c[(c[x>>2]|0)+(e<<2)>>2]|0)|0;c[o+(i<<2)>>2]=l;c[r+(l<<2)>>2]=i;i=i+1|0}b:while(1){if((l|0)>=(c[y>>2]|0))break;m=l+1|0;h=0;while(1){if((h|0)>=(c[w>>2]|0)){l=m;continue b}g=c[v>>2]|0;i=g+(m<<2)|0;j=h+1|0;g=c[g+(l<<2)>>2]|0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;f=c[x>>2]|0;k=f+(j<<2)|0;f=c[f+(h<<2)>>2]|0;while(1){if(f>>>0>=(c[k>>2]|0)>>>0)break;c[u+(c[o+((N(c[z>>2]|0,g)|0)+f<<2)>>2]<<2)>>2]=e;f=f+1|0}g=g+1|0}e=e+1|0;h=j}}g=Xj(e,4)|0;c[b+1680>>2]=g;if(g){f=0;while(1){if((f|0)<(c[y>>2]|0))e=0;else break;while(1){h=c[w>>2]|0;if((e|0)>=(h|0))break;u=N(c[z>>2]|0,c[(c[v>>2]|0)+(f<<2)>>2]|0)|0;c[g+((N(h,f)|0)+e<<2)>>2]=(c[(c[x>>2]|0)+(e<<2)>>2]|0)+u;e=e+1|0}f=f+1|0}i=c[d+13336>>2]|0;h=c[d+13328>>2]|0;g=c[p>>2]|0;j=c[t>>2]|0;n=g+(j+3<<2)|0;c[b+1684>>2]=n;e=0;while(1){f=j+2|0;if((e|0)>=(f|0))break;c[g+((N(f,e)|0)<<2)>>2]=-1;c[g+(e<<2)>>2]=-1;e=e+1|0;j=c[t>>2]|0}l=i-h|0;m=l<<1;k=0;e=j;while(1){if((k|0)>(e|0)){e=0;break a}i=k>>l;h=0;while(1){if((h|0)>(e|0))break;f=(N(c[z>>2]|0,i)|0)+(h>>l)|0;f=c[(c[s>>2]|0)+(f<<2)>>2]<=(l|0))break;b=1<>2]=f;h=h+1|0;e=c[t>>2]|0}k=k+1|0}}else e=-12}else e=-12}else e=-12;while(0);return e|0}function BR(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(DR(a)|0)|0}function CR(a,b){a=a|0;b=b|0;var d=0,e=0;b=a+128+(b<<2)|0;d=c[b>>2]|0;if(d|0?(e=a+392|0,(c[e>>2]|0)==(c[d+4>>2]|0)):0)c[e>>2]=0;Ni(b);return}function DR(a){a=a|0;return c[a+8>>2]|0}function ER(a){a=a|0;a=tR(a)|0;return ((a&1)+-1^a>>>1)+1|0}function FR(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=e;if((b|0)<26)a=IR(a,b)|0;else{c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=HR(d,b)|0}l=e;return a|0}function GR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function HR(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=vR(a,b)|0;break}else{b=b+-16|0;c=(vR(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function JR(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;_=l;l=l+272|0;if((l|0)>=(m|0))W(272);Z=_+256|0;Y=_+248|0;X=_+240|0;V=_+232|0;U=_+224|0;T=_+216|0;S=_+208|0;R=_+200|0;P=_+192|0;O=_+176|0;M=_+168|0;L=_+160|0;K=_+152|0;H=_+144|0;F=_+136|0;E=_+120|0;D=_+112|0;C=_+104|0;B=_+96|0;A=_+88|0;x=_+80|0;w=_+72|0;u=_+64|0;t=_+56|0;r=_+40|0;q=_+32|0;p=_+24|0;o=_+16|0;n=_+8|0;k=_;j=vR(e,4)|0;c[d>>2]=j;a:do if(j>>>0<=15){if(h|0?(c[h+(j<<2)>>2]|0)==0:0){c[n>>2]=j;gi(i,16,222271,n);h=-1094995529;break}h=(vR(e,3)|0)+1|0;v=d+68|0;c[v>>2]=h;if((h|0)>7){c[o>>2]=h;gi(i,16,222294,o);h=-1094995529;break}a[d+156>>0]=vR(e,1)|0;h=LR(e,i,d+300|0,c[v>>2]|0)|0;if((h|0)>=0){h=tR(e)|0;c[f>>2]=h;if(h>>>0>15){c[p>>2]=h;gi(i,16,221328,p);h=-1094995529;break}h=tR(e)|0;o=d+4|0;c[o>>2]=h;if(h>>>0>3){c[q>>2]=h;gi(i,16,222331,q);h=-1094995529;break}if((h|0)==3){h=(uR(e)|0)&255;a[d+8>>0]=h}else h=a[d+8>>0]|0;if(h<<24>>24)c[o>>2]=0;I=d+13376|0;c[I>>2]=tR(e)|0;h=tR(e)|0;J=d+13380|0;c[J>>2]=h;h=hk(c[I>>2]|0,h,0,i)|0;if((h|0)>=0){if(uR(e)|0){k=c[o>>2]|0;n=(k|0)<2?2:1;k=(k|0)<3?2:1;h=d+28|0;c[h>>2]=N(k,tR(e)|0)|0;j=d+32|0;c[j>>2]=N(tR(e)|0,k)|0;k=d+36|0;c[k>>2]=N(tR(e)|0,n)|0;n=N(tR(e)|0,n)|0;c[d+40>>2]=n;if(c[i+64>>2]&65536|0){z=c[j>>2]|0;G=c[k>>2]|0;c[r>>2]=c[h>>2];c[r+4>>2]=z;c[r+8>>2]=G;c[r+12>>2]=n;gi(i,48,222364,r);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}G=d+12|0;c[G>>2]=c[h>>2];c[G+4>>2]=c[h+4>>2];c[G+8>>2]=c[h+8>>2];c[G+12>>2]=c[h+12>>2]}G=d+44|0;c[G>>2]=(tR(e)|0)+8;h=(tR(e)|0)+8|0;if(c[o>>2]|0?(s=c[G>>2]|0,(h|0)!=(s|0)):0){c[t>>2]=s;c[t+4>>2]=h;gi(i,16,222440,t);h=-1094995529;break}c[d+48>>2]=h;h=MR(i,d)|0;if((h|0)>=0){h=tR(e)|0;z=h+4|0;y=d+60|0;c[y>>2]=z;if(z>>>0>16){c[u>>2]=h;gi(i,16,222523,u);h=-1094995529;break}o=(uR(e)|0)!=0;if(o)p=0;else p=(c[v>>2]|0)+-1|0;z=i+580|0;n=p;while(1){if((n|0)>=(c[v>>2]|0))break;f=d+72+(n*12|0)|0;c[f>>2]=(tR(e)|0)+1;j=d+72+(n*12|0)+4|0;c[j>>2]=tR(e)|0;c[d+72+(n*12|0)+8>>2]=(tR(e)|0)+-1;k=c[f>>2]|0;if(k>>>0>16){Q=34;break}h=c[j>>2]|0;if((h|0)>=(k|0)){c[x>>2]=h;gi(i,24,222623,x);if(c[z>>2]&8|0){h=-1094995529;break a}h=c[j>>2]|0;if((h|0)>15){h=-1094995529;break a}c[f>>2]=h+1}n=n+1|0}if((Q|0)==34){c[w>>2]=k+-1;gi(i,16,222572,w);h=-1094995529;break}b:do if(!o){j=d+72+(p*12|0)|0;k=d+72+(p*12|0)+4|0;n=d+72+(p*12|0)+8|0;h=0;while(1){if((h|0)>=(p|0))break b;c[d+72+(h*12|0)>>2]=c[j>>2];c[d+72+(h*12|0)+4>>2]=c[k>>2];c[d+72+(h*12|0)+8>>2]=c[n>>2];h=h+1|0}}while(0);r=d+13320|0;c[r>>2]=(tR(e)|0)+3;s=d+13324|0;c[s>>2]=tR(e)|0;t=d+13328|0;c[t>>2]=(tR(e)|0)+2;j=tR(e)|0;k=c[t>>2]|0;u=d+13332|0;c[u>>2]=k+j;n=c[r>>2]|0;if((n+-3|0)>>>0>27){c[A>>2]=n;gi(i,16,222666,A);h=-1094995529;break}h=c[s>>2]|0;if(h>>>0>30){c[B>>2]=h;gi(i,16,222704,B);h=-1094995529;break}if(k>>>0>=n>>>0|k>>>0<2){gi(i,16,222761,C);h=-1094995529;break}if(j>>>0>30){c[D>>2]=j;gi(i,16,222796,D);h=-1094995529;break}p=d+13344|0;c[p>>2]=tR(e)|0;q=d+13348|0;c[q>>2]=tR(e)|0;D=(uR(e)|0)&255;a[d+634>>0]=D;do if(D<<24>>24){h=d+635|0;xR(h);if(!(uR(e)|0))break;h=yR(e,i,h,d)|0;if((h|0)<0)break a}while(0);a[d+13196>>0]=uR(e)|0;a[d+13197>>0]=uR(e)|0;D=uR(e)|0;c[d+64>>2]=D;do if(D|0){h=d+13300|0;a[h>>0]=(vR(e,4)|0)+1;j=d+13301|0;a[j>>0]=(vR(e,4)|0)+1;k=(tR(e)|0)+3|0;c[d+13304>>2]=k;c[d+13308>>2]=(tR(e)|0)+k;h=a[h>>0]|0;j=a[j>>0]|0;k=c[G>>2]|0;if((k|0)<(((h&255)>(j&255)?h:j)&255|0)){c[E>>2]=h&255;c[E+4>>2]=j&255;c[E+8>>2]=k;gi(i,16,222856,E);h=-1094995529;break a}else{a[d+13312>>0]=uR(e)|0;break}}while(0);h=tR(e)|0;k=d+2184|0;c[k>>2]=h;if(h>>>0>64){c[F>>2]=h;gi(i,16,222918,F);h=-1094995529;break}else j=0;while(1){if(j>>>0>=h>>>0)break;h=NR(e,i,d+2188+(j*172|0)|0,d,0)|0;if((h|0)<0)break a;j=j+1|0;h=c[k>>2]|0}F=(uR(e)|0)&255;a[d+13198>>0]=F;c:do if(F<<24>>24){j=tR(e)|0;h=j&255;k=d+13296|0;a[k>>0]=h;j=j&255;if(j>>>0>32){c[H>>2]=j;gi(i,16,222948,H);h=-1094995529;break a}else j=0;while(1){if((j|0)>=(h&255|0))break c;b[d+13200+(j<<1)>>1]=vR(e,c[y>>2]|0)|0;a[d+13264+j>>0]=uR(e)|0;j=j+1|0;h=a[k>>0]|0}}while(0);a[d+13316>>0]=uR(e)|0;a[d+13317>>0]=uR(e)|0;c[d+160>>2]=0;c[d+164>>2]=1;if(uR(e)|0)OR(e,i,g,d);do if(uR(e)|0){h=0;j=0;while(1){if((h|0)==1)break;h=h+1|0;j=uR(e)|0}PR(e,7);if(!j)break;c[d+13352>>2]=uR(e)|0;c[d+13356>>2]=uR(e)|0;c[d+13360>>2]=uR(e)|0;c[d+13364>>2]=uR(e)|0;if(uR(e)|0)gi(i,24,222982,K);c[d+13368>>2]=uR(e)|0;if(uR(e)|0)gi(i,24,223038,L);c[d+13372>>2]=uR(e)|0;if(!(uR(e)|0))break;gi(i,24,223095,M)}while(0);if(!g){n=d+12|0;k=d+16|0;h=n;j=k;k=c[k>>2]|0;n=c[n>>2]|0}else{j=d+12|0;n=(c[j>>2]|0)+(c[d+224>>2]|0)|0;c[j>>2]=n;j=d+16|0;k=(c[j>>2]|0)+(c[d+228>>2]|0)|0;c[j>>2]=k;h=d+20|0;c[h>>2]=(c[h>>2]|0)+(c[d+232>>2]|0);h=d+24|0;c[h>>2]=(c[h>>2]|0)+(c[d+236>>2]|0);h=d+12|0}o=c[d+20>>2]|0;f=c[d+24>>2]|0;do if(n>>>0<(2147483647-k|0)>>>0&o>>>0<(2147483647-f|0)>>>0){if((k+n|0)>>>0>=(c[I>>2]|0)>>>0){Q=87;break}if((f+o|0)>>>0>=(c[J>>2]|0)>>>0)Q=87}else Q=87;while(0);if((Q|0)==87){Q=c[j>>2]|0;c[O>>2]=n;c[O+4>>2]=Q;c[O+8>>2]=o;c[O+12>>2]=f;gi(i,24,223152,O);if(c[z>>2]&8|0){h=-1094995529;break}gi(i,24,223191,P);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Q=d+28|0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0}k=c[r>>2]|0;n=(c[s>>2]|0)+k|0;h=d+13336|0;c[h>>2]=n;j=k+-1|0;c[d+13340>>2]=j;if(n>>>0>6){c[R>>2]=n;gi(i,16,223228,R);h=-1094995529;break}if(n>>>0<4){c[S>>2]=n;gi(i,16,223257,S);c[T>>2]=c[h>>2];Zk(i,223320,T);h=-1094995529;break}S=c[I>>2]|0;Q=1<>n;c[d+13384>>2]=R;T=c[J>>2]|0;Q=T+-1+Q>>n;c[d+13388>>2]=Q;c[d+13392>>2]=N(Q,R)|0;c[d+13396>>2]=S>>k;c[d+13400>>2]=T>>k;R=c[t>>2]|0;c[d+13404>>2]=S>>R;c[d+13408>>2]=T>>R;c[d+13412>>2]=S>>j;c[d+13416>>2]=T>>j;j=n-R|0;c[d+13420>>2]=(1<>2]=((c[G>>2]|0)*6|0)+-48;if((1<>2]|0;if(h>>>0>j>>>0){c[V>>2]=h;gi(i,16,223370,V);h=-1094995529;break}h=c[q>>2]|0;if(h>>>0>j>>>0){c[X>>2]=h;gi(i,16,223424,X);h=-1094995529;break}h=c[u>>2]|0;if(h>>>0>(n>>>0<5?n:5)>>>0){c[Y>>2]=h;gi(i,16,223478,Y);h=-1094995529;break}h=BR(e)|0;if((h|0)>=0){h=0;break}c[Z>>2]=0-h;gi(i,16,223521,Z);h=-1094995529}}}}else{c[k>>2]=j;gi(i,16,222246,k);h=-1094995529}while(0);l=_;return h|0}function KR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+64+(b<<2)|0;d=c[e>>2]|0;if(d|0){f=a+388|0;if((c[f>>2]|0)==(c[d+4>>2]|0)){c[f>>2]=0;d=0}else d=0;while(1){if((d|0)==64)break;i=c[a+128+(d<<2)>>2]|0;if(i|0?(c[c[i+4>>2]>>2]|0)==(b|0):0)CR(a,d);d=d+1|0}i=c[e>>2]|0;if(i|0?(c[f>>2]|0)==(c[i+4>>2]|0):0){c[g>>2]=222161;c[g+4>>2]=222225;c[g+8>>2]=92;gi(0,0,229320,g);Tb()}}Ni(e);l=h;return}function LR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o+16|0;j=o+8|0;g=o;a:do if((TR(b,d,e)|0)>=0?(i=f+-1|0,h=(f|0)>1,(BR(b)|0)>=((h&1)<<4|8|0)):0){a[e+35>>0]=vR(b,8)|0;f=0;while(1){if((f|0)>=(i|0))break;a[e+320+f>>0]=uR(b)|0;a[e+327+f>>0]=uR(b)|0;f=f+1|0}b:do if(h){f=i;while(1){if((f|0)>=8){f=0;break b}PR(b,2);f=f+1|0}}else f=0;while(0);while(1){if((f|0)>=(i|0)){f=0;break a}if(a[e+320+f>>0]|0?(TR(b,d,e+40+(f*40|0)|0)|0)<0:0){n=13;break}if(a[e+327+f>>0]|0){if((BR(b)|0)<8){n=16;break}a[e+40+(f*40|0)+35>>0]=vR(b,8)|0}f=f+1|0}if((n|0)==13){c[j>>2]=f;gi(d,16,224246,j);f=-1;break}else if((n|0)==16){c[k>>2]=f;gi(d,16,224289,k);f=-1;break}}else n=3;while(0);if((n|0)==3){gi(d,16,224219,g);f=-1}l=o;return f|0}function MR(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;h=b+44|0;e=c[h>>2]|0;a:do switch(e|0){case 8:{switch(c[b+4>>2]|0){case 0:{a=8;break}case 1:{a=0;break}case 2:{c[b+56>>2]=4;g=23;break a}case 3:{c[b+56>>2]=5;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 9:{switch(c[b+4>>2]|0){case 0:{a=30;break}case 1:{a=62;break}case 2:{c[b+56>>2]=72;g=23;break a}case 3:{c[b+56>>2]=68;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 10:{switch(c[b+4>>2]|0){case 0:{a=171;break}case 1:{a=64;break}case 2:{c[b+56>>2]=66;g=23;break a}case 3:{c[b+56>>2]=70;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 12:{switch(c[b+4>>2]|0){case 0:{a=169;break}case 1:{a=125;break}case 2:{c[b+56>>2]=129;g=23;break a}case 3:{c[b+56>>2]=133;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}default:{c[f>>2]=c[b+4>>2];c[f+4>>2]=e;gi(a,16,224109,f);a=-1094995529}}while(0);if((g|0)==23){a=Bj(c[b+56>>2]|0)|0;if(!a)a=-22;else{c[b+13436>>2]=0;c[b+13424>>2]=0;g=d[a+5>>0]|0;c[b+13428>>2]=g;c[b+13432>>2]=g;a=d[a+6>>0]|0;c[b+13440>>2]=a;c[b+13444>>2]=a;c[b+52>>2]=(c[h>>2]|0)>8&1;a=0}}l=i;return a|0}function NR(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);p=s+40|0;o=s+32|0;k=s+24|0;q=s+16|0;n=s+8|0;j=s;h=f+2188|0;a:do if(((h|0)!=(e|0)?(i=f+2184|0,(c[i>>2]|0)!=0):0)?((uR(b)|0)&255)<<24>>24!=0:0){do if(g){h=(tR(b)|0)+1|0;g=c[i>>2]|0;if(g>>>0>>0){c[j>>2]=h;c[j+4>>2]=g;gi(d,16,223919,j);g=-1094995529;break a}else{o=g-h|0;c[e+8>>2]=c[f+2188+(o*172|0)+4>>2];break}}else o=((e-h|0)/172|0)+-1|0;while(0);g=uR(b)|0;p=tR(b)|0;h=p+1|0;if(p>>>0>32767){c[n>>2]=h;gi(d,16,223977,n);g=-1094995529;break}k=N(1-(g<<1&510)|0,h)|0;n=f+2188+(o*172|0)+4|0;h=0;g=0;j=0;while(1){if((j|0)>(c[n>>2]|0))break;p=uR(b)|0;a[e+140+g>>0]=p;if(!((p&255|0)==0?((uR(b)|0)&255)<<24>>24==0:0)){if((j|0)<(c[n>>2]|0))i=(c[f+2188+(o*172|0)+12+(j<<2)>>2]|0)+k|0;else i=k;c[e+12+(g<<2)>>2]=i;g=g+1|0;h=(i>>>31)+h|0}j=j+1|0}if(g>>>0>31){c[q>>2]=g;gi(d,16,224013,q);g=-1094995529;break}p=e+4|0;c[p>>2]=g;c[e>>2]=h;if(g){o=1;while(1){if((o|0)>=(g|0))break;i=c[e+12+(o<<2)>>2]|0;j=a[e+140+o>>0]|0;h=o;while(1){g=h+-1|0;if((h|0)<=0)break;k=e+12+(g<<2)|0;n=c[k>>2]|0;if((i|0)>=(n|0)){h=g;continue}c[e+12+(h<<2)>>2]=n;d=e+140+g|0;a[e+140+h>>0]=a[d>>0]|0;c[k>>2]=i;a[d>>0]=j;h=g}o=o+1|0;g=c[p>>2]|0}h=c[e>>2]|0}if(h>>>0>1){i=0;g=h;while(1){g=g+-1|0;if(i>>>0>=h>>>1>>>0){g=0;break a}h=e+12+(i<<2)|0;q=c[h>>2]|0;f=e+140+i|0;d=a[f>>0]|0;b=e+12+(g<<2)|0;c[h>>2]=c[b>>2];h=e+140+g|0;a[f>>0]=a[h>>0]|0;c[b>>2]=q;a[h>>0]=d;i=i+1|0;h=c[e>>2]|0}}else g=0}else r=32;while(0);b:do if((r|0)==32){c[e>>2]=tR(b)|0;j=tR(b)|0;g=c[e>>2]|0;if((g|j)>>>0>15){gi(d,16,224041,k);g=-1094995529;break}q=g+j|0;c[e+4>>2]=q;if(!q)g=0;else{h=0;i=0;while(1){if(i>>>0>=g>>>0){h=0;i=0;break}q=tR(b)|0;g=q+1|0;if(q>>>0>32767){r=37;break}g=h-g|0;c[e+12+(i<<2)>>2]=g;a[e+140+i>>0]=uR(b)|0;h=g;i=i+1|0;g=c[e>>2]|0}if((r|0)==37){c[o>>2]=g;gi(d,16,224077,o);g=-1094995529;break}while(1){if(i>>>0>=j>>>0){g=0;break b}r=tR(b)|0;g=r+1|0;if(r>>>0>32767)break;r=g+h|0;c[e+12+((c[e>>2]|0)+i<<2)>>2]=r;q=(uR(b)|0)&255;a[(c[e>>2]|0)+i+(e+140)>>0]=q;h=r;i=i+1|0}c[p>>2]=g;gi(d,16,224077,p);g=-1094995529}}while(0);l=s;return g|0}function OR(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+240|0;if((l|0)>=(m|0))W(240);H=I+64|0;G=I+56|0;F=I+48|0;E=I+40|0;r=I+24|0;k=I+16|0;i=I+8|0;B=I+88|0;C=I+68|0;D=g+160|0;gi(e,48,223546,I);do if(uR(b)|0){h=(vR(b,8)|0)&255;if(h>>>0<17){y=166984+(h<<3)|0;z=c[y+4>>2]|0;A=D;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}if((h|0)==255){c[D>>2]=vR(b,16)|0;c[g+164>>2]=vR(b,16)|0;break}else{c[i>>2]=h;gi(e,24,223560,i);break}}while(0);A=uR(b)|0;c[g+168>>2]=A;if(A|0)c[g+172>>2]=uR(b)|0;A=uR(b)|0;c[g+176>>2]=A;a:do if(A|0){c[g+180>>2]=vR(b,3)|0;A=g+184|0;c[A>>2]=uR(b)|0;h=uR(b)|0;c[g+188>>2]=h;if(c[A>>2]|0?(j=g+56|0,(c[j>>2]|0)==0):0)c[j>>2]=12;if(h|0){h=g+192|0;a[h>>0]=vR(b,8)|0;i=g+193|0;a[i>>0]=vR(b,8)|0;j=g+194|0;a[j>>0]=vR(b,8)|0;if(!(Ll(d[h>>0]|0)|0))a[h>>0]=2;if(!(Ml(d[i>>0]|0)|0))a[i>>0]=2;if(!(Nl(d[j>>0]|0)|0)){a[j>>0]=2;break}if(!(a[j>>0]|0)){i=g+56|0;switch(c[i>>2]|0){case 5:{h=73;break}case 70:{h=77;break}case 133:{h=137;break}default:break a}c[i>>2]=h}}}while(0);A=uR(b)|0;c[g+196>>2]=A;if(A|0){c[g+200>>2]=tR(b)|0;c[g+204>>2]=tR(b)|0}c[g+208>>2]=uR(b)|0;c[g+212>>2]=uR(b)|0;c[g+216>>2]=uR(b)|0;c[C>>2]=c[b>>2];c[C+4>>2]=c[b+4>>2];c[C+8>>2]=c[b+8>>2];c[C+12>>2]=c[b+12>>2];c[C+16>>2]=c[b+16>>2];DZ(B|0,D|0,140)|0;if((BR(b)|0)>67?(FR(b,21)|0)==1048576:0){h=g+220|0;c[h>>2]=0;gi(e,24,223584,k);h=c[h>>2]|0}else{h=uR(b)|0;c[g+220>>2]=h}if((h|0?(p=c[g+4>>2]|0,q=(p|0)<2?2:1,p=(p|0)<3?2:1,n=g+224|0,c[n>>2]=N(p,tR(b)|0)|0,o=g+228|0,c[o>>2]=N(tR(b)|0,p)|0,p=g+232|0,c[p>>2]=N(tR(b)|0,q)|0,q=N(tR(b)|0,q)|0,c[g+236>>2]=q,f|0):0)?c[e+64>>2]&65536|0:0){z=c[o>>2]|0;A=c[p>>2]|0;c[r>>2]=c[n>>2];c[r+4>>2]=z;c[r+8>>2]=A;c[r+12>>2]=q;gi(e,48,223616,r);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0}n=g+240|0;o=g+264|0;p=g+268|0;q=g+272|0;f=g+276|0;r=g+280|0;s=g+284|0;t=g+288|0;u=g+292|0;v=g+296|0;w=g+244|0;x=g+248|0;y=g+252|0;z=g+260|0;A=g+68|0;i=g+256|0;h=0;b:while(1){g=uR(b)|0;c[n>>2]=g;if(g|0){j=(h|0)!=0;if(!(j|(BR(b)|0)>65)){gi(e,24,223696,E);DZ(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue}c[w>>2]=HR(b,32)|0;k=HR(b,32)|0;c[x>>2]=k;if(j){g=c[w>>2]|0;c[F>>2]=k;c[F+4>>2]=g;gi(e,32,223741,F)}g=uR(b)|0;c[y>>2]=g;if(g|0)c[i>>2]=tR(b)|0;g=uR(b)|0;c[z>>2]=g;if(g|0)QR(b,1,c[A>>2]|0)}g=uR(b)|0;c[o>>2]=g;do if(g|0)if((h|0)!=0|(BR(b)|0)>7){c[p>>2]=uR(b)|0;c[q>>2]=uR(b)|0;c[f>>2]=uR(b)|0;c[r>>2]=tR(b)|0;c[s>>2]=tR(b)|0;c[t>>2]=tR(b)|0;c[u>>2]=tR(b)|0;c[v>>2]=tR(b)|0;break}else{gi(e,24,223762,G);DZ(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue b}while(0);if((h|0)!=0|(BR(b)|0)>0)break;gi(e,24,223846,H);DZ(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1}l=I;return}function PR(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function QR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(b){b=uR(a)|0;f=uR(a)|0;if(!(f|b))e=0;else{e=uR(a)|0;if(!e){PR(a,4);PR(a,4)}else{PR(a,8);PR(a,5);PR(a,1);PR(a,5);PR(a,4);PR(a,4);PR(a,4)}PR(a,5);PR(a,5);PR(a,5)}}else{e=0;f=0;b=0}h=(b|0)==0;g=(f|0)==0;f=0;while(1){if((f|0)>=(d|0))break;if((uR(a)|0)==0?(uR(a)|0)==0:0)if(!(uR(a)|0))j=13;else b=1;else{tR(a)|0;j=13}if((j|0)==13){j=0;n=tR(a)|0;b=n+1|0;if(n>>>0>31){j=14;break}}if(!h)RR(a,b,e);if(!g)RR(a,b,e);f=f+1|0}if((j|0)==14){c[i>>2]=b;gi(0,16,223900,i)}l=k;return}function RR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;c=0;while(1){if((c|0)==(b|0))break;tR(a)|0;tR(a)|0;if(!d){tR(a)|0;tR(a)|0}SR(a);c=c+1|0}return}function SR(a){a=a|0;PR(a,1);return}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=j+32|0;g=j+24|0;if((BR(b)|0)<88)d=-1;else{a[e>>0]=vR(b,2)|0;a[e+1>>0]=uR(b)|0;f=vR(b,5)|0;k=f&255;i=e+2|0;a[i>>0]=k;f=f&255;a:do switch(k<<24>>24){case 1:{gi(d,48,224332,j);d=0;break}case 2:{gi(d,48,224356,j+8|0);d=0;break}case 3:{gi(d,48,224383,j+16|0);d=0;break}default:if((f|0)==4){gi(d,48,224421,g);d=0;break a}else{c[h>>2]=f;gi(d,24,224456,h);d=0;break a}}while(0);while(1){f=uR(b)|0;g=f&255;if((d|0)==32)break;a[e+3+d>>0]=g;if(!((f&255|0)==0|((d|0)<1|(a[i>>0]|0)!=0)))a[i>>0]=d;d=d+1|0}a[e+36>>0]=g;a[e+37>>0]=uR(b)|0;a[e+38>>0]=uR(b)|0;a[e+39>>0]=uR(b)|0;PR(b,16);PR(b,16);PR(b,12);d=0}l=j;return d|0}function UR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+(b<<2)|0;d=c[f>>2]|0;a:do if(d|0){e=a+384|0;if((c[e>>2]|0)==(c[d+4>>2]|0)){c[e>>2]=0;d=0}else d=0;while(1){if((d|0)==16)break a;e=c[a+64+(d<<2)>>2]|0;if(e|0?(c[c[e+4>>2]>>2]|0)==(b|0):0)KR(a,d);d=d+1|0}}while(0);Ni(f);return}function VR(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=p;o=p+8|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;a=Uk(o,a,b,j,f,g,173,1)|0;a:do if((a|0)>=0){k=o+16|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break a;b=c[o>>2]|0;f=c[b+(g*68|0)+44>>2]|0;switch(f|0){case 32:{a=LQ(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 33:{a=MQ(b+(g*68|0)+24|0,j,d,i)|0;if((a|0)<0)break a;break}case 34:{a=NQ(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 40:case 39:{a=OQ(b+(g*68|0)+24|0,j,e,d,f)|0;if((a|0)<0)break a;break}default:{c[n>>2]=f;gi(j,40,224965,n)}}g=g+1|0}}while(0);Ak(o);l=p;return ((h&8|0)==0?0:a)|0}function WR(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;a=XR(a,d)|0;if((a|0)>=0){Ui(b,c[d>>2]|0);Ii(d);a=0}l=e;return a|0}function XR(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=YR()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function YR(){var a=0;a=Zi(72)|0;if(a|0)Li(a);return a|0}function ZR(){var a=0,b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);a=b;do if((_R(a,225e3)|0)!=4)if((_R(a,225013)|0)==4){a=c[a>>2]|0;break}else{a=$R()|0;break}else a=c[a>>2]|0;while(0);l=b;return a|0}function _R(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=gS(b,0,c)|0;if((b|0)==-1)b=-1;else{a=mX(b,a,4)|0;DW(b)|0;b=a}l=c;return b|0}function $R(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+160|0;if((l|0)>=(m|0))W(160);a=n+120|0;h=n;i=n+132|0;k=252496;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[37705]|0)>>>0>=121){c[a>>2]=225025;c[a+4>>2]=225052;c[a+8>>2]=77;gi(0,0,229320,a);Tb()}e=(j|0)==0&(k|0)==0;a=0;b=0;d=0;a:while(1){f=Xb()|0;g=f-a|0;do if(((b<<1|1)+a|0)<(f|0)){a=252496;a=oZ(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=y;o=252496;c[o>>2]=a;c[o+4>>2]=b;o=253260+((a&511)<<2)|0;c[o>>2]=(c[o>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249){a=pZ(a|0,b|0,j|0,k|0)|0;b=y;if(e)if(b>>>0>0|(b|0)==0&a>>>0>64)break a;else break;else if(b>>>0>0|(b|0)==0&a>>>0>4)break a;else break}}else{o=253260+((c[63124]&511)<<2)|0;b=N(c[o>>2]|0,1664525)|0;c[o>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}while(0);a=f;b=g;d=(d|0)==0?f:d}aS(h,160)|0;bS(h,253260,2048);cS(h,i);o=BZ(c[i>>2]|0)|0;o=(BZ(c[i+16>>2]|0)|0)+o|0;l=n;return o|0}function aS(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=201;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=202;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=202;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function bS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=b+8|0;j=i;f=c[j>>2]|0;j=oZ(f|0,c[j+4>>2]|0,e|0,0)|0;c[i>>2]=j;c[i+4>>2]=y;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){Td[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function cS(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=b+8|0;j=g;j=zZ(c[j>>2]|0,c[j+4>>2]|0,3)|0;j=dS(j,y)|0;i=f;c[i>>2]=j;c[i+4>>2]=y;bS(b,225076,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;bS(b,332204,1)}bS(b,f,8);f=0;while(1){if((f|0)>=(d[b>>0]|0|0))break;i=BZ(c[b+80+(f<<2)>>2]|0)|0;j=e+(f<<2)|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;f=f+1|0}l=h;return}function dS(a,b){a=a|0;b=b|0;a=BZ(a|0)|0;b=BZ(b|0)|0;y=a;return b|0}function eS(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;G=l;l=l+256|0;if((l|0)>=(m|0))W(256);y=G;z=c[a>>2]|0;A=a+4|0;B=c[A>>2]|0;C=a+8|0;D=c[C>>2]|0;E=a+12|0;F=c[E>>2]|0;q=a+16|0;r=c[q>>2]|0;s=a+20|0;t=c[s>>2]|0;u=a+24|0;v=c[u>>2]|0;w=a+28|0;x=c[w>>2]|0;e=0;f=t;g=r;h=F;i=D;j=B;k=z;n=x;o=v;while(1){if((e|0)==64)break;if(e>>>0<16){p=b+(e<<2)|0;p=BZ(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0}else{H=c[y+(e+-15<<2)>>2]|0;p=c[y+(e+-2<<2)>>2]|0;p=(c[y+(e+-7<<2)>>2]|0)+(c[y+(e+-16<<2)>>2]|0)+((H<<14|H>>>18)^H>>>3^(H<<25|H>>>7))+((p<<13|p>>>19)^p>>>10^(p<<15|p>>>17))|0}c[y+(e<<2)>>2]=p;L=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+n+((o^f)&g^o)+p+(c[167148+(e<<2)>>2]|0)|0;K=o;J=k;I=j;p=i;H=g;e=e+1|0;g=L+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+L|0;o=f;n=K;j=J;i=I;h=p;f=H}c[a>>2]=z+k;c[A>>2]=B+j;c[C>>2]=D+i;c[E>>2]=F+h;c[q>>2]=r+g;c[s>>2]=t+f;c[u>>2]=v+o;c[w>>2]=x+n;l=G;return}function fS(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+320|0;if((l|0)>=(m|0))W(320);p=x;q=c[a>>2]|0;r=a+4|0;s=c[r>>2]|0;t=a+8|0;u=c[t>>2]|0;v=a+12|0;w=c[v>>2]|0;n=a+16|0;o=c[n>>2]|0;f=o;g=w;h=u;i=s;j=q;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=BZ(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[p+(k+-8<<2)>>2]^c[p+(k+-3<<2)>>2]^c[p+(k+-14<<2)>>2]^c[p+(k+-16<<2)>>2];e=e<<1|e>>>31}c[p+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40)if(k>>>0<20){e=((g^h)&i^g)+1518500249|0;break}else{e=(h^i^g)+1859775393|0;break}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(h^i^g)+-899497514|0;break}while(0);A=j;z=h;y=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=A;g=z;f=y}c[a>>2]=q+j;c[r>>2]=s+i;c[t>>2]=u+h;c[v>>2]=w+g;c[n>>2]=o+f;l=x;return}function gS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=i+16|0;g=i+8|0;f=i;e=i+24|0;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=FW(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(EW(e,2,g)|0)==-1):0)gi(0,48,225078,h);l=i;return e|0}function hS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=oi((YW(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(JX(f,225107)|0)|0;k=e;f=e;a:while(1){b:while(1){h=a[g>>0]|0;if(!(h<<24>>24))break a;if(JX(g,d)|0)break a;i=g+1|0;switch(h<<24>>24){case 39:break b;case 92:{j=a[i>>0]|0;if(j<<24>>24){l=8;break b}break}default:{}}a[f>>0]=h;g=i;f=f+1|0}if((l|0)==8){l=0;i=f+1|0;a[f>>0]=j;g=g+2|0;k=i;f=i;continue}while(1){g=a[i>>0]|0;j=g<<24>>24==0;h=i+1|0;if(!(j^g<<24>>24!=39))break;a[f>>0]=g;i=h;f=f+1|0}g=j?i:h;k=j?k:f}do{a[f>>0]=0;f=f+-1|0;if(f>>>0>>0)break}while((JX(f,225107)|0)!=0);c[b>>2]=g}return e|0}function iS(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=jS(a[e>>0]|0)|0;b=jS(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function jS(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function kS(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=jS(a[e>>0]|0)|0;e=e+1|0;b=jS(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function lS(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=YW(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=ZW(c,44)|0;if(!d)d=c+(YW(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!(kS(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(WV(225112,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function mS(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}else h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;else g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((N(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=ZW(h,i)|0;h=k+((k|0)!=0&1)|0}k=ZW(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function nS(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function oS(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function pS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?oS(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=ni(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;pS(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;DZ(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;Pi(a,h);d=0}}}else{d=ni(0,b)|0;c[h>>2]=d;do if(d){d=yj(d,b,16,0,0)|0;if(!d){ci(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);l=i;return d|0}function qS(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(YW(b)|0)|0;g=0;c=0;while(1){if(b>>>0>>0)d=b;else{b=g;break}a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=rS(b,d-b|0)|0;f=y;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}y=c;return b|0}function rS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;f=0;while(1){if(f>>>0>=28){e=0;i=7;break}e=c[28256+(f<<4)>>2]|0;if((YW(e)|0)==(d|0)?(VV(e,b,d)|0)==0:0){i=5;break}f=f+1|0}do if((i|0)==5){e=28256+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}else if((i|0)==7){while(1){i=0;if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[167404+(e<<3)>>2]|0,(YW(g)|0)==(d|0)):0)?(VV(g,b,d)|0)==0:0){i=11;break}e=e+1|0;i=7}if((i|0)==11){e=zZ(1,0,e|0)|0;f=y;break}c[(zV()|0)>>2]=0;e=LV(b,j,10)|0;if(((c[(zV()|0)>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=sS(e)|0;f=y;break}c[(zV()|0)>>2]=0;g=JV(b,j,0)|0;e=y;if(!(c[(zV()|0)>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}while(0);y=f;l=k;return e|0}function sS(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[28256+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=28256+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}y=b;return a|0}function tS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=p+40|0;o=p+32|0;n=p+24|0;j=p+16|0;i=p+8|0;h=p;if((b|0)<1)b=gk(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[28256+(f<<4)+4>>2]|0)?(g=28256+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[28256+(f<<4)>>2];ri(a,225774,h)}else if((g|0)==9?(c[i>>2]=b,ri(a,225777,i),!((d|0)==0&(e|0)==0)):0){ri(a,225789,j);b=0;g=0;while(1){if((g|0)==64)break;j=zZ(1,0,g|0)|0;if(!((j&d|0)==0&(y&e|0)==0)){f=uS(g)|0;if(f|0){if((b|0)>0)ri(a,225792,n);c[o>>2]=f;ri(a,225774,o)}b=b+1|0}g=g+1|0}ri(a,225794,k)}l=p;return}function uS(a){a=a|0;if(a>>>0>35)a=0;else a=c[167404+(a<<3)>>2]|0;return a|0}function vS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);g=f;nS(g,a,b);tS(g,c,d,e);l=f;return}function wS(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+1072|0;if((l|0)>=(m|0))W(1072);J=K+792|0;I=K+784|0;H=K+528|0;j=K+1060|0;k=K+1056|0;F=K+520|0;G=K+512|0;D=K;E=K+800|0;c[H>>2]=j;c[H+4>>2]=k;c[H+8>>2]=K+1064;if(!((vX(f,225796,H)|0)==2?(i=c[j>>2]|0,i=xS(b,e,g,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){v=e+12|0;w=e+44|0;x=e+16|0;y=e+32|0;B=e+24|0;C=e+16|0;i=0;while(1){u=G;c[u>>2]=1;c[u+4>>2]=0;if(!(c[v>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{n=j<<24>>24;j=f+1|0;break}default:{n=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[H+f>>0]=k;f=f+1|0}a[H+f>>0]=0;t=f}else{n=0;t=0;j=f}s=(t|0)!=0;r=s?H:j;k=yS(d,r,c[w>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==10:0){u=k+16|0;h[F>>3]=+((c[u>>2]|0)>>>0)+4294967296.0*+(c[u+4>>2]|0);u=30}else u=15;do if((u|0)==15){u=0;q=c[w>>2]|0;b:do if(!q){k=0;u=24}else{k=0;f=0;while(1){while(1){f=Qi(d,f)|0;if(!f){u=24;break b}if((c[f+12>>2]|0)!=10)continue;p=c[f+44>>2]|0;if(!p)continue;if(!(UV(p,q)|0))break}if((k+6|0)>>>0>63)break;c[E+(k<<2)>>2]=c[f>>2];p=f+16|0;h[D+(k<<3)>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);k=k+1|0}c[I>>2]=q;gi(b,16,225810,I);i=-1163346256}while(0);if((u|0)==24){u=0;c[E+(k<<2)>>2]=237120;switch(c[v>>2]|0){case 1:case 0:case 10:case 9:case 2:{q=C;o=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0);break}default:o=+h[x>>3]}p=k+1|0;h[D+(k<<3)>>3]=o;c[E+(p<<2)>>2]=226110;q=k+2|0;h[D+(p<<3)>>3]=+h[y>>3];c[E+(q<<2)>>2]=226114;p=k+3|0;h[D+(q<<3)>>3]=+h[B>>3];c[E+(p<<2)>>2]=237098;q=k+4|0;h[D+(p<<3)>>3]=0.0;c[E+(q<<2)>>2]=237314;k=k+5|0;h[D+(q<<3)>>3]=-1.0;c[E+(k<<2)>>2]=0;h[D+(k<<3)>>3]=0.0;k=zS(F,r,E,D,0,0,0,0,0,0,b)|0;if((k|0)>=0){u=30;break}c[J>>2]=j;gi(b,16,225847,J);i=k}f=1}while(0);if((u|0)==30){c:do if(!(c[v>>2]|0)){AS(e,g,0,0,G)|0;switch(n|0){case 43:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]|~~o>>>0)>>>0)+4294967296.0*+(c[u+4>>2]|(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}case 45:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]&~(~~o>>>0))>>>0)+4294967296.0*+(c[u+4>>2]&~(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}default:break c}}while(0);k=xS(b,e,g,+h[F>>3],1,1,0)|0;if((k|0)>=0){j=j+t|0;if(s){u=(a[j>>0]|0)==0;f=u&1;i=u?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}l=K;return i|0}function xS(a,b,d,e,f,i,j){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;i=i|0;j=j|0;var k=0,n=0,o=0.0,p=0.0,q=0.0,t=0,u=0,v=0,w=0;w=l;l=l+64|0;if((l|0)>=(m|0))W(64);k=w+40|0;u=w+8|0;t=w;n=c[b+12>>2]|0;a:do if(!n){o=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);if(!(o<-1.5|o>4294967295.5)?(u=jX(o*256.0)|0,(u&255|0)==0&0==0):0){v=14;break}d=c[b>>2]|0;h[k>>3]=o;c[k+8>>2]=d;gi(a,16,226365,k);k=-34}else{if(!f){p=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;o=+h[b+32>>3]}else{o=+h[b+32>>3];p=+(f|0);q=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(o*p>3]*p>q):0)switch(n|0){case 1:case 18:{v=14;break a}case 12:{c[d>>2]=uZ(jX(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 13:{c[d>>2]=uZ(jX(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 6:case 14:{o=(+(i>>>0)+4294967296.0*+(j|0))*e;if(+(~~e|0)==e){c[d>>2]=~~o;c[d+4>>2]=f;k=0;break a}else{XS(t,o/+(f|0),16777216);i=t;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break a}}case 2:case 17:case 15:{o=e/+(f|0);if((i|0)==1&(j|0)==0&o==9223372036854775808.0){k=-1;n=2147483647}else{k=jX(o)|0;k=uZ(k|0,y|0,i|0,j|0)|0;n=y}c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 9:{o=e/+(f|0);do if(!((i|0)==1&(j|0)==0&o==18446744073709551616.0))if(o>9223372036854775808.0){k=jX(o+-9223372036854775808.0)|0;k=uZ(k|0,y^-2147483648|0,i|0,j|0)|0;n=y;break}else{k=jX(o)|0;k=uZ(k|0,y|0,i|0,j|0)|0;n=y;break}else{k=-1;n=-1}while(0);c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 4:{g[d>>2]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}case 3:{h[d>>3]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}default:{k=-22;break a}}p=q/p}k=c[b>>2]|0;e=+h[b+24>>3];h[u>>3]=p;c[u+8>>2]=k;h[u+16>>3]=e;h[u+24>>3]=o;gi(a,16,226313,u);k=-34}while(0);if((v|0)==14){k=jX(e/+(f|0))|0;k=uZ(k|0,y|0,i|0,j|0)|0;c[d>>2]=k;k=0}l=w;return k|0}function yS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return US(a,b,c,d,e,0)|0}function zS(a,b,d,e,f,g,i,j,k,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;c[p>>2]=0;b=BS(p,b,d,f,g,i,j,n,o)|0;if((b|0)<0)h[a>>3]=r;else{b=c[p>>2]|0;h[a>>3]=+CS(b,e,k);DS(b);b=ES(+h[a>>3])|0;k=y&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}l=q;return b|0}function AS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(c[a+12>>2]|0){case 0:{a=f;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break}case 12:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 13:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 1:case 18:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 9:case 2:case 15:case 17:{d=b;e=c[d+4>>2]|0;a=f;c[a>>2]=c[d>>2];c[a+4>>2]=e;a=0;break}case 4:{h[d>>3]=+g[b>>2];a=0;break}case 3:{h[d>>3]=+h[b>>3];a=0;break}case 6:{d=c[b>>2]|0;a=f;c[a>>2]=d;c[a+4>>2]=((d|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break}case 10:{h[d>>3]=+h[a+16>>3];a=0;break}default:a=-22}return a|0}function BS(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;if((l|0)>=(m|0))W(64);s=u;r=u+12|0;t=u+8|0;n=r;o=n+52|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));c[t>>2]=0;q=oi((YW(d)|0)+1|0)|0;if(!q)n=-12;else{p=q;n=d;a:while(1){do{o=a[n>>0]|0;if(!(o<<24>>24))break a;n=n+1|0}while((GS(o<<24>>24)|0)!=0);a[p>>0]=o;p=p+1|0}a[p>>0]=0;c[r>>2]=167692;c[r+4>>2]=100;o=r+8|0;c[o>>2]=q;c[r+16>>2]=e;c[r+20>>2]=g;c[r+24>>2]=f;c[r+28>>2]=i;c[r+32>>2]=h;c[r+40>>2]=j;c[r+44>>2]=k;n=HS(t,r)|0;do if((n|0)>=0){o=c[o>>2]|0;if(a[o>>0]|0){c[s>>2]=o;c[s+4>>2]=d;gi(r,16,225886,s);n=-22;break}o=c[t>>2]|0;if(IS(o)|0){s=Zi(80)|0;c[o+32>>2]=s;if(!s)n=-12;else{c[b>>2]=o;c[t>>2]=0}}else n=-22}while(0);DS(c[t>>2]|0);di(q)}l=u;return n|0}function CS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;g=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+FS(e,a);l=g;return +i}function DS(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=a;if(a|0){DS(c[a+20>>2]|0);DS(c[a+24>>2]|0);DS(c[a+28>>2]|0);ci(a+32|0);ci(b)}l=d;return}function ES(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function FS(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,n=0,o=0,p=0.0,q=0.0,s=0.0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=t;a:do switch(c[b>>2]|0){case 0:{e=+h[b+8>>3];break}case 1:{e=+h[b+8>>3]*+h[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{q=+h[b+8>>3];o=c[b+16>>2]|0;s=+FS(a,c[b+20>>2]|0);s=q*+Id[o&15](s);l=t;return +s}case 3:{q=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;s=+FS(a,c[b+20>>2]|0);s=q*+Jd[n&0](o,s);l=t;return +s}case 4:{p=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;q=+FS(a,c[b+20>>2]|0);s=+FS(a,c[b+24>>2]|0);s=p*+Kd[n&0](o,q,s);l=t;return +s}case 5:{s=1.0/(+K(+(+FS(a,c[b+20>>2]|0)*4.0))+1.0);l=t;return +s}case 6:{s=+FS(a,c[b+20>>2]|0);s=+K(+(s*s*-.5))/2.5066282746310002;l=t;return +s}case 7:{s=+h[b+8>>3];o=c[a+48>>2]|0;a=~~+FS(a,c[b+20>>2]|0);l=t;return +(s*+h[o+(((a|0)>0?((a|0)<9?a:9):0)<<3)>>3])}case 8:{s=+h[b+8>>3];a=ES(+FS(a,c[b+20>>2]|0))|0;b=y&2147483647;l=t;return +(s*+((b>>>0>2146435072|(b|0)==2146435072&a>>>0>0)&1))}case 9:{s=+h[b+8>>3]*+((ES(+FS(a,c[b+20>>2]|0))|0)==0&(y&2147483647|0)==2146435072&1);l=t;return +s}case 27:{s=+h[b+8>>3]*+z(+(+FS(a,c[b+20>>2]|0)));l=t;return +s}case 28:{s=+h[b+8>>3]*+M(+(+FS(a,c[b+20>>2]|0)));l=t;return +s}case 29:{s=+h[b+8>>3]*+pc(+(+FS(a,c[b+20>>2]|0)));l=t;return +s}case 30:{s=+h[b+8>>3]*+CZ(+(+FS(a,c[b+20>>2]|0)));l=t;return +s}case 31:{s=+h[b+8>>3]*+B(+(+FS(a,c[b+20>>2]|0)));l=t;return +s}case 32:{s=+h[b+8>>3]*+(+FS(a,c[b+20>>2]|0)==0.0&1);l=t;return +s}case 36:{g=+h[b+8>>3];if(!(+FS(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else o=22}else{f=c[b+24>>2]|0;o=22}if((o|0)==22)e=+FS(a,f);e=g*e;break}case 37:{g=+h[b+8>>3];if(+FS(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else o=27}else{f=c[b+24>>2]|0;o=27}if((o|0)==27)e=+FS(a,f);e=g*e;break}case 42:{f=b+20|0;e=+FS(a,c[f>>2]|0);g=+FS(a,c[b+24>>2]|0);j=+FS(a,c[b+28>>2]|0);o=ES(g)|0;n=y&2147483647;if((!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)?(o=ES(j)|0,n=y&2147483647,!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)):0)?(o=ES(e)|0,n=y&2147483647,!(g>j|(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0))):0){q=+h[b+8>>3];s=+FS(a,c[f>>2]|0);l=t;return +(q*(sj?j:s))}else e=r;break}case 41:{e=+FS(a,c[b+20>>2]|0);g=+h[b+8>>3];if(!(e>=+FS(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+FS(a,c[b+28>>2]|0)&1);e=g*e;break}case 44:{s=+FS(a,c[b+20>>2]|0);s=s+(+FS(a,c[b+24>>2]|0)-s)*+FS(a,c[b+28>>2]|0);l=t;return +s}case 38:{e=+FS(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+FS(a,f);h[i>>3]=e;gi(a,f,225882,i);break}case 33:{n=~~+FS(a,c[b+20>>2]|0);a=(c[a+48>>2]|0)+(((n|0)>0?((n|0)<9?n:9):0)<<3)|0;s=+h[a>>3];n=ES(s)|0;i=y&2147483647;o=oZ(uZ(~~s>>>0|0,(+A(s)>=1.0?(s>0.0?~~+O(+z(s/4294967296.0),4294967295.0)>>>0:~~+M((s-+(~~s>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,y|0,1013904223,0)|0;s=i>>>0>2146435072|(i|0)==2146435072&n>>>0>0?1013904223.0:+(o>>>0)+4294967296.0*+(y>>>0);h[a>>3]=s;l=t;return +(+h[b+8>>3]*(s*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+FS(a,c[i>>2]|0)!=0.0))break a;e=+FS(a,c[f>>2]|0)}}case 25:{k=+FS(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)o=0;else{o=~~+FS(a,f);o=(o|0)>0?((o|0)<9?o:9):0}n=a+48|0;p=+h[(c[n>>2]|0)+(o<<3)>>3];i=b+20|0;g=1.0;e=0.0;f=0;while(1){if((f|0)>=1e3)break;h[(c[n>>2]|0)+(o<<3)>>3]=+(f|0);s=+FS(a,c[i>>2]|0);j=e+g*s;if(s!=0.0&e==j){e=j;break}b=f+1|0;g=g*(k/+(b|0));e=j;f=b}h[(c[n>>2]|0)+(o<<3)>>3]=p;break}case 26:{n=a+48|0;s=+h[c[n>>2]>>3];q=+FS(a,c[b+24>>2]|0);i=b+20|0;k=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;g=-1.0;e=-1.0;f=-1;while(1){if((f|0)>=1024)break;if((f|0)<255)h[c[n>>2]>>3]=q*+(d[185965+(f&255)>>0]|0)/255.0;else{p=q*+C(.9,+(+(f+-255|0)));h[c[n>>2]>>3]=(f&2|0?e:g)+((f&1|0)==0?p:-p)}p=+FS(a,c[i>>2]|0);if(p<=0.0&p>j){j=p;e=+h[c[n>>2]>>3]}if(p>=0.0&p>2]>>3]}if(e>=0.0&g>=0.0){f=0;o=60;break}else f=f+1|0}b:do if((o|0)==60)while(1){if((f|0)>=1e3)break b;q=(e+g)*.5;h[c[n>>2]>>3]=q;if(e==q|g==q)break b;p=+FS(a,c[i>>2]|0);if(p<=0.0)e=+h[c[n>>2]>>3];if(p>=0.0)g=+h[c[n>>2]>>3];b=ES(p)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&b>>>0>0){g=p;e=p;break}else{f=f+1|0;o=60}}while(0);h[c[n>>2]>>3]=s;e=k>-j?e:g;break}default:{e=+FS(a,c[b+20>>2]|0);g=+FS(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-g*+z(+(e/g)))*+h[b+8>>3];break a}case 35:{e=+h[b+8>>3]*(+((ZO(~~e>>>0,+A(e)>=1.0?(e>0.0?~~+O(+z(e/4294967296.0),4294967295.0)>>>0:~~+M((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~g>>>0,+A(g)>=1.0?(g>0.0?~~+O(+z(g/4294967296.0),4294967295.0)>>>0:~~+M((g-+(~~g>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(y|0));break a}case 11:{e=(e>g?e:g)*+h[b+8>>3];break a}case 12:{e=(e>3];break a}case 13:{e=(e==g?1.0:0.0)*+h[b+8>>3];break a}case 14:{e=(e>g?1.0:0.0)*+h[b+8>>3];break a}case 15:{e=(e>=g?1.0:0.0)*+h[b+8>>3];break a}case 17:{e=(e>3];break a}case 16:{e=(e<=g?1.0:0.0)*+h[b+8>>3];break a}case 18:{e=+C(+e,+g)*+h[b+8>>3];break a}case 19:{e=e*g*+h[b+8>>3];break a}case 20:{e=e/g*+h[b+8>>3];break a}case 21:{e=(e+g)*+h[b+8>>3];break a}case 22:{e=g*+h[b+8>>3];break a}case 23:{s=+h[b+8>>3];b=~~e;h[(c[a+48>>2]|0)+(((b|0)>0?((b|0)<9?b:9):0)<<3)>>3]=g;e=g*s;break a}case 34:{e=+h[b+8>>3]*+MV(e,g);break a}case 43:{e=+h[b+8>>3]*+J(+e,+g);break a}case 39:{a=ES(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=ES(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g&~~e|0);break a}case 40:{a=ES(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=ES(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);l=t;return +e}function GS(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function HS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n+4|0;i=n;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=JS(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=JS(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=KS(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;DS(h);break}else if((f|0)==8){c[j>>2]=0;DS(h);DS(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);l=n;return e|0}function IS(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33: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(!(IS(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(IS(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(IS(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(IS(c[a+20>>2]|0)|0)){a=0;break a}if(!(IS(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(IS(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(IS(c[a+20>>2]|0)|0)){a=0;break a}if(!(IS(c[a+24>>2]|0)|0)){a=0;break a}a=(IS(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(IS(c[a+20>>2]|0)|0)){a=0;break a}if(!(IS(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function JS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+4|0;i=k;e=LS(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=LS(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=KS(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;DS(h);break}else if((f|0)==7){c[j>>2]=0;DS(h);DS(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);l=k;return e|0}function KS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi(40)|0;if(!e)e=0;else{c[e>>2]=a;h[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function LS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n+4|0;j=n;e=MS(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=MS(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=KS(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;DS(i);break}else if((f|0)==7){c[k>>2]=0;DS(i);DS(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);l=n;return e|0}function MS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+12|0;j=p+8|0;k=p+4|0;o=p;e=NS(k,d,n)|0;do if((e|0)>=0){i=d+8|0;g=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=10;break}c[i>>2]=e+1;e=NS(o,d,j)|0;if((e|0)<0){f=5;break}f=KS(18,g,c[o>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(!e){g=f;continue}g=e+8|0;h[g>>3]=+h[g>>3]*+(c[j>>2]|1|0);g=f}if((f|0)==5){DS(g);break}else if((f|0)==7){DS(g);DS(c[o>>2]|0);e=-12;break}else if((f|0)==10){if(g|0){o=g+8|0;h[o>>3]=+h[o>>3]*+(c[n>>2]|1|0)}c[b>>2]=g;e=0;break}}while(0);l=p;return e|0}function NS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+LX(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=OS(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=PS(b,d,e)|0;l=j;return b|0}function OS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=x+24|0;r=x+16|0;q=x+8|0;p=x;w=x+32|0;s=x+28|0;o=Zi(40)|0;c[w>>2]=o;t=d+8|0;v=c[t>>2]|0;c[s>>2]=v;a:do if(!o)e=-12;else{j=o+8|0;h[j>>3]=+QS(v,s);n=c[s>>2]|0;i=o;if((n|0)!=(c[t>>2]|0)){c[o>>2]=0;c[t>>2]=n;c[b>>2]=i;e=0;break}h[j>>3]=1.0;f=c[d+16>>2]|0;b:do if(!f)e=0;else{e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g){e=0;break b}if(RS(n,g)|0)break;e=e+1|0}c[t>>2]=n+(YW(g)|0);c[o>>2]=1;c[o+16>>2]=e;c[b>>2]=i;e=0;break a}while(0);while(1){if(e>>>0>=4)break;f=c[28704+(e<<4)>>2]|0;if(RS(n,f)|0){k=11;break}e=e+1|0}if((k|0)==11){c[t>>2]=n+(YW(f)|0);c[o>>2]=0;h[j>>3]=+h[28704+(e<<4)+8>>3];c[b>>2]=i;e=0;break}e=ZW(n,40)|0;c[t>>2]=e;if(!e){c[p>>2]=v;gi(d,16,225936,p);c[t>>2]=c[s>>2];DS(c[w>>2]|0);e=-22;break}c[t>>2]=e+1;if((a[n>>0]|0)==40){ci(w);e=HS(w,d)|0;if((e|0)<0)break;e=c[t>>2]|0;if((a[e>>0]|0)==41){c[t>>2]=e+1;c[b>>2]=c[w>>2];e=0;break}else{c[q>>2]=v;gi(d,16,225979,q);DS(c[w>>2]|0);e=-22;break}}e=HS(o+20|0,d)|0;if((e|0)<0){DS(c[w>>2]|0);break}f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;HS((c[w>>2]|0)+24|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;HS((c[w>>2]|0)+28|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[r>>2]=v;gi(d,16,226e3,r);DS(c[w>>2]|0);e=-22;break}c[t>>2]=f+1;k=c[w>>2]|0;c[k>>2]=2;i=c[s>>2]|0;j=k;do if(!(RS(i,226038)|0)){if(RS(i,226043)|0){c[k+16>>2]=2;break}if(RS(i,226048)|0){c[k+16>>2]=3;break}if(RS(i,226053)|0){c[k+16>>2]=4;break}if(RS(i,226057)|0){c[k+16>>2]=5;break}if(RS(i,226061)|0){c[k+16>>2]=6;break}if(RS(i,226065)|0){c[k+16>>2]=7;break}if(RS(i,226070)|0){c[k+16>>2]=8;break}if(RS(i,226075)|0){c[k+16>>2]=9;break}if(RS(i,226080)|0){c[k+16>>2]=10;break}if(RS(i,238550)|0){c[k+16>>2]=11;break}if(RS(i,226084)|0){c[k+16>>2]=12;break}if(RS(i,226088)|0){c[k+16>>2]=13;break}if(RS(i,226093)|0){c[k>>2]=5;break}if(RS(i,226100)|0){c[k>>2]=6;break}if(RS(i,226106)|0){c[k>>2]=10;break}if(RS(i,226110)|0){c[k>>2]=11;break}if(RS(i,226114)|0){c[k>>2]=12;break}if(RS(i,226118)|0){c[k>>2]=13;break}if(RS(i,226121)|0){c[k>>2]=15;break}if(RS(i,226125)|0){c[k>>2]=14;break}if(RS(i,226128)|0){c[k>>2]=16;break}if(RS(i,226132)|0){c[k>>2]=17;break}if(RS(i,226135)|0){c[k>>2]=7;break}if(RS(i,226138)|0){c[k>>2]=8;break}if(RS(i,226144)|0){c[k>>2]=9;break}if(RS(i,226150)|0){c[k>>2]=23;break}if(RS(i,226153)|0){c[k>>2]=24;break}if(RS(i,226159)|0){c[k>>2]=25;break}if(RS(i,226166)|0){c[k>>2]=26;break}if(RS(i,226171)|0){c[k>>2]=27;break}if(RS(i,226177)|0){c[k>>2]=28;break}if(RS(i,232256)|0){c[k>>2]=29;break}if(RS(i,226182)|0){c[k>>2]=30;break}if(RS(i,226188)|0){c[k>>2]=31;break}if(RS(i,226193)|0){c[k>>2]=32;break}if(RS(i,226197)|0){c[k>>2]=18;break}if(RS(i,226201)|0){c[k>>2]=38;break}if(RS(i,226664)|0){c[k>>2]=33;break}if(RS(i,226207)|0){c[k>>2]=34;break}if(RS(i,226213)|0){c[k>>2]=35;break}if(RS(i,226217)|0){c[k>>2]=36;break}if(RS(i,226220)|0){c[k>>2]=37;break}if(RS(i,226226)|0){c[k>>2]=39;break}if(RS(i,226233)|0){c[k>>2]=40;break}if(RS(i,226239)|0){c[k>>2]=41;break}if(RS(i,226247)|0){c[k>>2]=42;break}if(RS(i,226252)|0){c[k>>2]=43;break}if(RS(i,226258)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break c;if(RS(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break d;if(RS(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[u>>2]=v;gi(d,16,226263,u);DS(c[w>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);l=x;return e|0}function PS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return OS(b,d)|0}function QS(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;if((a[b>>0]|0)==48?(a[b+1>>0]|32|0)==120:0)f=+((KV(b,k,16)|0)>>>0);else f=+LX(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+iX(f/20.0*3.321928094887362);b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{g=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[28768+(b*24|0)+16>>0]|0){g=i+1|0;if((a[g>>0]|0)==105){f=f*+h[28768+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+h[28768+(b*24|0)+8>>3];c[k>>2]=g;e=g;b=g;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)g=a[b>>0]|0;if(g<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;l=n;return +f}function RS(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function SS(a){a=+a;var b=0;b=TS()|0;return +((+(b>>>0)+4294967296.0*+(y|0))*1.0e-06)}function TS(){var a=0,b=0,d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=a;fc(b|0,0)|0;d=c[b>>2]|0;d=uZ(d|0,((d|0)<0)<<31>>31|0,1e6,0)|0;b=c[b+4>>2]|0;b=oZ(d|0,y|0,b|0,((b|0)<0)<<31>>31|0)|0;l=a;return b|0}function US(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=WS(a,i)|0;if(!i)break b;h=US(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=VS(j,h)|0;c[i>>2]=h;if(!h){i=7;break}h=US(i,b,d,e,f,0)|0;if(h|0){i=10;break}h=c[i>>2]|0}if((i|0)==7)break;else if((i|0)==10)break a}while(0);j=(d|0)==0;h=0;while(1){h=Qi(a,h)|0;if(!h){h=0;break a}if(UV(c[h>>2]|0,b)|0)continue;if((c[h+40>>2]&e|0)!=(e|0))continue;i=(c[h+12>>2]|0)==10;if(j)if(i)continue;else break;if(!i)continue;i=c[h+44>>2]|0;if(!i)continue;if(!(UV(i,d)|0))break}if(g)c[g>>2]=(f&2|0)==0?a:0}else h=0;while(0);l=k;return h|0}function VS(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Ld[a&31](b)|0;return a|0}function WS(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Md[d&15](a,b)|0;return a|0}function XS(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0.0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;e=n+8|0;i=YS(b)|0;h=y&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+A(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+qW(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=zZ(1,0,61-f|0)|0;f=y;g=j+4|0;o=+z(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~o>>>0;i=+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0;Zp(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)Zp(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);l=n;return}function YS(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function ZS(){var a=0,b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;a=Gc(84)|0;if(!(c[63827]|0)){c[b>>2]=a;gi(0,48,226436,b);c[63827]=1}l=d;return a|0}function _S(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=s;p=a+68|0;g=c[p>>2]|0;do if((g|0)>0?(q=a+72|0,h=c[q>>2]|0,(h|0)>0):0){r=a+392|0;e=c[r>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,t=c[k>>2]|0,n=a+388|0,i=c[n>>2]|0,(i+t|0)>>>0>>0&((f+e|0)>>>0>>0&t>>>0<(2147483647-i|0)>>>0)):0){i=Bj(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[p>>2]=(c[p>>2]|0)-(c[j>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[j>>2]=0;c[n>>2]=0;e=0;break}$S(o,a,i);if(!(b&1)){h=c[r>>2]|0;if(!h)b=2147483647;else b=d[226463+((N(h&0-h,125613361)|0)>>>27)>>0]|0;f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[o+(g<<2)>>2]|0;if(!e)e=2147483647;else e=d[226463+((N(e&0-e,125613361)|0)>>>27)>>0]|0;f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[r>>2]=h&-1<>2]|0;if(!g)break;c[f>>2]=g+(c[o+(e<<2)>>2]|0);e=e+1|0}c[p>>2]=(c[p>>2]|0)-((c[j>>2]|0)+(c[r>>2]|0));c[q>>2]=(c[q>>2]|0)-((c[n>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);l=s;return e|0}function $S(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=10;break}i=d[n>>0]|0;g=0;while(1){if((g|0)>=(i|0))break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=N((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;c[a+(f<<2)>>2]=(N((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j;f=f+1|0}if((q|0)==10)c[a+4>>2]=0;return}function aT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[d>>2]|0;g=c[e+4>>2]|0;h=uZ(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=y;e=c[e>>2]|0;d=c[d+4>>2]|0;e=uZ(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Pp(a,b,h,g,e,y,f)|0;return f|0}function bT(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=aT(a,b,h,g,5)|0;l=f;return e|0}function cT(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Zi(N(b,a)|0)|0;else a=0;return a|0}function dT(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=n+16|0;k=n+8|0;i=n;j=n+32|0;h=n+24|0;f=US(a,b,0,0,e,j)|0;e=c[j>>2]|0;a:do if((f|0)!=0&(e|0)!=0){b=(d|0)!=0;if(!b)switch(c[f+12>>2]|0){case 18:case 17:case 16:case 15:case 14:case 11:case 13:case 12:case 5:break;default:{b=-22;break a}}if(!(c[f+40>>2]&128)){j=e+(c[f+8>>2]|0)|0;do switch(c[f+12>>2]|0){case 18:{b=eT(a,f,d,j)|0;break a}case 5:{b=fT(d,j)|0;break a}case 7:{b=gT(d,j)|0;break a}case 6:case 3:case 4:case 9:case 2:case 1:case 0:{b=wS(a,e,f,d,j)|0;break a}case 11:{b=hT(a,d,j)|0;break a}case 14:{b=iT(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=xS(a,f,j,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}case 12:{b=jT(a,f,d,j)|0;break a}case 13:{b=kT(a,f,d,j)|0;break a}case 15:{if(!b){b=j;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=lT(j,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;gi(a,16,226495,i);break a}case 16:{b=mT(a,d,j)|0;break a}case 17:{if(b?UV(d,237098)|0:0){e=qS(d)|0;f=y;if((e|0)==0&(f|0)==0){c[k>>2]=d;gi(a,16,226542,k);b=-22}else b=0;a=j;c[a>>2]=e;c[a+4>>2]=f;break a}d=j;c[d>>2]=0;c[d+4>>2]=0;break}default:{}}while(0);gi(a,16,226595,g);b=-22}else b=-22}else b=-1414549496;while(0);l=n;return b|0}function eT(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;j=o+4|0;do if(!d)f=0;else{if(UV(d,233535)|0)if(!(lS(d,228911)|0))if(!(lS(d,228940)|0)){c[j>>2]=0;g=LV(d,j,10)|0;p=d+(YW(d)|0)|0;if((p|0)==(c[j>>2]|0)){f=g;n=6}}else{f=0;n=6}else{f=1;n=6}else{f=-1;n=6}if(((n|0)==6?(i=+(f|0),!(+h[b+24>>3]>i)):0)?!(+h[b+32>>3]>2]=f;f=0;break}c[k>>2]=d;gi(a,16,228972,k);f=-22}while(0);l=o;return f|0}function fT(a,b){a=a|0;b=b|0;ci(b);a=pk(a)|0;c[b>>2]=a;return (a|0?0:-12)|0}function gT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;ci(d);c[j>>2]=0;do if((b|0)!=0?(e=YW(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=oi(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=9;break}e=CT(e)|0;f=CT(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){di(i);e=-22;break}else if((b|0)==9){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function hT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if((b|0)!=0?(UV(b,237098)|0)!=0:0){d=BT(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;gi(a,16,228606,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}l=f;return d|0}function iT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;if(b){d=zT(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;gi(a,16,228508,e)}l=g;return d|0}function jT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wT(a,b,c,d,183,20,228469)|0}function kT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wT(a,b,c,d,12,21,228352)|0}function lT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;if((l|0)>=(m|0))W(144);o=s+132|0;p=s+88|0;q=s+44|0;r=s;f=p;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));j=b;c[j>>2]=0;c[j+4>>2]=-2147483648;j=(e|0)!=0;a:do if(j){g=(a[d>>0]|0)==45;d=g?d+1|0:d;g=g&1;f=pT(d,228201,p)|0;if(!f){f=pT(d,228210,p)|0;e=p+8|0;c[e>>2]=0;if(!f){c[p>>2]=LV(d,r,10)|0;f=c[r>>2]|0;if((f|0)==(d|0)){e=-22;break}else{c[p+4>>2]=0;c[e>>2]=0;e=g;d=0;k=18;break}}else{n=g;h=0;k=19}}else{n=g;h=0;k=19}}else{e=TS()|0;f=y;n=sZ(e|0,f|0,1e6,0)|0;c[o>>2]=n;if(!(iS(d,228197)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}else f=0;while(1){if(f>>>0>=2){e=0;break}e=pT(d,c[168856+(f<<2)>>2]|0,p)|0;if(!e)f=f+1|0;else break}h=(e|0)==0;g=h?d:e;h=h&1;e=a[g>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{d=g+1|0;break}default:{d=g;while(1){f=d+1|0;if(!(qT(e<<24>>24)|0))break b;d=f;e=a[f>>0]|0}}}while(0);e=0;f=g;while(1){if(e>>>0>=2){e=0;d=h;k=18;break a}f=pT(d,c[168864+(e<<2)>>2]|0,p)|0;if(!f){e=e+1|0;f=0}else{n=0;k=19;break}}}while(0);if((k|0)==18)if(!f)e=-22;else{n=e;h=d;k=19}c:do if((k|0)==19){e=a[f>>0]|0;if(e<<24>>24==46){g=1e5;d=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(rT(e)|0))break;i=(N(e+-48|0,g)|0)+d|0;g=(g>>>0)/10|0;d=i}while(1){e=a[f>>0]|0;if(!(rT(e<<24>>24)|0)){i=f;g=e;break}else f=f+1|0}}else{d=0;i=f;g=e}d:do if(j){j=((c[p+4>>2]|0)*60|0)+((c[p+8>>2]|0)*3600|0)+(c[p>>2]|0)|0;e=((j|0)<0)<<31>>31;switch(g<<24>>24){case 109:{if((a[i+1>>0]|0)==115){i=i+2|0;d=(d|0)/1e3|0;g=1e3;h=0;f=j;break d}else k=28;break}case 117:{f=i+1|0;if((a[f>>0]|0)==115){i=i+2|0;d=0;g=1;h=0;f=j;break d}break}default:k=28}if((k|0)==28)f=i+1|0;i=g<<24>>24==115?f:i;g=1e6;h=0;f=j}else{j=(g|32)<<24>>24==122;e=j&1;i=i+e|0;h=(h|0)!=0;e:do if(h|j){f=0;g=0}else{switch(a[i>>0]|0){case 45:case 43:break;default:{f=0;g=0;break e}}f=r;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=(a[i>>0]|0)==43;f=i+1|0;i=f;e=0;while(1){if(e>>>0>=3){k=37;break}i=pT(f,c[168872+(e<<2)>>2]|0,r)|0;if(!i){i=0;e=e+1|0}else break}if((k|0)==37)if(!i){e=-22;break c}g=N(g?-60:60,((c[r+8>>2]|0)*60|0)+(c[r+4>>2]|0)|0)|0;e=1;f=g;g=((g|0)<0)<<31>>31}while(0);if(h){if(!e){q=(qc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}else{q=(gc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}q=p+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2]}r=(e|0)!=0;c[p+32>>2]=(r^1)<<31>>31;if(r)e=sT(p)|0;else e=sc(p|0)|0;f=oZ(f|0,g|0,e|0,((e|0)<0)<<31>>31|0)|0;g=1e6;h=0;e=y}while(0);r=(a[i>>0]|0)==0;e=uZ(g|0,h|0,f|0,e|0)|0;e=oZ(e|0,y|0,d|0,((d|0)<0)<<31>>31|0)|0;f=y;if(r){r=(n|0)!=0;q=pZ(0,0,e|0,f|0)|0;c[b>>2]=r?q:e;c[b+4>>2]=r?y:f;e=0}else e=-22}while(0);l=s;return e|0}function mT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if(b){d=nT(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;gi(a,16,226617,e)}}else d=0;l=f;return d|0}function nT(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+160|0;if((l|0)>=(m|0))W(160);t=u+16|0;p=u+8|0;o=u;s=u+28|0;q=u+32|0;n=u+24|0;if((a[d>>0]|0)==35)i=1;else{i=(WV(d,226661,2)|0)==0;i=i?2:0}if((e|0)<0)e=YW(d)|0;e=e-i+1|0;rk(q,d+i|0,e>>>0<128?e:128)|0;e=ZW(q,64)|0;c[s>>2]=e;if(!e)k=0;else{k=e+1|0;c[s>>2]=k;a[e>>0]=0}h=YW(q)|0;j=b+3|0;a[j>>0]=-1;a:do if((iS(q,226664)|0)!=0?(iS(q,226671)|0)!=0:0){if((i|0)==0?(JX(q,226680)|0)!=(h|0):0){e=NX(q,167736,140,8,12)|0;if(!e){c[p>>2]=q;gi(f,16,226744,p);e=-22;break}else{r=e+4|0;a[b>>0]=a[r>>0]|0;a[b+1>>0]=a[r+1>>0]|0;a[b+2>>0]=a[r+2>>0]|0;r=20;break}}e=KV(q,n,16)|0;b:do if(!(a[c[n>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;r=20;break a}while(0);c[o>>2]=q;gi(f,16,226703,o);e=-22}else r=9;while(0);if((r|0)==9){q=ZR()|0;a[b>>0]=q>>>24;a[b+1>>0]=q>>>16;a[b+2>>0]=q>>>8;a[j>>0]=q;r=20}do if((r|0)==20)if(!k)e=0;else{if(!(WV(k,226661,2)|0))g=+((KV(k,s,16)|0)>>>0);else{g=+LX(k,s);g=g<0.0|g>1.0?256.0:g*255.0}s=c[s>>2]|0;if((s|0)!=(k|0)?!(g<0.0|(g>255.0|(a[s>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[t>>2]=k;c[t+4>>2]=d;gi(f,16,226768,t);e=-22}while(0);l=u;return e|0}function oT(a,b){a=a|0;b=b|0;return iS(a,c[b>>2]|0)|0}function pT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q;c[o>>2]=b;h=e+8|0;i=e+4|0;j=e+20|0;k=e+16|0;n=e+12|0;a:while(1){g=d+1|0;f=a[d>>0]|0;switch(f<<24>>24){case 0:{p=27;break a}case 37:break;default:{d=(qT(f<<24>>24)|0)==0;b=c[o>>2]|0;if(d){if((a[b>>0]|0)!=f<<24>>24){b=0;break a}c[o>>2]=b+1;d=g;continue a}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(qT(d<<24>>24)|0))break;b=b+1|0}c[o>>2]=b;d=g;continue a}}d=d+2|0;b=a[g>>0]|0;switch(b<<24>>24|0){case 74:case 72:{b=tT(o,0,b<<24>>24==72?23:2147483647,2)|0;if((b|0)==-1){b=0;break a}c[h>>2]=b;continue a}case 77:{b=tT(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[i>>2]=b;continue a}case 83:{b=tT(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[e>>2]=b;continue a}case 89:{b=tT(o,0,9999,4)|0;if((b|0)==-1){b=0;break a}c[j>>2]=b+-1900;continue a}case 109:{b=tT(o,1,12,2)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b+-1;continue a}case 100:{b=tT(o,1,31,2)|0;if((b|0)==-1){b=0;break a}c[n>>2]=b;continue a}case 84:{g=pT(c[o>>2]|0,228230,e)|0;c[o>>2]=g;if(!g){b=0;break a}else continue a}case 104:case 66:case 98:{b=uT(o)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b;continue a}case 37:{g=c[o>>2]|0;c[o>>2]=g+1;if((a[g>>0]|0)==37)continue a;else{b=0;break a}}default:{b=0;break a}}}if((p|0)==27)b=c[o>>2]|0;l=q;return b|0}function qT(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function rT(a){a=a|0;return (a+-48|0)>>>0<10|0}function sT(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function tT(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(rT(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function uT(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if((b|0)>=12){b=-1;break}d=c[168884+(b<<2)>>2]|0;if(!(kS(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=YW(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?(kS(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function vT(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=12){b=-1;break}if(!(UV(163720+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function wT(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);q=r+8|0;o=r;n=r+28|0;do if((e|0)!=0?(UV(e,237098)|0)!=0:0){k=Ld[i&31](e)|0;if((k|0)==-1){k=LV(e,n,0)|0;if(k>>>0>>0?(a[c[n>>2]>>0]|0)==0:0){p=7;break}else{c[o>>2]=e;c[o+4>>2]=j;gi(b,16,228366,o);i=-22;break}}else p=7}else{k=-1;p=7}while(0);do if((p|0)==7){s=+h[d+24>>3];e=~~(s>-1.0?s:-1.0);s=+h[d+32>>3];p=g+-1|0;t=+(p|0);i=~~(s>t?t:s);g=(i|e|0)==0;e=g?-1:e;i=g?p:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[q>>2]=k;c[q+4>>2]=f;c[q+8>>2]=j;c[q+12>>2]=e;c[q+16>>2]=i;gi(b,16,228407,q);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);l=r;return i|0}function xT(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=f;d=f+8|0;if(!(UV(a,228482)|0))b=194656;else{b=(UV(a,228488)|0)==0;b=b?194646:a}a=yT(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=228499;fX(d,32,228494,e)|0;a=yT(d)|0;if((a|0)==-1){e=(UV(b,228502)|0)==0;l=f;return (e?46:-1)|0}}l=f;return a|0}function yT(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=183){b=-1;break}if(!(UV(c[200+(b*152|0)>>2]|0,a)|0))break;if(lS(a,c[200+(b*152|0)+144>>2]|0)|0)break;b=b+1|0}return b|0}function zT(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)>=8){e=6;break}if(!(UV(c[168932+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=168932+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=AT(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function AT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=k+8|0;i=k;g=a+4|0;c[j>>2]=a;c[j+4>>2]=g;c[j+8>>2]=k+20;do if((vX(b,228557,j)|0)!=2){b=zS(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{XS(i,+h[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[g>>2]|0;Zp(a,g,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);l=k;return b|0}function BT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=0;while(1){if((g|0)>=53){i=6;break}if(!(UV(c[169028+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[169028+(g*12|0)+8>>2]|0;e=c[169028+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=LV(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=LV(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}l=j;return e|0}function CT(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function DT(a){a=a|0;return (a>>>0>11?0:163720+(a*20|0)|0)|0}function ET(a){a=a|0;FT(a,0,0);return} -function Xh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16384|0;if((l|0)>=(m|0))W(16384);k=p;if(!b){o=20;l=p;return o|0}switch(a[b+12436>>0]|0){case 3:case 0:break;default:{o=21;l=p;return o|0}}n=b+10|0;if(a[n>>0]|0)if(!(a[b+12426>>0]|0))h=1;else{a[b+12412>>0]=-1;h=1}else h=(c[b+12432>>2]|0)==0&1;i=b+9|0;a[i>>0]=f<<24>>24!=0&1;h=(rh(b,e,k,0,h)|0)&255;a[n>>0]=(d[n>>0]|0)+h;h=c[b+12448>>2]|0;if(!(g<<24>>24))th(b,h,k,e);else sh(b,h,k,e);if(a[b+53426>>0]|0)a[i>>0]=0;if((c[b+12432>>2]|0?(a[n>>0]|0)==0:0)?(j=uh(b,0)|0,j<<24>>24):0){o=j;l=p;return o|0}i=b+53418|0;if(a[i>>0]|0){g=b+53416|0;f=0;h=0;while(1){EZ(b+12456+(h<<9)|0,b+12456+(h+(d[g>>0]|0)<<9)|0,512)|0;e=f+1<<24>>24;h=a[i>>0]|0;if((e&255)<(h&255)){f=e;h=e&255}else break}if((h&255)<40)o=18}else{h=0;o=18}if((o|0)==18)FZ(b+(((h&255)<<9)+12456)|0,0,((39-h&255)<<9)+512|0)|0;o=b+12428|0;c[o>>2]=(c[o>>2]|0)+1;o=0;l=p;return o|0}function Yh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+38912|0;if((l|0)>=(m|0))W(38912);q=v+19456|0;r=v;FZ(q|0,0,19456)|0;FZ(r|0,0,19456)|0;if(!b){u=20;l=v;return u|0}switch(a[b+12436>>0]|0){case 3:case 0:break;default:{u=21;l=v;return u|0}}o=b+10|0;if(a[o>>0]|0)if(!(a[b+12426>>0]|0))i=1;else{a[b+12412>>0]=-1;i=1}else i=(c[b+12432>>2]|0)==0&1;p=b+9|0;a[p>>0]=g<<24>>24!=0&1;n=b+12452|0;if(!(c[n>>2]|0))c[n>>2]=_g(h<<24>>24?32:64)|0;t=(rh(b,e,q,0,i)|0)&255;a[o>>0]=(d[o>>0]|0)+t;t=b+53416|0;g=a[t>>0]|0;k=g&255;i=k+6|0;j=d[b+53419>>0]|0;do{w=k+j|0;c[q+(k<<9)>>2]=c[b+12456+(w<<9)>>2];c[q+(k<<9)+4>>2]=c[b+12456+(w<<9)+4>>2];c[q+(k<<9)+8>>2]=c[b+12456+(w<<9)+8>>2];c[q+(k<<9)+12>>2]=c[b+12456+(w<<9)+12>>2];c[q+(k<<9)+16>>2]=c[b+12456+(w<<9)+16>>2];c[q+(k<<9)+20>>2]=c[b+12456+(w<<9)+20>>2];c[q+(k<<9)+24>>2]=c[b+12456+(w<<9)+24>>2];c[q+(k<<9)+28>>2]=c[b+12456+(w<<9)+28>>2];c[q+(k<<9)+32>>2]=c[b+12456+(w<<9)+32>>2];c[q+(k<<9)+36>>2]=c[b+12456+(w<<9)+36>>2];g=g+1<<24>>24;k=g&255}while(i>>>0>k>>>0);Zh(c[b+53420>>2]|0,q,r)|0;g=c[b+12448>>2]|0;if(!(h<<24>>24)){th(b,g,q,e);th(b,c[n>>2]|0,r,f)}else{sh(b,g,q,e);sh(b,c[n>>2]|0,r,f)}if(a[b+53426>>0]|0)a[p>>0]=0;if((c[b+12432>>2]|0?(a[o>>0]|0)==0:0)?(s=uh(b,0)|0,s<<24>>24):0){w=s;l=v;return w|0}k=b+53418|0;if(a[k>>0]|0){i=0;g=0;while(1){EZ(b+12456+(g<<9)|0,b+12456+(g+(d[t>>0]|0)<<9)|0,512)|0;j=i+1<<24>>24;g=a[k>>0]|0;if((j&255)<(g&255)){i=j;g=j&255}else break}if((g&255)<40)u=21}else{g=0;u=21}if((u|0)==21)FZ(b+(((g&255)<<9)+12456)|0,0,((39-g&255)<<9)+512|0)|0;w=b+12428|0;c[w>>2]=(c[w>>2]|0)+1;w=0;l=v;return w|0}function Zh(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,k=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0,K=0,L=0.0,M=0.0,O=0.0,P=0.0,Q=0.0,R=0,S=0.0,T=0.0,U=0.0,V=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0.0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0.0,Aa=0.0,Ba=0.0,Ca=0.0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0.0,_a=0.0,$a=0.0,ab=0.0,bb=0.0;Qa=l;l=l+25088|0;if((l|0)>=(m|0))W(25088);ja=Qa+20736|0;Ha=Qa+16384|0;Oa=Qa+8192|0;Pa=Qa;FZ(Oa|0,0,8192)|0;FZ(Pa|0,0,8192)|0;R=e+718|0;Na=e+9|0;if(a[R>>0]|0)if(a[Na>>0]|0){w=e+3|0;x=e+38|0;z=e+72|0;i=e+106|0;k=e+123|0;A=e+5|0;C=e+1|0;D=e+7|0;I=e+4|0;J=e+26|0;K=e+6|0;v=0;u=0;while(1){La=a[w>>0]|0;n=(La&255)<3?7:15;Ma=v<<24>>24==0;o=u+-1|0;s=Ma?i:e+480+(o*17|0)|0;t=Ma?k:e+565+(o*17|0)|0;_h(a[e>>0]|0,e+140+(u*34|0)|0,Ma?x:e+140+(o*34|0)|0,a[e+16+u>>0]|0,a[A>>0]|0,La<<24>>24==0|La<<24>>24==3?2:1,0-(n&255)&255,n);n=a[I>>0]|0;_h(a[C>>0]|0,e+310+(u*34|0)|0,Ma?z:e+310+(o*34|0)|0,a[e+21+u>>0]|0,a[D>>0]|0,n<<24>>24==0|n<<24>>24==3?2:1,0,7);n=e+480+(u*17|0)|0;o=a[K>>0]|0;do if((a[J>>0]|0)==1)if(!(a[e+28+u>>0]|0)){a[n>>0]=a[n>>0]&7;p=o&255;if((o&255)>1){n=1;o=1}else{ha=13;break}do{Ma=e+480+(u*17|0)+o|0;a[Ma>>0]=(d[Ma>>0]|0)+(d[o+-1+(e+480+(u*17|0))>>0]|0)&7;n=n+1<<24>>24;o=n<<24>>24}while((o|0)<(p|0));ha=13}else{p=o&255;if(!(o<<24>>24)){ha=13;break}else{n=0;o=0}do{Ma=e+480+(u*17|0)+o|0;a[Ma>>0]=(d[Ma>>0]|0)+(d[s+o>>0]|0)&7;n=n+1<<24>>24;o=n<<24>>24}while((o|0)<(p|0));ha=13}else{p=o&255;if(o<<24>>24){n=0;o=0;do{a[e+480+(u*17|0)+o>>0]=0;n=n+1<<24>>24;o=n<<24>>24}while((o|0)<(p|0));ha=13}}while(0);a:do if((ha|0)==13){ha=0;o=a[K>>0]|0;n=e+565+(u*17|0)|0;if((a[J>>0]|0)!=1){p=o&255;if(!(o<<24>>24))break;else{n=0;o=0}while(1){a[e+565+(u*17|0)+o>>0]=0;n=n+1<<24>>24;o=n<<24>>24;if((o|0)>=(p|0))break a}}if(!(a[e+33+u>>0]|0)){a[n>>0]=a[n>>0]&7;p=o&255;if((o&255)>1){n=1;o=1}else break;do{Ma=e+565+(u*17|0)+o|0;a[Ma>>0]=(d[Ma>>0]|0)+(d[o+-1+(e+565+(u*17|0))>>0]|0)&7;n=n+1<<24>>24;o=n<<24>>24}while((o|0)<(p|0))}else{p=o&255;if(!(o<<24>>24))break;else{n=0;o=0}do{Ma=e+565+(u*17|0)+o|0;a[Ma>>0]=(d[Ma>>0]|0)+(d[t+o>>0]|0)&7;n=n+1<<24>>24;o=n<<24>>24}while((o|0)<(p|0))}}while(0);o=v+1<<24>>24;n=a[Na>>0]|0;if((o&255)<(n&255)){v=o;u=o&255}else break}if(!(n<<24>>24))ha=24}else ha=24;else{a[Na>>0]=0;ha=24}do if((ha|0)==24){a[Na>>0]=1;if(!(a[e>>0]|0)){p=e+140|0;o=p+34|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0))}else{a[e+140>>0]=a[e+38>>0]|0;a[e+141>>0]=a[e+39>>0]|0;a[e+142>>0]=a[e+40>>0]|0;a[e+143>>0]=a[e+41>>0]|0;a[e+144>>0]=a[e+42>>0]|0;a[e+145>>0]=a[e+43>>0]|0;a[e+146>>0]=a[e+44>>0]|0;a[e+147>>0]=a[e+45>>0]|0;a[e+148>>0]=a[e+46>>0]|0;a[e+149>>0]=a[e+47>>0]|0;a[e+150>>0]=a[e+48>>0]|0;a[e+151>>0]=a[e+49>>0]|0;a[e+152>>0]=a[e+50>>0]|0;a[e+153>>0]=a[e+51>>0]|0;a[e+154>>0]=a[e+52>>0]|0;a[e+155>>0]=a[e+53>>0]|0;a[e+156>>0]=a[e+54>>0]|0;a[e+157>>0]=a[e+55>>0]|0;a[e+158>>0]=a[e+56>>0]|0;a[e+159>>0]=a[e+57>>0]|0;a[e+160>>0]=a[e+58>>0]|0;a[e+161>>0]=a[e+59>>0]|0;a[e+162>>0]=a[e+60>>0]|0;a[e+163>>0]=a[e+61>>0]|0;a[e+164>>0]=a[e+62>>0]|0;a[e+165>>0]=a[e+63>>0]|0;a[e+166>>0]=a[e+64>>0]|0;a[e+167>>0]=a[e+65>>0]|0;a[e+168>>0]=a[e+66>>0]|0;a[e+169>>0]=a[e+67>>0]|0;a[e+170>>0]=a[e+68>>0]|0;a[e+171>>0]=a[e+69>>0]|0;a[e+172>>0]=a[e+70>>0]|0;a[e+173>>0]=a[e+71>>0]|0}if(!(a[e+1>>0]|0)){p=e+310|0;o=p+34|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0))}else{a[e+310>>0]=a[e+72>>0]|0;a[e+311>>0]=a[e+73>>0]|0;a[e+312>>0]=a[e+74>>0]|0;a[e+313>>0]=a[e+75>>0]|0;a[e+314>>0]=a[e+76>>0]|0;a[e+315>>0]=a[e+77>>0]|0;a[e+316>>0]=a[e+78>>0]|0;a[e+317>>0]=a[e+79>>0]|0;a[e+318>>0]=a[e+80>>0]|0;a[e+319>>0]=a[e+81>>0]|0;a[e+320>>0]=a[e+82>>0]|0;a[e+321>>0]=a[e+83>>0]|0;a[e+322>>0]=a[e+84>>0]|0;a[e+323>>0]=a[e+85>>0]|0;a[e+324>>0]=a[e+86>>0]|0;a[e+325>>0]=a[e+87>>0]|0;a[e+326>>0]=a[e+88>>0]|0;a[e+327>>0]=a[e+89>>0]|0;a[e+328>>0]=a[e+90>>0]|0;a[e+329>>0]=a[e+91>>0]|0;a[e+330>>0]=a[e+92>>0]|0;a[e+331>>0]=a[e+93>>0]|0;a[e+332>>0]=a[e+94>>0]|0;a[e+333>>0]=a[e+95>>0]|0;a[e+334>>0]=a[e+96>>0]|0;a[e+335>>0]=a[e+97>>0]|0;a[e+336>>0]=a[e+98>>0]|0;a[e+337>>0]=a[e+99>>0]|0;a[e+338>>0]=a[e+100>>0]|0;a[e+339>>0]=a[e+101>>0]|0;a[e+340>>0]=a[e+102>>0]|0;a[e+341>>0]=a[e+103>>0]|0;a[e+342>>0]=a[e+104>>0]|0;a[e+343>>0]=a[e+105>>0]|0}if(!(a[e+26>>0]|0)){i=e+565|0;p=e+480|0;o=p+17|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0));p=i;o=p+17|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0));k=e+123|0;i=e+106|0;break}else{i=e+106|0;a[e+480>>0]=a[i>>0]|0;k=e+123|0;a[e+565>>0]=a[k>>0]|0;a[e+481>>0]=a[e+107>>0]|0;a[e+566>>0]=a[e+124>>0]|0;a[e+482>>0]=a[e+108>>0]|0;a[e+567>>0]=a[e+125>>0]|0;a[e+483>>0]=a[e+109>>0]|0;a[e+568>>0]=a[e+126>>0]|0;a[e+484>>0]=a[e+110>>0]|0;a[e+569>>0]=a[e+127>>0]|0;a[e+485>>0]=a[e+111>>0]|0;a[e+570>>0]=a[e+128>>0]|0;a[e+486>>0]=a[e+112>>0]|0;a[e+571>>0]=a[e+129>>0]|0;a[e+487>>0]=a[e+113>>0]|0;a[e+572>>0]=a[e+130>>0]|0;a[e+488>>0]=a[e+114>>0]|0;a[e+573>>0]=a[e+131>>0]|0;a[e+489>>0]=a[e+115>>0]|0;a[e+574>>0]=a[e+132>>0]|0;a[e+490>>0]=a[e+116>>0]|0;a[e+575>>0]=a[e+133>>0]|0;a[e+491>>0]=a[e+117>>0]|0;a[e+576>>0]=a[e+134>>0]|0;a[e+492>>0]=a[e+118>>0]|0;a[e+577>>0]=a[e+135>>0]|0;a[e+493>>0]=a[e+119>>0]|0;a[e+578>>0]=a[e+136>>0]|0;a[e+494>>0]=a[e+120>>0]|0;a[e+579>>0]=a[e+137>>0]|0;a[e+495>>0]=a[e+121>>0]|0;a[e+580>>0]=a[e+138>>0]|0;a[e+496>>0]=a[e+122>>0]|0;a[e+581>>0]=a[e+139>>0]|0;break}}while(0);Ma=(d[Na>>0]|0)+-1|0;a[e+38>>0]=a[e+140+(Ma*34|0)>>0]|0;a[e+39>>0]=a[e+140+(Ma*34|0)+1>>0]|0;a[e+40>>0]=a[e+140+(Ma*34|0)+2>>0]|0;a[e+41>>0]=a[e+140+(Ma*34|0)+3>>0]|0;a[e+42>>0]=a[e+140+(Ma*34|0)+4>>0]|0;a[e+43>>0]=a[e+140+(Ma*34|0)+5>>0]|0;a[e+44>>0]=a[e+140+(Ma*34|0)+6>>0]|0;a[e+45>>0]=a[e+140+(Ma*34|0)+7>>0]|0;a[e+46>>0]=a[e+140+(Ma*34|0)+8>>0]|0;a[e+47>>0]=a[e+140+(Ma*34|0)+9>>0]|0;a[e+48>>0]=a[e+140+(Ma*34|0)+10>>0]|0;a[e+49>>0]=a[e+140+(Ma*34|0)+11>>0]|0;a[e+50>>0]=a[e+140+(Ma*34|0)+12>>0]|0;a[e+51>>0]=a[e+140+(Ma*34|0)+13>>0]|0;a[e+52>>0]=a[e+140+(Ma*34|0)+14>>0]|0;a[e+53>>0]=a[e+140+(Ma*34|0)+15>>0]|0;a[e+54>>0]=a[e+140+(Ma*34|0)+16>>0]|0;a[e+55>>0]=a[e+140+(Ma*34|0)+17>>0]|0;a[e+56>>0]=a[e+140+(Ma*34|0)+18>>0]|0;a[e+57>>0]=a[e+140+(Ma*34|0)+19>>0]|0;a[e+58>>0]=a[e+140+(Ma*34|0)+20>>0]|0;a[e+59>>0]=a[e+140+(Ma*34|0)+21>>0]|0;a[e+60>>0]=a[e+140+(Ma*34|0)+22>>0]|0;a[e+61>>0]=a[e+140+(Ma*34|0)+23>>0]|0;a[e+62>>0]=a[e+140+(Ma*34|0)+24>>0]|0;a[e+63>>0]=a[e+140+(Ma*34|0)+25>>0]|0;a[e+64>>0]=a[e+140+(Ma*34|0)+26>>0]|0;a[e+65>>0]=a[e+140+(Ma*34|0)+27>>0]|0;a[e+66>>0]=a[e+140+(Ma*34|0)+28>>0]|0;a[e+67>>0]=a[e+140+(Ma*34|0)+29>>0]|0;a[e+68>>0]=a[e+140+(Ma*34|0)+30>>0]|0;a[e+69>>0]=a[e+140+(Ma*34|0)+31>>0]|0;a[e+70>>0]=a[e+140+(Ma*34|0)+32>>0]|0;a[e+71>>0]=a[e+140+(Ma*34|0)+33>>0]|0;Ma=(d[Na>>0]|0)+-1|0;a[e+72>>0]=a[e+310+(Ma*34|0)>>0]|0;a[e+73>>0]=a[e+310+(Ma*34|0)+1>>0]|0;a[e+74>>0]=a[e+310+(Ma*34|0)+2>>0]|0;a[e+75>>0]=a[e+310+(Ma*34|0)+3>>0]|0;a[e+76>>0]=a[e+310+(Ma*34|0)+4>>0]|0;a[e+77>>0]=a[e+310+(Ma*34|0)+5>>0]|0;a[e+78>>0]=a[e+310+(Ma*34|0)+6>>0]|0;a[e+79>>0]=a[e+310+(Ma*34|0)+7>>0]|0;a[e+80>>0]=a[e+310+(Ma*34|0)+8>>0]|0;a[e+81>>0]=a[e+310+(Ma*34|0)+9>>0]|0;a[e+82>>0]=a[e+310+(Ma*34|0)+10>>0]|0;a[e+83>>0]=a[e+310+(Ma*34|0)+11>>0]|0;a[e+84>>0]=a[e+310+(Ma*34|0)+12>>0]|0;a[e+85>>0]=a[e+310+(Ma*34|0)+13>>0]|0;a[e+86>>0]=a[e+310+(Ma*34|0)+14>>0]|0;a[e+87>>0]=a[e+310+(Ma*34|0)+15>>0]|0;a[e+88>>0]=a[e+310+(Ma*34|0)+16>>0]|0;a[e+89>>0]=a[e+310+(Ma*34|0)+17>>0]|0;a[e+90>>0]=a[e+310+(Ma*34|0)+18>>0]|0;a[e+91>>0]=a[e+310+(Ma*34|0)+19>>0]|0;a[e+92>>0]=a[e+310+(Ma*34|0)+20>>0]|0;a[e+93>>0]=a[e+310+(Ma*34|0)+21>>0]|0;a[e+94>>0]=a[e+310+(Ma*34|0)+22>>0]|0;a[e+95>>0]=a[e+310+(Ma*34|0)+23>>0]|0;a[e+96>>0]=a[e+310+(Ma*34|0)+24>>0]|0;a[e+97>>0]=a[e+310+(Ma*34|0)+25>>0]|0;a[e+98>>0]=a[e+310+(Ma*34|0)+26>>0]|0;a[e+99>>0]=a[e+310+(Ma*34|0)+27>>0]|0;a[e+100>>0]=a[e+310+(Ma*34|0)+28>>0]|0;a[e+101>>0]=a[e+310+(Ma*34|0)+29>>0]|0;a[e+102>>0]=a[e+310+(Ma*34|0)+30>>0]|0;a[e+103>>0]=a[e+310+(Ma*34|0)+31>>0]|0;a[e+104>>0]=a[e+310+(Ma*34|0)+32>>0]|0;a[e+105>>0]=a[e+310+(Ma*34|0)+33>>0]|0;Ma=(d[Na>>0]|0)+-1|0;a[i>>0]=a[e+480+(Ma*17|0)>>0]|0;a[k>>0]=a[e+565+(Ma*17|0)>>0]|0;a[e+107>>0]=a[e+480+(Ma*17|0)+1>>0]|0;a[e+124>>0]=a[e+565+(Ma*17|0)+1>>0]|0;a[e+108>>0]=a[e+480+(Ma*17|0)+2>>0]|0;a[e+125>>0]=a[e+565+(Ma*17|0)+2>>0]|0;a[e+109>>0]=a[e+480+(Ma*17|0)+3>>0]|0;a[e+126>>0]=a[e+565+(Ma*17|0)+3>>0]|0;a[e+110>>0]=a[e+480+(Ma*17|0)+4>>0]|0;a[e+127>>0]=a[e+565+(Ma*17|0)+4>>0]|0;a[e+111>>0]=a[e+480+(Ma*17|0)+5>>0]|0;a[e+128>>0]=a[e+565+(Ma*17|0)+5>>0]|0;a[e+112>>0]=a[e+480+(Ma*17|0)+6>>0]|0;a[e+129>>0]=a[e+565+(Ma*17|0)+6>>0]|0;a[e+113>>0]=a[e+480+(Ma*17|0)+7>>0]|0;a[e+130>>0]=a[e+565+(Ma*17|0)+7>>0]|0;a[e+114>>0]=a[e+480+(Ma*17|0)+8>>0]|0;a[e+131>>0]=a[e+565+(Ma*17|0)+8>>0]|0;a[e+115>>0]=a[e+480+(Ma*17|0)+9>>0]|0;a[e+132>>0]=a[e+565+(Ma*17|0)+9>>0]|0;a[e+116>>0]=a[e+480+(Ma*17|0)+10>>0]|0;a[e+133>>0]=a[e+565+(Ma*17|0)+10>>0]|0;a[e+117>>0]=a[e+480+(Ma*17|0)+11>>0]|0;a[e+134>>0]=a[e+565+(Ma*17|0)+11>>0]|0;a[e+118>>0]=a[e+480+(Ma*17|0)+12>>0]|0;a[e+135>>0]=a[e+565+(Ma*17|0)+12>>0]|0;a[e+119>>0]=a[e+480+(Ma*17|0)+13>>0]|0;a[e+136>>0]=a[e+565+(Ma*17|0)+13>>0]|0;a[e+120>>0]=a[e+480+(Ma*17|0)+14>>0]|0;a[e+137>>0]=a[e+565+(Ma*17|0)+14>>0]|0;a[e+121>>0]=a[e+480+(Ma*17|0)+15>>0]|0;a[e+138>>0]=a[e+565+(Ma*17|0)+15>>0]|0;a[e+122>>0]=a[e+480+(Ma*17|0)+16>>0]|0;a[e+139>>0]=a[e+565+(Ma*17|0)+16>>0]|0;a[R>>0]=0;Ma=(a[e+8>>0]|0)==0;Fa=e+10|0;a[Fa>>0]=0;k=a[Na>>0]|0;o=k&255;if(!Ma){s=e+725|0;if((d[e+10+o>>0]|0)<(d[s>>0]|0)){i=o+-1|0;k=0;do{a[e+140+(o*34|0)+k>>0]=a[e+140+(i*34|0)+k>>0]|0;a[e+310+(o*34|0)+k>>0]=a[e+310+(i*34|0)+k>>0]|0;k=k+1|0}while((k|0)!=34);i=a[Na>>0]|0;Ma=i&255;La=Ma+-1|0;a[e+480+(Ma*17|0)>>0]=a[e+480+(La*17|0)>>0]|0;a[e+565+(Ma*17|0)>>0]=a[e+565+(La*17|0)>>0]|0;a[e+480+(Ma*17|0)+1>>0]=a[e+480+(La*17|0)+1>>0]|0;a[e+565+(Ma*17|0)+1>>0]=a[e+565+(La*17|0)+1>>0]|0;a[e+480+(Ma*17|0)+2>>0]=a[e+480+(La*17|0)+2>>0]|0;a[e+565+(Ma*17|0)+2>>0]=a[e+565+(La*17|0)+2>>0]|0;a[e+480+(Ma*17|0)+3>>0]=a[e+480+(La*17|0)+3>>0]|0;a[e+565+(Ma*17|0)+3>>0]=a[e+565+(La*17|0)+3>>0]|0;a[e+480+(Ma*17|0)+4>>0]=a[e+480+(La*17|0)+4>>0]|0;a[e+565+(Ma*17|0)+4>>0]=a[e+565+(La*17|0)+4>>0]|0;a[e+480+(Ma*17|0)+5>>0]=a[e+480+(La*17|0)+5>>0]|0;a[e+565+(Ma*17|0)+5>>0]=a[e+565+(La*17|0)+5>>0]|0;a[e+480+(Ma*17|0)+6>>0]=a[e+480+(La*17|0)+6>>0]|0;a[e+565+(Ma*17|0)+6>>0]=a[e+565+(La*17|0)+6>>0]|0;a[e+480+(Ma*17|0)+7>>0]=a[e+480+(La*17|0)+7>>0]|0;a[e+565+(Ma*17|0)+7>>0]=a[e+565+(La*17|0)+7>>0]|0;a[e+480+(Ma*17|0)+8>>0]=a[e+480+(La*17|0)+8>>0]|0;a[e+565+(Ma*17|0)+8>>0]=a[e+565+(La*17|0)+8>>0]|0;a[e+480+(Ma*17|0)+9>>0]=a[e+480+(La*17|0)+9>>0]|0;a[e+565+(Ma*17|0)+9>>0]=a[e+565+(La*17|0)+9>>0]|0;a[e+480+(Ma*17|0)+10>>0]=a[e+480+(La*17|0)+10>>0]|0;a[e+565+(Ma*17|0)+10>>0]=a[e+565+(La*17|0)+10>>0]|0;a[e+480+(Ma*17|0)+11>>0]=a[e+480+(La*17|0)+11>>0]|0;a[e+565+(Ma*17|0)+11>>0]=a[e+565+(La*17|0)+11>>0]|0;a[e+480+(Ma*17|0)+12>>0]=a[e+480+(La*17|0)+12>>0]|0;a[e+565+(Ma*17|0)+12>>0]=a[e+565+(La*17|0)+12>>0]|0;a[e+480+(Ma*17|0)+13>>0]=a[e+480+(La*17|0)+13>>0]|0;a[e+565+(Ma*17|0)+13>>0]=a[e+565+(La*17|0)+13>>0]|0;a[e+480+(Ma*17|0)+14>>0]=a[e+480+(La*17|0)+14>>0]|0;a[e+565+(Ma*17|0)+14>>0]=a[e+565+(La*17|0)+14>>0]|0;a[e+480+(Ma*17|0)+15>>0]=a[e+480+(La*17|0)+15>>0]|0;a[e+565+(Ma*17|0)+15>>0]=a[e+565+(La*17|0)+15>>0]|0;a[e+480+(Ma*17|0)+16>>0]=a[e+480+(La*17|0)+16>>0]|0;a[e+565+(Ma*17|0)+16>>0]=a[e+565+(La*17|0)+16>>0]|0;i=i+1<<24>>24;a[Na>>0]=i;a[(i&255)+(e+10)>>0]=a[s>>0]|0}else i=k;if((i&255)>1){n=i&255;p=1;do{i=p-n+(d[s>>0]|0)|0;o=e+10+p|0;k=d[o>>0]|0;if((i<<24>>24|0)>=(k|0)){i=(d[p+-1+(e+10)>>0]|0)+1|0;if((i<<24>>24|0)>(k|0))ha=45}else ha=45;if((ha|0)==45){ha=0;a[o>>0]=i}p=p+1|0}while((p|0)!=(n|0))}}else{n=e+725|0;i=a[n>>0]|0;if((k&255)>1?(a[e+11>>0]=(i&255)/(k&255)|0,k<<24>>24!=2):0){k=2;do{a[e+10+k>>0]=((N(k,i&255)|0)>>>0)/(o>>>0)|0;k=k+1|0;i=a[n>>0]|0}while(k>>>0>>0)}a[e+10+o>>0]=i}Ma=e+724|0;i=a[Ma>>0]|0;do if(!(i<<24>>24)){u=3;t=20;s=10;p=22;o=172264;n=185686;k=e+732|0;i=0}else{k=a[Na>>0]|0;if(k<<24>>24){o=e+4|0;p=e+27|0;n=a[e+3>>0]|0;k=k&255;b:do if(n<<24>>24==2){i=0;while(1){switch(a[o>>0]|0){case 5:case 2:break;default:{La=e+310+(i*34|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+310+(i*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[p>>0]|0){case 5:case 2:break;default:{La=e+480+(i*17|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+480+(i*17|0)>>0]|0)|0)/2|0)&255|0,16)|0;La=e+565+(i*17|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+565+(i*17|0)>>0]|0)|0)/2|0)&255|0,16)|0}}i=i+1|0;if((i|0)==(k|0))break b}}else{i=0;while(1){switch(n<<24>>24){case 5:case 2:break;default:{La=e+140+(i*34|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+140+(i*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[o>>0]|0){case 5:case 2:break;default:{La=e+310+(i*34|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+310+(i*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[p>>0]|0){case 5:case 2:break;default:{La=e+480+(i*17|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+480+(i*17|0)>>0]|0)|0)/2|0)&255|0,16)|0;La=e+565+(i*17|0)+1|0;FZ(La|0,(((a[La>>0]|0)+(a[e+565+(i*17|0)>>0]|0)|0)/2|0)&255|0,16)|0}}i=i+1|0;if((i|0)==(k|0))break b}}while(0);i=a[Ma>>0]|0;k=e+732|0;if(!(i<<24>>24)){u=3;t=20;s=10;p=22;o=172264;n=185686;i=0;break}}else k=e+732|0;u=5;t=34;s=32;p=50;o=172164;n=185635}while(0);c[k>>2]=n;La=e+736|0;c[La>>2]=o;Ka=e+726|0;a[Ka>>0]=p;Ja=e+727|0;a[Ja>>0]=s;ia=e+728|0;a[ia>>0]=t;Ea=e+730|0;a[Ea>>0]=u;Ia=e+720|0;z=c[Ia>>2]|0;A=a[e+725>>0]|0;R=i<<24>>24!=0;C=R?z+4|0:z+1|0;D=R?5:3;I=z+12|0;J=z+16|0;K=z+20|0;R=R?142444:142472;ba=R+24|0;ca=R+20|0;da=R+16|0;ea=R+4|0;fa=R+12|0;ga=R+8|0;u=0;x=0;t=0;while(1){p=c[I>>2]|0;n=c[(c[J>>2]|0)+(t<<2)>>2]|0;o=p+96|0;do{c[p>>2]=c[n>>2];p=p+4|0;n=n+4|0}while((p|0)<(o|0));n=a[z>>0]|0;s=c[I>>2]|0;if(!(n<<24>>24))n=0;else{o=n&255;p=0;do{ya=p+6|0;Da=p+12|0;c[s+(Da<<3)>>2]=c[f+(ya<<9)+(t<<3)>>2];c[s+(Da<<3)+4>>2]=c[f+(ya<<9)+(t<<3)+4>>2];p=p+1|0}while((p|0)!=(o|0))}p=c[(c[J>>2]|0)+(t<<2)>>2]|0;n=s+((n&255)<<3)|0;o=p+96|0;do{c[p>>2]=c[n>>2];p=p+4|0;n=n+4|0}while((p|0)<(o|0));w=C+t|0;n=a[w>>0]|0;Da=(n&255)+-2|0;switch(Da>>>1|Da<<31|0){case 0:{o=a[z>>0]|0;p=c[I>>2]|0;s=c[K>>2]|0;if(!(o<<24>>24))ha=85;else{o=o&255;n=0;do{ma=n+12|0;V=(+g[p+(n<<3)>>2]+ +g[p+(ma<<3)>>2])*0.0;Da=n;n=n+1|0;na=Da+11|0;X=(+g[p+(n<<3)>>2]+ +g[p+(na<<3)>>2])*.018994875252246857;oa=Da+2|0;pa=Da+10|0;Y=(+g[p+(oa<<3)>>2]+ +g[p+(pa<<3)>>2])*0.0;sa=Da+3|0;ta=Da+9|0;Z=(+g[p+(sa<<3)>>2]+ +g[p+(ta<<3)>>2])*-.07293139398097992;ua=Da+4|0;va=Da+8|0;_=(+g[p+(ua<<3)>>2]+ +g[p+(va<<3)>>2])*0.0;wa=Da+5|0;xa=Da+7|0;$=(+g[p+(wa<<3)>>2]+ +g[p+(xa<<3)>>2])*.305966317653656;ya=Da+6|0;U=+g[p+(ya<<3)>>2]*.5;qa=(+g[p+(Da<<3)+4>>2]+ +g[p+(ma<<3)+4>>2])*0.0;ra=(+g[p+(n<<3)+4>>2]+ +g[p+(na<<3)+4>>2])*.018994875252246857;za=(+g[p+(oa<<3)+4>>2]+ +g[p+(pa<<3)+4>>2])*0.0;Aa=(+g[p+(sa<<3)+4>>2]+ +g[p+(ta<<3)+4>>2])*-.07293139398097992;Ba=(+g[p+(ua<<3)+4>>2]+ +g[p+(va<<3)+4>>2])*0.0;Ca=(+g[p+(wa<<3)+4>>2]+ +g[p+(xa<<3)+4>>2])*.305966317653656;aa=+g[p+(ya<<3)+4>>2]*.5;Da=c[s+(Da<<2)>>2]|0;g[Da>>2]=U+(V+X+Y+Z+_+$);g[Da+4>>2]=aa+(qa+ra+za+Aa+Ba+Ca);g[Da+8>>2]=U+(V-X+Y-Z+_-$);g[Da+12>>2]=aa+(qa-ra+za-Aa+Ba-Ca)}while((n|0)!=(o|0));ha=83}break}case 1:{o=a[z>>0]|0;p=c[I>>2]|0;s=c[K>>2]|0;if(!(o<<24>>24))ha=85;else{o=o&255;n=0;do{xa=n+2|0;ya=n+10|0;wa=n+6|0;_=+g[p+(wa<<3)>>2]*.25-(+g[p+(xa<<3)>>2]+ +g[p+(ya<<3)>>2])*0.0;Da=n;n=n+1|0;Q=+g[p+(n<<3)>>2];ma=Da+11|0;S=+g[p+(ma<<3)>>2];na=Da+3|0;T=+g[p+(na<<3)>>2];oa=Da+9|0;U=+g[p+(oa<<3)>>2];pa=Da+5|0;Ca=+g[p+(pa<<3)>>2];sa=Da+7|0;Aa=+g[p+(sa<<3)>>2];$=((T+U)*.07778724282979965-(Q+S)*.04871498420834541-(Ca+Aa)*.23279856145381927)*-.7071067690849304;ta=Da+12|0;ua=Da+4|0;va=Da+8|0;qa=(+g[p+(Da<<3)+4>>2]-+g[p+(ta<<3)+4>>2])*-.059082113206386566-(+g[p+(ua<<3)+4>>2]-+g[p+(va<<3)+4>>2])*.16486303508281708;Y=+g[p+(n<<3)+4>>2];Z=+g[p+(ma<<3)+4>>2];V=+g[p+(na<<3)+4>>2];X=+g[p+(oa<<3)+4>>2];aa=+g[p+(pa<<3)+4>>2];za=+g[p+(sa<<3)+4>>2];ra=((Y-Z)*-.04871498420834541-(V-X)*.07778724282979965-(aa-za)*.23279856145381927)*.7071067690849304;Ba=(+g[p+(Da<<3)>>2]-+g[p+(ta<<3)>>2])*-.059082113206386566-(+g[p+(ua<<3)>>2]-+g[p+(va<<3)>>2])*.16486303508281708;Aa=((Q-S)*-.04871498420834541-(T-U)*.07778724282979965-(Ca-Aa)*.23279856145381927)*.7071067690849304;Ca=+g[p+(wa<<3)+4>>2]*.25-(+g[p+(xa<<3)+4>>2]+ +g[p+(ya<<3)+4>>2])*0.0;za=((V+X)*.07778724282979965-(Y+Z)*.04871498420834541-(aa+za)*.23279856145381927)*-.7071067690849304;aa=_+$;Da=c[s+(Da<<2)>>2]|0;g[Da>>2]=aa+qa+ra;g[Da+4>>2]=za+(-Ba-Aa+Ca);$=_-$;g[Da+8>>2]=$-qa+ra;g[Da+12>>2]=Ba-Aa+Ca-za;g[Da+16>>2]=$+qa-ra;g[Da+20>>2]=Aa-Ba+Ca-za;g[Da+24>>2]=aa-qa-ra;g[Da+28>>2]=za+(Aa+Ba+Ca)}while((n|0)!=(o|0));ha=83}break}case 3:{o=a[z>>0]|0;p=c[I>>2]|0;s=c[K>>2]|0;if(!(o<<24>>24))ha=85;else{o=o&255;q=+g[ba>>2];r=+g[ca>>2];y=+g[R>>2];E=+g[da>>2];F=+g[ea>>2];G=+g[fa>>2];H=+g[ga>>2];n=0;do{Xa=n+6|0;Ba=q*+g[p+(Xa<<3)>>2];Wa=n+5|0;ma=p+(Wa<<3)|0;Va=n+7|0;la=p+(Va<<3)|0;Aa=r*(+g[ma>>2]+ +g[la>>2]);oa=p+(n<<3)|0;Ra=n+12|0;na=p+(Ra<<3)|0;Ua=n+4|0;sa=p+(Ua<<3)|0;Ta=n+8|0;pa=p+(Ta<<3)|0;qa=E*(+g[sa>>2]+ +g[pa>>2])-y*(+g[oa>>2]+ +g[na>>2]);Da=n;n=n+1|0;ua=p+(n<<3)|0;ka=Da+11|0;ta=p+(ka<<3)|0;t=Da+3|0;wa=p+(t<<3)|0;v=Da+9|0;va=p+(v<<3)|0;Ca=G*(+g[wa>>2]+ +g[va>>2])-F*(+g[ua>>2]+ +g[ta>>2]);Va=p+(Va<<3)+4|0;Wa=p+(Wa<<3)+4|0;ra=r*(+g[Va>>2]-+g[Wa>>2]);Ra=p+(Ra<<3)+4|0;Sa=p+(Da<<3)+4|0;Ta=p+(Ta<<3)+4|0;Ua=p+(Ua<<3)+4|0;$=y*(+g[Ra>>2]-+g[Sa>>2])+E*(+g[Ta>>2]-+g[Ua>>2]);ka=p+(ka<<3)+4|0;ha=p+(n<<3)+4|0;v=p+(v<<3)+4|0;t=p+(t<<3)+4|0;za=F*(+g[ka>>2]-+g[ha>>2])+G*(+g[v>>2]-+g[t>>2]);xa=Da+10|0;ya=Da+2|0;aa=H*(+g[p+(xa<<3)+4>>2]-+g[p+(ya<<3)+4>>2]);Y=Ba-aa;X=Aa-za;Z=Ca-ra;V=(qa-$)*.7071067690849304;_=Y-V;Y=V+Y;V=(Z+X)*-.9238795042037964;X=X*1.3065630197525024+V;V=Z*-.5411961078643799-V;Da=s+(Da<<2)|0;Ya=c[Da>>2]|0;g[Ya+56>>2]=Y+V;g[Ya+40>>2]=_-X;g[Ya+24>>2]=Y-V;g[Ya+8>>2]=_+X;aa=Ba+aa;za=Aa+za;ra=Ca+ra;$=(qa+$)*.7071067690849304;qa=aa-$;aa=$+aa;$=(ra+za)*-.9238795042037964;za=za*1.3065630197525024+$;$=ra*-.5411961078643799-$;g[Ya+48>>2]=qa+za;g[Ya+32>>2]=aa-$;g[Ya+16>>2]=qa-za;g[Ya>>2]=aa+$;$=q*+g[p+(Xa<<3)+4>>2];aa=r*(+g[Wa>>2]+ +g[Va>>2]);za=E*(+g[Ua>>2]+ +g[Ta>>2])-y*(+g[Sa>>2]+ +g[Ra>>2]);qa=G*(+g[t>>2]+ +g[v>>2])-F*(+g[ha>>2]+ +g[ka>>2]);ra=r*(+g[la>>2]-+g[ma>>2]);Ca=y*(+g[na>>2]-+g[oa>>2])+E*(+g[pa>>2]-+g[sa>>2]);Aa=F*(+g[ta>>2]-+g[ua>>2])+G*(+g[va>>2]-+g[wa>>2]);Ba=H*(+g[p+(xa<<3)>>2]-+g[p+(ya<<3)>>2]);X=$+Ba;_=aa+Aa;V=qa+ra;Y=(za+Ca)*.7071067690849304;Z=X-Y;X=Y+X;Y=(V+_)*-.9238795042037964;_=_*1.3065630197525024+Y;Y=V*-.5411961078643799-Y;Da=c[Da>>2]|0;g[Da+60>>2]=X+Y;g[Da+44>>2]=Z-_;g[Da+28>>2]=X-Y;g[Da+12>>2]=Z+_;Ba=$-Ba;Aa=aa-Aa;ra=qa-ra;Ca=(za-Ca)*.7071067690849304;za=Ba-Ca;Ba=Ca+Ba;Ca=(ra+Aa)*-.9238795042037964;Aa=Aa*1.3065630197525024+Ca;Ca=ra*-.5411961078643799-Ca;g[Da+52>>2]=za+Aa;g[Da+36>>2]=Ba-Ca;g[Da+20>>2]=za-Aa;g[Da+4>>2]=Ba+Ca}while((n|0)!=(o|0));ha=83}break}case 5:{o=a[z>>0]|0;p=c[I>>2]|0;s=c[K>>2]|0;if(!(o<<24>>24))ha=85;else{o=o&255;n=0;do{Xa=n+6|0;P=+g[p+(Xa<<3)>>2]*.0833333358168602;Ya=n+12|0;Y=+g[p+(Xa<<3)+4>>2]*.0833333358168602;r=(+g[p+(n<<3)>>2]-+g[p+(Ya<<3)>>2])*.040811799466609955;_=(+g[p+(n<<3)+4>>2]-+g[p+(Ya<<3)+4>>2])*.040811799466609955;Ya=n;n=n+1|0;y=+g[p+(n<<3)>>2];Xa=Ya+11|0;Za=+g[p+(Xa<<3)>>2];Z=(y+Za)*.03812811151146889;U=+g[p+(n<<3)+4>>2];$a=+g[p+(Xa<<3)+4>>2];bb=(U+$a)*.03812811151146889;Za=(y-Za)*.03812811151146889;$a=(U-$a)*.03812811151146889;Xa=Ya+2|0;U=+g[p+(Xa<<3)>>2];Wa=Ya+10|0;y=+g[p+(Wa<<3)>>2];za=(U+y)*.05144908279180527;T=+g[p+(Xa<<3)+4>>2];H=+g[p+(Wa<<3)+4>>2];Ba=(T+H)*.05144908279180527;Wa=Ya+3|0;q=+g[p+(Wa<<3)>>2];Xa=Ya+9|0;E=+g[p+(Xa<<3)>>2];_a=+g[p+(Wa<<3)+4>>2];Q=+g[p+(Xa<<3)+4>>2];Xa=Ya+4|0;S=+g[p+(Xa<<3)>>2];Wa=Ya+8|0;ab=+g[p+(Wa<<3)>>2];V=+g[p+(Xa<<3)+4>>2];G=+g[p+(Wa<<3)+4>>2];Ca=(S-ab)*.07428313791751862;Aa=(V-G)*.07428313791751862;Wa=Ya+5|0;L=+g[p+(Wa<<3)>>2];Xa=Ya+7|0;qa=+g[p+(Xa<<3)>>2];$=(L+qa)*.08100347965955734;O=+g[p+(Wa<<3)+4>>2];aa=+g[p+(Xa<<3)+4>>2];ra=(O+aa)*.08100347965955734;qa=(L-qa)*.08100347965955734;aa=(O-aa)*.08100347965955734;O=(q+E)*.06399831175804138*.7071067690849304;L=P+O;O=P-O;P=($-Z)*.7071067690849304;ab=za*.5+(S+ab)*.07428313791751862*.8660253882408142;S=ab-za;$=Z*.258819043636322+$*.9659258127212524;Z=$-P;M=ab+(L+$);F=O+P-za;X=O+Z-S;S=L-Z-S;za=L-P-za;$=ab+(O-$);O=(_a+Q)*.06399831175804138*.7071067690849304;ab=Y+O;O=Y-O;Y=(ra-bb)*.7071067690849304;G=Ba*.5+(V+G)*.07428313791751862*.8660253882408142;V=G-Ba;ra=bb*.258819043636322+ra*.9659258127212524;bb=ra-Y;P=G+(ab+ra);L=O+Y-Ba;Z=O+bb-V;V=ab-bb-V;Ba=ab-Y-Ba;ra=G+(O-ra);Q=(_a-Q)*.06399831175804138*.7071067690849304;_a=_+Q;Q=_-Q;_=($a-aa)*.7071067690849304;H=(T-H)*.05144908279180527*.8660253882408142+Aa*.5;T=H-Aa;aa=$a*.9659258127212524+aa*.258819043636322;$a=aa-_;O=H+(_a+aa);G=Q+_-Aa;Y=Q+$a-T;T=_a-$a-T;Aa=_a-_-Aa;aa=H+(Q-aa);E=(q-E)*.06399831175804138*.7071067690849304;q=r+E;E=r-E;r=(Za-qa)*.7071067690849304;y=(U-y)*.05144908279180527*.8660253882408142+Ca*.5;U=y-Ca;qa=Za*.9659258127212524+qa*.258819043636322;Za=qa-r;Q=y+(q+qa);H=E+r-Ca;_=E+Za-U;U=q-Za-U;Ca=q-r-Ca;qa=y+(E-qa);Ya=c[s+(Ya<<2)>>2]|0;g[Ya>>2]=M-O;g[Ya+4>>2]=Q+P;g[Ya+8>>2]=F+G;g[Ya+12>>2]=L-H;g[Ya+80>>2]=F-G;g[Ya+84>>2]=H+L;g[Ya+88>>2]=M+O;g[Ya+92>>2]=P-Q;g[Ya+16>>2]=X-Y;g[Ya+20>>2]=_+Z;g[Ya+24>>2]=S+T;g[Ya+28>>2]=V-U;g[Ya+64>>2]=S-T;g[Ya+68>>2]=U+V;g[Ya+72>>2]=X+Y;g[Ya+76>>2]=Z-_;g[Ya+32>>2]=za-Aa;g[Ya+36>>2]=Ca+Ba;g[Ya+40>>2]=$+aa;g[Ya+44>>2]=ra-qa;g[Ya+48>>2]=$-aa;g[Ya+52>>2]=qa+ra;g[Ya+56>>2]=za+Aa;g[Ya+60>>2]=Ba-Ca}while((n|0)!=(o|0));ha=83}break}default:ha=83}do if((ha|0)==83){ha=0;n=a[z>>0]|0;if(!(n<<24>>24)){n=a[w>>0]|0;ha=85;break}o=u&255;u=a[w>>0]|0;v=n&255;p=u;n=u;u=0;do{if(!(p<<24>>24))p=0;else{s=c[(c[K>>2]|0)+(u<<2)>>2]|0;t=a[w>>0]|0;p=0;n=0;while(1){Ya=n+o|0;c[Oa+(u<<8)+(Ya<<3)>>2]=c[s+(n<<3)>>2];c[Oa+(u<<8)+(Ya<<3)+4>>2]=c[s+(n<<3)+4>>2];n=p+1<<24>>24;if((n&255)<(t&255)){p=n;n=n&255}else{n=t;p=t;break}}}u=u+1|0}while((u|0)!=(v|0))}while(0);if((ha|0)==85)o=u&255;x=x+1<<24>>24;t=x&255;if(D>>>0<=t>>>0)break;else u=o+(n&255)&255}if(i<<24>>24==0&A<<24>>24!=0){n=A&255;i=0;do{Ya=Oa+(i<<8)+32|0;Xa=Oa+(i<<8)+24|0;g[Xa>>2]=+g[Ya>>2]+ +g[Xa>>2];Xa=Oa+(i<<8)+36|0;Wa=Oa+(i<<8)+28|0;g[Wa>>2]=+g[Xa>>2]+ +g[Wa>>2];g[Ya>>2]=0.0;g[Xa>>2]=0.0;Xa=Oa+(i<<8)+40|0;Ya=Oa+(i<<8)+16|0;g[Ya>>2]=+g[Xa>>2]+ +g[Ya>>2];Ya=Oa+(i<<8)+44|0;Wa=Oa+(i<<8)+20|0;g[Wa>>2]=+g[Ya>>2]+ +g[Wa>>2];g[Xa>>2]=0.0;g[Ya>>2]=0.0;i=i+1|0}while((i|0)!=(n|0))}FZ(Ha|0,0,4352)|0;Da=(a[Ma>>0]|0)==0;FZ(ja|0,0,4352)|0;Da=Da?142500:142596;z=a[Ka>>0]|0;I=z<<24>>24==0;if(!I){w=c[La>>2]|0;x=c[k>>2]|0;A=d[Ja>>0]|0;C=z&255;D=0;do{o=D>>>0>>0;if(o){n=a[x+D>>0]|0;i=n;n=(n&255)+1|0}else{i=a[x+D>>0]|0;n=d[x+(D+1)>>0]|0}p=i&255;v=n&255;c:do if(v>>>0>p>>>0){Ya=a[Fa>>0]|0;t=Ya&255;n=a[(d[Na>>0]|0)+(e+10)>>0]|0;u=b[w+(D<<1)>>1]&255;if((Ya&255)>=(n&255))while(1){i=i+1<<24>>24;if(v>>>0<=(i&255)>>>0)break c}s=n&255;if(o){n=p;do{o=t;do{ab=+g[Oa+(o<<8)+(n<<3)>>2];bb=+g[Oa+(o<<8)+(n<<3)+4>>2];Ya=ja+(o*136|0)+(u<<2)|0;g[Ya>>2]=+g[Ya>>2]+(ab*ab+bb*bb);o=o+1|0}while((o|0)!=(s|0));i=i+1<<24>>24;n=i&255}while(v>>>0>n>>>0)}else{n=p;do{o=t;do{ab=+g[f+(o<<9)+(n<<3)>>2];bb=+g[f+(o<<9)+(n<<3)+4>>2];Ya=ja+(o*136|0)+(u<<2)|0;g[Ya>>2]=+g[Ya>>2]+(ab*ab+bb*bb);o=o+1|0}while((o|0)!=(s|0));i=i+1<<24>>24;n=i&255}while(v>>>0>n>>>0)}}while(0);D=D+1|0}while((D|0)!=(C|0))}i=a[ia>>0]|0;if(i<<24>>24){A=e+20076|0;C=e+20080|0;x=a[Fa>>0]|0;w=(d[Na>>0]|0)+(e+10)|0;D=x&255;v=i&255;i=a[w>>0]|0;u=0;do{if((x&255)<(i&255)){p=e+20084+(u<<2)|0;s=e+20356+(u<<2)|0;t=e+20220+(u<<2)|0;y=+g[A>>2];o=x;q=+g[p>>2];i=D;while(1){q=y*q;g[p>>2]=q;r=+g[ja+(i*136|0)+(u<<2)>>2];if(q>2]=r;q=r}bb=+g[s>>2];$a=+g[C>>2];bb=bb+$a*(q-r-bb);g[s>>2]=bb;ab=+g[t>>2];ab=ab+$a*(r-ab);g[t>>2]=ab;bb=bb*1.5;g[Ha+(i*136|0)+(u<<2)>>2]=!(bb<=ab)?ab/bb:1.0;n=o+1<<24>>24;i=a[w>>0]|0;if((n&255)<(i&255)){o=n;i=n&255}else break}}u=u+1|0}while((u|0)!=(v|0))}ya=e+740|0;if(I){u=0;t=0;s=e+742|0;p=0;o=e+743|0;n=0;i=e+741|0}else{ua=e+729|0;i=e+741|0;va=e+744|0;wa=e+745|0;xa=e+746|0;s=e+742|0;o=e+743|0;u=0;ta=0;t=0;p=0;n=0;sa=0;while(1){x=a[Ja>>0]|0;v=c[k>>2]|0;if((ta&255)<(x&255)){v=a[v+sa>>0]|0;w=(v&255)+1&255}else{w=a[v+(sa+1)>>0]|0;v=a[v+sa>>0]|0}if((v&255)<(w&255)){pa=w&255;v=v&255;while(1){if((ta&255)>=(x&255)?(Ga=d[Ea>>0]|0,v>>>0>Ga>>>0):0){Ya=Ga-v<<24;q=(Ya|0)<-318767104?0.0:+(Ya>>24|0)*.05000000074505806+1.0}else q=1.0;L=q*.6514390707015991;M=q*.5647181272506714;H=q*.4895416498184204;u=a[ya>>0]|0;t=a[i>>0]|0;p=a[s>>0]|0;n=a[o>>0]|0;w=a[Fa>>0]|0;d:do if((w&255)<(d[(d[Na>>0]|0)+(e+10)>>0]|0)){K=Da+(v<<3)|0;R=142852+(v*24|0)|0;ba=143140+(v*24|0)|0;ca=143908+(v*24|0)|0;da=145444+(v<<3)|0;ea=e+811+v|0;fa=e+747+v|0;ga=142852+(v*24|0)|0;ha=143140+(v*24|0)|0;ia=142852+(v*24|0)+8|0;ja=143140+(v*24|0)+8|0;ka=142852+(v*24|0)+16|0;la=143140+(v*24|0)+16|0;ma=143908+(v*24|0)+16|0;na=143908+(v*24|0)+8|0;oa=143908+(v*24|0)|0;J=w;I=w&255;while(1){x=(ta&255)<(x&255);z=x?Oa+(I<<8)+(v<<3)|0:f+(I<<9)+(v<<3)|0;w=c[z>>2]|0;z=c[z+4>>2]|0;if(x|v>>>0<=(d[ua>>0]|0)>>>0){Ya=u&255;D=x?e+8044+(Ya<<8)+(v<<3)+4|0:e+876+(Ya<<9)+(v<<3)+4|0;Ya=x?e+8044+(Ya<<8)+(v<<3)|0:e+876+(Ya<<9)+(v<<3)|0;C=x?K:da;bb=+g[Ya>>2];$a=+g[D>>2];c[Ya>>2]=w;c[D>>2]=z;ab=+g[C>>2];r=+g[C+4>>2];q=bb*ab+$a*r;r=$a*ab-bb*r;C=(ta&255)<(d[Ja>>0]|0);D=t&255;if(C){x=(a[Ma>>0]|0)==0;w=x?R:ba;x=x?ga:ha;z=e+16236+(D<<8)+(v<<3)|0;A=e+16236+(D<<8)+(v<<3)+4|0}else{w=ca;x=oa;z=e+8556+(D<<9)+(v<<3)|0;A=e+8556+(D<<9)+(v<<3)+4|0}bb=+g[z>>2];$a=+g[A>>2];ab=+g[x>>2];F=+g[w+4>>2];y=bb*ab+$a*F-L*q;F=$a*ab-bb*F-L*r;q=q+L*y;if(C){g[e+16236+(D<<8)+(v<<3)>>2]=q;w=e+16236+(D<<8)+(v<<3)|0}else{g[e+8556+(D<<9)+(v<<3)>>2]=q;w=e+8556+(D<<9)+(v<<3)|0}g[w+4>>2]=r+L*F;C=(ta&255)<(d[Ja>>0]|0);D=p&255;if(C){x=(a[Ma>>0]|0)==0;w=x?R:ba;x=x?ia:ja;z=e+17516+(D<<8)+(v<<3)|0;A=e+17516+(D<<8)+(v<<3)+4|0}else{w=ca;x=na;z=e+11116+(D<<9)+(v<<3)|0;A=e+11116+(D<<9)+(v<<3)+4|0}q=+g[z>>2];ab=+g[A>>2];bb=+g[x>>2];G=+g[w+12>>2];E=q*bb+ab*G-M*y;G=ab*bb-q*G-M*F;q=y+M*E;if(C){g[e+17516+(D<<8)+(v<<3)>>2]=q;w=e+17516+(D<<8)+(v<<3)|0}else{g[e+11116+(D<<9)+(v<<3)>>2]=q;w=e+11116+(D<<9)+(v<<3)|0}g[w+4>>2]=F+M*G;C=(ta&255)<(d[Ja>>0]|0);D=n&255;if(C){x=(a[Ma>>0]|0)==0;w=x?R:ba;x=x?ka:la;z=e+18796+(D<<8)+(v<<3)|0;A=e+18796+(D<<8)+(v<<3)+4|0}else{w=ca;x=ma;z=e+13676+(D<<9)+(v<<3)|0;A=e+13676+(D<<9)+(v<<3)+4|0}y=+g[z>>2];ab=+g[A>>2];bb=+g[x>>2];q=+g[w+20>>2];r=y*bb+ab*q-H*E;q=ab*bb-y*q-H*G;y=E+H*r;if(C){g[e+18796+(D<<8)+(v<<3)>>2]=y;w=e+18796+(D<<8)+(v<<3)|0}else{g[e+13676+(D<<9)+(v<<3)>>2]=y;w=e+13676+(D<<9)+(v<<3)|0}g[w+4>>2]=G+H*q}else{Xa=d[ea>>0]|0;r=+g[e+876+(Xa<<9)+(v<<3)>>2];Ya=e+876+(Xa<<9)+(v<<3)+4|0;q=+g[Ya>>2];c[e+876+(Xa<<9)+(v<<3)>>2]=w;c[Ya>>2]=z}bb=+g[Ha+(I*136|0)+((b[(c[La>>2]|0)+(sa<<1)>>1]&255)<<2)>>2];Ya=(ta&255)<(d[Ja>>0]|0);Xa=Ya?Pa+(I<<8)+(v<<3)|0:h+(I<<9)+(v<<3)|0;g[Xa>>2]=r*bb;g[Xa+4>>2]=q*bb;u=u+1<<24>>24;u=(u&255)>1?0:u;if(!(Ya|v>>>0<=(d[ua>>0]|0)>>>0)){Ya=(a[ea>>0]|0)+1<<24>>24;a[ea>>0]=(Ya&255)<(d[fa>>0]|0)?Ya:0}t=t+1<<24>>24;t=(t&255)<(d[va>>0]|0)?t:0;p=p+1<<24>>24;p=(p&255)<(d[wa>>0]|0)?p:0;n=n+1<<24>>24;n=(n&255)<(d[xa>>0]|0)?n:0;w=J+1<<24>>24;if((w&255)>=(d[(d[Na>>0]|0)+(e+10)>>0]|0))break d;J=w;x=a[Ja>>0]|0;I=w&255}}while(0);v=v+1|0;if((v|0)==(pa|0))break;x=a[Ja>>0]|0}w=a[Ka>>0]|0}else w=z;v=ta+1<<24>>24;if((v&255)<(w&255)){ta=v;sa=v&255;z=w}else break}}a[ya>>0]=u;a[i>>0]=t;a[s>>0]=p;a[o>>0]=n;ma=e+3|0;i=(d[ma>>0]|0)>2;la=i?145956:146080;switch(a[e+27>>0]|0){case 3:case 0:{n=11;break}default:n=a[e+6>>0]|0}if(a[Ka>>0]|0){na=e+4|0;ia=i?15:7;ja=e+26|0;ka=e+22092|0;ha=n&255;ga=c[k>>2]|0;fa=0;Q=0.0;P=0.0;O=0.0;M=0.0;L=0.0;H=0.0;G=0.0;F=0.0;E=0.0;y=0.0;r=0.0;q=0.0;K=0;while(1){if((fa&255)<(d[Ja>>0]|0))i=(d[ga+K>>0]|0)+1|0;else i=d[ga+(K+1)>>0]|0;if(a[Na>>0]|0){R=b[(c[La>>2]|0)+(K<<1)>>1]&255;ba=e+20492+(K<<3)|0;ca=e+20892+(K<<3)|0;da=e+21292+(K<<3)|0;ea=e+21692+(K<<3)|0;x=i&255;z=R>>>0>>0;A=e+20492+(K<<3)+4|0;C=e+20892+(K<<3)+4|0;D=e+21292+(K<<3)+4|0;I=e+21692+(K<<3)+4|0;J=ga+K|0;w=0;qa=Q;t=0;while(1){if((d[na>>0]|0)<3){i=a[e+140+(t*34|0)+R>>0]|0;k=i<<24>>24;U=+g[la+(ia+k<<2)>>2];V=+g[la+(ia-k<<2)>>2];n=a[e+310+(t*34|0)+R>>0]|0;S=+g[146140+(n<<2)>>2];T=+g[146172+(n<<2)>>2];i=i<<24>>24<0;do if((d[ma>>0]|0)>2)if(i){i=0-k|0;Q=-+g[146716+(i<<5)+(n<<2)>>2];i=146204+(i<<5)+(n<<2)|0;break}else{Q=+g[146716+(k<<5)+(n<<2)>>2];i=146204+(k<<5)+(n<<2)|0;break}else if(i){i=0-k|0;Q=-+g[147484+(i<<5)+(n<<2)>>2];i=147228+(i<<5)+(n<<2)|0;break}else{Q=+g[147484+(k<<5)+(n<<2)>>2];i=147228+(k<<5)+(n<<2)|0;break}while(0);Y=+g[i>>2];ab=S*Y;bb=T*Q;Z=S*Q;Y=T*Y;X=U*(Z-Y);Y=V*(Z+Y);Z=U*(bb+ab);V=V*(ab-bb)}else{i=a[e+140+(t*34|0)+R>>0]|0;p=i<<24>>24;i=i<<24>>24>-1?p:0-p|0;p=ia+p|0;s=a[e+310+(t*34|0)+R>>0]|0;if((d[ma>>0]|0)>2){n=i&255;k=149244+(n<<5)+(s<<2)|0;n=148732+(n<<5)+(s<<2)|0;o=147740+(p<<5)+(s<<2)|0;i=147740+(30-p<<5)+(s<<2)|0}else{n=i&255;k=150492+(n<<5)+(s<<2)|0;n=150236+(n<<5)+(s<<2)|0;o=149756+(p<<5)+(s<<2)|0;i=149756+(14-p<<5)+(s<<2)|0}Y=+g[k>>2];bb=+g[n>>2];V=+g[o>>2];Z=+g[i>>2];X=Y*Z*1.4142135381698608;Y=Y*V*-1.4142135381698608;Z=bb*Z*1.4142135381698608;V=bb*V*1.4142135381698608}i=a[ja>>0]|0;if(i<<24>>24)if(z){Ya=a[ka>>0]|0;Ta=Ya<<24>>24;Va=e+22096+(R<<4)+(Ta<<3)|0;y=+g[Va>>2]*.25;Sa=e+22096+(R<<4)+(Ta<<3)+4|0;E=+g[Sa>>2]*.25;Xa=e+22416+(R<<4)+(Ta<<3)|0;Q=+g[Xa>>2]*.25;Ta=e+22416+(R<<4)+(Ta<<3)+4|0;S=+g[Ta>>2]*.25;Ra=e+480+(t*17|0)+R|0;Wa=a[Ra>>0]|0;Ua=Wa<<24>>24;Ua=c[150748+((Wa<<24>>24>-1?Ua:0-Ua|0)<<2)>>2]|0;c[Va>>2]=Ua;Ra=a[Ra>>0]|0;Va=Ra<<24>>24;Va=c[150784+((Ra<<24>>24>-1?Va:0-Va|0)<<2)>>2]|0;c[Sa>>2]=Va;Sa=e+565+(t*17|0)+R|0;Ra=a[Sa>>0]|0;Wa=Ra<<24>>24;Wa=c[150748+((Ra<<24>>24>-1?Wa:0-Wa|0)<<2)>>2]|0;c[Xa>>2]=Wa;Sa=a[Sa>>0]|0;Xa=Sa<<24>>24;Xa=c[150784+((Sa<<24>>24>-1?Xa:0-Xa|0)<<2)>>2]|0;c[Ta>>2]=Xa;y=y+(c[j>>2]=Ua,+g[j>>2]);E=E+(c[j>>2]=Va,+g[j>>2]);Q=Q+(c[j>>2]=Wa,+g[j>>2]);Ya=Ya<<24>>24==0?1:Ya+-1<<24>>24<<24>>24;y=y+ +g[e+22096+(R<<4)+(Ya<<3)>>2]*.5;E=E+ +g[e+22096+(R<<4)+(Ya<<3)+4>>2]*.5;Q=Q+ +g[e+22416+(R<<4)+(Ya<<3)>>2]*.5;S=S+(c[j>>2]=Xa,+g[j>>2])+ +g[e+22416+(R<<4)+(Ya<<3)+4>>2]*.5;q=+B(+(Q*Q+S*S));r=+B(+(y*y+E*E));if(q!=0.0){U=S/q;T=Q/q}else{U=0.0;T=0.0}q=q*r;if(q!=0.0){r=(y*Q+E*S)/q;q=(y*S-E*Q)/q}else{r=0.0;q=0.0}$=X*r;aa=Y*T;_=Z*r;S=V*T;E=X*q;y=Y*U;r=Z*q;q=V*U;i=a[ja>>0]|0}else{$=X;aa=Y;_=Z;S=V}else{$=X;aa=Y;_=Z;S=V;i=0}v=t+1+(e+10)|0;k=e+10+t|0;Q=+((d[v>>0]|0)-(d[k>>0]|0)|0);X=+g[ba>>2];za=(S-X)/Q;V=+g[ca>>2];Aa=(_-V)/Q;U=+g[da>>2];Ba=(aa-U)/Q;T=+g[ea>>2];Ca=($-T)/Q;g[ba>>2]=S;g[ca>>2]=_;g[da>>2]=aa;g[ea>>2]=$;u=i<<24>>24==0;if(!u?z:0){F=+g[A>>2];M=(q-F)/Q;G=+g[C>>2];O=(r-G)/Q;H=+g[D>>2];P=(y-H)/Q;L=+g[I>>2];Q=(E-L)/Q;if(b[(c[La>>2]|0)+(K<<1)>>1]&4096){Q=-Q;P=-P;O=-O;M=-M;L=-L;H=-H;G=-G;F=-F}g[A>>2]=q;g[C>>2]=r;g[D>>2]=y;g[I>>2]=E}else Q=qa;i=a[k>>0]|0;if((i&255)<(d[v>>0]|0)){t=i;ra=T;qa=U;aa=V;$=X;s=i&255;while(1){$=za+$;aa=Aa+aa;qa=Ba+qa;ra=Ca+ra;if(!u){L=z?Q+L:L;H=z?P+H:H;G=z?O+G:G;F=z?M+F:F}i=a[J>>0]|0;k=i&255;e:do if(x>>>0>k>>>0)if((fa&255)<(d[Ja>>0]|0)){if(u)while(1){Va=Oa+(s<<8)+(k<<3)|0;Wa=Oa+(s<<8)+(k<<3)+4|0;Xa=Pa+(s<<8)+(k<<3)|0;_a=+g[Xa>>2];$a=+g[Va>>2];ab=+g[Wa>>2];Ya=Pa+(s<<8)+(k<<3)+4|0;bb=+g[Ya>>2];g[Va>>2]=qa*_a+$*$a;g[Wa>>2]=$*ab+qa*bb;g[Xa>>2]=ra*_a+aa*$a;g[Ya>>2]=aa*ab+ra*bb;i=i+1<<24>>24;k=i&255;if(x>>>0<=k>>>0)break e}do{o=Oa+(s<<8)+(k<<3)|0;p=Oa+(s<<8)+(k<<3)+4|0;n=Pa+(s<<8)+(k<<3)|0;Z=+g[n>>2];_=+g[o>>2];Y=+g[p>>2];k=Pa+(s<<8)+(k<<3)+4|0;X=+g[k>>2];U=qa*Z+$*_;T=$*Y+qa*X;V=ra*Z+aa*_;S=aa*Y+ra*X;if(z){V=V-(G*Y+L*X);U=U-(F*Y+H*X);T=H*Z+F*_+T;S=L*Z+G*_+S}g[o>>2]=U;g[p>>2]=T;g[n>>2]=V;g[k>>2]=S;i=i+1<<24>>24;k=i&255}while(x>>>0>k>>>0)}else{if(u)while(1){Va=f+(s<<9)+(k<<3)|0;Wa=f+(s<<9)+(k<<3)+4|0;Xa=h+(s<<9)+(k<<3)|0;_a=+g[Xa>>2];$a=+g[Va>>2];ab=+g[Wa>>2];Ya=h+(s<<9)+(k<<3)+4|0;bb=+g[Ya>>2];g[Va>>2]=qa*_a+$*$a;g[Wa>>2]=$*ab+qa*bb;g[Xa>>2]=ra*_a+aa*$a;g[Ya>>2]=aa*ab+ra*bb;i=i+1<<24>>24;k=i&255;if(x>>>0<=k>>>0)break e}do{o=f+(s<<9)+(k<<3)|0;p=f+(s<<9)+(k<<3)+4|0;n=h+(s<<9)+(k<<3)|0;Z=+g[n>>2];_=+g[o>>2];Y=+g[p>>2];k=h+(s<<9)+(k<<3)+4|0;X=+g[k>>2];U=qa*Z+$*_;T=$*Y+qa*X;V=ra*Z+aa*_;S=aa*Y+ra*X;if(z){V=V-(G*Y+L*X);U=U-(F*Y+H*X);T=H*Z+F*_+T;S=L*Z+G*_+S}g[o>>2]=U;g[p>>2]=T;g[n>>2]=V;g[k>>2]=S;i=i+1<<24>>24;k=i&255}while(x>>>0>k>>>0)}while(0);i=t+1<<24>>24;if((i&255)>=(d[v>>0]|0))break;else{t=i;s=i&255}}}i=(a[ka>>0]|0)+1<<24>>24;a[ka>>0]=i<<24>>24==2?0:i;i=w+1<<24>>24;if((i&255)<(d[Na>>0]|0)){w=i;qa=Q;t=i&255}else break}}i=fa+1<<24>>24;if((i&255)<(d[Ka>>0]|0)){fa=i;K=i&255}else break}}w=c[Ia>>2]|0;z=(a[Ma>>0]|0)!=0;x=z?w+4|0:w+1|0;z=z?5:3;w=a[w>>0]|0;A=w&255;k=0;u=0;i=w;v=0;while(1){t=x+v|0;if(!(i<<24>>24)){n=k&255;k=a[t>>0]|0;i=0}else{n=k&255;s=0;do{o=f+(s<<9)+(v<<3)|0;g[o>>2]=0.0;p=f+(s<<9)+(v<<3)+4|0;g[p>>2]=0.0;if(!(a[t>>0]|0))k=0;else{i=0;q=0.0;r=0.0;do{k=(i&255)+n|0;q=q+ +g[Oa+(s<<8)+(k<<3)>>2];g[o>>2]=q;r=r+ +g[Oa+(s<<8)+(k<<3)+4>>2];g[p>>2]=r;i=i+1<<24>>24;k=a[t>>0]|0}while((i&255)<(k&255))}s=s+1|0}while(s>>>0>>0);i=w}u=u+1<<24>>24;v=u&255;if(z>>>0<=v>>>0){k=0;u=0;i=w;v=0;break}else k=n+(k&255)&255}while(1){t=x+v|0;if(!(i<<24>>24)){n=k&255;k=a[t>>0]|0;i=0}else{n=k&255;s=0;do{o=h+(s<<9)+(v<<3)|0;g[o>>2]=0.0;p=h+(s<<9)+(v<<3)+4|0;g[p>>2]=0.0;if(!(a[t>>0]|0))k=0;else{i=0;q=0.0;r=0.0;do{k=(i&255)+n|0;q=q+ +g[Pa+(s<<8)+(k<<3)>>2];g[o>>2]=q;r=r+ +g[Pa+(s<<8)+(k<<3)+4>>2];g[p>>2]=r;i=i+1<<24>>24;k=a[t>>0]|0}while((i&255)<(k&255))}s=s+1|0}while(s>>>0>>0);i=w}u=u+1<<24>>24;v=u&255;if(z>>>0<=v>>>0)break;else k=n+(k&255)&255}l=Qa;return 0}function _h(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;a:do if(b<<24>>24==1){if(!(f<<24>>24)){f=a[c>>0]|0;a[c>>0]=f<<24>>24>24?i:f<<24>>24>j<<24>>24?j:f;f=g&255;if((g&255)>1){b=1;k=1}else break;while(1){e=c+k|0;l=(d[e>>0]|0)+(d[c+(k+-1)>>0]|0)&255;a[e>>0]=l<<24>>24>24?i:l<<24>>24>j<<24>>24?j:l;b=b+1<<24>>24;k=b<<24>>24;if((k|0)>=(f|0))break a}}f=g&255;if(g<<24>>24){k=h&255;b=0;l=0;do{n=d[e+(N(l,k)|0)>>0]|0;m=c+l|0;n=(d[m>>0]|0)+n&255;a[m>>0]=n<<24>>24>24?i:n<<24>>24>j<<24>>24?j:n;b=b+1<<24>>24;l=b<<24>>24}while((l|0)<(f|0))}}else{k=g&255;if(g<<24>>24){b=0;f=0;do{a[c+f>>0]=0;b=b+1<<24>>24;f=b<<24>>24}while((f|0)<(k|0))}}while(0);if(h<<24>>24!=2)return;f=((g&255)<<1)+255|0;b=f&255;if(b<<24>>24<=0)return;f=f<<24>>24;while(1){a[c+f>>0]=a[c+(f>>1)>>0]|0;f=b+-1<<24>>24;if(f<<24>>24>0){b=f;f=f<<24>>24}else break}return}function $h(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=1;return 0}function ai(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=w+8|0;t=w;q=w+4|0;c[s>>2]=g;c[t>>2]=h;u=c[a>>2]|0;r=u+84|0;j=u+88|0;k=u+48|0;n=u+96|0;o=u+44|0;p=u+4|0;i=0;g=c[r>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g){if(!(c[n>>2]|0)){v=5;break}}else g=0;while(1){if((g|0)>=(h|0)){g=-100;break a}x=j;x=zZ(c[x>>2]|0,c[x+4>>2]|0,8)|0;h=y;x=x|(d[(c[s>>2]|0)+g>>0]|0);z=j;c[z>>2]=x;c[z+4>>2]=h;h=Pd[c[k>>2]&63](x,h,u,n,q)|0;if(h|0)break;g=g+1|0;h=c[t>>2]|0}if((h|0)<1){g=-100;break}z=j;c[z>>2]=0;c[z+4>>2]=0;g=g+1-(c[o>>2]|0)|0;c[r>>2]=h;if(c[q>>2]|0?((c[p>>2]|0)+g|0)>=1:0){i=1;break}g=h+g|0;c[r>>2]=g;i=1;h=c[t>>2]|0}if((v|0)==5)c[r>>2]=0;if((ei(u,g,s,t)|0)>=0){c[e>>2]=c[s>>2];c[f>>2]=c[t>>2];h=c[u+100>>2]|0;if(h|0)c[b+16>>2]=h;if(i){if((c[b+16>>2]|0)!=86018){c[b+344>>2]=c[u+56>>2];c[b+348>>2]=c[u+52>>2];v=u+72|0;x=c[v+4>>2]|0;z=b+376|0;c[z>>2]=c[v>>2];c[z+4>>2]=x;c[a+304>>2]=c[u+64>>2];c[b+392>>2]=c[u+80>>2]}x=c[u+60>>2]|0;z=b+40|0;c[z>>2]=x;c[z+4>>2]=((x|0)<0)<<31>>31}}else{z=c[r>>2]|0;g=c[t>>2]|0;c[r>>2]=z-((z|0)>(g|0)?g:z);c[e>>2]=0;c[f>>2]=0}l=w;return g|0}function bi(a){a=a|0;ci(c[a>>2]|0);return}function ci(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;di(c);return}function di(a){a=a|0;oV(a);return}function ei(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;i=r+8|0;j=r;p=b+24|0;k=b+28|0;q=b+4|0;h=c[p>>2]|0;while(1){if((h|0)<=0)break;o=c[b>>2]|0;s=c[k>>2]|0;c[k>>2]=s+1;s=a[o+s>>0]|0;h=c[q>>2]|0;c[q>>2]=h+1;a[o+h>>0]=s;h=(c[p>>2]|0)+-1|0;c[p>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[q>>2]|0;o=b+8|0;c[o>>2]=h;a:do if((e|0)==-100){e=fi(c[b>>2]|0,b+12|0,(c[g>>2]|0)+64+h|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+64+(c[q>>2]|0);gi(0,16,186221,j);e=-12;h=0}else{c[b>>2]=e;DZ(e+(c[q>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[q>>2]|0)+(c[g>>2]|0)|0}c[q>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=186263;c[i+4>>2]=186287;c[i+8>>2]=356;gi(0,0,229320,i);Tb()}h=h+e|0;c[k>>2]=h;c[g>>2]=h;h=c[q>>2]|0;if(h|0){i=e+64|0;h=fi(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[n>>2]=i+(c[q>>2]|0);gi(0,16,186221,n);c[q>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-64){DZ(h+(c[q>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[q>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}q=(c[b>>2]|0)+((c[o>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[q>>0]|0);f=i;f=zZ(c[f>>2]|0,c[f+4>>2]|0,8)|0;s=i;c[s>>2]=f|(d[q>>0]|0);c[s+4>>2]=y;c[p>>2]=(c[p>>2]|0)+1;e=e+1|0}}while(0);l=r;return e|0}function fi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[b>>2]|0)>>>0>>0){f=2147483647+-32|0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;e=f>>>0>e>>>0?e:f;if(f>>>0>>0){e=0;a=0}else{a=ni(a,e)|0;e=(a|0)==0?0:e}c[b>>2]=e}return a|0}function gi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;hi(a,b,d,f);l=i;return}function hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(4)ii(a,b,c,d);return}function ii(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+5168|0;if((l|0)>=(m|0))W(5168);p=r+24|0;o=r+16|0;h=r;q=r+40|0;k=r+4136|0;n=r+32|0;i=(d|0)>-1;j=i?d&255:d;i=i?d>>>8&255:0;if((j|0)<=32){HZ(252536)|0;ji(b,j,e,f,q,150868,n);e=q+1024|0;s=c[e>>2]|0;f=q+2048|0;b=c[f>>2]|0;g=q+3072|0;d=c[g>>2]|0;c[h>>2]=c[q>>2];c[h+4>>2]=s;c[h+8>>2]=b;c[h+12>>2]=d;fX(k,1024,186307,h)|0;d=c[63141]|0;if(!d){b=(OX(2)|0)!=0;b=b?1:-1;c[63141]=b}else b=d;if((!((c[37717]|0)==0|0==0)?(s=(UV(k,327596)|0)!=0,!(s|(a[k>>0]|0)==0)):0)?(a[k+((YW(k)|0)+-1)>>0]|0)!=13:0){d=(c[63142]|0)+1|0;c[63142]=d;if((b|0)==1){s=c[42497]|0;c[o>>2]=d;DX(s,186316,o)|0}}else{d=c[63142]|0;if((d|0)>0){s=c[42497]|0;c[p>>2]=d;DX(s,186352,p)|0;c[63142]=0}gX(327596,k)|0;ki(c[q>>2]|0);li(c[n>>2]|0,0,c[q>>2]|0);ki(c[e>>2]|0);li(c[n+4>>2]|0,0,c[e>>2]|0);ki(c[f>>2]|0);s=j>>3;s=(s|0)>0?((s|0)<7?s:7):0;li(s,i,c[f>>2]|0);ki(c[g>>2]|0);li(s,i,c[g>>2]|0)}mi(q+3072|0,0)|0;IZ(252536)|0}l=r;return}function ji(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=y+24|0;v=y+16|0;u=y+8|0;s=y;if(!b)n=0;else n=c[b>>2]|0;qi(g,0,1);r=g+1024|0;qi(r,0,1);j=g+2048|0;qi(j,0,1);x=g+3072|0;qi(x,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((n|0)!=0&(c[h>>2]|0)!=0){o=c[n+20>>2]|0;do if(((o|0)!=0?(p=c[b+o>>2]|0,(p|0)!=0):0)?(q=c[p>>2]|0,(q|0)!=0):0){c[s>>2]=Ld[c[q+4>>2]&31](p)|0;c[s+4>>2]=p;ri(g,186543,s);if(k){c[i>>2]=si(p)|0;w=11;break}else{c[v>>2]=Ld[c[n+4>>2]&31](b)|0;c[v+4>>2]=b;ri(r,186543,v);break}}else w=11;while(0);if((w|0)==11?(c[u>>2]=Ld[c[n+4>>2]&31](b)|0,c[u+4>>2]=b,ri(r,186543,u),k):0)c[i+4>>2]=si(b)|0;if(0){c[t>>2]=ti(d)|0;ri(j,186554,t)}}ui(x,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[r>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[x>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[x>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}l=y;return}function ki(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function li(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[37718]|0;if((f|0)<0){pi();f=c[37718]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[42497]|0;b=c[150876+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;DX(j,186388,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[42497]|0;c[i>>2]=(c[150876+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;DX(j,186404,i)|0;break}f=c[42497]|0;if((g|0)==256){b=c[150876+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;DX(f,186431,j)|0;break}else{nX(e,f)|0;break}}while(0);l=k;return}function mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){ci(a);d=0}else d=0;else{if(!d){e=oi(f)|0;if(!e){d=-12;e=0}else{DZ(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=ni(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function ni(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0>>0)a=0;else a=pV(a,((b|0)==0&1)+b|0)|0;return a|0}function oi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=oi(1)|0;c[b>>2]=a;break}if(!(uV(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);l=d;return a|0}function pi(){var a=0,b=0,d=0;a=ec(186458)|0;do if((ec(186463)|0)==0?(ec(186472)|0)==0:0){if(a|0?OX(2)|0:0){b=1;break}b=(ec(186493)|0)!=0&1}else b=0;while(0);c[37718]=b;if(!(ec(186512)|0)){if(a|0?EX(a,186534)|0:0)d=9}else d=9;if((d|0)==9)c[37718]=b<<8;return}function qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0>>0)vi(b,d+-1|0)|0;return}function ri(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=_V(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(vi(a,e)|0){j=7;break}}if((j|0)==7)wi(a,e);l=k;return}function si(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Ld[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function ti(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=186599;break}case 7:{a=234341;break}case 6:{a=186591;break}case 5:{a=186586;break}case 4:{a=186578;break}case 3:{a=186572;break}case 2:{a=186566;break}case 1:{a=186560;break}default:a=332204}return a|0}function ui(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=k;h=a+8|0;i=a+4|0;while(1){f=c[h>>2]|0;e=c[i>>2]|0;f=f-(e>>>0>f>>>0?f:e)|0;if(!f)e=0;else e=(c[a>>2]|0)+e|0;c[g>>2]=c[d>>2];e=_V(e,f,b,g)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(vi(a,e)|0){j=7;break}}if((j|0)==7)wi(a,e);l=k;return}function vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(xi(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;h=i+1+(h>>>0>b>>>0?b:h)|0;b=d>>>0>e>>>1>>>0?e:d<<1;b=b>>>0>>0?(e>>>0>h>>>0?h:e):b;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;e=ni(d,b)|0;if(!e)b=-12;else{if(!d)DZ(e|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=e;c[f>>2]=b;b=0}}else b=-1094995529;else b=-5;return b|0}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function xi(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function yi(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=i+92|0;h=i+72|0;k=i;b=zi(a,b)|0;a=k;c[a>>2]=b;c[a+4>>2]=y;Ai(j,k+1|0);a=Bi(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[186605+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}l=i;return a|0}function zi(a,b){a=a|0;b=b|0;a=BZ(a|0)|0;b=BZ(b|0)|0;y=a;return b|0}function Ai(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function Bi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((Ci(b,12)|0)==4095){Di(b);Ei(b,2);g=Fi(b)|0;h=Ci(b,2)|0;i=Ci(b,4)|0;j=c[151124+(i<<2)>>2]|0;if(j){Di(b);f=Ci(b,3)|0;Di(b);Di(b);Di(b);Di(b);e=Ci(b,13)|0;if((e|0)<7)e=-67308554;else{Ei(b,11);b=Ci(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;c[d+8>>2]=((N(e<<3,j)|0)>>>0)/(i>>>0)|0}}else e=-50531338}else e=-16976906;return e|0}function Ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Di(a){a=a|0;Ei(a,1);return}function Ei(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Fi(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function Gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){Sd[e&63](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)Hi(f);Hi(g);f=g+8|0;Ii(c[f>>2]|0);ci(f);ci(b);Ji(g+16|0);Ji(g+20|0);ci(a)}return}function Hi(a){a=a|0;var b=0;b=0;a:while(1){b=Qi(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{ci(a+(c[b+8>>2]|0)|0);continue a}case 8:{Ri(a+(c[b+8>>2]|0)|0);continue a}default:continue a}}return}function Ii(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Li(b);ci(a)}return}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ki(b);ci(a)}return}function Ki(a){a=a|0;var b=0,d=0;ci(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function Li(a){a=a|0;Mi(a);Ni(a);Oi(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function Mi(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;ci((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}ci(b);c[d>>2]=0;return}function Ni(a){a=a|0;if(a|0?c[a>>2]|0:0)Pi(a,0);return}function Oi(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function Pi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)ci(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];ci(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;Td[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);ci(d)}l=g;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function Ri(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;ci((c[d>>2]|0)+(e<<3)|0);ci((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}ci(d)}ci(a);return}function Si(a,b){a=a|0;b=b|0;return Md[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function Ti(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){gi(a,16,186613,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){Ui(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}l=g;return a|0}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Oi(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;Ki(a);DZ(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=Zi((c[b>>2]|0)+64|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;DZ(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Wi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=p+24|0;j=p+16|0;i=p;n=a+4|0;e=c[(c[n>>2]|0)+4>>2]|0;g=a+16|0;a:do if(!e)o=13;else{f=c[(c[g>>2]|0)+4>>2]|0;b=0;while(1){d=c[e+(b<<2)>>2]|0;if(!d)break;if((f|0)==(d|0)){o=13;break a}else b=b+1|0}b=Xi(f)|0;if(!b)b=236369;else b=c[b+8>>2]|0;h=c[(c[g>>2]|0)+4>>2]|0;d=c[c[n>>2]>>2]|0;c[i>>2]=b;c[i+4>>2]=h;c[i+8>>2]=d;gi(a,16,186651,i);d=0;while(1){b=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=Xi(b)|0;if(!b)b=236369;else b=c[b+8>>2]|0;i=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[j>>2]=b;c[j+4>>2]=i;gi(a,16,186737,j);d=d+1|0}gi(a,16,198208,k);b=-22}while(0);do if((o|0)==13){b=Vi(c[a+20>>2]|0,c[g>>2]|0)|0;if((b|0)>=0){k=a+24|0;o=c[k+4>>2]|0;b=a+32|0;c[b>>2]=c[k>>2];c[b+4>>2]=o;b=c[(c[n>>2]|0)+16>>2]|0;if(b|0?(h=Ld[b&31](a)|0,(h|0)<0):0){b=h;break}b=0}}while(0);l=p;return b|0}function Xi(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=a;a=NX(d,151188,436,28,8)|0;l=b;return a|0}function Yi(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Zi(a){a=a|0;var b=0;b=oi(a)|0;if(b|0)FZ(b|0,0,a|0)|0;return b|0}function _i(a){a=a|0;var b=0;b=c[a+24>>2]|0;if(c[c[a+28>>2]>>2]|0){FZ(b|0,0,46324)|0;a=_P(a,b)|0;if((a|0)>=0){c[b+25692>>2]=0;a=0}}else a=0;return a|0}function $i(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=u;s=c[a+24>>2]|0;t=c[b+24>>2]|0;k=s+25692|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[s+25668>>2]|0)==(c[t+25668>>2]|0)?(c[s+25672>>2]|0)==(c[t+25672>>2]|0):0)?(c[s+27012>>2]|0)==(c[t+27012>>2]|0):0)?(c[s+27008>>2]|0)==(c[t+27008>>2]|0):0)?(d=c[s+28216>>2]|0,d|0):0)?(e=c[t+28216>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=s+25976|0;i=t+25976|0;DZ(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32){a=0;break}b=s+27052+(a<<2)|0;Ni(b);d=c[t+27052+(a<<2)>>2]|0;if(d|0?(p=Pj(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}while(1){if(a>>>0>=256)break;b=s+27180+(a<<2)|0;Ni(b);d=c[t+27180+(a<<2)>>2]|0;if(d|0?(p=Pj(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}b=s+28204|0;Ni(b);e=s+28208|0;Ni(e);d=s+28212|0;c[d>>2]=0;f=s+28216|0;c[f>>2]=0;a=c[t+28204>>2]|0;if(a|0){a=Pj(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[t+28208>>2]|0;if(a|0){a=Pj(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[s+25668>>2]=c[t+25668>>2];c[s+25672>>2]=c[t+25672>>2];c[s+27008>>2]=c[t+27008>>2];c[s+27012>>2]=c[t+27012>>2];c[s+27020>>2]=c[t+27020>>2];c[s+27016>>2]=c[t+27016>>2];c[s+26368>>2]=c[t+26368>>2];if((c[k>>2]|0)==0?(c[t+25692>>2]|0)==0:0)a=0;else{a=Wp(s)|0;if((a|0)<0){gi(c[s+4>>2]|0,16,220235,n);break}}DZ(h|0,i|0,384)|0}p=c[t+4>>2]|0;f=c[s+4>>2]|0;c[f+104>>2]=c[p+104>>2];c[f+100>>2]=c[p+100>>2];c[f+92>>2]=c[p+92>>2];c[f+96>>2]=c[p+96>>2];c[s+29664>>2]=c[t+29664>>2];c[s+29668>>2]=c[t+29668>>2];c[s+25688>>2]=c[t+25688>>2];c[s+26384>>2]=c[t+26384>>2];c[s+26380>>2]=c[t+26380>>2];c[s+26376>>2]=c[t+26376>>2];f=t+25684|0;p=s+25684|0;c[p>>2]=c[f>>2];b=0;while(1){if((b|0)>=36)break;d=s+696+(b*656|0)|0;gj(s,d);e=t+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(o=wk(s,d,e)|0,(o|0)<0):0){a=o;break a}b=b+1|0}b=c[t+24312>>2]|0;if((b|0)!=0?(q=t+696|0,b>>>0>=q>>>0&b>>>0<(t+24312|0)>>>0):0)b=s+696+(((b-q|0)/656|0)*656|0)|0;else b=0;o=s+24312|0;c[o>>2]=b;b=s+24316|0;gj(s,b);d=t+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(r=wk(s,b,d)|0,(r|0)<0):0){a=r;break}c[s+29672>>2]=c[t+29672>>2];c[s+25700>>2]=c[t+25700>>2];c[s+25704>>2]=c[t+25704>>2];c[p>>2]=c[f>>2];c[s+27036>>2]=c[t+27036>>2];c[s+27040>>2]=c[t+27040>>2];b=s+28224|0;j=b;k=t+28224|0;n=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));d=s+28348|0;e=t+28348|0;j=d;k=e;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));f=s+28476|0;g=t+28476|0;j=f;k=g;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));h=s+28604|0;i=t+28604|0;j=h;k=i;n=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));j=s+28676|0;k=t+28676|0;n=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));c[s+28740>>2]=c[t+28740>>2];c[s+28744>>2]=c[t+28744>>2];DZ(s+28748|0,t+28748|0,792)|0;c[s+29540>>2]=c[t+29540>>2];c[s+29544>>2]=c[t+29544>>2];c[s+29548>>2]=c[t+29548>>2];c[s+29552>>2]=c[t+29552>>2];c[s+29556>>2]=c[t+29556>>2];fQ(d,e,32,s,t);fQ(f,g,32,s,t);fQ(h,i,18,s,t);c[s+29576>>2]=c[t+29576>>2];if(c[o>>2]|0){if(!(c[p>>2]|0)){a=Lk(s)|0;c[s+28248>>2]=c[s+28228>>2];c[s+28252>>2]=c[b>>2]}c[s+28260>>2]=c[s+28256>>2];c[s+28264>>2]=c[s+28244>>2];c[s+29572>>2]=c[t+29572>>2]}else a=0}else a=0;while(0);l=u;return a|0}function aj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;d=o;i=c[a+24>>2]|0;b=_P(a,i)|0;do if((b|0)>=0){if(Dc(253252,3)|0){gi(a,16,218351,d);b=-1313558101;break}f=a+84|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+80|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+76|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+72>>2]|0;if(((b|0)>0?(g=c[a+68>>2]|0,g|0):0)?(h=Ek(g,b,i+27052|0,i+27036|0,i+27040|0,c[a+580>>2]|0,a)|0,(h|0)<0):0){cj(a)|0;b=h;break}b=c[i+28216>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+140|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+28>>2]|0)+4>>2]=1;ej(i);b=i+29672|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+696>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+696>>2]&2))b=0;else{gi(a,24,218376,n);b=0}}while(0);l=o;return b|0}function bj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+48|0;if((l|0)>=(m|0))W(48);v=w+24|0;q=w+16|0;p=w;n=w+36|0;o=c[g+24>>2]|0;h=c[g+28>>2]|0;s=c[b+24>>2]|0;c[s+25696>>2]=c[b+60>>2];c[s+29588>>2]=0;c[s+25636>>2]=0;t=s+24972|0;gj(s,t);a:do if(h){i=s+27036|0;if((c[i>>2]|0?Ck(g,1,0)|0:0)?(j=Ck(g,1,n)|0,k=c[n>>2]|0,Dk(j,k)|0):0)Ek(j,k,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[o>>0]|0)==1:0)?(a[o+2>>0]|0)==0:0)?(d[o+4>>0]|0)>251:0)?a[o+5>>0]&31:0)?(a[o+8>>0]|0)==103:0)?Dk(o,h)|0:0){h=Ek(o,h,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;break}j=Fk(s,o,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[s+24312>>2]|0)==0;if(i?(c[s+27028>>2]|0)==10:0)if((j|0)>(h|0)){c[p>>2]=196741;c[p+4>>2]=196763;c[p+8>>2]=998;gi(0,0,229320,p);Tb()}else{h=Bk(s,e,f,j)|0;break}do if(c[b+64>>2]&32768){q=c[s+27008>>2]|0;if(!((q|0)==0?1:(c[s+27004>>2]|0)<(q|0)))r=30}else{if(!i?c[s+27032>>2]|0:0){r=30;break}if((c[b+732>>2]|0)>7)break a;if((h|0)>3?(VV(220452,o,4)|0)==0:0)break a;gi(b,16,196784,q);h=-1094995529;break a}while(0);if((r|0)==30){i=Gk(s,c[s+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[s+28740>>2]|0;if(i|0?(u=Hk(s,e,i,f)|0,(u|0)<0):0){h=u;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[v>>2]=196795;c[v+4>>2]=196763;c[v+8>>2]=1023;gi(0,0,229320,v);Tb()}gj(s,t);h=Ik(j,h)|0}}else h=Bk(s,e,f,0)|0;while(0);l=w;return h|0}function cj(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;uk(d);hj(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;gj(d,b);Rj(b);a=a+1|0}a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;ci(d+25628|0);c[d+25632>>2]=0;fj(d+29676|0);zk(d+27052|0);Ak(d+25640|0);b=d+24316|0;gj(d,b);Rj(b);b=d+24972|0;gj(d,b);Rj(b);return 0}function dj(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));ej(d);fj(d+29676|0);a=0;while(1){if((a|0)==36)break;gj(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;gj(d,d+24316|0);c[d+27004>>2]=0;hj(d);c[d+25692>>2]=0;return}function ej(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28744>>2]=-2147483648;c[a+29564>>2]=1;tk(a);c[a+28264>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28604+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28604+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28604+(b<<2)>>2]=0}gj(a,a+24972|0);c[a+26384>>2]=0;c[a+29572>>2]=-1;c[a+29576>>2]=0;c[a+29560>>2]=0;c[a+29544>>2]=1;return}function fj(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+208>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;ci(a+32|0);return}function gj(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){kj(c[a+4>>2]|0,b+4|0);Ni(b+52|0);d=b+20|0;Ni(d);Ni(b+44|0);a=0;while(1){if((a|0)==2)break;Ni(b+28+(a<<2)|0);Ni(b+60+(a<<2)|0);a=a+1|0}FZ(d|0,0,636)|0}return}function hj(a){a=a|0;var b=0,d=0,e=0;ci(a+25732|0);ci(a+26396|0);ci(a+26392|0);ci(a+26400|0);ci(a+26404|0);ci(a+26408|0);ci(a+25972|0);ci(a+28220|0);c[a+26372>>2]=0;ci(a+26388|0);ci(a+26360|0);ci(a+26364|0);ij(a+29924|0);ij(a+29928|0);ij(a+29932|0);ij(a+29936|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;ci(e+(a*34768|0)+27784|0);ci(e+(a*34768|0)+572|0);ci(e+(a*34768|0)+604|0);ci(e+(a*34768|0)+608|0);ci(e+(a*34768|0)+27788|0);ci(e+(a*34768|0)+27792|0);ci(e+(a*34768|0)+27796|0);ci(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function ij(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)jj(b);return}function jj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+4|0;e=g;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];Td[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);ci(e);a=c[f>>2]|0}Bc(a|0)|0;b=c[a+52>>2]|0;if(b|0)Sd[b&63](c[a+40>>2]|0);ci(f);l=g;return}function kj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=i;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)d=(c[a+400>>2]|0)==12;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+576>>2]&32768|0){c[e>>2]=b;gi(a,48,194194,e)}Ni(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){mj(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;HZ(a|0)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5263439?(f=h+304|0,g=fi(c[f>>2]|0,h+312|0,e*408|0)|0,g|0):0){c[f>>2]=g;nj(g+((c[d>>2]|0)*408|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}IZ(a|0)|0}while(0);l=i;return}function lj(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+860>>2]|0;a:do if(!d){d=sj(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=tj(a,b)|0;break a}case 1:{d=uj(a,b)|0;break a}default:{d=-1;break a}}}else{d=rj(d,b,0)|0;c[b+68>>2]=c[a+100>>2];c[b+72>>2]=c[a+104>>2]}while(0);return d|0}function mj(a){a=a|0;var b=0,d=0,e=0;if(a|0){pj(a);b=0;while(1){if((b|0)==8)break;Ni(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Ni((c[e>>2]|0)+(b<<2)|0);b=b+1|0}ci(e);Ri(a+344|0);Ni(a+372|0);Ni(a+376|0);Ni(a+380|0);Ni(a+400|0);oj(a)}return}function nj(a,b){a=a|0;b=b|0;DZ(a|0,b|0,408)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;FZ(b|0,0,408)|0;oj(b);return}function oj(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))ci(b);FZ(a|0,0,408)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function pj(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;qj((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;ci(b);return}function qj(a){a=a|0;var b=0;b=c[a>>2]|0;Ni(b+16|0);Ri(b+12|0);ci(a);return}function rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=Pj(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Md[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)Ni(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=Pj(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=Qj()|0,c[f>>2]=e,(e|0)!=0):0){d=rj(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)<0){Rj(f);break}d=Sj(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){Rj(f);d=0;break}else{c[h>>2]=d;gi(i,16,196269,h);Rj(f);break}}else d=-12;while(0)}l=j;return d|0}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=t;j=t+56|0;p=t+40|0;q=t+24|0;g=t+16|0;h=t+12|0;s=c[(c[a+28>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;n=b+72|0;f=c[n>>2]|0;c[h>>2]=f;o=s+16|0;i=b+80|0;if(((c[o>>2]|0)==(c[i>>2]|0)?(c[s+20>>2]|0)==(e|0):0)?(c[s+24>>2]|0)==(f|0):0)d=0;else r=5;b:do if((r|0)==5){Ej(a,g,h,s+28|0);f=a+112|0;a=c[g>>2]|0;do{d=Fj(p,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[p+(d<<2)>>2]|0)%(c[s+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=Gj(j,c[f>>2]|0,c[h>>2]|0,0,p)|0;if((f|0)>=0){d=0;while(1){if((d|0)>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[q+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[q+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if((d|0)>=4){r=20;break}e=s+(d<<2)|0;ij(e);c[s+60+(d<<2)>>2]=c[p+(d<<2)>>2];a=c[q+(d<<2)>>2]|0;if(a|0?(r=Ij(a+23|0,17)|0,c[e>>2]=r,(r|0)==0):0){r=22;break}d=d+1|0}if((r|0)==20){c[o>>2]=c[i>>2];c[s+20>>2]=c[k>>2];c[s+24>>2]=c[n>>2];d=0;break a}else if((r|0)==22){d=-12;r=31;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(Jj(c[g>>2]|0)|0)!=0;h=h?f:1;i=s+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[s+76>>2]|0)==(h|0):0)?(c[s+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[s+84>>2]|0):0){d=0;break a}ij(s);a=s+60|0;e=b+76|0;d=Kj(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){q=Ij(c[a>>2]|0,0)|0;c[s>>2]=q;if(!q){d=-12;r=31}else{c[i>>2]=c[g>>2];c[s+76>>2]=h;c[s+80>>2]=f;c[s+84>>2]=c[e>>2];d=0}}else r=31;break}default:{c[e>>2]=235325;c[e+4>>2]=194262;c[e+8>>2]=1524;gi(0,0,229320,e);Tb()}}while(0);if((r|0)==31){e=0;while(1){if((e|0)==4)break;ij(s+(e<<2)|0);e=e+1|0}c[s+16>>2]=-1;c[s+84>>2]=0;c[s+80>>2]=0;c[s+76>>2]=0;c[s+24>>2]=0;c[s+20>>2]=0}l=t;return d|0}function tj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;e=n+8|0;d=n;f=c[(c[a+28>>2]|0)+16>>2]|0;h=b+80|0;i=Bj(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){c[e>>2]=Cj(c[h>>2]|0)|0;gi(a,16,194370,e);d=-22;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if((d|0)>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=wj(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=19;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==19){mj(b);d=-12;break}while(1){if((d|0)>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))Dj(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+576>>2]&32768))d=0;else{c[j>>2]=b;gi(a,48,194423,j);d=0}}else k=5;while(0);if((k|0)==5){gi(a,16,194320,d);d=-1}l=n;return d|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;f=o;k=c[(c[a+28>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){d=b+64|0;c[d>>2]=vj(h,4)|0;i=h+-8|0;c[b+284>>2]=i;i=vj(i,4)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){ci(d);ci(e);d=-12}else{i=d;j=5}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=5}else{c[f>>2]=194234;c[f+4>>2]=194262;c[f+8>>2]=1556;gi(0,0,229320,f);Tb()}}a:do if((j|0)==5){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=8;break}f=wj(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==8){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=wj(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+576>>2]&32768)){d=0;break a}c[n>>2]=b;gi(a,48,194282,n);d=0;break a}while(0);mj(b);d=-12}while(0);l=o;return d|0}function vj(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=Zi(N(b,a)|0)|0;else a=0;return a|0}function wj(a){a=a|0;var b=0,d=0,e=0,f=0;HZ(a|0)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=zj(a)|0;IZ(a|0)|0;if(!b)b=0;else f=6}else{b=yj(c[e>>2]|0,c[a+36>>2]|0,15,e,0)|0;if(!b){IZ(a|0)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;IZ(a|0)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function xj(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;HZ(b|0)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;IZ(b|0)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)jj(b);return}function yj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=Zi(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=d|0?d:16;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=Zi(12)|0;if(!d){ci(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);l=j;return d|0}function zj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=c[a+48>>2]|0;if(!b)b=Ld[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Md[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=Zi(20)|0;if(!d){Ni(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=15;break}}else b=0;while(0);l=f;return b|0}function Aj(a,b){a=a|0;b=b|0;di(b);return}function Bj(a){a=a|0;return (a>>>0>182?0:200+(a*152|0)|0)|0}function Cj(a){a=a|0;if(a>>>0<183)a=c[200+(a*152|0)>>2]|0;else a=0;return a|0}function Dj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if((g|0)>=256){d=0;break}switch(b|0){case 20:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>5)*36|0;break}case 17:{d=(g>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 22:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>3)*255|0;break}case 19:{d=(g>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function Ej(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+112|0;g=Bj(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}a:do switch(c[i>>2]|0){case 114:case 115:case 163:case 164:case 78:case 79:case 138:case 139:case 136:case 137:case 76:case 77:case 74:case 75:case 98:case 99:case 92:case 93:case 86:case 87:case 52:case 51:case 134:case 135:case 132:case 133:case 69:case 70:case 67:case 68:case 157:case 156:case 155:case 154:case 96:case 97:case 90:case 91:case 84:case 85:case 50:case 49:case 130:case 131:case 128:case 129:case 65:case 66:case 71:case 72:case 94:case 95:case 88:case 89:case 82:case 83:case 48:case 47:case 126:case 127:case 124:case 125:case 63:case 64:case 61:case 62:case 81:case 80:case 33:case 14:case 32:case 13:case 12:case 30:case 29:case 8:case 113:case 73:case 5:case 31:case 4:case 15:case 110:case 1:case 0:{h=32;g=16;break}case 16:case 140:case 7:{h=32;g=32;break}case 6:{i=(c[a+16>>2]|0)==22;h=i?64:h;g=i?64:g;break}case 39:{j=c[a+16>>2]|0;i=(j|0)==42;j=(j|0)==39;h=j?8:i?4:h;g=j?8:i?4:g;break}case 20:case 17:case 11:{i=c[a+16>>2]|0;switch(i|0){case 43:case 49:{h=4;g=4;break}default:{}}switch(i|0){case 39:case 148:break;default:break a}h=8;g=8;break}case 3:{j=((c[a+16>>2]|0)+-53|0)>>>0<2;h=j?4:h;g=j?4:g;break}case 2:{j=(c[a+16>>2]|0)==43;h=j?4:h;g=j?4:g;break}default:{}}while(0);j=c[a+16>>2]|0;g=(j|0)==136?((g|0)>8?g:8):g;c[b>>2]=(c[b>>2]|0)+-1+g&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((j|0)!=27?(c[a+680>>2]|0)==0:0)g=0;else{c[e>>2]=g+2;g=c[b>>2]|0;c[b>>2]=(g|0)>32?g:32;g=0}while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function Fj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;h=i;f=Bj(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){Nj(g,h,f);e=0;while(1){if((e|0)>=4){b=0;break a}b=Oj(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);l=i;return b|0}function Gj(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=p;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;j=Bj(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=N(h,e)|0;if((i&66|0)==0&0==0)b=0;else{c[a+4>>2]=f+h;b=h+1024|0;break}while(1){if((b|0)==4)break;c[o+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}n=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if((e|0)>=4)break a;if(!(c[o+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[n>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<>i;q=c[g+(e<<2)>>2]|0;h=N(f,q)|0;i=(b|0)>(2147483647-h|0);if((q|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);l=p;return b|0}function Hj(a){a=a|0;var b=0;b=Mj(a)|0;if(!b)b=0;else FZ(c[b+4>>2]|0,0,a|0)|0;return b|0}function Ij(a,b){a=a|0;b=b|0;var d=0;d=Zi(56)|0;if(!d)d=0;else{Cc(d|0,0)|0;c[d+36>>2]=a;c[d+44>>2]=b|0?b:18;c[d+32>>2]=1}return d|0}function Jj(a){a=a|0;if(a>>>0>11)a=0;else a=c[163720+(a*20|0)+12>>2]|0;return a|0}function Kj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=Lj(e)|0;g=Jj(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=uZ(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=y,f=(2147483647-(N(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;e=e+-1+(N(N(f?1:b,h)|0,d)|0)&0-e;if(a|0)c[a>>2]=e;e=N(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function Lj(a){a=a|0;if(a>>>0>11)a=0;else a=c[163720+(a*20|0)+8>>2]>>3;return a|0}function Mj(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=oi(a)|0;c[d>>2]=b;if(b){a=yj(b,a,16,0,0)|0;if(!a){ci(d);a=0}}else a=0;l=e;return a|0}function Nj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;e=0}else e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function Oj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=N(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function Pj(a){a=a|0;var b=0;b=Zi(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function Qj(){var a=0;a=Zi(408)|0;if(!a)a=0;else{c[a+64>>2]=0;oj(a)}return a|0}function Rj(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){mj(b);ci(a)}return}function Sj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=s;h=c[b+376>>2]|0;i=a+376|0;a:do if(h){f=c[i>>2]|0;do if(f|0){k=c[h+4>>2]|0;f=c[f+4>>2]|0;if(!(((k|0)==(f|0)?(c[b+80>>2]|0)==(c[k+40>>2]|0):0)?(c[a+80>>2]|0)==(c[k+36>>2]|0):0)){g=c[(c[k+4>>2]|0)+12>>2]|0;if(!g)break;if((c[g+4>>2]|0)!=(f|0))break}e=c[b+248>>2]|0;if(!e){gi(k,16,196322,n);e=-22;break a}else{e=c[e+4>>2]|0;mj(a);e=Tj(a,c[e>>2]|0)|0;break a}}while(0);f=c[h+4>>2]|0;if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=Od[j&1](f,a,b,d)|0,(e|0)!=-38):0))r=14}else r=14;while(0);do if((r|0)==14){e=c[i>>2]|0;if(((e|0?(o=c[e+4>>2]|0,(c[o+36>>2]|0)==(c[a+80>>2]|0)):0)?(p=c[(c[c[o+4>>2]>>2]|0)+76>>2]|0,p|0):0)?(q=Od[p&1](o,a,b,d)|0,(q|0)!=-38):0){e=q;break}e=-38}while(0);l=s;return e|0}function Tj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Uj(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Vj(a,32)|0;if((d|0)<0)break;d=Wj(a,b)|0;if((d|0)>=0)break;mj(a);break}else d=0;while(1){if(d>>>0>=8){f=10;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=Pj(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==10){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=vj(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=Pj(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=Pj(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=Xj(4,d)|0;c[a+64>>2]=e;if(!e){d=-12;break}DZ(e|0,c[f>>2]|0,d<<2|0)|0};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);mj(a)}while(0);return d|0}function Uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);q=t;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];kk(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));i=b+292|0;j=b+288|0;k=b+68|0;n=a+68|0;o=b+72|0;p=a+72|0;d=(d|0)==0;g=0;while(1){if((g|0)>=(c[i>>2]|0)){r=15;break}h=c[(c[j>>2]|0)+(g<<2)>>2]|0;e=c[h>>2]|0;if(!e){if((c[k>>2]|0)==(c[n>>2]|0)?(c[o>>2]|0)==(c[p>>2]|0):0)r=6}else r=6;if((r|0)==6){r=0;if(d){e=Pj(c[h+16>>2]|0)|0;c[q>>2]=e;e=mk(a,c[h>>2]|0,e)|0;if(!e){r=12;break}}else{f=h+8|0;e=lk(a,e,c[f>>2]|0)|0;if(!e){r=8;break}DZ(c[e+4>>2]|0,c[h+4>>2]|0,c[f>>2]|0)|0}kk(e+12|0,c[h+12>>2]|0,0)|0}g=g+1|0}do if((r|0)==8){pj(a);e=-12}else if((r|0)==12){Ni(q);pj(a);e=-12}else if((r|0)==15){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;Ni(d);h=c[b+372>>2]|0;if(h|0?(s=Pj(h)|0,c[d>>2]=s,s|0):0){c[e>>2]=c[s+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;Ni(f);g=a+400|0;Ni(g);e=c[b+380>>2]|0;if(e|0?(a=Pj(e)|0,c[f>>2]=a,(a|0)==0):0){e=-12;break}e=c[b+400>>2]|0;if(e|0?(b=Pj(e)|0,c[g>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);l=t;return e|0}function Vj(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=ek(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=fk(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Wj(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=Yj(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=Zj(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function Xj(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=oi(N(b,a)|0)|0;else a=0;return a|0}function Yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=$j(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];ak(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);l=j;return d|0}function Zj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=Jj(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=h|0?g:1;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}_j(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function _j(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(Jj(h)|0)!=0;j=k?g:1;i=Lj(h)|0;g=N(k?1:g,i)|0;i=N(g,f)|0;h=N(g,d)|0;g=N(g,e)|0;d=c[a>>2]|0;f=c[b>>2]|0;e=d>>>0>>0;a:do if(((e?f:d)-(c[(e?a:b)>>2]|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;EZ((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;DZ((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function $j(a){a=a|0;var b=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=Bj(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0)){a=0;b=0;break}c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);l=g;return a|0}function ak(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;k=n;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}ck(a,j,d,k,f,g,h,4);l=n;return}function bk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;k=o;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[k>>2]=196398;c[k+4>>2]=196429;c[k+8>>2]=314;gi(0,0,229320,k);Tb()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[n>>2]=196450;c[n+4>>2]=196429;c[n+8>>2]=315;gi(0,0,229320,n);Tb()}else{h=g;i=a;j=d}while(1){if((h|0)<=0)break a;DZ(i|0,j|0,f|0)|0;h=h+-1|0;i=i+b|0;j=j+e|0}}while(0);l=o;return}function ck(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;o=Bj(g)|0;a:do if(o|0?(k=c[o+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){Xd[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);DZ(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}n=d[o+4>>0]|0;r=0;k=0;while(1){if((k|0)==(n|0))break;q=(c[o+16+(k<<5)>>2]|0)+1|0;r=(r|0)>(q|0)?r:q;k=k+1|0}o=o+6|0;p=0-i|0;n=0;while(1){if((n|0)>=(r|0))break a;q=dk(g,h,n)|0;if((q|0)<0)break;if((n+-1|0)>>>0<2)k=0-(p>>(d[o>>0]|0))|0;else k=i;Xd[j&63](c[a+(n<<2)>>2]|0,c[b+(n<<2)>>2]|0,c[e+(n<<2)>>2]|0,c[f+(n<<2)>>2]|0,q,k);n=n+1|0}gi(0,16,196368,s)}while(0);l=t;return}function dk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=g+16|0;f=g;a=Bj(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){Nj(e,f,a);a=Oj(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;l=g;return a|0}function ek(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+80|0;k=Bj(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=hk(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){b=(b|0)<1?32:b;j=b+-1|0;f=1;while(1){if((f|0)>(b|0))break;e=Fj(g,c[h>>2]|0,f+-1+(c[i>>2]|0)&0-f)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else f=f<<1}b=0-b|0;e=0;while(1){if((e|0)>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if((f|0)>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=Mj((N(b,e)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;Ni(m);e=Mj(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);mj(a);e=-12}}else e=-22;while(0);return e|0}function fk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+80|0;g=Jj(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=gk(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=g|0?f:1;j=a+32|0;if(!((c[j>>2]|0)==0?(d=Kj(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){d=a+64|0;c[d>>2]=vj(i,4)|0;e=i+-8|0;h=vj(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){ci(d);ci(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=Mj(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=14;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==14){mj(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=Mj(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}mj(a);d=-12}while(0);return d|0}function gk(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=yZ(a|0,b|0,33)|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function hk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ik(a,b,-1,2147483647,-1,c,d)|0}function ik(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=n+8|0;j=n;i=n+24|0;c[i>>2]=163960;c[i+4>>2]=g;c[i+8>>2]=h;g=dk(f,a,0)|0;h=(g|0)<1;f=zZ(a|0,0,3)|0;f=h?f:g;g=h?y:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(h=oZ(f|0,g|0,1024,0)|0,h=uZ(h|0,y|0,b+128|0,0)|0,g=y,!(g>>>0>0|(g|0)==0&h>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(j=uZ(b|0,0,a|0,0)|0,h=y,(h|0)>(e|0)|(h|0)==(e|0)&j>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;gi(i,16,196512,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;gi(i,16,196481,j);f=-22}l=n;return f|0}function jk(a){a=a|0;return c[c[a>>2]>>2]|0}function kk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=nk(b,332204,f,2)|0;if(!f){e=0;break}e=ok(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function lk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=Mj(d)|0;c[e>>2]=d;a=mk(a,b,d)|0;if(!a)Ni(e);l=f;return a|0}function mk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((((d|0)!=0?(g=a+292|0,h=c[g>>2]|0,h>>>0<=536870910):0)?(i=a+288|0,f=ni(c[i>>2]|0,(h<<2)+4|0)|0,(f|0)!=0):0)?(c[i>>2]=f,e=Zi(20)|0,(e|0)!=0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;h=c[i>>2]|0;i=c[g>>2]|0;c[g>>2]=i+1;c[h+(i<<2)>>2]=e}else e=0;return e|0}function nk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=sk(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(sk(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function ok(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=r+8|0;q=r+4|0;o=r;g=c[a>>2]|0;c[n>>2]=0;c[q>>2]=0;c[o>>2]=0;if(!(e&64))i=nk(g,b,0,e)|0;else i=0;if(!(e&4))h=pk(b)|0;else h=b;c[q>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=pk(d)|0;c[o>>2]=f}else{c[o>>2]=d;f=d}if(!g){g=Zi(8)|0;c[a>>2]=g;if(!g)k=32;else{p=g;k=11}}else{p=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=p+4|0;b=ni(c[g>>2]|0,(c[p>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){di(h);di(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))di(g);else c[n>>2]=g;di(c[i>>2]|0);d=c[p+4>>2]|0;h=(c[p>>2]|0)+-1|0;c[p>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=p+4|0;h=c[d>>2]|0;g=c[p>>2]|0;c[h+(g<<3)>>2]=j;f=c[o>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[n>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=YW(h)|0;g=g+1+(YW(f)|0)|0;b=Zi(g)|0;if(!b)break;qk(b,h,g)|0;ci(n);qk(b,f,g)|0;c[(c[d>>2]|0)+(c[p>>2]<<3)+4>>2]=b;ci(o);f=c[p>>2]|0}f=f+1|0;c[p>>2]=f}else if((k|0)==27){ci(q);f=c[p>>2]|0}if(f|0){f=0;break a}ci(p+4|0);ci(a);f=0;break a}else f=0}while(0);if(!(c[p>>2]|0)){ci(p+4|0);ci(a);k=32}else k=32}while(0);if((k|0)==32){di(c[q>>2]|0);di(f);f=-12}l=r;return f|0}function pk(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(YW(a)|0)+1|0,b=ni(0,c)|0,(b|0)!=0):0)DZ(b|0,a|0,c|0)|0;else b=0;return b|0}function qk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=YW(a)|0;if((d+1|0)>>>0>>0)a=rk(a+d|0,b,c-d|0)|0;else a=YW(b)|0;return a+d|0}function rk(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0>>0)a[b>>0]=0;return (YW(c)|0)+g|0}function sk(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function tk(a){a=a|0;var b=0;uk(a);c[a+28260>>2]=0;c[a+28264>>2]=0;c[a+28248>>2]=65536;c[a+28252>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}return}function uk(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;vk(a,b,0);b=b+1|0}d=a+29556|0;if((c[d>>2]|0)!=0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){gj(a,e);wk(a,e,c[a+28348>>2]|0)|0;b=0}else b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28348+(b<<2)|0;xk(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28268|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function vk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28476+(b<<2)|0;e=c[b>>2]|0;if(e|0?xk(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29552|0;c[d>>2]=(c[d>>2]|0)+-1}return}function wk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=196630;c[e+4>>2]=196646;c[e+8>>2]=70;gi(0,0,229320,e);Tb()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=196672;c[g+4>>2]=196646;c[g+8>>2]=71;gi(0,0,229320,g);Tb()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=196687;c[i+4>>2]=196646;c[i+8>>2]=72;gi(0,0,229320,i);Tb()}i=b+4|0;c[i>>2]=h;e=yk(i,e)|0;a:do if((e|0)>=0){i=b+20|0;c[i>>2]=Pj(c[d+20>>2]|0)|0;h=Pj(c[d+44>>2]|0)|0;c[b+44>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19}else{c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];e=0;while(1){if((e|0)>=2)break;i=b+28+(e<<2)|0;c[i>>2]=Pj(c[d+28+(e<<2)>>2]|0)|0;h=Pj(c[d+60+(e<<2)>>2]|0)|0;c[b+60+(e<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19;break a}c[b+36+(e<<2)>>2]=c[d+36+(e<<2)>>2];c[b+68+(e<<2)>>2]=c[d+68+(e<<2)>>2];e=e+1|0}if(!(c[d+56>>2]|0))e=0;else{e=Pj(c[d+52>>2]|0)|0;c[b+52>>2]=e;if(!e){e=-12;j=19;break}c[b+56>>2]=c[e+4>>2];e=0}while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}DZ(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}}else j=19;while(0);if((j|0)==19)gj(a,b);l=k;return e|0}function xk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28604+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function yk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Tj(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=196707;c[f+4>>2]=196722;c[f+8>>2]=1792;gi(0,0,229320,f);Tb()}d=c[b+12>>2]|0;if((d|0)!=0?(f=Pj(d)|0,c[e>>2]=f,(f|0)==0):0){kj(c[g>>2]|0,a);d=-12}else d=0}l=h;return d|0}function zk(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32){b=0;break}Ni(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==256)break;Ni(a+128+(b<<2)|0);b=b+1|0}Ni(a+1156|0);Ni(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function Ak(a){a=a|0;var b=0,d=0;d=a+20|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;ci((c[a>>2]|0)+(b*68|0)+60|0);b=b+1|0}ci(a);c[d>>2]=0;ci(a+4|0);c[a+12>>2]=0;c[a+8>>2]=0;return}function Bk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+28604>>2]|0;c[a+24312>>2]=0;c[a+26384>>2]=0;h=0;f=1;while(1){g=c[a+28604+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28604+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28604+(k<<2)>>2]|0;c[a+28604+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=Hk(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function Ck(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function Dk(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=5;break}c=((AZ(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24==7){e=e+-1|0;b=b+c|0}else{c=0;break}}a:do if((f|0)==5){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((AZ(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24==8){e=e+-1|0;c=c+b|0}else{c=0;break}}}}while(0);return c|0}function Ek(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=u+16|0;q=u+8|0;k=u;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;gi(j,16,218205,k);e=-1094995529;break a}k=a[b+5>>0]&31;s=b+e|0;p=b+6|0;g=0;while(1){if((g|0)>=(k|0))break;n=((AZ(d[p>>0]|d[p+1>>0]<<8|0)|0)&65535)+2|0;if((n|0)>(s-p|0)){e=-1094995529;break a}o=YP(p,n,f,i,j)|0;if((o|0)<0){r=9;break}p=p+n|0;g=g+1|0}if((r|0)==9){c[q>>2]=g;gi(j,16,218224,q);e=o;break a}o=d[p>>0]|0;g=p+1|0;n=0;while(1){if((n|0)>=(o|0)){r=17;break}k=((AZ(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(s-g|0)){e=-1094995529;break a}p=YP(g,k,f,i,j)|0;if((p|0)<0){r=15;break}g=g+k|0;n=n+1|0}if((r|0)==15){c[t>>2]=n;gi(j,16,218258,t);e=p;break a}else if((r|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=ZP(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);l=u;return e|0}function Fk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+80|0;if((l|0)>=(m|0))W(80);P=Z+48|0;T=Z+40|0;S=Z+32|0;R=Z+24|0;Q=Z+16|0;O=Z+8|0;j=Z;L=Z+52|0;U=b+4|0;M=c[U>>2]|0;Y=b+27032|0;c[Y>>2]=0;N=b+27028|0;c[N>>2]=0;i=M+64|0;if(!(c[i>>2]&32768)){c[b+29560>>2]=0;if(!(c[b+26384>>2]|0))c[b+24312>>2]=0;fj(b+29676|0)}h=c[b+27040>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){X=e+5|0;if((BZ(d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27036>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}X=BZ(g|0)|0;if(!(X>>>0<2|X>>>0>f>>>0))c[b+27036>>2]=1}while(0);F=b+25640|0;g=Uk(F,e,f,M,c[b+27036>>2]|0,h,c[M+16>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)gi(M,16,197765,j);else{C=M+696|0;if(c[C>>2]&1){g=Vk(b)|0;if((g|0)<0)break}else g=0;p=b+25656|0;q=M+732|0;r=b+27024|0;D=b+29560|0;s=b+29580|0;t=b+29588|0;X=b+24312|0;u=M+592|0;v=b+25632|0;w=b+25636|0;E=b+25628|0;x=b+29676|0;y=b+27052|0;z=b+29716|0;A=M+576|0;B=b+29900|0;h=0;o=0;a:while(1){if((o|0)>=(c[p>>2]|0)){V=71;break}k=c[F>>2]|0;j=k+(o*68|0)|0;i=c[k+(o*68|0)+64>>2]|0;if((c[q>>2]|0)>7&(i|0)==0){if((c[k+(o*68|0)+44>>2]|0)==6){i=0;V=22}}else V=22;b:do if((V|0)==22){V=0;c[r>>2]=i;i=c[k+(o*68|0)+44>>2]|0;c[N>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(o*68|0)+8>>2]|0)+1>>0]&-4)<<24>>24==-104){V=24;break a}if(!h){if(c[D>>2]|0?c[C>>2]&2|0:0){V=28;break a}tk(b)}c[s>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{Zk(M,197916,R);break b}case 6:{n=_k(x,k+(o*68|0)+24|0,y,M)|0;if(!(c[s>>2]|0))i=(c[z>>2]|0)!=-1;else i=1;c[s>>2]=i&1;if(c[A>>2]&8388608|0)$k(B,c[U>>2]|0);if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}case 7:{i=k+(o*68|0)+24|0;c[L>>2]=c[i>>2];c[L+4>>2]=c[i+4>>2];c[L+8>>2]=c[i+8>>2];c[L+12>>2]=c[i+12>>2];c[L+16>>2]=c[i+16>>2];j=c[u>>2]|0;if((j|0?(H=c[j+28>>2]|0,H|0):0)?(I=Od[H&1](M,7,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(I|0)<0):0){V=61;break a}if((al(L,M,y,0)|0)<=-1?(gi(c[U>>2]|0,48,197934,S),bl(L,(c[k+(o*68|0)+20>>2]|0)+1|0,(c[k+(o*68|0)+16>>2]|0)+-1|0)|0,(al(L,M,y,0)|0)<=-1):0)al(i,M,y,1)|0;break b}case 8:{i=c[u>>2]|0;if((i|0?(J=c[i+28>>2]|0,J|0):0)?(K=Od[J&1](M,8,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(K|0)<0):0){n=K;break a}n=cl(k+(o*68|0)+24|0,M,y,c[k+(o*68|0)+12>>2]|0)|0;if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}default:{n=c[k+(o*68|0)+12>>2]|0;c[T>>2]=i;c[T+4>>2]=n;gi(M,48,197992,T);break b}}c[Y>>2]=1;i=Wk(b,j)|0;if(i|0){k=c[E>>2]|0;n=c[w>>2]|0;c[k+(n*34768|0)+23408>>2]=0;c[k+(n*34768|0)+23404>>2]=0;if((i|0)>=0)break;gi(c[U>>2]|0,16,198024,P);break}if((c[D>>2]|0)==1){if((!((o|0)<(g|0)|(c[C>>2]&1|0)==0)?(c[t>>2]|0)==0:0)?c[X>>2]|0:0){Xk(M);c[t>>2]=1}i=c[U>>2]|0;j=c[i+592>>2]|0;if(j|0?(G=Nd[c[j+24>>2]&15](i,e,f)|0,(G|0)<0):0){n=G;break a}}i=c[u>>2]|0;if(!i)j=c[v>>2]|0;else j=1;if((c[w>>2]|0)==(j|0)){if(!(c[(c[U>>2]|0)+592>>2]|0))n=Yk(b)|0;else{n=Nd[c[i+32>>2]&15](M,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0;c[w>>2]=0}if((n|0)<0?(c[(c[U>>2]|0)+580>>2]&8|0)!=0:0)break a}}while(0);o=o+1|0}do if((V|0)==24){gi(c[U>>2]|0,16,197808,O);c[b+28744>>2]=-2147483648;n=-1}else if((V|0)==28){gi(b,16,197833,Q);n=-1094995529}else if((V|0)==61)n=I;else if((V|0)==71){g=Yk(b)|0;if((g|0)<0?c[(c[U>>2]|0)+580>>2]&8|0:0){n=g;break}n=0}while(0);k=b+26380|0;if((((c[k>>2]|0)==3?c[D>>2]|0:0)?(c[b+28216>>2]|0)==(c[(c[b+27052+(c[c[b+28212>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29672>>2]|0:0){h=c[E>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;dl(h+696|0,c[X>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){dl(g,0);break}else{dl(g,c[h+23452>>2]|0);break}}else{dl(h+728|0,g);V=h+23416|0;c[h+23452>>2]=g;U=c[g>>2]|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];V=h+23428|0;U=(c[g>>2]|0)+32|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)dl(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];el(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[X>>2]|0;if((g|0?(c[b+25684>>2]|0)==0:0)?c[Y>>2]|0:0)Mk(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(n|0)<0?n:f}while(0);l=Z;return g|0}function Gk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=c[a+4>>2]|0;c[a+27004>>2]=0;f=(d|0)!=0;if(!f?(c[e+696>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25684>>2]|0)){b=Lk(a)|0;c[a+28248>>2]=c[a+28228>>2];c[a+28252>>2]=c[a+28224>>2]}else b=0;c[a+28260>>2]=c[a+28256>>2];c[a+28264>>2]=c[a+28244>>2]}d=c[e+592>>2]|0;if(d){b=Ld[c[d+36>>2]&31](e)|0;if((b|0)<0)gi(e,16,197043,g)}if(!f?(c[a+25684>>2]|0)==0:0)Mk((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[a+29560>>2]=0;l=h;return b|0}function Hk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=o;j=o+40|0;k=o+24|0;n=o+8|0;f=c[a+4>>2]|0;if(((c[f+60>>2]&8|0)==0?(c[f+64>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+592>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;p=h&1;c[g>>2]=p;gi(f,48,196823,g);g=0-(p^1)|0;f=0;while(1){if((f|0)==4)break;q=i+(f<<2)|0;p=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[q>>2]|0)+(p&g);c[n+(f<<2)>>2]=(c[q>>2]|0)+(h?p:0);c[k+(f<<2)>>2]=p<<1;f=f+1|0}ak(j,k,n,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=Jk(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}l=o;return f|0}function Ik(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Tj(b,c[d>>2]|0)|0;if((e|0)>=0){ok(b+344|0,196861,Kk(a+29852|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}return e|0}function Kk(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?196873:196889;break a}case 1:{a=(c[a+20>>2]|0)==2?196905:196924;break a}case 2:{a=(c[a+20>>2]|0)==2?196943:196962;break a}case 3:{a=(c[a+20>>2]|0)==2?196981:196992;break a}case 4:{a=(c[a+20>>2]|0)==2?197003:197014;break a}case 5:{a=(c[a+20>>2]|0)==2?197025:197034;break a}default:{a=225562;break a}}case 1:{a=225562;break}default:a=0}while(0);return a|0}function Lk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=l;l=l+144|0;if((l|0)>=(m|0))W(144);E=N+112|0;D=N+104|0;C=N+96|0;w=N+80|0;v=N+72|0;u=N+64|0;t=N+56|0;z=N+48|0;y=N+40|0;x=N+24|0;e=N+16|0;p=N+128|0;L=N;r=N+124|0;G=L;c[G>>2]=0;c[G+4>>2]=0;G=a+28216|0;do if(c[G>>2]|0){if(!(c[a+29548>>2]|0))Nk(a);q=c[a+29540>>2]|0;b=a+4|0;d=c[b>>2]|0;if((q|0)==0?(c[d+576>>2]&2048|0)!=0:0)gi(d,48,197129,e);J=a+29556|0;H=a+29552|0;B=a+28348|0;K=a+24312|0;I=a+26380|0;n=a+28244|0;o=a+29544|0;k=0;j=0;f=0;g=0;d=0;a:while(1){if((k|0)>=(q|0))break;e=c[b>>2]|0;if(!(c[e+576>>2]&2048))h=a+28748+(k*12|0)|0;else{h=a+28748+(k*12|0)|0;O=c[a+28748+(k*12|0)+4>>2]|0;i=c[a+28748+(k*12|0)+8>>2]|0;c[x>>2]=c[h>>2];c[x+4>>2]=O;c[x+8>>2]=i;gi(e,48,197143,x)}e=c[h>>2]|0;b:do switch(e|0){case 3:case 1:{f=Ok(a,c[a+28748+(k*12|0)+4>>2]|0,r)|0;g=Pk(a,f,p)|0;e=c[h>>2]|0;if(!g){if(((e|0)==3?(s=c[a+28476+(c[a+28748+(k*12|0)+8>>2]<<2)>>2]|0,s|0):0)?(c[s+88>>2]|0)==(f|0):0){h=j;e=0;break b}gi(c[b>>2]|0,c[J>>2]|0?16:48,197158,y);h=j;d=-1094995529;e=0}else{i=f;A=18}break}default:{i=f;A=18}}while(0);c:do if((A|0)==18){A=0;switch(e|0){case 1:{e=c[b>>2]|0;if(c[e+576>>2]&2048|0){O=c[J>>2]|0;c[z>>2]=c[a+28748+(k*12|0)+4>>2];c[z+4>>2]=O;gi(e,48,197185,z)}Qk(a,i,c[r>>2]^3)|0;h=j;f=i;e=g;break c}case 3:{e=a+28748+(k*12|0)+8|0;f=c[e>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(g|0))vk(a,f,0);Rk(a,c[p>>2]|0);c[a+28476+(c[e>>2]<<2)>>2]=g;e=c[a+28476+(c[e>>2]<<2)>>2]|0;if(!e){h=j;f=i;e=g;break c}c[e+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;h=j;f=i;e=g;break c}case 2:{e=Ok(a,c[a+28748+(k*12|0)+8>>2]|0,r)|0;c[p>>2]=e;g=c[a+28476+(e<<2)>>2]|0;if(g|0){vk(a,e,c[r>>2]^3);h=j;f=i;e=g;break c}e=c[b>>2]|0;if(!(c[e+576>>2]&2048)){h=j;f=i;e=0;break c}gi(e,48,197216,t);h=j;f=i;e=0;break c}case 6:{e=c[K>>2]|0;if((c[B>>2]|0)==(e|0)){gi(c[b>>2]|0,16,197242,u);Rk(a,0);e=c[K>>2]|0}h=a+28748+(k*12|0)+8|0;if(c[e+100>>2]|0){e=0;while(1){if((e|0)==32)break;if((c[a+28476+(e<<2)>>2]|0)==(c[K>>2]|0)){if((e|0)!=(c[h>>2]|0))gi(c[b>>2]|0,16,197314,v);vk(a,e,0)}e=e+1|0}c[p>>2]=32;e=c[K>>2]|0}f=c[h>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(e|0)){if(c[e+100>>2]|0){A=42;break a}vk(a,f,0);c[a+28476+(c[h>>2]<<2)>>2]=c[K>>2];c[(c[a+28476+(c[h>>2]<<2)>>2]|0)+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;e=c[K>>2]|0}h=e+640|0;c[h>>2]=c[h>>2]|c[I>>2];h=1;f=i;e=g;break c}case 4:{e=c[a+28748+(k*12|0)+8>>2]|0;while(1){if((e|0)>=16)break;vk(a,e,0);e=e+1|0}c[p>>2]=e;h=j;f=i;e=g;break c}case 5:{while(1){if(!(c[J>>2]|0)){e=0;break}Qk(a,c[(c[B>>2]|0)+88>>2]|0,0)|0}while(1){if((e|0)==16)break;vk(a,e,0);e=e+1|0}c[p>>2]=16;e=c[K>>2]|0;c[e+88>>2]=0;c[n>>2]=0;c[o>>2]=1;c[e+92>>2]=1;e=0;while(1){if((e|0)==16)break;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}c[p>>2]=16;h=j;f=i;e=g;break c}default:{h=j;f=i;e=g;break c}}}while(0);k=k+1|0;j=h;g=e}if((A|0)==42){c[w>>2]=197377;c[w+4>>2]=197403;c[w+8>>2]=702;gi(0,0,229320,w);Tb()}do if(!j){if(c[J>>2]|0){f=c[B>>2]|0;e=c[K>>2]|0;if((f|0)==(e|0)){O=f+640|0;c[O>>2]=c[O>>2]|c[I>>2];break}}else e=c[K>>2]|0;if(c[e+100>>2]|0){gi(c[b>>2]|0,16,197426,C);d=-1094995529;break}if(Qk(a,c[e+88>>2]|0,0)|0){gi(c[b>>2]|0,16,197539,D);d=-1094995529}e=c[J>>2]|0;if(!e)e=1;else{EZ(a+28352|0,B|0,e<<2|0)|0;e=(c[J>>2]|0)+1|0}O=c[K>>2]|0;c[a+28348>>2]=O;c[J>>2]=e;O=O+640|0;c[O>>2]=c[O>>2]|c[I>>2]}while(0);e=c[H>>2]|0;f=c[J>>2]|0;g=c[(c[G>>2]|0)+48>>2]|0;do if((f+e|0)>(((g|0)>1?g:1)|0)){d=c[b>>2]|0;c[E>>2]=e;c[E+4>>2]=f;c[E+8>>2]=g;gi(d,16,197581,E);d=c[J>>2]|0;if((c[H>>2]|0)!=0&(d|0)==0)d=0;else{Qk(a,c[(c[a+28348+(d+-1<<2)>>2]|0)+88>>2]|0,0)|0;d=-1094995529;break}while(1){if((d|0)>=16)break;if(c[a+28476+(d<<2)>>2]|0)break;d=d+1|0}vk(a,d,0);d=-1094995529}while(0);e=0;while(1){if((e|0)>=(c[J>>2]|0))break;f=c[a+28348+(e<<2)>>2]|0;if(c[f+648>>2]|0?(F=c[f+88>>2]|0,O=c[G>>2]|0,((1<>2])+-1&(c[(c[K>>2]|0)+88>>2]|0)-F|0)>(c[O+48>>2]|0)):0)Qk(a,F,0)|0;e=e+1|0}Sk(a);Tk(a);h=L+4|0;g=0;i=0;f=0;while(1){if((g|0)==256)break;e=c[a+27180+(g<<2)>>2]|0;if(!e)e=i;else{G=c[e+4>>2]|0;O=G+20|0;e=c[(i>>>0>(c[O>>2]|0)>>>0?L:O)>>2]|0;c[L>>2]=e;f=c[(f>>>0>(c[G+24>>2]|0)>>>0?L:O)+4>>2]|0;c[h>>2]=f}g=g+1|0;i=e}if((d|0)>-1?(c[H>>2]|0)==0:0){e=c[I>>2]|0;if((c[J>>2]|0)>=3?!((i|0)<=(((e|0)!=3?2:1)|0)&(f|0)<2):0)break;if(((i|0)<=((((c[a+29580>>2]|0)==0&1)<<1)+((e|0)!=3?3:2)|0)?(M=c[K>>2]|0,(c[(c[M>>2]|0)+88>>2]|0)==1):0)?(O=M+644|0,c[O>>2]=c[O>>2]|1,(c[(c[b>>2]|0)+140>>2]|0)==0):0){O=a+29576|0;c[O>>2]=c[O>>2]|2}}}else{b=a+4|0;gi(c[b>>2]|0,16,197115,N+8|0);d=-1094995529}while(0);l=N;return (c[(c[b>>2]|0)+580>>2]&8|0?d:0)|0}function Mk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;e=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){a=c[a>>2]|0;c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;gi(a,48,197090,h)}h=e+184|0;HZ(h|0)|0;c[g>>2]=b;GZ(e+60|0)|0;IZ(h|0)|0}l=i;return}function Nk(a){a=a|0;var b=0,d=0,e=0;b=c[a+29556>>2]|0;do if((b|0)!=0?((c[a+29552>>2]|0)+b|0)>=(c[(c[a+28216>>2]|0)+48>>2]|0):0){e=(c[a+26380>>2]|0)==3;if((!e?(c[a+26384>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28748>>2]=1;d=c[(c[a+28348+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28752|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28760>>2]=1;c[a+28764>>2]=d|1;b=2}}else b=0;while(0);c[a+29540>>2]=b;return}function Ok(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26380|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;h=a+29556|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28348+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+576>>2]&2048))f=e+88|0;else{o=e+88|0;p=c[o>>2]|0;c[j>>2]=g;c[j+4>>2]=p;c[j+8>>2]=e;gi(f,48,197755,j);f=o}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;l=n;return e|0}function Qk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+576>>2]&2048|0){i=c[a+29556>>2]|0;c[f>>2]=b;c[f+4>>2]=i;gi(e,48,197729,f)}b=Pk(a,b,g)|0;if(b|0?xk(a,b,d)|0:0)Rk(a,c[g>>2]|0);l=h;return b|0}function Rk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28348+(b<<2)|0;c[d>>2]=0;f=a+29556|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)EZ(d|0,a+28348+(b+1<<2)|0,e-b<<2|0)|0;return}function Sk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){gi(b,48,197711,g);d=a+29556|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28348+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;gi(h,48,197691,f);b=b+1|0}}while(0);l=g;return}function Tk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){gi(b,48,197674,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28476+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;gi(h,48,197691,f)}b=b+1|0}}while(0);l=g;return}function Uk(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=E+40|0;C=E+32|0;B=E+24|0;A=E+16|0;k=E;y=E+44|0;x=(g|0)!=0;if((e|0)<=-1){c[k>>2]=224848;c[k+4>>2]=224862;c[k+8>>2]=137;gi(0,0,229320,k);Tb()}s=b;t=b+e|0;u=a+4|0;IP(u,a+8|0,(j|0?0:262144)+e|0);a:do if(c[u>>2]|0){c[a+12>>2]=0;v=a+16|0;c[v>>2]=0;w=a+20|0;r=(i|0)==173;n=x?0:e;g=s;b:while(1){e=b+n|0;while(1){i=t-g|0;if(i>>>0<=3){g=0;break a}k=g-s|0;if((k|0)==(n|0)){D=8;break}if((k|0)>(n|0))gi(f,24,217657,A);k=KP(g,e)|0;i=g+(i>>>0>k>>>0?k:i)|0;k=i;g=t-k|0;if(!g)break b;q=k-s|0;p=n-q|0;g=g>>>0>p>>>0?p:g;if((n|0)>(q|0)){q=g;break}else g=i+g|0}if((D|0)==8){D=0;c[y>>2]=0;k=g;g=JP(h,k,i,y,f)|0;k=k+(i>>>0>h>>>0?h:i)|0;if((g|0)<0)break a;else{q=g;n=k-s+g|0}}g=c[w>>2]|0;i=c[v>>2]|0;if((g|0)<=(i|0)){g=g+1|0;i=LP(c[a>>2]|0,g,68)|0;if(!i){g=-12;break a}c[a>>2]=i;e=c[w>>2]|0;FZ(i+(e*68|0)|0,0,(g-e|0)*68|0)|0;e=c[a>>2]|0;o=c[v>>2]|0;c[e+(o*68|0)+56>>2]=1024;p=Xj(1024,4)|0;c[e+(o*68|0)+60>>2]=p;if(!p){g=-12;break a}c[w>>2]=g;i=c[v>>2]|0}p=c[a>>2]|0;o=p+(i*68|0)|0;e=k;g=MP(e,q,u,o,j)|0;if((g|0)<0)break a;if(x?(q|0)!=0&(q|0)!=(g|0):0){c[C>>2]=g;c[C+4>>2]=q;gi(f,48,217725,C)}c[v>>2]=(c[v>>2]|0)+1;k=t-k|0;g=e+(k>>>0>g>>>0?g:k)|0;e=g;k=t-e|0;if(k>>>0>3){if((k|0)<4)g=0;else g=BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;g=(g|0)!=480&1}else g=1;g=NP(o,g)|0;c[p+(i*68|0)+12>>2]=g;g=OP(p+(i*68|0)+24|0,c[p+(i*68|0)+8>>2]|0,g)|0;if((g|0)<0)break a;if(r)g=PP(o,f)|0;else g=QP(o,f)|0;if((g|0)<1){if((g|0)<0){c[z>>2]=c[p+(i*68|0)+44>>2];gi(f,16,217770,z)}}else if((c[p+(i*68|0)+4>>2]|0)>=1){g=e;continue}c[v>>2]=(c[v>>2]|0)+-1;g=e}if((c[v>>2]|0)>0)g=0;else{gi(f,16,217700,B);g=-1094995529}}else g=-12;while(0);l=E;return g|0}function Vk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;h=o+4|0;i=a+25656|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*68|0)+44|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=bl(h,(c[d+(f*68|0)+8>>2]|0)+1|0,(c[d+(f*68|0)+4>>2]|0)+-1|0)|0;if((d|0)<0){gi(c[g>>2]|0,16,217624,k);if(!(c[(c[g>>2]|0)+580>>2]&8))break b;else{n=12;break a}}d=(b|0)!=0;if(!(d&(DP(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((n|0)==12)a=d;l=o;return a|0}function Wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+34832|0;if((l|0)>=(m|0))W(34832);v=x+34824|0;u=x+34816|0;t=x+34808|0;s=x+34800|0;q=x+34784|0;j=x+34776|0;h=x+34768|0;i=x;o=a+25628|0;e=c[o>>2]|0;w=a+25636|0;g=c[w>>2]|0;f=e+(g*34768|0)|0;if(!g)n=(c[a+29560>>2]|0)==0;else n=0;r=n&1;d=e+(g*34768|0)+4|0;y=b+24|0;c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];c[d+16>>2]=c[y+16>>2];d=go(a,f,b)|0;a:do if((d|0)>=0){if((c[e+(g*34768|0)+21836>>2]|0)>0){c[e+(g*34768|0)+23408>>2]=0;c[e+(g*34768|0)+23404>>2]=0;d=0;break}d=(c[e+(g*34768|0)+21808>>2]|0)==0;if(!d?(c[a+29560>>2]|0)!=0:0)k=11;else{if(c[a+29588>>2]|0){gi(c[a+4>>2]|0,16,213924,h);d=-1094995529;break}if(d){h=a+29560|0;do if(c[h>>2]|0){if(c[w>>2]|0){d=Yk(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+580>>2]&8|0:0)break a;y=c[o>>2]|0;DZ(i|0,y|0,34768)|0;DZ(y|0,f|0,34768)|0;DZ(f|0,i|0,34768)|0;f=c[o>>2]|0}e=a+24312|0;if(!(c[e>>2]|0)){d=-1094995529;break a}g=a+26384|0;d=(c[g>>2]|0)==0;if((c[a+26380>>2]|0)!=3){if(d){d=-1094995529;break a}d=Gk(a,c[o>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27028>>2]|0)!=5){d=-1094995529;break a}gi(a,24,213941,j);d=Gk(a,c[o>>2]|0,1)|0;Mk((c[e>>2]|0)+4|0,2147483647,0);Mk((c[e>>2]|0)+4|0,2147483647,1);c[e>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26384|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;e=c[d>>2]|0;if(e|0?(c[a+25684>>2]|0)==0:0)Mk(e+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[d>>2]=0;g=f;d=h}else{g=f;d=h}}else k=11}if((k|0)==11){g=f;d=a+29560|0}f=c[d>>2]|0;e=(f|0)==0;do if(e){if((g|0)!=(c[o>>2]|0)){c[q>>2]=213967;c[q+4>>2]=203124;c[q+8>>2]=2090;gi(0,0,229320,q);Tb()}if((c[a+26384>>2]|0)==0?(p=c[(c[a+4>>2]|0)+732>>2]|0,(p|0)>7):0){if(!(c[a+27024>>2]|0)){d=0;break a}if((p|0)>15){if((c[g+840>>2]|0)==3){d=0;break a}if((p|0)>23){if((c[g+840>>2]|0)!=1){d=0;break a}if((p|0)>31)if((c[a+27028>>2]|0)==5)if((p|0)>47){d=0;break a}else break;else if((c[a+29716>>2]|0)<0|(p|0)>47){d=0;break a}else break}}}}while(0);do if(!n){y=c[(c[a+27180+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;q=c[a+28212>>2]|0;d=c[q>>2]|0;if((d|0)==(c[y>>2]|0)?(c[q+64>>2]|0)==(c[y+64>>2]|0):0){if((c[a+28216>>2]|0)==(c[(c[a+27052+(d<<2)>>2]|0)+4>>2]|0))break;gi(c[a+4>>2]|0,16,214014,t);d=-1094995529;break a}gi(c[a+4>>2]|0,16,213986,s);d=-1094995529;break a}while(0);do if(e){d=ho(a,g,b,r)|0;if((d|0)<0)break a}else{d=c[a+26380>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25684>>2]|0)==((c[b+64>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[v>>2]=f+1;gi(d,16,214116,v);d=-1094995529;break a}y=c[a+4>>2]|0;c[u>>2]=d;c[u+4>>2]=e;gi(y,16,214054,u);d=-1094995529;break a}while(0);d=io(a,g,b)|0;if((d|0)>=0){c[w>>2]=(c[w>>2]|0)+1;d=0}}while(0);l=x;return d|0}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[(c[a+28>>2]|0)+20>>2]|0;if(c[a+696>>2]&1|0){e=a+592|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){HZ((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;fo(c[f>>2]|0)}}while(0);b=f+184|0;HZ(b|0)|0;d=f+300|0;if((c[d>>2]|0)==4)gi(a,24,213883,g);c[d>>2]=4;GZ(f+60|0)|0;IZ(b|0)|0}l=h;return}function Yk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=w+16|0;d=w;i=c[a+4>>2]|0;v=a+25636|0;t=c[v>>2]|0;u=a+25628|0;j=c[u>>2]|0;b=j+21812|0;c[b>>2]=2147483647;if((t|0)<1|(c[i+592>>2]|0)!=0)b=0;else{k=t+-1|0;s=a+27008|0;h=c[s>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(h|0)){c[d>>2]=203055;c[d+4>>2]=203124;c[d+8>>2]=2746;gi(0,0,229320,d);Tb()}a:do if((t|0)!=1){if((t|0)<=0){c[e>>2]=203148;c[e+4>>2]=203124;c[e+8>>2]=2758;gi(0,0,229320,e);Tb()}r=a+27012|0;b=0;while(1){if((b|0)==(t|0))break;f=c[r>>2]|0;e=N(h,f)|0;c[j+(b*34768|0)+596>>2]=0;g=N(f,c[j+(b*34768|0)+21792>>2]|0)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(t|0))break;q=N(f,c[j+(d*34768|0)+21792>>2]|0)|0;q=q+(c[j+(d*34768|0)+21788>>2]|0)|0;q=(b|0)==(d|0)|(q|0)<(g|0)?e:(e|0)>(q|0)?q:e;d=d+1|0;e=q}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}Qd[c[i+704>>2]&7](i,9,j,0,t,34768)|0;e=c[u>>2]|0;c[a+27004>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(t|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25708|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26376|0;h=a+26380|0;f=0;while(1){if((f|0)==(t|0)){b=0;break a}q=c[u>>2]|0;i=q+(f*34768|0)|0;j=q+(f*34768|0)+21792|0;o=c[j>>2]|0;n=c[s>>2]|0;k=(o|0)<(n|0)?o+1|0:n;n=c[((o|0)>=(n|0)?r:q+(f*34768|0)+21788|0)>>2]|0;o=q+(f*34768|0)+21804|0;p=k+-1|0;q=q+(f*34768|0)+21800|0;e=c[o>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[o>>2]|0))b=0;else b=c[q>>2]|0;if((e|0)==(p|0))d=n;else d=c[r>>2]|0;tm(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{c[b>>2]=N(c[a+27012>>2]|0,h)|0;c[a+25708>>2]=0;b=sm(i,j)|0;c[a+27004>>2]=c[(c[u>>2]|0)+21792>>2]}while(0);c[v>>2]=0}l=w;return b|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;Fl(1,a,b,f);l=e;return}function _k(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);u=w+16|0;t=w;n=a+36|0;o=a+40|0;p=a+44|0;q=a+176|0;r=a+208|0;s=a+224|0;k=a+240|0;i=0;a:while(1){if((Vl(b)|0)<=16){f=i;break}if(!(Wl(b,16)|0)){f=i;break}else h=0;while(1){if((Vl(b)|0)<8){f=-1094995529;break a}h=(Wl(b,8)|0)+h|0;if((Xl(b,8)|0)!=255){g=0;break}}do{if((Vl(b)|0)<8){f=-1094995529;break a}g=(Wl(b,8)|0)+g|0}while((Xl(b,8)|0)==255);f=Vl(b)|0;if(g>>>0>((f|0)/8|0)>>>0){v=9;break}j=(Yl(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=Zl(a,b,d,e)|0;v=21;break}case 4:{f=_l(a,b,g)|0;v=21;break}case 5:{f=$l(n,b,g)|0;v=21;break}case 6:{am(o,b);f=i;break}case 0:{f=bm(p,b,d,e)|0;v=21;break}case 45:{cm(q,b);f=i;break}case 47:{dm(r,b);f=i;break}case 56:{em(s,b);f=i;break}case 147:{fm(k,b);f=i;break}default:{c[u>>2]=h;gi(e,48,202873,u);f=i}}while(0);if((v|0)==21){v=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}gm(b,j-(Yl(b)|0)|0);hm(b);i=f}if((v|0)==9){c[t>>2]=h;c[t+4>>2]=g<<3;c[t+8>>2]=f;gi(e,16,202836,t);f=-1094995529}l=w;return f|0}function $k(b,f){b=b|0;f=f|0;var g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;p=l;l=l+96|0;if((l|0)>=(m|0))W(96);j=p+80|0;i=p+72|0;g=p+40|0;o=p+32|0;n=p+24|0;k=p+16|0;q=p+8|0;gi(f,48,202581,p);c[q>>2]=d[b>>0];gi(f,48,202614,q);switch(a[b>>0]|0){case 0:{q=b+1|0;c[k>>2]=d[q>>0];gi(f,48,202641,k);switch(a[q>>0]|0){case 2:{c[n>>2]=e[b+2>>1];gi(f,48,202675,n);break}case 3:{c[o>>2]=e[b+4>>1];gi(f,48,202709,o);break}default:{}}t=+(d[b+7>>0]|0)/255.0;s=+(d[b+8>>0]|0)/255.0;r=+(d[b+9>>0]|0)/255.0;h[g>>3]=+(d[b+6>>0]|0)/255.0;h[g+8>>3]=t;h[g+16>>3]=s;h[g+24>>3]=r;gi(f,48,202744,g);break}case 1:{q=b+10|0;c[i>>2]=d[q>>0];gi(f,48,202789,i);if(!(a[q>>0]|0)){h[j>>3]=+(e[b+12>>1]|0)/100.0;gi(f,48,202812,j)}break}default:{}}l=p;return}function al(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;R=l;l=l+240|0;if((l|0)>=(m|0))W(240);L=R+152|0;I=R+144|0;H=R+120|0;F=R+104|0;D=R+96|0;A=R+88|0;z=R+80|0;w=R+72|0;y=R+64|0;x=R+56|0;v=R+48|0;t=R+40|0;u=R+32|0;s=R+24|0;r=R+16|0;q=R+8|0;j=R;M=R+228|0;O=Hj(5300)|0;c[M>>2]=O;P=O;a:do if(!O)g=-12;else{Q=O+4|0;K=c[Q>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=K+5296|0;c[i>>2]=g;if(g>>>0>4096){gi(d,48,201722,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}DZ(K+1200|0,h|0,g|0)|0;p=ul(a,8)|0;g=tl(a)|0;h=tl(a)|0;i=tl(a)|0;j=tl(a)|0;k=tl(a)|0;n=tl(a)|0;Hl(a);o=ul(a,8)|0;J=rl(a)|0;b:do if(J>>>0>31){c[q>>2]=J;gi(d,16,200809,q)}else{c[K>>2]=J;c[K+1164>>2]=24;G=K+4|0;c[G>>2]=p;c[K+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|n<<5;E=K+8|0;c[E>>2]=o;c[K+112>>2]=-1;i=K+672|0;j=K+768|0;k=K+668|0;FZ(i|0,16,480)|0;c[k>>2]=0;c[K+128>>2]=2;switch(p|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=rl(a)|0;c[K+12>>2]=g;if(g>>>0>3){c[r>>2]=g;Zk(d,201755,r);break b}if((g|0)==3?(B=tl(a)|0,c[K+1192>>2]=B,B|0):0){gi(d,16,201776,s);break b}B=K+1184|0;c[B>>2]=(ql(a)|0)+8;g=ql(a)|0;h=g+8|0;c[K+1188>>2]=h;if((h|0)!=(c[B>>2]|0)){Zk(d,201817,u);break b}if(g>>>0>6){c[t>>2]=h;c[t+4>>2]=h;gi(d,16,201853,t);break b}c[K+16>>2]=tl(a)|0;g=yl(a,K,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[K+12>>2]=1;c[K+1184>>2]=8;c[K+1188>>2]=8}}g=ql(a)|0;if(g>>>0>12){c[v>>2]=g;gi(d,16,201887,v);break}c[K+20>>2]=g+4;g=rl(a)|0;v=K+24|0;c[v>>2]=g;c:do switch(g|0){case 0:{g=ql(a)|0;if(g>>>0>12){c[x>>2]=g;gi(d,16,201938,x);break b}else{c[K+28>>2]=g+4;break c}}case 1:{c[K+32>>2]=tl(a)|0;c[K+36>>2]=vl(a)|0;c[K+40>>2]=vl(a)|0;g=ql(a)|0;i=K+44|0;c[i>>2]=g;if(g>>>0>255){c[y>>2]=g;gi(d,16,201977,y);break b}else h=0;while(1){if((h|0)>=(g|0))break c;b[K+148+(h<<1)>>1]=vl(a)|0;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[w>>2]=g;gi(d,16,202007,w);break b}}while(0);g=rl(a)|0;t=K+48|0;c[t>>2]=g;y=(c[d+20>>2]|0)==844516691;B=(g|0)>2?g:2;c[t>>2]=y?B:g;g=y?B:g;if((g|0)>16){c[z>>2]=g;gi(d,16,202028,z);break}c[K+52>>2]=tl(a)|0;s=K+56|0;c[s>>2]=(ql(a)|0)+1;u=K+60|0;c[u>>2]=(ql(a)|0)+1;g=tl(a)|0;B=K+64|0;c[B>>2]=g;h=c[u>>2]|0;if(h>>>0>1073741822){gi(d,16,202058,A);break}c[u>>2]=N(h,2-g|0)|0;if(!g)g=tl(a)|0;else g=0;r=K+68|0;c[r>>2]=g;g=c[s>>2]|0;if((g>>>0<=134217726?(C=c[u>>2]|0,C>>>0<=134217726):0)?(hk(g<<4,C<<4,0,d)|0)==0:0){q=K+72|0;c[q>>2]=tl(a)|0;D=tl(a)|0;g=K+76|0;c[g>>2]=D;d:do if(!D){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=ql(a)|0;j=ql(a)|0;k=ql(a)|0;n=ql(a)|0;o=c[s>>2]<<4;p=c[u>>2]<<4;if(c[d+64>>2]&65536|0){c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=n;gi(d,48,202101,F);H=K+80|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;break}h=c[K+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[B>>2]|0)<<((h|0)==1&1);F=536870911>>>g;do if((!(i>>>0>F>>>0|j>>>0>F>>>0)?(F=536870911/(h>>>0)|0,!(k>>>0>F>>>0|n>>>0>F>>>0)):0)?j+i<>>0>>0:0){if((N(h,n+k|0)|0)>>>0>=p>>>0)break;c[K+80>>2]=i<>2]=j<>2]=N(h,k)|0;c[K+92>>2]=N(h,n)|0;break d}while(0);c[H>>2]=i;c[H+4>>2]=j;c[H+8>>2]=k;c[H+12>>2]=n;c[H+16>>2]=o;c[H+20>>2]=p;gi(d,16,202167,H);break b}while(0);H=tl(a)|0;i=K+96|0;c[i>>2]=H;if(H|0?(Il(a,d,K)|0)<0:0)break;g=Jl(a)|0;if((g|0)<0?(f=(f|0)!=0,c[I>>2]=c[i>>2]|0?202208:217951,c[I+4>>2]=0-g,gi(d,f?24:16,202212,I),!f):0)break;A=(c[K+660>>2]|0)==0;e:do if(A){if((c[t>>2]|0)==0?(c[d+568>>2]|0)<=0:0)break;h=K+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[164020+(g<<3)>>2]|0)==(c[E>>2]|0))break;g=g+1|0}I=(c[164020+(g<<3)+4>>2]|0)/(N(c[u>>2]|0,c[s>>2]|0)|0)|0;c[h>>2]=(I|0)<15?I:15}while(0);g=K+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+576>>2]&1|0){z=c[G>>2]|0;y=c[E>>2]|0;x=c[v>>2]|0;w=c[t>>2]|0;v=c[s>>2]|0;u=c[u>>2]|0;if(!(c[B>>2]|0))t=c[r>>2]|0?202236:202243;else t=202251;o=c[q>>2]|0?202255:332204;p=c[K+80>>2]|0;q=c[K+84>>2]|0;r=c[K+88>>2]|0;s=c[K+92>>2]|0;h=c[i>>2]|0?202208:332204;i=202259+((c[K+12>>2]|0)*5|0)|0;if(!(c[K+132>>2]|0)){k=0;n=0}else{k=c[K+136>>2]|0;n=c[K+140>>2]|0}j=c[K+1184>>2]|0;if(A)g=-1;else g=c[K+664>>2]|0;c[L>>2]=J;c[L+4>>2]=z;c[L+8>>2]=y;c[L+12>>2]=x;c[L+16>>2]=w;c[L+20>>2]=v;c[L+24>>2]=u;c[L+28>>2]=t;c[L+32>>2]=o;c[L+36>>2]=p;c[L+40>>2]=q;c[L+44>>2]=r;c[L+48>>2]=s;c[L+52>>2]=h;c[L+56>>2]=i;c[L+60>>2]=k;c[L+64>>2]=n;c[L+68>>2]=j;c[L+72>>2]=g;gi(d,48,202279,L)}g=e+(J<<2)|0;h=c[g>>2]|0;do if(h|0){if(VV(c[h+4>>2]|0,c[Q>>2]|0,c[O+8>>2]|0)|0)break;Ni(M);g=0;break a}while(0);Kl(e,J);c[g>>2]=P;g=0;break a}gi(d,16,202075,D)}while(0);Ni(M);g=-1094995529}while(0);l=R;return g|0}function bl(a,b,c){a=a|0;b=b|0;c=c|0;return Gl(a,b,c>>>0>268435455?-8:c<<3)|0}function cl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+128|0;if((l|0)>=(m|0))W(128);E=F+56|0;q=F+48|0;p=F+40|0;n=F+32|0;o=F+24|0;k=F+16|0;i=F+8|0;f=F;z=F+116|0;D=ql(a)|0;a:do if(D>>>0<=255){f=Hj(173836)|0;c[z>>2]=f;C=f;if(!f)f=-12;else{B=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=B+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;gi(b,48,200764,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}DZ(B+728|0,g|0,f|0)|0;f=rl(a)|0;c[B>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){x=c[j+4>>2]|0;y=x+1184|0;f=c[y>>2]|0;if((f|0)>14){c[o>>2]=f;gi(b,16,200833,o);f=-1094995529;break}switch(f|0){case 13:case 11:{c[n>>2]=f;sl(b,200860,n);f=-1163346256;break b}default:{}}v=B+4|0;c[v>>2]=tl(a)|0;c[B+8>>2]=tl(a)|0;u=ql(a)|0;w=B+12|0;c[w>>2]=u+1;if((u|0)>0){c[B+16>>2]=ql(a)|0;gi(b,16,200892,p)}t=B+20|0;c[t>>2]=(ql(a)|0)+1;s=ql(a)|0;u=B+24|0;c[u>>2]=s+1;if(((c[t>>2]|0)+-1|s)>>>0>31){gi(b,16,200911,q);f=-1094995529;break}s=(c[y>>2]|0)*6|0;k=B+28|0;c[k>>2]=tl(a)|0;c[B+32>>2]=ul(a,2)|0;s=s+-22|0;n=B+36|0;c[n>>2]=s+(vl(a)|0);o=B+40|0;c[o>>2]=s+(vl(a)|0);s=vl(a)|0;j=B+44|0;c[j>>2]=s;if((s+12|0)>>>0>24)f=-1094995529;else{p=B+52|0;c[p>>2]=tl(a)|0;q=B+56|0;c[q>>2]=tl(a)|0;r=B+60|0;c[r>>2]=tl(a)|0;s=B+64|0;c[s>>2]=0;i=B+68|0;f=i;g=x+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=B+164|0;DZ(f|0,x+768|0,384)|0;if((wl(a)|0)<(e|0)?(xl(x,b)|0)!=0:0){c[s>>2]=tl(a)|0;f=yl(a,x,B,0,i,f)|0;if((f|0)<0)break;a=vl(a)|0;h=B+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=B+48|0;c[h>>2]=f}zl(B,0,f,c[y>>2]|0);zl(B,1,c[h>>2]|0,c[y>>2]|0);Al(B,x);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[B+724>>2]=1;if(c[b+576>>2]&1|0){h=c[B>>2]|0;i=c[v>>2]|0?200937:200943;j=c[w>>2]|0;v=c[t>>2]|0;w=c[u>>2]|0;x=c[k>>2]|0?200949:332204;y=c[n>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0?200958:332204;z=c[q>>2]|0?200963:332204;A=c[r>>2]|0?200970:332204;B=c[s>>2]|0?200975:332204;c[E>>2]=D;c[E+4>>2]=h;c[E+8>>2]=i;c[E+12>>2]=j;c[E+16>>2]=v;c[E+20>>2]=w;c[E+24>>2]=x;c[E+28>>2]=y;c[E+32>>2]=e;c[E+36>>2]=g;c[E+40>>2]=f;c[E+44>>2]=a;c[E+48>>2]=z;c[E+52>>2]=A;c[E+56>>2]=B;gi(b,48,200982,E)}Bl(d,D);c[d+128+(D<<2)>>2]=C;f=0;break a}}else A=8;while(0);if((A|0)==8){c[k>>2]=f;gi(b,16,200809,k);f=-1094995529}Ni(z)}}else{c[f>>2]=D;gi(b,16,220457,f);f=-1094995529}while(0);l=F;return f|0}function dl(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function el(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;$=l;l=l+80|0;if((l|0)>=(m|0))W(80);D=$+64|0;v=$+48|0;u=$+40|0;t=$+32|0;s=$+24|0;r=$+16|0;o=$+8|0;n=$;S=f+568|0;p=c[S>>2]|0;V=f+560|0;q=c[V>>2]|0;a:do if((((c[(c[f>>2]|0)+572>>2]|0?(k=f+572|0,c[k>>2]|0):0)?(c[(c[f>>2]|0)+680>>2]|0)==0:0)?fl(f)|0:0)?(U=f+556|0,j=c[U>>2]|0,h=c[f>>2]|0,(c[k>>2]|0)!=(N(j*3|0,(c[h+272>>2]|0)+(c[h+268>>2]|0)|0)|0)):0){g=f+672|0;E=c[g>>2]|0;X=E+32|0;_=f+580|0;Y=f+564|0;i=0;while(1){if((i|0)>=(j|0))break;if((a[(c[_>>2]|0)+((N((c[V>>2]|0)+-1|0,c[Y>>2]|0)|0)+i)>>0]|0)!=127)break;i=i+1|0}if(((i|0)==(j|0)?(c[h+16>>2]|0)==2:0)?((c[h+96>>2]|0)+15&16|0)!=0:0){h=c[f>>2]|0;if((c[k>>2]|0)==(N((c[U>>2]|0)*3|0,(c[h+268>>2]|0)+1+(c[h+272>>2]|0)|0)|0)){gi(h,48,198051,n);break}}C=f+704|0;i=c[C>>2]|0;do if(i|0){Q=c[g>>2]|0;if(((c[i+68>>2]|0)==(c[Q+68>>2]|0)?(c[i+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[i+80>>2]|0)==(c[Q+80>>2]|0):0)break;gi(h,24,198080,o);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;c[C+24>>2]=0;c[C+28>>2]=0}while(0);B=f+736|0;h=c[B>>2]|0;do if(h|0){Q=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[Q+68>>2]|0)?(c[h+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[h+80>>2]|0)==(c[Q+80>>2]|0):0)break;gi(c[f>>2]|0,24,198130,r);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;c[B+24>>2]=0;c[B+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))T=27;b:do if((T|0)==27){gi(c[f>>2]|0,16,198176,s);i=(N(p<<3,q)|0)+16|0;h=0;while(1){if((h|0)>=2)break b;k=f+768+(h<<2)|0;c[k>>2]=Hj(N(c[Y>>2]<<2,c[V>>2]|0)|0)|0;j=Hj(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0){g=0;break}c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}while(1){if((g|0)==2)break a;Ni(f+768+(g<<2)|0);Ni(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+576>>2]&1024|0){h=0;while(1){if((h|0)<(c[V>>2]|0))i=0;else break c;while(1){if((i|0)>=(c[U>>2]|0))break;P=d[(c[_>>2]|0)+((N(c[Y>>2]|0,h)|0)+i)>>0]|0;Q=c[f>>2]|0;c[t>>2]=P;gi(Q,48,198203,t);i=i+1|0}gi(c[f>>2]|0,48,198208,u);h=h+1|0}}while(0);P=f+552|0;Q=f+548|0;n=1;while(1){if((n|0)==4)break;p=9<>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=d[j>>0]|0;h=(p&k|0)==0?i:1;if(!h)a[j>>0]=q|k;i=(k&1|0)==0?h:0;h=o}n=n+1|0}O=f+792|0;d:do if(c[O>>2]|0){i=0;h=c[P>>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break d;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=a[j>>0]|0;n=k&255;h=(n&98|0)==0?((n&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(n&1|0)==0?h:0;h=o}}while(0);e:do if(c[(c[f>>2]|0)+580>>2]&8|0){h=1;n=(c[P>>2]|0)+-2|0;while(1){if((n|0)<((c[U>>2]|0)+100|0))break e;M=c[Q>>2]|0;L=c[_>>2]|0;i=L+(c[M+(n<<2)>>2]|0)|0;j=a[i>>0]|0;k=j&255;h=(k&1|0)==0?h:1;if(j<<24>>24!=127?(a[L+(c[M+(n+1<<2)>>2]|0)>>0]|0)==127:0){if((k&112|0)!=0|(h|0)==0)T=60}else if(!h)T=60;if((T|0)==60){T=0;a[i>>0]=j|14;h=0}n=n+-1|0}}while(0);M=f+600|0;h=9999999;n=1;while(1){if((n|0)==4){h=0;n=0;break}o=1<>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;L=c[(c[Q>>2]|0)+(k<<2)>>2]|0;i=(c[_>>2]|0)+L|0;j=d[i>>0]|0;K=c[M>>2]|0;if(!((K|0)!=0?(a[K+L>>0]|0)!=0:0))h=h+1|0;h=(o&j|0)==0?h:0;do if(!(c[O>>2]|0)){if((h|0)>=50)break;a[i>>0]=o|j}else{if((h|0)>=(c[p>>2]|0))break;a[i>>0]=o|j}while(0);h=(j&1|0)==0?h:9999999;i=k}n=n+1|0}while(1){j=c[P>>2]|0;if((n|0)>=(j|0))break;i=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;n=n+1|0}f:do if(!(c[O>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(i<<2)>>2]|0)|0;L=d[h>>0]|0;a[h>>0]=(L&14|0)==0?L:L|14;i=i+1|0;h=c[P>>2]|0}}else h=j;while(0);i=0;j=0;k=0;n=0;while(1){if((n|0)>=(h|0))break;L=d[(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)>>0]|0;i=(L>>>2&1)+i|0;j=(L>>>3&1)+j|0;k=(L>>>1&1)+k|0;n=n+1|0}L=c[f>>2]|0;K=(gl(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[v>>2]=i;c[v+4>>2]=k;c[v+8>>2]=j;c[v+12>>2]=K;gi(L,32,198210,v);j=(hl(f)|0)!=0;j=j?1:12296;L=f+696|0;i=0;while(1){h=c[P>>2]|0;if((i|0)>=(h|0))break;h=c[(c[Q>>2]|0)+(i<<2)>>2]|0;if((a[(c[_>>2]|0)+h>>0]&12)==12)c[(c[L>>2]|0)+(h<<2)>>2]=j;i=i+1|0}K=c[C>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))T=92;g:do if((T|0)==92){K=c[B>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)break;else j=0;while(1){if((j|0)>=(h|0))break g;i=(c[L>>2]|0)+(c[(c[Q>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[P>>2]|0}j=j+1|0}}while(0);w=f+608|0;x=f+612|0;y=f+800|0;z=f+804|0;A=f+608|0;r=0;while(1){h=c[V>>2]|0;if((r|0)>=(h|0))break;q=r<<1;p=0;while(1){if((p|0)>=(c[U>>2]|0))break;i=(N(c[Y>>2]|0,r)|0)+p|0;j=c[(c[L>>2]|0)+(i<<2)>>2]|0;h=c[C>>2]|0;if(!h)h=0;else h=(c[h>>2]|0)!=0;k=(h^1)&1;o=h?1:2;K=d[(c[_>>2]|0)+i>>0]|0;if(!((K&2|0)==0|(K&8|j&7|0)!=0)){h:do if(!(j&64)){K=f+680+(k<<2)|0;h=(N(c[S>>2]|0,q)|0)+(p<<1)|0;c[w>>2]=b[(c[K>>2]|0)+(h<<2)>>1];c[x>>2]=b[(c[K>>2]|0)+(h<<2)+2>>1];h=0}else{j=c[S>>2]|0;n=(N(j,r)|0)+p<<1;i=f+680+(k<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}J=h&1|n;I=h>>1;c[f+608+(h<<3)>>2]=b[(c[i>>2]|0)+((N(j,I)|0)+J<<2)>>1];K=c[S>>2]|0;c[f+608+(h<<3)+4>>2]=b[(c[i>>2]|0)+((N(K,I)|0)+J<<2)+2>>1];h=h+1|0;j=K}}while(0);Zd[c[y>>2]&1](c[z>>2]|0,0,o,h,A,p,r,0,0)}p=p+1|0}r=r+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){q=f+784|0;r=f+640|0;s=f+644|0;t=f+786|0;u=f+740|0;v=f+744|0;p=0;j:while(1){if((p|0)>=(h|0)){R=h;break i}o=p<<1;n=0;while(1){if((n|0)>=(c[U>>2]|0))break;k=(N(o,c[S>>2]|0)|0)+(n<<1)|0;K=(N(c[Y>>2]|0,p)|0)+n|0;if(!((a[(c[_>>2]|0)+K>>0]&10)!=10?1:(c[(c[L>>2]|0)+(K<<2)>>2]&7|0)!=0)){K=c[C>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)h=3;else h=2;K=c[B>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))h=h&1;i=b[q>>1]|0;if(!(i<<16>>16)){c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;i=0}else{i=i&65535;j=e[t>>1]|0;if((c[(c[f>>2]|0)+16>>2]|0)==27)break j;il(c[u>>2]|0,p,0);K=c[v>>2]|0;I=b[K+(k<<2)>>1]|0;c[w>>2]=(N(I,j)|0)/(i|0)|0;K=b[K+(k<<2)+2>>1]|0;c[x>>2]=(N(K,j)|0)/(i|0)|0;J=j-i|0;c[r>>2]=(N(J,I)|0)/(i|0)|0;i=(N(J,K)|0)/(i|0)|0}c[s>>2]=i;Zd[c[y>>2]&1](c[z>>2]|0,0,h,0,A,n,p,0,0)}n=n+1|0}p=p+1|0;h=c[V>>2]|0}c[D>>2]=198261;c[D+4>>2]=198300;c[D+8>>2]=1212;gi(0,0,229320,D);Tb()}else{jl(f);R=c[V>>2]|0}while(0);K=E+36|0;J=E+40|0;B=f+588|0;C=f+592|0;D=f+596|0;z=0;while(1){if((z|0)>=(R|0))break;E=z<<4;F=z<<3;A=0;while(1){if((A|0)>=(c[U>>2]|0))break;G=(N(c[Y>>2]|0,z)|0)+A|0;if(!((c[(c[L>>2]|0)+(G<<2)>>2]&7|0)!=0?(c[O>>2]|0)!=0:0))T=140;do if((T|0)==140){T=0;y=c[g>>2]|0;n=c[X>>2]|0;o=(c[y>>2]|0)+(A<<4)+(N(E,n)|0)|0;p=c[y+4>>2]|0;w=A<<3;H=c[K>>2]|0;q=N(H,F)|0;y=c[y+8>>2]|0;I=c[J>>2]|0;x=N(I,F)|0;r=c[S>>2]|0;s=(c[B>>2]|0)+((N(r,z)|0)+A<<1<<1)|0;j=0;while(1){if((j|0)==4)break;t=j<<3&8;u=j>>>1<<3;k=0;h=0;while(1){if((k|0)==8)break;v=N(n,k+u|0)|0;i=0;while(1){if((i|0)==8)break;aa=h+(d[o+(i+t+v)>>0]|0)|0;i=i+1|0;h=aa}k=k+1|0}b[s+((N(r,j>>1)|0)+(j&1)<<1)>>1]=(h+4|0)>>>3;j=j+1|0}q=p+w+q|0;p=y+w+x|0;if(!y)break;else{h=0;i=0;k=0}while(1){if((k|0)==8)break;n=N(H,k)|0;o=N(I,k)|0;j=0;while(1){if((j|0)==8)break;aa=i+(d[q+(n+j)>>0]|0)|0;y=h+(d[p+(o+j)>>0]|0)|0;j=j+1|0;h=y;i=aa}k=k+1|0}b[(c[C>>2]|0)+(G<<1)>>1]=(i+4|0)>>>3;b[(c[D>>2]|0)+(G<<1)>>1]=(h+4|0)>>>3}while(0);A=A+1|0}z=z+1|0}kl(f,c[B>>2]|0,c[U>>2]<<1,R<<1,c[S>>2]|0,1);kl(f,c[C>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);kl(f,c[D>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);ll(c[B>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[S>>2]|0);n=0;while(1){h=c[V>>2]|0;if((n|0)>=(h|0))break;i=n<<4;j=n<<3;h=0;while(1){if((h|0)>=(c[U>>2]|0))break;k=(N(c[Y>>2]|0,n)|0)+h|0;do if(!(c[(c[L>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[_>>2]|0)+k>>0]&2))break;T=c[g>>2]|0;R=(c[T>>2]|0)+(h<<4)+(N(i,c[X>>2]|0)|0)|0;aa=h<<3;S=(c[T+4>>2]|0)+aa+(N(c[K>>2]|0,j)|0)|0;T=c[T+8>>2]|0;aa=T+aa+(N(c[J>>2]|0,j)|0)|0;T=(T|0)==0;ml(f,R,T?0:S,T?0:aa,h,n)}while(0);h=h+1|0}n=n+1|0}if(c[(c[f>>2]|0)+572>>2]&2|0?(nl(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,h<<1,c[X>>2]|0,1),ol(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[X>>2]|0,1),Z=c[g>>2]|0,c[Z+8>>2]|0):0){nl(f,c[Z+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);nl(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0);ol(f,c[(c[g>>2]|0)+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);ol(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[P>>2]|0)){h=0;break}k=c[(c[Q>>2]|0)+(i<<2)>>2]|0;h=c[M>>2]|0;do if(h|0){if((a[(c[_>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}while(1){if((h|0)==2)break;Ni(f+768+(h<<2)|0);Ni(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);l=$;return}function fl(a){a=a|0;var b=0,d=0;d=c[(c[a>>2]|0)+592>>2]|0;if(!((d|0)!=0?(c[d+32>>2]|0)!=0:0))b=3;if((b|0)==3?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function gl(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function hl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+572>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if((e|0)>=5){l=(e|0)>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+8|0;r=b+708|0;s=b+696|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(N(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[s>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=N(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+16>>2]|0)!=27){il(c[r>>2]|0,k,0);f=c[h>>2]|0}w=(Pd[c[q>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-(Pd[c[q>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;f=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){e=c[a>>2]|0;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;gi(e,48,200727,h)}e=f+184|0;HZ(e|0)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;wc(a|0,e|0)|0}IZ(e|0)|0}l=j;return}function jl(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ma=l;l=l+128|0;if((l|0)>=(m|0))W(128);ia=ma;Z=ma+116|0;_=ma+112|0;aa=ma+48|0;ba=ma+16|0;la=e+564|0;ga=c[la>>2]|0;t=e+556|0;ha=c[t>>2]|0;h=c[e+560>>2]|0;s=e+704|0;f=c[s>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ka=(c[g+72>>2]|0)+15>>4;ka=(f|0)>(ka|0)?ka:f}else ka=f;x=c[e+584>>2]|0;U=N(h,ga)|0;y=x+(U<<3)|0;U=y+(U<<3)|0;pl(e,Z,_);i=e+712|0;if(c[i>>2]|0)il(c[e+708>>2]|0,ka+-1|0,0);V=N(ka,ha)|0;j=e+548|0;q=e+580|0;r=e+696|0;k=c[_>>2]|0;n=c[Z>>2]|0;X=e+680|0;o=e+720|0;Y=e+688|0;h=0;f=0;while(1){if((h|0)>=(V|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;T=(a[(c[q>>2]|0)+g>>0]&8)==0?8:(c[(c[r>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[U+g>>0]=T;if((T|0)!=8){if((c[c[s>>2]>>2]|0)!=0?(p=c[i>>2]|0,(p|0)!=0):0){T=c[la>>2]|0;T=N((N(k,(g|0)/(T|0)|0)|0)+((g|0)%(T|0)|0)|0,n)|0;S=c[X>>2]|0;b[S+(T<<2)>>1]=b[p+(T<<2)>>1]|0;b[S+(T<<2)+2>>1]=b[p+(T<<2)+2>>1]|0;T=g<<2;a[(c[Y>>2]|0)+T>>0]=a[(c[o>>2]|0)+T>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((f|0)>((ha|0)/2|0|0)?(c[(c[e>>2]|0)+572>>2]&1|0)!=0:0){f=0;j=0;b:while(1){if((j|0)>=(ka|0))break;k=N(j,ga)|0;n=(j|0)==0;o=j+1|0;p=(o|0)<(ka|0);q=j+-1|0;g=0;while(1){while(1){if((g|0)>=(ha|0)){j=o;continue b}h=g+k|0;if((a[U+h>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(u=U+(h+-1)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[x+(f<<3)>>2]=g+-1;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!n?(v=U+(h-ga)|0,(a[v>>0]|0)==0):0){a[v>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=q;f=f+1|0}i=g+1|0;if((i|0)<(ha|0)?(w=U+(h+1)|0,(a[w>>0]|0)==0):0){a[w>>0]=1;c[x+(f<<3)>>2]=i;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!p){g=i;continue}h=U+(h+ga)|0;if(a[h>>0]|0){g=i;continue}a[h>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=o;g=i;f=f+1|0}}P=aa+4|0;Q=e+672|0;R=e+608|0;S=e+612|0;T=e+800|0;O=e+804|0;M=f;while(1){f=1;L=0;g=1;while(1){if(!((L|0)<10&((L|0)<2|(f|0)!=0)))break;K=(L|0)>1;J=0;f=0;while(1){if((J|0)>=(M|0))break;G=c[x+(J<<3)>>2]|0;H=c[x+(J<<3)+4>>2]|0;I=(N(H,ga)|0)+G|0;c:do if(!((G^L^H)&1)){B=(G|0)>0;if(B)h=d[U+(I+-1)>>0]|0;else h=0;C=(G+1|0)<(ha|0);if(C)h=h|d[U+(I+1)>>0];A=(H|0)>0;if(A)h=h|d[U+(I-ga)>>0];z=(H+1|0)<(ka|0);if(z)h=h|d[U+(I+ga)>>0];if(!(K&(h&4|0)==0)){D=c[_>>2]|0;F=(N(D,H)|0)+G|0;E=c[Z>>2]|0;F=N(F,E)|0;if(B?($=I+-1|0,(d[U+$>>0]|0)>1):0){e=c[X>>2]|0;g=F-E|0;c[aa>>2]=b[e+(g<<2)>>1];c[P>>2]=b[e+(g<<2)+2>>1];c[ba>>2]=a[(c[Y>>2]|0)+($<<2)>>0];g=1}else g=0;do if(C){h=I+1|0;if((d[U+h>>0]|0)<=1)break;w=c[X>>2]|0;e=E+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(A){if((d[U+(I-ga)>>0]|0)<=1)break;w=c[X>>2]|0;e=F-(N(E,D)|0)|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(I-(c[la>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(z){if((d[U+(I+ga)>>0]|0)<=1){ja=73;break}w=c[X>>2]|0;e=(N(E,D)|0)+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+((c[la>>2]|0)+I<<2)>>0];g=g+1|0}else ja=73;while(0);if((ja|0)==73){ja=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[aa+(k<<3)>>2]|0)+j|0;i=(c[aa+(k<<3)+4>>2]|0)+i|0;e=c[ba+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[ba+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[aa+(g<<3)>>2]=(j|0)/(k|0)|0;c[aa+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[ba+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;n=k?-99999:0;k=k?99999:0;r=k;s=n;p=k;q=n;o=0;while(1){if((o|0)==(g|0))break;e=c[aa+(o<<3)>>2]|0;w=c[aa+(o<<3)+4>>2]|0;v=c[ba+(o<<2)>>2]|0;r=(r|0)>(v|0)?v:r;s=(s|0)>(v|0)?s:v;p=(p|0)>(w|0)?w:p;k=(k|0)>(e|0)?e:k;q=(q|0)>(w|0)?q:w;n=(n|0)>(e|0)?n:e;o=o+1|0}n=j-n-k|0;e=g+1|0;o=aa+(e<<3)|0;c[o>>2]=n;j=i-q-p|0;k=aa+(e<<3)+4|0;c[k>>2]=j;h=h-s-r|0;i=ba+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[o>>2]=(n|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[ba+(g<<2)>>2]=0;c[aa+(g<<3)+4>>2]=0;c[aa+(g<<3)>>2]=0;o=g+1|0;e=c[X>>2]|0;w=b[e+(F<<2)>>1]|0;e=b[e+(F<<2)+2>>1]|0;p=a[(c[Y>>2]|0)+(I<<2)>>0]|0;c[aa+(o<<3)>>2]=w;c[aa+(o<<3)+4>>2]=e;c[ba+(o<<2)>>2]=p;o=g+2|0;p=G<<4;q=H<<4;r=U+(I+-1)|0;s=U+(I+1)|0;t=U+(I-ga)|0;u=U+(I+ga)|0;v=0;g=1073741824;n=0;while(1){if((n|0)>=(o|0))break;k=c[Q>>2]|0;j=k+32|0;k=(c[k>>2]|0)+p+(N(q,c[j>>2]|0)|0)|0;i=c[aa+(n<<3)>>2]|0;c[R>>2]=i;h=c[X>>2]|0;b[h+(F<<2)>>1]=i;i=c[aa+(n<<3)+4>>2]|0;c[S>>2]=i;b[h+(F<<2)+2>>1]=i;h=c[ba+(n<<2)>>2]|0;if((h|0)<0)h=v;else{Zd[c[T>>2]&1](c[O>>2]|0,h,1,0,R,G,H,0,0);e:do if(B){if((d[r>>0]|0)>1){h=0;i=0}else{i=0;break}while(1){if((h|0)==16)break e;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+-1)>>0]|0)-(d[k+na>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}else i=0;while(0);f:do if(C){if((d[s>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break f;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+15)>>0]|0)-(d[k+(na+16)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);g:do if(A){if((d[t>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break g;na=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);h:do if(z){if((d[u>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break h;na=c[j>>2]|0;na=(d[k+((na*15|0)+h)>>0]|0)-(d[k+((na<<4)+h)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);na=(i|0)>(g|0);h=na?v:n;g=na?g:i}v=h;n=n+1|0}i=c[aa+(v<<3)>>2]|0;c[R>>2]=i;j=c[aa+(v<<3)+4>>2]|0;c[S>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(E|0))break;k=g+F|0;h=0;while(1){if((h|0)==(E|0))break;C=c[X>>2]|0;na=(N(D,h)|0)+k|0;b[C+(na<<2)>>1]=i;b[C+(na<<2)+2>>1]=j;h=h+1|0}g=g+1|0}Zd[c[T>>2]&1](c[O>>2]|0,c[ba+(v<<2)>>2]|0,1,0,R,G,H,0,0);do if((c[R>>2]|0)==(w|0)){if((c[S>>2]|0)!=(e|0))break;a[U+I>>0]=2;g=0;break c}while(0);a[U+I>>0]=4;g=0;f=f+1|0}}while(0);J=J+1|0}L=L+1|0}if(!g){f=0;k=0}else break a;while(1){if((k|0)>=(M|0))break;i=c[x+(k<<3)>>2]|0;h=c[x+(k<<3)+4>>2]|0;j=(N(h,ga)|0)+i|0;g=U+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?(ca=U+(j+-1)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[y+(f<<3)>>2]=i+-1;c[y+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(da=U+(j-ga)|0,(a[da>>0]|0)==0):0){a[da>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(ha|0)?(ea=U+(j+1)|0,(a[ea>>0]|0)==0):0){a[ea>>0]=1;c[y+(f<<3)>>2]=g;c[y+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ka|0)?(fa=U+(j+ga)|0,(a[fa>>0]|0)==0):0){a[fa>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(V|0))break;else{na=y;M=f;y=x;x=na}}c[ia>>2]=200681;c[ia+4>>2]=198300;c[ia+8>>2]=716;gi(0,0,229320,ia);Tb()}else{k=e+608|0;n=e+612|0;o=e+800|0;i=e+804|0;h=0;while(1){if((h|0)<(ka|0))g=0;else break a;while(1){if((g|0)>=(c[t>>2]|0))break;j=(N(c[la>>2]|0,h)|0)+g|0;f=c[s>>2]|0;if(!f)f=2;else f=c[f>>2]|0?1:2;if((c[(c[r>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[q>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[n>>2]=0;Zd[c[o>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);l=ma;return}function kl(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=C;A=C+8|0;B=C+4|0;z=Xj(h,g<<3)|0;c[A>>2]=z;x=Xj(h,g<<4)|0;c[B>>2]=x;a:do if((x|0)!=0&(z|0)!=0){x=d+564|0;z=d+696|0;w=d+580|0;p=0;while(1){if((p|0)>=(g|0)){p=0;break}q=p>>i;r=N(p,h)|0;n=0;j=1024;d=-1;while(1){if((n|0)>=(f|0)){k=f;j=1024;d=-1;break}v=(N(c[x>>2]|0,q)|0)+(n>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=n+r|0;else{k=n+r|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+2>>1]=j;c[(c[B>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,q)|0)+(o>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=o+r|0}else{j=o+r|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)>>1]=n;c[(c[B>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((p|0)>=(f|0)){k=0;break}q=p>>i;j=1024;d=-1;n=0;while(1){if((n|0)>=(g|0)){k=g;j=1024;d=-1;break}v=(N(c[x>>2]|0,n>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=(N(n,h)|0)+p|0;else{k=(N(n,h)|0)+p|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+6>>1]=j;c[(c[B>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,o>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=(N(o,h)|0)+p|0}else{j=(N(o,h)|0)+p|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)+4>>1]=n;c[(c[B>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((k|0)>=(g|0))break a;n=k>>i;o=N(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;v=(N(c[x>>2]|0,n)|0)+(d>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&120|0)==0?a[(c[w>>2]|0)+v>>0]&4:0){p=c[B>>2]|0;q=d+o|0;r=c[A>>2]|0;j=0;s=0;t=0;u=0;v=0;while(1){if((j|0)==4)break;D=c[p+(q<<4)+(j<<2)>>2]|0;D=268435456/((D>>>0>1?D:1)>>>0)|0;F=b[r+(q<<3)+(j<<1)>>1]|0;F=uZ(F|0,((F|0)<0)<<31>>31|0,D|0,0)|0;F=oZ(F|0,y|0,s|0,t|0)|0;E=y;D=oZ(u|0,v|0,D|0,0)|0;j=j+1|0;s=F;t=E;u=D;v=y}F=sZ(u|0,v|0,2,0)|0;F=oZ(F|0,y|0,s|0,t|0)|0;F=sZ(F|0,y|0,u|0,v|0)|0;b[e+(q<<1)>>1]=F}d=d+1|0}k=k+1|0}}else gi(c[d>>2]|0,16,200652,j);while(0);ci(A);ci(B);l=C;return}function ll(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0)){c=1;break}g=N(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;b[l>>1]=((((j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;j=a+((N(f,e)|0)+c<<1)|0;k=b[j>>1]|0;l=f+1|0;b[j>>1]=((((k<<3)-d-(b[a+((N(l,e)|0)+c<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=l}c=c+1|0}return}function ml(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>1;p=b[(c[u>>2]|0)+((N(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)>>1]|0;p=p<<16>>16>0?((p<<16>>16<2040?p:2040)&65535)>>>3&255:0;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;a[e+(j+q+(N(c[t>>2]|0,s)|0))>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(N(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;a:do if(g|0){m=j<<16>>16>0?((j<<16>>16<2040?j:2040)&65535)>>>3&255:0;n=v+36|0;e=k<<16>>16>0?((k<<16>>16<2040?k:2040)&65535)>>>3&255:0;l=v+40|0;k=0;while(1){if((k|0)==8)break a;else j=0;while(1){if((j|0)==8)break;a[f+((N(c[n>>2]|0,k)|0)+j)>>0]=m;a[g+((N(c[l>>2]|0,k)|0)+j)>>0]=e;j=j+1|0}k=k+1|0}}while(0);return}function nl(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0;Q=l;l=l+16|0;if((l|0)>=(m|0))W(16);O=Q+4|0;J=Q;pl(e,O,J);P=c[O>>2]>>j;c[O>>2]=P;O=N(c[J>>2]|0,P)|0;c[J>>2]=O;J=g+-1|0;K=e+580|0;L=e+564|0;M=e+696|0;E=e+680|0;D=0;while(1){if((D|0)>=(h|0))break;F=D>>j;G=N(D,i)|0;H=N(O,D)|0;g=0;a:while(1){if((g|0)>=(J|0))break;z=c[K>>2]|0;n=N(c[L>>2]|0,F)|0;k=n+(g>>j)|0;A=a[z+k>>0]|0;I=g+1|0;n=n+(I>>j)|0;z=a[z+n>>0]|0;o=c[M>>2]|0;q=g+G<<3;p=c[E>>2]|0;g=(N(P,g)|0)+H|0;e=(N(P,I)|0)+H|0;B=(A&14)!=0;C=(z&14)!=0;if(!((z|A)&14)){g=I;continue}if(((c[o+(k<<2)>>2]|c[o+(n<<2)>>2])&7|0)==0?(A=(b[p+(g<<2)>>1]|0)-(b[p+(e<<2)>>1]|0)|0,z=(b[p+(e<<2)+2>>1]|0)+(b[p+(g<<2)+2>>1]|0)|0,(((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)|0)<2):0){g=I;continue}t=q|7;u=q|6;v=q+8|0;w=q+9|0;A=B&C;x=q|5;y=q|4;z=q+10|0;n=q+11|0;e=0;while(1){if((e|0)==8){g=I;continue a}o=N(e,i)|0;p=f+(o+t)|0;q=d[p>>0]|0;r=f+(o+u)|0;S=q-(d[r>>0]|0)|0;s=f+(v+o)|0;g=d[s>>0]|0;R=g-q|0;k=f+(w+o)|0;g=(d[k>>0]|0)-g|0;g=((R|0)>-1?R:0-R|0)-(((S|0)>-1?S:0-S|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(R|0)<0?0-g|0:g;if(g|0){g=A?g:(g<<4|0)/9|0;if(B){a[p>>0]=a[199354+((g*7>>4)+q)>>0]|0;a[r>>0]=a[199354+((g*5>>4)+(d[r>>0]|0))>>0]|0;S=f+(o+x)|0;a[S>>0]=a[199354+((g*3>>4)+(d[S>>0]|0))>>0]|0;S=f+(o+y)|0;a[S>>0]=a[199354+((g>>4)+(d[S>>0]|0))>>0]|0}if(C){a[s>>0]=a[199354+((d[s>>0]|0)-(g*7>>4))>>0]|0;a[k>>0]=a[199354+((d[k>>0]|0)-(g*5>>4))>>0]|0;S=f+(z+o)|0;a[S>>0]=a[199354+((d[S>>0]|0)-(g*3>>4))>>0]|0;S=f+(n+o)|0;a[S>>0]=a[199354+((d[S>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}D=D+1|0}l=Q;return} -function Ng(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,j=0;i=Jf(22736)|0;FZ(i|0,0,22736)|0;f=Jf(24)|0;a[f+4>>0]=12;a[f+5>>0]=8;a[f+6>>0]=4;a[f+7>>0]=4;a[f+8>>0]=4;a[f+1>>0]=8;a[f+2>>0]=2;a[f+3>>0]=2;a[f>>0]=e;h=Jf(((e&255)<<3)+96|0)|0;c[f+12>>2]=h;FZ(h|0,0,(d[f>>0]<<3)+96|0)|0;h=f+16|0;c[h>>2]=Jf(20)|0;b=Jf(d[f>>0]<<3)|0;c[c[h>>2]>>2]=b;FZ(c[c[h>>2]>>2]|0,0,d[f>>0]<<3|0)|0;b=Jf(d[f>>0]<<3)|0;c[(c[h>>2]|0)+4>>2]=b;FZ(c[(c[h>>2]|0)+4>>2]|0,0,d[f>>0]<<3|0)|0;b=Jf(d[f>>0]<<3)|0;c[(c[h>>2]|0)+8>>2]=b;FZ(c[(c[h>>2]|0)+8>>2]|0,0,d[f>>0]<<3|0)|0;b=Jf(d[f>>0]<<3)|0;c[(c[h>>2]|0)+12>>2]=b;FZ(c[(c[h>>2]|0)+12>>2]|0,0,d[f>>0]<<3|0)|0;b=Jf(d[f>>0]<<3)|0;c[(c[h>>2]|0)+16>>2]=b;FZ(c[(c[h>>2]|0)+16>>2]|0,0,d[f>>0]<<3|0)|0;h=f+20|0;c[h>>2]=Jf(d[f>>0]<<2)|0;if(a[f>>0]|0){b=0;do{j=Jf(96)|0;c[(c[h>>2]|0)+((b&255)<<2)>>2]=j;b=b+1<<24>>24}while((b&255)<(d[f>>0]|0))}c[i+720>>2]=f;a[i+725>>0]=e;a[i+718>>0]=0;a[i+740>>0]=0;b=i+811|0;f=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));a[i+741>>0]=0;a[i+744>>0]=3;a[i+742>>0]=0;a[i+745>>0]=4;a[i+743>>0]=0;a[i+746>>0]=5;a[i+729>>0]=22;g[i+20076>>2]=.765928328037262;g[i+20080>>2]=.25;b=i+747|0;f=b+35|0;do{a[b>>0]=14;b=b+1|0}while((b|0)<(f|0));b=i+782|0;f=b+29|0;do{a[b>>0]=1;b=b+1|0}while((b|0)<(f|0));g[i+20492>>2]=1.0;g[i+20896>>2]=1.0;g[i+20500>>2]=1.0;g[i+20904>>2]=1.0;g[i+20508>>2]=1.0;g[i+20912>>2]=1.0;g[i+20516>>2]=1.0;g[i+20920>>2]=1.0;g[i+20524>>2]=1.0;g[i+20928>>2]=1.0;g[i+20532>>2]=1.0;g[i+20936>>2]=1.0;g[i+20540>>2]=1.0;g[i+20944>>2]=1.0;g[i+20548>>2]=1.0;g[i+20952>>2]=1.0;g[i+20556>>2]=1.0;g[i+20960>>2]=1.0;g[i+20564>>2]=1.0;g[i+20968>>2]=1.0;g[i+20572>>2]=1.0;g[i+20976>>2]=1.0;g[i+20580>>2]=1.0;g[i+20984>>2]=1.0;g[i+20588>>2]=1.0;g[i+20992>>2]=1.0;g[i+20596>>2]=1.0;g[i+21e3>>2]=1.0;g[i+20604>>2]=1.0;g[i+21008>>2]=1.0;g[i+20612>>2]=1.0;g[i+21016>>2]=1.0;g[i+20620>>2]=1.0;g[i+21024>>2]=1.0;g[i+20628>>2]=1.0;g[i+21032>>2]=1.0;g[i+20636>>2]=1.0;g[i+21040>>2]=1.0;g[i+20644>>2]=1.0;g[i+21048>>2]=1.0;g[i+20652>>2]=1.0;g[i+21056>>2]=1.0;g[i+20660>>2]=1.0;g[i+21064>>2]=1.0;g[i+20668>>2]=1.0;g[i+21072>>2]=1.0;g[i+20676>>2]=1.0;g[i+21080>>2]=1.0;g[i+20684>>2]=1.0;g[i+21088>>2]=1.0;g[i+20692>>2]=1.0;g[i+21096>>2]=1.0;g[i+20700>>2]=1.0;g[i+21104>>2]=1.0;g[i+20708>>2]=1.0;g[i+21112>>2]=1.0;g[i+20716>>2]=1.0;g[i+21120>>2]=1.0;g[i+20724>>2]=1.0;g[i+21128>>2]=1.0;g[i+20732>>2]=1.0;g[i+21136>>2]=1.0;g[i+20740>>2]=1.0;g[i+21144>>2]=1.0;g[i+20748>>2]=1.0;g[i+21152>>2]=1.0;g[i+20756>>2]=1.0;g[i+21160>>2]=1.0;g[i+20764>>2]=1.0;g[i+21168>>2]=1.0;g[i+20772>>2]=1.0;g[i+21176>>2]=1.0;g[i+20780>>2]=1.0;g[i+21184>>2]=1.0;g[i+20788>>2]=1.0;g[i+21192>>2]=1.0;g[i+20796>>2]=1.0;g[i+21200>>2]=1.0;g[i+20804>>2]=1.0;g[i+21208>>2]=1.0;g[i+20812>>2]=1.0;g[i+21216>>2]=1.0;g[i+20820>>2]=1.0;g[i+21224>>2]=1.0;g[i+20828>>2]=1.0;g[i+21232>>2]=1.0;g[i+20836>>2]=1.0;g[i+21240>>2]=1.0;g[i+20844>>2]=1.0;g[i+21248>>2]=1.0;g[i+20852>>2]=1.0;g[i+21256>>2]=1.0;g[i+20860>>2]=1.0;g[i+21264>>2]=1.0;g[i+20868>>2]=1.0;g[i+21272>>2]=1.0;g[i+20876>>2]=1.0;g[i+21280>>2]=1.0;g[i+20884>>2]=1.0;g[i+21288>>2]=1.0;a[i+22092>>0]=0;e=i+22416|0;j=i+22096|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22112|0;j=i+22432|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22128|0;e=i+22448|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22144|0;j=i+22464|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22160|0;e=i+22480|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22176|0;j=i+22496|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22192|0;e=i+22512|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22208|0;j=i+22528|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22224|0;e=i+22544|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22240|0;j=i+22560|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22256|0;e=i+22576|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22272|0;j=i+22592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22288|0;e=i+22608|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22304|0;j=i+22624|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22320|0;e=i+22640|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22336|0;j=i+22656|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22352|0;e=i+22672|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22368|0;j=i+22688|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22384|0;e=i+22704|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22400|0;j=i+22720|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;return i|0}function Og(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=Ef(e)|0;a[f>>0]=0;t=e+8|0;g=c[t>>2]|0;if(!g){g=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}if(!g)g=b+719|0;else{a[f>>0]=1;g=b+719|0;a[g>>0]=1;i=b+724|0;a[i>>0]=0;f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}r=f&255;a[b>>0]=r;if(r<<24>>24){f=c[t>>2]|0;if(f>>>0<3){h=3-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>29;do if(!(a[e+20>>0]|0))if(f>>>0>3){c[t>>2]=f+-3;break}else{Gf(e,3);break}while(0);f=h&255;a[b+3>>0]=f;r=h&255;a[b+5>>0]=a[182104+r>>0]|0;a[b+6>>0]=a[182112+r>>0]|0;switch(f<<24>>24){case 5:case 2:{a[i>>0]=1;break}default:{}}a[b+27>>0]=f}f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}r=f&255;a[b+1>>0]=r;a:do if(r<<24>>24){h=c[t>>2]|0;if(h>>>0<3){f=3-h|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-h>>>29;do if(!(a[e+20>>0]|0))if(h>>>0>3){c[t>>2]=h+-3;break}else{Gf(e,3);break}while(0);r=f&255;a[b+4>>0]=r;a[b+7>>0]=a[182104+(f&255)>>0]|0;switch(r<<24>>24){case 5:case 2:break;default:break a}a[i>>0]=1}while(0);f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}a[b+2>>0]=f}if(!(a[g>>0]|0)){u=1;s=0;t=b+718|0;a[t>>0]=s;return u|0}g=c[t>>2]|0;do if(!g){g=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){Gf(e,1);h=c[t>>2]|0;i=47;break}else{g=g&255;f=b+8|0;a[f>>0]=g;h=0;i=49;break}}else{h=g+-1|0;c[t>>2]=h;g=(c[e>>2]|0)>>>h&1;i=47}while(0);if((i|0)==47){g=g&255;f=b+8|0;a[f>>0]=g;if(h>>>0<2)i=49;else j=c[e>>2]<<32-h>>>30}if((i|0)==49){j=2-h|0;j=(c[e>>2]&(1<>2]|0)>>>(32-j|0)}r=e+20|0;do if(!(a[r>>0]|0))if(h>>>0>2){c[t>>2]=h+-2;f=g;break}else{Gf(e,2);f=a[f>>0]|0;break}else f=g;while(0);g=a[(j&255)+(182120+((f&255)<<2))>>0]|0;q=b+9|0;a[q>>0]=g;if(f<<24>>24)if(!(g<<24>>24))g=0;else{k=e+4|0;j=1;do{i=j&255;f=c[t>>2]|0;if(f>>>0<5){h=5-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>27;do if(!(a[r>>0]|0))if(f>>>0>5){c[t>>2]=f+-5;break}else{Gf(e,5);g=a[q>>0]|0;break}while(0);a[b+10+i>>0]=h+1;j=j+1<<24>>24}while((g&255)>=(j&255))}if(a[b>>0]|0)if(!(g<<24>>24))g=0;else{l=e+4|0;m=b+3|0;n=b+5|0;k=0;j=0;while(1){g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}g=g&255;a[b+16+j>>0]=g;h=a[n>>0]|0;i=b+140+(j*34|0)|0;g=g<<24>>24==0;b:do if((d[m>>0]|0)<3){if(g)f=0;else{if(!(h<<24>>24))break;i=h&255;h=0;while(1){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[l>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);p=a[182128+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0;if((h|0)==(i|0))break b}}do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182184+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182184+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}else{if(g)f=0;else{if(!(h<<24>>24))break;i=h&255;h=0;while(1){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[l>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);p=a[182240+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0;if((h|0)==(i|0))break b}}do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182360+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182360+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}while(0);f=k+1<<24>>24;g=a[q>>0]|0;if((f&255)<(g&255)){k=f;j=f&255}else break}}if(!((a[b+1>>0]|0)==0|g<<24>>24==0)){l=e+4|0;m=b+7|0;k=0;j=0;while(1){g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=g&255;a[b+21+j>>0]=p;h=a[m>>0]|0;i=b+310+(j*34|0)|0;if(!(p<<24>>24)){f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182508+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182508+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+310+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}else if(h<<24>>24){i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[182480+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+310+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}g=k+1<<24>>24;if((g&255)<(d[q>>0]|0)){k=g;j=g&255}else break}}do if(a[b+2>>0]|0){f=c[t>>2]|0;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[r>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{Gf(e,4);break}while(0);if((g&65535|0)==15){f=c[t>>2]|0;if(f>>>0<8){g=8-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>24;do if(!(a[r>>0]|0))if(f>>>0>8){c[t>>2]=f+-8;break}else{Gf(e,8);break}while(0);g=(g&65535)+15|0}f=g<<3;g=f&65528;if(g>>>0>7){n=e+4|0;o=b+26|0;p=b+6|0;do{g=c[t>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>30;do if(!(a[r>>0]|0))if(g>>>0>2){c[t>>2]=g+-2;break}else{Gf(e,2);break}while(0);l=f+65534|0;m=Ef(e)|0;do if(!((h&255)<<24>>24)){g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);k=g&255;a[o>>0]=k;do if(k<<24>>24){if(!(a[q>>0]|0))break;else{k=0;j=0}while(1){g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);f=g&255;a[b+28+j>>0]=f;h=a[p>>0]|0;i=b+480+(j*17|0)|0;do if(!(f<<24>>24)){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182550+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[i>>0]=f+31;if((h&255)<=1)break;i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182550+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+480+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}else{if(!(h<<24>>24))break;i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182536+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+480+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}while(0);g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);f=g&255;a[b+33+j>>0]=f;h=a[p>>0]|0;i=b+565+(j*17|0)|0;do if(!(f<<24>>24)){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182578+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[i>>0]=f+31;if((h&255)<=1)break;i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182578+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+565+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}else{if(!(h<<24>>24))break;i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;Gf(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[182564+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+565+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}while(0);g=k+1<<24>>24;if((g&255)<(d[q>>0]|0)){k=g;j=g&255}else break}}while(0);g=c[t>>2]|0;if(g|0){c[t>>2]=g+-1;break}if(a[r>>0]|0)break;Gf(e,1)}while(0);f=(l&65535)-((Ef(e)|0)-m&65535)|0;g=f&65535}while(g>>>0>7)}if(g|0?(u=c[t>>2]|0,(a[r>>0]|0)==0):0)if(u>>>0>g>>>0){c[t>>2]=u-g;break}else{Gf(e,g);break}}while(0);u=(Ef(e)|0)-s&65535;s=1;t=b+718|0;a[t>>0]=s;return u|0}function Pg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=e&255;l=b+614+k|0;if(!(a[l>>0]|0))return;m=b+19|0;j=0;i=0;while(1){a:do if(!(a[b+53535+(k*3|0)+i>>0]|0)){e=a[m>>0]|0;if((e&255)>1){e=e&255;f=c[b+7388+(k<<9)+(i<<2)>>2]|0;g=1;do{h=b+7388+(k<<9)+(g<<3)+(i<<2)|0;f=f+(c[h>>2]|0)|0;c[h>>2]=f;g=g+1|0}while(g>>>0>>0)}}else{h=a[m>>0]|0;e=h<<24>>24==0;if(!(j<<24>>24)){if(e)break;else{f=0;e=0}while(1){c[b+7388+(k<<9)+(e<<3)+(i<<2)>>2]=(c[b+7388+(k<<9)+(e<<3)>>2]|0)+(c[b+10460+(k<<8)+(e<<2)>>2]|0);e=f+1<<24>>24;if((e&255)<(h&255)){f=e;e=e&255}else break a}}if(!e){g=i+-1|0;e=h&255;f=0;do{h=b+7388+(k<<9)+(f<<3)+(i<<2)|0;c[h>>2]=(c[h>>2]|0)+(c[b+7388+(k<<9)+(f<<3)+(g<<2)>>2]|0);f=f+1|0}while(f>>>0>>0)}}while(0);e=j+1<<24>>24;if((e&255)<(d[l>>0]|0)){j=e;i=e&255}else break}return}function Qg(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=f&255;r=a[c+610+q>>0]|0;if(!(r<<24>>24))return;s=c+646+q|0;t=c+17|0;u=c+18|0;v=c+24|0;p=c+25|0;o=0;n=0;while(1){a:do if(!(a[c+53517+(q*9|0)+n>>0]|0)){h=(d[c+634+(q*6|0)+n>>0]|0)+(c+24)|0;if((d[h>>0]|0)>1){g=1;f=1;while(1){m=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;f=(e[m>>1]|0)+(e[c+730+(q*640|0)+((f+-1|0)*10|0)+(n<<1)>>1]|0)|0;b[m>>1]=(f&32768|0)==0?f&65535:0;f=g+1<<24>>24;if((f&255)<(d[h>>0]|0)){g=f;f=f&255}else break}}}else{h=o<<24>>24==0;m=n+-1|0;f=a[(h?s:c+634+(q*6|0)+m|0)>>0]|0;g=a[c+634+(q*6|0)+n>>0]|0;if(g<<24>>24==f<<24>>24){i=(f&255)+(c+24)|0;if(!(a[i>>0]|0))break;if(h){g=0;f=0;while(1){m=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;b[m>>1]=(e[m>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(d[i>>0]|0)){g=f;f=f&255}else break a}}else{g=0;f=0;while(1){l=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;b[l>>1]=(e[l>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(d[i>>0]|0)){g=f;f=f&255}else break a}}}if(f<<24>>24==1&g<<24>>24==0){l=a[v>>0]|0;if(!(l<<24>>24))break;k=a[t>>0]|0;if(h){j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+90+g>>0]|0;g=0;f=0;while(1){if((a[c+154+f>>0]|0)==h<<24>>24)b[i>>1]=(e[i>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(l&255)){j=g;g=g&255}else break a}}else{j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+90+g>>0]|0;g=0;f=0;while(1){if((a[c+154+f>>0]|0)==h<<24>>24)b[i>>1]=(e[i>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(l&255)){j=g;g=g&255}else break a}}}if(f<<24>>24==0&g<<24>>24==1?(w=a[p>>0]|0,w<<24>>24):0){k=a[u>>0]|0;if(h){j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+154+g>>0]|0;g=0;f=0;while(1){if((d[c+90+f>>0]|0)<=(h&255)?(h&255)<(d[f+1+(c+90)>>0]|0):0)b[i>>1]=(e[i>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(w&255)){j=g;g=g&255}else break}}else{j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+154+g>>0]|0;g=0;f=0;while(1){if((d[c+90+f>>0]|0)<=(h&255)?(h&255)<(d[f+1+(c+90)>>0]|0):0)b[i>>1]=(e[i>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(w&255)){j=g;g=g&255}else break}}}}while(0);f=o+1<<24>>24;if((f&255)<(r&255)){o=f;n=f&255}else break}return}function Rg(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=r;q=p+1|0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;a[q+4>>0]=0;q=d[b+8>>0]|0;o=c&255;f=a[b+602+o>>0]|0;a[p>>0]=N(f&255,q)|0;c=a[b+604+o>>0]|0;n=(N(c&255,q)|0)&255;g=a[b+610+o>>0]|0;e=g&255;a[p+e>>0]=n;a:do switch(a[b+53451+o>>0]|0){case 0:switch(g<<24>>24){case 4:{k=(d[b+53417>>0]|0)>>>2;n=k&255;a[p+3>>0]=N(q*3|0,n)|0;a[p+2>>0]=N(k<<1&255,q)|0;a[p+1>>0]=N(q,n)|0;break a}case 2:{a[p+1>>0]=N((d[b+53417>>0]|0)>>>1&255,q)|0;break a}default:break a}case 1:{if((g&255)>1){h=e+-1|0;f=0;e=0;while(1){e=a[b+53453+(o*9|0)+e>>0]|0;if((c&255)<(e&255)){c=1;break}c=(c&255)-(e&255)|0;g=g+-1<<24>>24;a[p+(g<<24>>24)>>0]=N(c&255,q)|0;f=f+1<<24>>24;e=f&255;if((h|0)<=(e|0))break a;else c=c&255}l=r;return c|0}break}case 2:{if((g&255)>1){j=d[b+53419>>0]|0;k=(d[b+53418>>0]|0)+(d[b+53416>>0]|0)|0;i=e+-1|0;h=1;c=f;g=0;e=0;while(1){f=(d[b+53453+(o*9|0)+e>>0]|0)+(c&255)|0;c=N(f&255,q)|0;if((c+j|0)>>>0>k>>>0){c=1;break}a[p+(h<<24>>24)>>0]=c;g=g+1<<24>>24;e=g&255;if((i|0)<=(e|0))break a;else{h=h+1<<24>>24;c=f&255}}l=r;return c|0}break}case 3:{k=a[b+53513+o>>0]|0;b:do if(k<<24>>24){n=d[b+53419>>0]|0;j=(d[b+53418>>0]|0)+(d[b+53416>>0]|0)|0;i=1;e=f;h=0;while(1){e=(d[(h&255)+(b+53471+(o*9|0))>>0]|0)+(e&255)|0;f=N(e&255,q)|0;if((f+n|0)>>>0>j>>>0){c=1;break}a[p+(i<<24>>24)>>0]=f;h=h+1<<24>>24;if((h&255)>=(k&255))break b;else{i=i+1<<24>>24;e=e&255}}l=r;return c|0}while(0);h=a[b+53515+o>>0]|0;if(h<<24>>24){f=0;while(1){e=a[(f&255)+(b+53489+(o*9|0))>>0]|0;if((c&255)<(e&255)){c=1;break}c=(c&255)-(e&255)|0;g=g+-1<<24>>24;a[p+(g<<24>>24)>>0]=N(c&255,q)|0;f=f+1<<24>>24;if((f&255)>=(h&255))break a;else c=c&255}l=r;return c|0}break}default:{}}while(0);q=b+((o*6|0)+616)|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;a[q+4>>0]=a[p+4>>0]|0;a[q+5>>0]=a[p+5>>0]|0;q=0;l=r;return q|0}function Sg(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=c&255;a[b+628+(e*3|0)>>0]=a[b+616+(e*6|0)>>0]|0;f=a[b+610+e>>0]|0;if(f<<24>>24==1){a[b+628+(e*3|0)+1>>0]=a[b+616+(e*6|0)+1>>0]|0;f=0;b=b+628+(e*3|0)+2|0;a[b>>0]=f;return}a:do switch(a[b+53451+e>>0]|0){case 0:{c=(f&255)>>>1&255;break}case 2:{c=a[b+53507+e>>0]|0;switch(c<<24>>24){case 0:{c=1;break a}case 1:{c=(f&255)+-1|0;break a}default:{c=(c&255)+-1|0;break a}}}case 3:case 1:{c=a[b+53507+e>>0]|0;d=f&255;if((c&255)>1){c=1-(c&255)+d|0;break a}else{c=d+255|0;break a}}default:c=0}while(0);d=c<<24>>24;a[b+628+(e*3|0)+1>>0]=a[(((d|0)>0?d:0)&255)+(b+616+(e*6|0))>>0]|0;f=a[(f&255)+(b+616+(e*6|0))>>0]|0;b=b+628+(e*3|0)+2|0;a[b>>0]=f;return}function Tg(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=a[183973+((Wf(e)|0)&255)>>0]|0;e=Wf(e)|0;f=f&255;if(!(c<<24>>24)){c=d[184093+(b&255)>>0]|0;c=c+f|0;c=c&255;return c|0}else{c=a[(b&255)+(183997+(d[183985+(e&255)>>0]<<4))>>0]|0;c=c+f|0;c=c&255;return c|0}return 0}function Ug(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=b&255;switch(b<<24>>24){case 15:{c=(e&255)*3|0;c=(c>>>0<64?c:64)&255;return c|0}case 14:{if((e&255)>32){c=64;return c|0}c=(e&255)<<1&255;return c|0}default:{e=d[183793+((Wf(c)|0)&255)>>0]|0;g=(Wf(c)|0)&255;b=f>>>0<13?f:13;if(((a[183805+(g*14|0)+b>>0]|0)+e|0)>64){g=64;return g|0}g=(d[183805+(((Wf(c)|0)&255)*14|0)+b>>0]|0)+e&255;return g|0}}return 0}function Vg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0;n=l;l=l+256|0;if((l|0)>=(m|0))W(256);k=n;FZ(k|0,0,256)|0;if((f&255)<=(e&255)){a[b+16>>0]=0;k=1;l=n;return k|0}h=(f&255)-(e&255)|0;if(!(g<<24>>24))f=h&-2;else f=h+2>>2<<1;j=f>>>0<63?f:63;if(!j){k=1;l=n;return k|0}i=g<<24>>24?2:1;h=h-(N(j,i)|0)|0;f=0;g=0;do{c[k+(g<<2)>>2]=i;f=f+1<<24>>24;g=f&255}while(j>>>0>g>>>0);if(h|0){f=(h|0)>0;g=f?-1:1;f=f?j+255|0:0;while(1){f=f&255;i=k+(f<<2)|0;c[i>>2]=(c[i>>2]|0)-g;h=h+g|0;if(!h)break;else f=f+g|0}}a[b+26>>0]=e;f=1;h=1;do{e=h+-1|0;a[b+26+h>>0]=(c[k+(e<<2)>>2]|0)+(d[b+26+e>>0]|0);f=f+1<<24>>24;h=f&255}while(j>>>0>=h>>>0);a[b+16>>0]=(j|0)<64?j:64;k=0;l=n;return k|0}function Wg(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0.0,n=0.0,o=0,p=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);u=z+768|0;v=z+512|0;w=z+256|0;y=z;FZ(u|0,0,256)|0;FZ(v|0,0,256)|0;FZ(w|0,0,256)|0;FZ(y|0,0,256)|0;o=e&255;if((f&255)<=(e&255)){a[b+16>>0]=0;b=1;l=z;return b|0}r=+(f&255);n=+(e&255);q=r/n>2.2449;t=q?o<<1&255:f;p=+(d[183790+((g&255)+-1)>>0]|0);i=+(t&255);j=i/n;x=~~(+L(+j)*p/.6931471824645996+.5)<<1&254;x=x>>>0<63?x:63;if((x|0)<1){b=1;l=z;return b|0}k=+C(+j,+(1.0/+(x&255)));e=0;f=~~(n+.5);j=n;h=0;do{j=j*k;g=f;f=~~(j+.5);c[u+(h<<2)>>2]=f-g;e=e+1<<24>>24;h=e&255}while((x|0)>=(h|0));GW(u,x,4,7);c[w>>2]=o;h=1;e=1;do{g=e+-1|0;o=c[u+(g<<2)>>2]|0;c[w+(e<<2)>>2]=o+(c[w+(g<<2)>>2]|0);h=h+1<<24>>24;if(!o){h=1;s=26;break}e=h&255}while((x|0)>=(e|0));if((s|0)==26){l=z;return h|0}if(!q){h=0;e=0;do{a[b+26+e>>0]=c[w+(e<<2)>>2];h=h+1<<24>>24;e=h&255}while((x|0)>=(e|0));a[b+16>>0]=(x|0)<64?x:64;b=0;l=z;return b|0}j=r/i;o=~~(+L(+j)*p/.9010912775993347+.5)<<1&254;o=o>>>0<63?o:63;j=+C(+j,+(1.0/+(o&255)));g=o+-1|0;if((o|0)>0){f=~~(i+.5);h=0;e=0;do{i=i*j;s=f;f=~~(i+.5);c[v+(e<<2)>>2]=f-s;h=h+1<<24>>24;e=h&255}while((o|0)>(e|0));e=v;f=c[v>>2]|0}else{e=v;f=0}h=u+(x+-1<<2)|0;if((f|0)<(c[h>>2]|0)){GW(v,o+1|0,4,7);s=c[h>>2]|0;q=c[e>>2]|0;c[e>>2]=s;u=v+(g<<2)|0;c[u>>2]=q-s+(c[u>>2]|0)}GW(v,o,4,7);c[y>>2]=t&255;a:do if((o|0)>=1){h=1;e=1;while(1){t=e+-1|0;u=c[v+(t<<2)>>2]|0;c[y+(e<<2)>>2]=u+(c[y+(t<<2)>>2]|0);h=h+1<<24>>24;if(!u){h=1;break}e=h&255;if((o|0)<(e|0))break a}l=z;return h|0}while(0);f=o+x|0;f=(f>>>0<64?f:64)&255;a[b+16>>0]=f;h=0;e=0;do{a[b+26+e>>0]=c[w+(e<<2)>>2];h=h+1<<24>>24;e=h&255}while((x|0)>=(e|0));e=x+1|0;h=e&255;if((f&255)<(h&255)){b=0;l=z;return b|0}while(1){a[b+26+e>>0]=c[y+(e-x<<2)>>2];e=h+1<<24>>24;if((e&255)>(f&255)){h=0;break}else{h=e;e=e&255}}l=z;return h|0}function Xg(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a[b+16>>0]|0;h=c&255;if((f&255)<=(c&255)){b=1;return b|0}i=(f&255)-h|0;g=i&255;a[b+17>>0]=g;l=(i>>>1&127)+(i&1)|0;k=l&255;a[b+18>>0]=k;a[b+24>>0]=k;a[b+25>>0]=g;f=0;c=0;while(1){a[b+154+c>>0]=a[c+h+(b+26)>>0]|0;c=f+1<<24>>24;if((c&255)>(g&255))break;else{f=c;c=c&255}}h=a[b+154>>0]|0;c=h&255;f=(d[(i&255)+(b+154)>>0]|0)-c|0;a[b+15>>0]=f;a[b+14>>0]=h;if((h&255)>32){b=1;return b|0}if(((f&255)+c|0)>>>0>64){b=1;return b|0}g=i&1;f=0;c=0;while(1){j=f<<24>>24==0?0:(c<<1)-g&255;a[b+90+c>>0]=a[(j&255)+(b+154)>>0]|0;c=f+1<<24>>24;if((c&255)>(k&255))break;else{f=c;c=c&255}}k=b+19|0;a[k>>0]=0;c=a[b+53437>>0]|0;if(!(c<<24>>24))h=1;else{h=~~(+L(+(+(e&255)/+(h&255)))*+(c&255)/.6931471824645996+.5);h=((h|0)>1?h:1)&255;a[k>>0]=h;h=(h&255)<5?h:5}a[k>>0]=h;i=h&255;g=0;c=j;f=0;while(1){if(!(g<<24>>24))c=0;else{c=c&255;c=((l-c|0)/(1-f+i|0)|0)+c&255}a[b+218+f>>0]=a[(c&255)+(b+90)>>0]|0;f=g+1<<24>>24;if((f&255)>(h&255)){c=0;break}else{g=f;f=f&255}}while(1){a:do if(h<<24>>24){g=0;f=0;while(1){if(c>>>0>=(d[b+218+f>>0]|0)>>>0?c>>>0<(d[f+1+(b+218)>>0]|0)>>>0:0)break;f=g+1<<24>>24;if((f&255)<(h&255)){g=f;f=f&255}else break a}a[b+538+c>>0]=g}while(0);c=c+1|0;if((c|0)==64){c=0;break}h=a[k>>0]|0}return c|0}function Yg(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Zg(d){d=d|0;var e=0,f=0,g=0;e=Jf(8)|0;f=(d&255)*80|0;g=Jf(f)|0;c[e>>2]=g;FZ(g|0,0,f|0)|0;b[e+4>>1]=0;a[e+6>>0]=d;return e|0}function _g(d){d=d|0;var e=0,f=0,g=0;e=Jf(8)|0;f=(d&255)*160|0;g=Jf(f)|0;c[e>>2]=g;FZ(g|0,0,f|0)|0;b[e+4>>1]=0;a[e+6>>0]=d;return e|0}function $g(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=f+8|0;h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[f+20>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}if(h|0){f=32;return f|0}h=c[p>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-h>>>30;o=f+20|0;do if(!(a[o>>0]|0))if(h>>>0>2){h=h+-2|0;c[p>>2]=h;i=i&255;j=e+4|0;a[j>>0]=i;l=14;break}else{Gf(f,2);h=c[p>>2]|0;l=13;break}else l=13;while(0);if((l|0)==13){i=i&255;j=e+4|0;a[j>>0]=i;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0)){Gf(f,1);k=j;i=a[j>>0]|0}else k=j}else l=14}if((l|0)==14){h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1;k=j}a[e+13>>0]=h;m=b+4|0;if((a[m>>0]|0)==23)if(!(i<<24>>24))l=35;else{f=32;return f|0}else if(i<<24>>24==2){h=c[p>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-h>>>28;do if(!(a[o>>0]|0))if(h>>>0>4){j=h+-4|0;c[p>>2]=j;break}else{Gf(f,4);j=c[p>>2]|0;break}else j=h;while(0);a[e>>0]=i;if(j>>>0<7){h=7-j|0;h=(c[f>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>25;do if(!(a[o>>0]|0))if(j>>>0>7){c[p>>2]=j+-7;break}else{Gf(f,7);break}while(0);a[e+14>>0]=h}else l=35;if((l|0)==35){i=c[p>>2]|0;if(i>>>0<6){h=6-i|0;h=(c[f>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-i>>>26;do if(!(a[o>>0]|0))if(i>>>0>6){c[p>>2]=i+-6;break}else{Gf(f,6);break}while(0);a[e>>0]=h}h=Vh(b,e)|0;if(h<<24>>24){f=h;return f|0}if((d[e>>0]|0)>(d[e+1>>0]|0)){f=16;return f|0}if((a[k>>0]|0)==2){f=0;return f|0}h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}l=h&255;a[e+9042>>0]=l;if(!(l<<24>>24)){f=0;return f|0}h=a[m>>0]|0;if(h<<24>>24==1){g=a[e>>0]|0;h=b+3|0;if((g&255)<((Yf(a[h>>0]|0)|0)&255))j=a[e>>0]|0;else j=Yf(a[h>>0]|0)|0;a[e+10221>>0]=j;h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}b=h&255;a[e+10222>>0]=b;if(b<<24>>24){i=c[p>>2]|0;if(i>>>0<5){h=5-i|0;h=(c[f>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-i>>>27;do if(!(a[o>>0]|0))if(i>>>0>5){c[p>>2]=i+-5;break}else{Gf(f,5);break}while(0);a[e+10223>>0]=h}if(!(j<<24>>24)){f=0;return f|0}k=f+4|0;j=j&255;i=0;do{h=c[p>>2]|0;if(!h){h=(c[k>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}a[e+10224+i>>0]=h;i=i+1|0}while((i|0)!=(j|0));h=0;return h|0}do if((h&255)>=17){if(g<<24>>24){f=0;return f|0}}else{h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}l=h&255;a[e+10277>>0]=l;if(l<<24>>24?(n=ah(b,e,e+10276|0,f)|0,n<<24>>24):0){f=n;return f|0}if(!(g<<24>>24)){if((d[m>>0]|0)>16)break;else h=0;return h|0}h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}p=h&255;a[e+10359>>0]=p;if(!(p<<24>>24)){f=0;return f|0}f=ah(b,e,e+10358|0,f)|0;return f|0}while(0);h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}p=h&255;a[e+10277>>0]=p;if(!(p<<24>>24)){f=0;return f|0}ah(b,e,e+10276|0,f)|0;f=0;return f|0}function ah(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=h+2|0;b[n>>1]=0;o=i+8|0;if((a[f+4>>0]|0)==23){k=c[o>>2]|0;if(!k)j=c[i+4>>2]|0;else j=c[i>>2]<<32-k;j=j>>>31;do if(!(a[i+20>>0]|0))if(k>>>0>1){c[o>>2]=k+-1;break}else{Gf(i,1);break}while(0);p=j&255;a[h+4>>0]=p;if(!(p<<24>>24))j=b[n>>1]|0;else{l=10;m=11}}else{l=11;m=11}if((m|0)==11){k=c[o>>2]|0;if(k>>>0>>0){j=l-k|0;j=(c[i>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>(32-l|0);do if(!(a[i+20>>0]|0))if(k>>>0>l>>>0){c[o>>2]=k-l;break}else{Gf(i,l);break}while(0);j=j&65535;b[n>>1]=j}if(e[f+10>>1]<<1>>>0<(j&65535)>>>0){i=18;return i|0}f=i+8|0;k=c[f>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[i>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>29;p=i+20|0;do if(!(a[p>>0]|0))if(k>>>0>3){c[f>>2]=k+-3;break}else{Gf(i,3);break}while(0);a[h+5>>0]=j;if((a[g+4>>0]|0)!=2){j=a[g>>0]|0;j=(j&255)<40?j:40;a[h>>0]=j;if(!(j<<24>>24)){i=0;return i|0}n=i+4|0;m=0;do{l=m&255;k=c[f>>2]|0;if(!k){k=(c[n>>2]|0)>>>31;if(!(a[p>>0]|0)){Gf(i,1);j=a[h>>0]|0}}else{k=k+-1|0;c[f>>2]=k;k=(c[i>>2]|0)>>>k&1}a[h+6+l>>0]=k;m=m+1<<24>>24}while((m&255)<(j&255));j=0;return j|0}n=g+3|0;if(!(a[n>>0]|0)){i=0;return i|0}o=i+4|0;m=0;l=0;while(1){j=c[f>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[p>>0]|0))Gf(i,1)}else{j=j+-1|0;c[f>>2]=j;j=(c[i>>2]|0)>>>j&1}g=j&255;a[h+57+l>>0]=g;if(g<<24>>24){j=c[f>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[p>>0]|0))Gf(i,1)}else{j=j+-1|0;c[f>>2]=j;j=(c[i>>2]|0)>>>j&1}g=j&255;a[h+65+l>>0]=g;if(g<<24>>24){k=c[f>>2]|0;if(k>>>0<4){j=4-k|0;j=(c[i>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>28;do if(!(a[p>>0]|0))if(k>>>0>4){c[f>>2]=k+-4;break}else{Gf(i,4);break}while(0);a[h+73+l>>0]=j}}j=m+1<<24>>24;if((j&255)<(d[n>>0]|0)){m=j;l=j&255}else{j=0;break}}return j|0}function bh(f,g,h,i,j){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;E=h+8|0;k=c[E>>2]|0;if(k>>>0<8){l=8-k|0;l=(c[h>>2]&(1<>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>24;C=h+20|0;do if(!(a[C>>0]|0))if(k>>>0>8){c[E>>2]=k+-8;break}else{Gf(h,8);break}while(0);A=i+7810|0;a[A>>0]=l;if((a[g+5>>0]|0)==0?(m=$g(f,i,h,0)|0,m<<24>>24):0){j=m;return j|0}G=i+4|0;s=(a[G>>0]|0)==2?3:5;F=i+2|0;k=a[F>>0]|0;a:do if(k<<24>>24){u=f+6|0;v=h+4|0;w=i+9038|0;x=32-s|0;y=(1<>0]|0;r=0;b:while(1){if(!(l<<24>>24)){a[i+7802+r>>0]=0;l=0}else{q=0;l=0;o=0;while(1){if(a[C>>0]|0){k=14;B=168;break b}g=(a[u>>0]|0)==0?4:5;m=c[E>>2]|0;if(m>>>0>>0){k=g-m|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-m>>>(32-g|0);if(m>>>0>g>>>0)c[E>>2]=m-g;else Gf(h,g);k=k&255;n=q&255;p=i+2042+(r*120|0)+n|0;a[p>>0]=k;switch(k<<24>>24){case 12:{k=32;B=168;break b}case 13:{a[z>>0]=1;k=a[p>>0]|0;break}default:{}}if((k&-2)<<24>>24==14)a[w>>0]=1;if((a[u>>0]|0)!=0?(m=a[p>>0]|0,m<<24>>24==11|(m+-16&255)<17):0)k=1;else B=28;do if((B|0)==28){B=0;g=c[E>>2]|0;if(g>>>0>>0){k=s-g|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-g>>>x;if(!(a[C>>0]|0))if(g>>>0>s>>>0){c[E>>2]=g-s;break}else{Gf(h,s);break}}while(0);k=k&255;if((k|0)==(y|0)){k=y;do{m=c[E>>2]|0;if(m>>>0>>0){g=s-m|0;g=(c[h>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[h>>2]<<32-m>>>x;do if(!(a[C>>0]|0))if(m>>>0>s>>>0){c[E>>2]=m-s;break}else{Gf(h,s);break}while(0);m=g&255;k=m+(k&65535)|0}while((m|0)==(y|0))}b[i+3002+(r*240|0)+(n<<1)>>1]=l&255;g=(k&65535)+o|0;b[i+4922+(r*240|0)+(n<<1)>>1]=g;if((a[G>>0]|0)==2){if((q&255)>119|g>>>0>120){k=15;B=168;break b}}else if((q&255)>50|g>>>0>51){k=15;B=168;break b}k=l&255;if(g>>>0>k>>>0)do{a[i+6842+(r*120|0)+k>>0]=a[p>>0]|0;l=l+1<<24>>24;k=l&255}while(g>>>0>k>>>0);l=g&255;q=q+1<<24>>24;k=a[i>>0]|0;if((k&255)<=(l&255))break;else o=g&255}a[i+7802+r>>0]=q;if(k<<24>>24!=l<<24>>24){k=32;B=168;break}k=a[F>>0]|0}g=t+1<<24>>24;if((g&255)<(k&255)){t=g;r=g&255}else{l=k;break a}}if((B|0)==168)return k|0}else l=0;while(0);u=f+7|0;c:do if(!(a[u>>0]|0)){k=a[A>>0]|0;if(l<<24>>24){t=h+4|0;p=0;m=k&255;g=1;s=0;n=(k&255)+65446&65535;k=a[i>>0]|0;r=0;d:while(1){if(!(k<<24>>24))k=0;else{q=0;o=0;while(1){switch(a[i+6842+(r*120|0)+o>>0]|0){case 0:{k=0;break}case 14:case 15:{k=(p&65535)+65476+((Hh(h)|0)<<24>>24)&65535;p=k;break}case 13:{if(!(g<<24>>24))k=((Hh(h)|0)<<24>>24)+65476|0;else{l=c[E>>2]|0;if(l>>>0<9){k=9-l|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>23;do if(!(a[C>>0]|0))if(l>>>0>9){c[E>>2]=l+-9;break}else{Gf(h,9);break}while(0);k=(k<<16>>16)+-256|0}k=k+(n&65535)&65535;n=k;g=0;break}default:{b[i+7812+(r*102|0)+(o<<1)>>1]=0;B=(m&65535)+65476+((Hh(h)|0)<<24>>24)|0;k=B&65535;if(B<<16>>>0>16711680){k=4;break d}else m=k}}b[i+7812+(r*102|0)+(o<<1)>>1]=k;l=q+1<<24>>24;k=a[i>>0]|0;if((l&255)<(k&255)){q=l;o=l&255}else break}l=a[F>>0]|0}o=s+1<<24>>24;if((o&255)<(l&255)){s=o;r=o&255}else break c}return k|0}}else{k=Ih(i,h)|0;if(k<<24>>24){j=k;return j|0}}while(0);k=c[E>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[C>>0]|0))Gf(h,1)}else{k=k+-1|0;c[E>>2]=k;k=(c[h>>2]|0)>>>k&1}B=k&255;w=i+9039|0;a[w>>0]=B;if(B<<24>>24){k=c[E>>2]|0;if(k>>>0<2){l=2-k|0;l=(c[h>>2]&(1<>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>30;do if(!(a[C>>0]|0))if(k>>>0>2){k=k+-2|0;c[E>>2]=k;break}else{Gf(h,2);k=c[E>>2]|0;break}while(0);o=i+9043|0;a[o>>0]=l;if(k>>>0<6){l=6-k|0;l=(c[h>>2]&(1<>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>26;do if(!(a[C>>0]|0))if(k>>>0>6){c[E>>2]=k+-6;break}else{Gf(h,6);break}while(0);a[i+9044>>0]=l;if((l&255)>>>0>(d[i+1>>0]|0)>>>0){j=16;return j|0}n=h+4|0;m=0;g=0;while(1){l=c[E>>2]|0;if(l>>>0<5){k=5-l|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>27;do if(!(a[C>>0]|0))if(l>>>0>5){c[E>>2]=l+-5;break}else{Gf(h,5);break}while(0);a[i+9045+g>>0]=k;l=c[E>>2]|0;if(l>>>0<4){k=4-l|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>28;do if(!(a[C>>0]|0))if(l>>>0>4){c[E>>2]=l+-4;break}else{Gf(h,4);break}while(0);a[i+9049+g>>0]=k;k=m+1<<24>>24;if((d[o>>0]|0)<(k&255))break;else{m=k;g=k&255}}}k=c[E>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[C>>0]|0))Gf(h,1)}else{k=k+-1|0;c[E>>2]=k;k=(c[h>>2]|0)>>>k&1}B=k&255;n=i+9040|0;a[n>>0]=B;if(B<<24>>24?(d[f+4>>0]|0)<17:0)Jh(i,i+9053|0,h);k=c[E>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[C>>0]|0))Gf(h,1)}else{k=k+-1|0;c[E>>2]=k;k=(c[h>>2]|0)>>>k&1}B=k&255;a[i+9041>>0]=B;if(B<<24>>24){j=1;return j|0}m=f+8|0;if(a[m>>0]|0){k=c[E>>2]|0;if(k>>>0<14){l=14-k|0;l=(c[h>>2]&(1<>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>18;do if(!(a[C>>0]|0))if(k>>>0>14){c[E>>2]=k+-14;break}else{Gf(h,14);break}while(0);g=i+10440|0;b[g>>1]=l;k=l&65535;if((a[f+5>>0]|0)==2){if(k>>>0>6144)b[g>>1]=6144}else if(k>>>0>12288)b[g>>1]=12288;l=c[E>>2]|0;if(l>>>0<6){k=6-l|0;k=(c[h>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>26;do if(!(a[C>>0]|0))if(l>>>0>6){c[E>>2]=l+-6;break}else{Gf(h,6);break}while(0);a[i+10442>>0]=(k&255)>>>0>48?49:k&255}if(a[u>>0]|0?(D=Kh(i,h)|0,D<<24>>24):0){j=D;return j|0}if((d[f+4>>0]|0)>16?a[n>>0]|0:0)Jh(i,i+9053|0,h);e:do if(!(a[m>>0]|0)){k=a[F>>0]|0;if(k<<24>>24){u=(e[f+10>>1]|0)>>>3&65535;t=0;g=0;v=0;f:while(1){s=g&255;r=i+7802+v|0;l=a[r>>0]|0;if(l<<24>>24){q=0;k=(N(s,u)|0)&65535;g=0;do{p=a[i+2042+(v*120|0)+g>>0]|0;g:do switch(p<<24>>24){case 14:case 15:case 13:case 0:{k=(e[i+16+(v*240|0)+(e[i+4922+(v*240|0)+(g<<1)>>1]<<1)>>1]|0)+(k&65535)-(e[i+16+(v*240|0)+(e[i+3002+(v*240|0)+(g<<1)>>1]<<1)>>1]|0)&65535;break}default:{m=b[i+16+(v*240|0)+(e[i+3002+(v*240|0)+(g<<1)>>1]<<1)>>1]|0;o=i+4922+(v*240|0)+(g<<1)|0;if((m&65535)>=(e[i+16+(v*240|0)+(e[o>>1]<<1)>>1]|0))break g;n=(p&255)>4?2:4;g=m&65535;while(1){l=k&65535;k=Mh(p,h,j+(l<<1)|0)|0;if(k<<24>>24)break f;k=n+l&65535;l=g+n|0;if((e[i+16+(v*240|0)+(e[o>>1]<<1)>>1]|0)<=(l&65535))break;else g=l&65535}l=a[r>>0]|0}}while(0);q=q+1<<24>>24;g=q<<24>>24}while((g|0)<(l&255|0));k=a[F>>0]|0}l=t+1<<24>>24;if((l&255)<(k&255)){t=l;g=s+(d[i+5+v>>0]|0)|0;v=l&255}else break e}return k|0}}else{k=Lh(f,i,h,j)|0;if(k<<24>>24){j=k;return j|0}}while(0);if(a[w>>0]|0){if((a[G>>0]|0)==2){j=2;return j|0}k=Nh(i,j,b[f+10>>1]|0)|0;if(k<<24>>24){j=k;return j|0}}j=0;return j|0}function ch(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+8192|0;if((l|0)>=(m|0))W(8192);t=w+4096|0;u=w;v=f+25|0;if(!(a[(d[v>>0]|0)+(f+74)>>0]|0)){p=b[i+2>>1]|0;o=f+4|0;q=d[i>>0]|0;if((a[o>>0]|0)==1){n=f+1136+(q<<2)|0;if(!(c[n>>2]|0)){s=f+10|0;r=Jf((e[s>>1]|0)*12|0)|0;c[n>>2]=r;dh(r,b[s>>1]|0)}n=f+1136+((p&255)<<2)|0;if(!(c[n>>2]|0)){s=f+10|0;r=Jf((e[s>>1]|0)*12|0)|0;c[n>>2]=r;dh(r,b[s>>1]|0)}}if((eh(a[o>>0]|0)|0)<<24>>24){n=f+1392+(q<<2)|0;if(!(c[n>>2]|0)){s=f+10|0;r=Jf(e[s>>1]<<3)|0;c[n>>2]=r;FZ(r|0,0,e[s>>1]<<3|0)|0}n=f+1392+((p&255)<<2)|0;if(!(c[n>>2]|0)){s=f+10|0;r=Jf(e[s>>1]<<3)|0;c[n>>2]=r;FZ(r|0,0,e[s>>1]<<3|0)|0}}o=f+328+(q<<2)|0;if(!(c[o>>2]|0)){n=(d[v>>0]|0)+(f+843)|0;a[n>>0]=0;if((a[f+840>>0]|0)!=1?(a[f+841>>0]|0)!=1:0)n=1;else{a[n>>0]=1;n=2}s=f+10|0;r=n<<2;x=Jf(N(r,e[s>>1]|0)|0)|0;c[o>>2]=x;FZ(x|0,0,N(r,e[s>>1]|0)|0)|0}else n=1;p=p&255;o=f+328+(p<<2)|0;if(!(c[o>>2]|0)){x=f+10|0;s=n<<2;r=Jf(N(s,e[x>>1]|0)|0)|0;c[o>>2]=r;FZ(r|0,0,N(s,e[x>>1]|0)|0)|0}n=f+584+(q<<2)|0;if(!(c[n>>2]|0)){x=f+10|0;s=Jf(e[x>>1]<<2)|0;c[n>>2]=s;FZ(s|0,0,e[x>>1]<<2|0)|0}n=f+584+(p<<2)|0;if(!(c[n>>2]|0)){x=f+10|0;s=Jf(e[x>>1]<<2)|0;c[n>>2]=s;FZ(s|0,0,e[x>>1]<<2|0)|0}a[(d[v>>0]|0)+(f+74)>>0]=1}s=f+10|0;n=fh(g,j,t)|0;if(n<<24>>24){x=n;l=w;return x|0}n=fh(h,k,u)|0;if(n<<24>>24){x=n;l=w;return x|0}n=b[s>>1]|0;k=f+4|0;o=a[k>>0]|0;p=f+1648|0;q=f+1652|0;if(!(a[g+8628>>0]|0)){gh(g,0,t,0,n,0,o,p,q);gh(h,0,u,0,b[s>>1]|0,0,a[k>>0]|0,p,q)}else gh(g,h,t,u,n,1,o,p,q);hh(g,h,t,u,b[s>>1]|0);ih(g,h,t,u,b[s>>1]|0);n=a[k>>0]|0;if(n<<24>>24==1){x=f+3|0;jh(g,t,c[f+1136+(d[i>>0]<<2)>>2]|0,b[s>>1]|0,a[x>>0]|0);n=i+2|0;jh(h,u,c[f+1136+(b[n>>1]<<2)>>2]|0,b[s>>1]|0,a[x>>0]|0);kh(g,c[f+1136+(d[i>>0]<<2)>>2]|0);kh(h,c[f+1136+(b[n>>1]<<2)>>2]|0);n=a[k>>0]|0}if(!((eh(n)|0)<<24>>24))r=f+3|0;else{q=g+10276|0;j=a[i+5>>0]|0?h+10358|0:h+10276|0;n=a[k>>0]|0;if(n<<24>>24==23){if(a[g+10277>>0]|0?a[g+10280>>0]|0:0)b[f+192+(d[i>>0]<<1)>>1]=b[g+10278>>1]|0;o=a[i>>0]|0;b[g+10278>>1]=b[f+192+((o&255)<<1)>>1]|0;if((a[j+1>>0]|0)!=0?(a[j+4>>0]|0)!=0:0){b[f+192+(b[i+2>>1]<<1)>>1]=b[j+2>>1]|0;n=a[k>>0]|0}else n=23;p=i+2|0;b[j+2>>1]=b[f+192+(b[p>>1]<<1)>>1]|0}else{p=i+2|0;o=a[i>>0]|0}x=o&255;o=f+320|0;r=f+3|0;lh(g,q,t,c[f+1392+(x<<2)>>2]|0,c[o>>2]|0,a[g+13>>0]|0,a[f+128+x>>0]|0,a[r>>0]|0,n,b[s>>1]|0);x=b[p>>1]|0;lh(h,j,u,c[f+1392+(x<<2)>>2]|0,c[o>>2]|0,a[h+13>>0]|0,a[f+128+x>>0]|0,a[r>>0]|0,a[k>>0]|0,b[s>>1]|0)}mh(g,g+9053|0,a[r>>0]|0,a[k>>0]|0,t,b[s>>1]|0);mh(h,h+9053|0,a[r>>0]|0,a[k>>0]|0,u,b[s>>1]|0);n=f+324|0;o=c[n>>2]|0;do if(!(a[o>>0]|0))o=i+2|0;else{if(!((a[(d[i>>0]|0)+(o+56)>>0]|0)!=0?(a[o+3>>0]|0)!=0:0)){nh(o,t);o=c[n>>2]|0}n=i+2|0;if(a[(b[n>>1]|0)+(o+56)>>0]|0?a[o+3>>0]|0:0){o=n;break}nh(o,u);o=n}while(0);q=f+320|0;j=g+13|0;x=d[i>>0]|0;oh(c[q>>2]|0,a[g+4>>0]|0,a[j>>0]|0,a[f+128+x>>0]|0,t,c[f+328+(x<<2)>>2]|0,c[f+584+(x<<2)>>2]|0,a[k>>0]|0,b[s>>1]|0);x=h+13|0;t=b[o>>1]|0;oh(c[q>>2]|0,a[h+4>>0]|0,a[x>>0]|0,a[f+128+t>>0]|0,u,c[f+328+(t<<2)>>2]|0,c[f+584+(t<<2)>>2]|0,a[k>>0]|0,b[s>>1]|0);a[(d[i>>0]|0)+(f+128)>>0]=a[j>>0]|0;a[(b[o>>1]|0)+(f+128)>>0]=a[x>>0]|0;if((eh(a[k>>0]|0)|0)<<24>>24){x=d[i>>0]|0;ph(c[f+1392+(x<<2)>>2]|0,c[f+328+(x<<2)>>2]|0,c[f+584+(x<<2)>>2]|0,b[s>>1]|0,a[k>>0]|0);x=b[o>>1]|0;ph(c[f+1392+(x<<2)>>2]|0,c[f+328+(x<<2)>>2]|0,c[f+584+(x<<2)>>2]|0,b[s>>1]|0,a[k>>0]|0)}n=(a[f+840>>0]|0)==1;if(!n?(a[f+841>>0]|0)!=1:0)k=61;else k=55;do if((k|0)==55){p=d[v>>0]|0;if(!(a[f+843+p>>0]|0))if(n){k=62;break}else{k=61;break}j=d[i>>0]|0;q=b[o>>1]|0;o=f+892+(p<<2)|0;n=c[o>>2]|0;if(!n){t=b[s>>1]|0;u=a[f+2128+p>>0]|0;n=(Xf(a[r>>0]|0)|0)<<1;x=f+842|0;n=Dg(t,u,n,a[x>>0]|0)|0;c[o>>2]=n;o=x}else o=f+842|0;u=a[i+6>>0]|0;u=b[i+1942+(((u&255)>1?(u&255)+-1|0:0)<<1)>>1]|0;x=b[i+2046>>1]|0;x=((u&65535)<(x&65535)?u:x)&65535;c[n+4>>2]=(a[i+10>>0]|0)==2?x<<3:x;n=qh(n,c[f+328+(j<<2)>>2]|0,c[f+328+(q<<2)>>2]|0,a[f+12>>0]|0,a[o>>0]|0)|0;if(n<<24>>24){x=n;l=w;return x|0}}while(0);if((k|0)==61?(a[f+841>>0]|0)==1:0)k=62;if((k|0)==62?(a[(d[v>>0]|0)+(f+843)>>0]|0)==0:0){x=23;l=w;return x|0}x=0;l=w;return x|0}function dh(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;if(!(c<<16>>16))return;d=c&65535;c=0;do{e=a+(c*12|0)|0;f=e;b[f>>1]=0;b[f+2>>1]=0>>>16;e=e+4|0;b[e>>1]=0;b[e+2>>1]=0>>>16;b[a+(c*12|0)+8>>1]=16256;b[a+(c*12|0)+10>>1]=16256;c=c+1|0}while((c|0)!=(d|0));return}function eh(a){a=a|0;switch(a<<24>>24){case 23:case 19:case 4:{a=1;break}default:a=0}return a|0}function fh(c,d,f){c=c|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=a[c+2>>0]|0;if(!(C<<24>>24)){D=0;return D|0}B=a[c+1>>0]|0;D=c+1936+((B&255)<<1)|0;k=0;l=0;h=0;A=0;i=B;z=0;while(1){if(!(i<<24>>24)){n=0;i=k&65535;j=0}else{i=k&65535;x=c+5+z|0;y=e[D>>1]|0;k=a[x>>0]|0;n=0;q=0;w=0;p=k;j=0;while(1){m=(e[c+1936+(j+1<<1)>>1]|0)-(e[c+1936+(j<<1)>>1]|0)|0;s=b[c+7812+(z*102|0)+(j<<1)>>1]|0;t=s<<16>>16;s=(s&65535)>255;v=q&65535;u=+g[108580+((s?0:t>>2)<<2)>>2]*+g[108836+((s?0:t&3)<<2)>>2];if(!(k<<24>>24)){j=m&65535;k=0}else{j=m&65535;t=(j|0)==0;s=0;r=q+i|0;while(1){if(t)k=p;else{k=0;q=0;do{m=k+r|0;p=l&65535;k=b[d+(p<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)o=-+g[108852+(0-l<<2)>>2];else{o=0.0;h=17}else if(k<<16>>16<8192)o=+g[108852+(l<<2)>>2];else{o=0.0;h=17}m=m&65535;g[f+(m<<2)>>2]=u*o;k=b[d+(p+1<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)o=-+g[108852+(0-l<<2)>>2];else{o=0.0;h=17}else if(k<<16>>16<8192)o=+g[108852+(l<<2)>>2];else{o=0.0;h=17}g[f+(m+1<<2)>>2]=u*o;k=b[d+(p+2<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)o=-+g[108852+(0-l<<2)>>2];else{o=0.0;h=17}else if(k<<16>>16<8192)o=+g[108852+(l<<2)>>2];else{o=0.0;h=17}g[f+(m+2<<2)>>2]=u*o;k=b[d+(p+3<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)o=-+g[108852+(0-l<<2)>>2];else{o=0.0;h=17}else if(k<<16>>16<8192)o=+g[108852+(l<<2)>>2];else{o=0.0;h=17}g[f+(m+3<<2)>>2]=u*o;n=(n&65535)+4&65535;l=p+4&65535;k=q+4|0;q=k&65535}while(q>>>0>>0);k=a[x>>0]|0}s=s+1<<24>>24;if((s&255)>=(k&255)){p=k;break}else{r=(r&65535)+y|0;p=k}}}m=w+1<<24>>24;if((m&255)<(B&255)){q=j+v|0;w=m;j=m&255}else{j=B;break}}}m=A+1<<24>>24;if((m&255)<(C&255)){k=i+(n&65535)&65535;A=m;i=j;z=m&255}else break}return h|0}function gh(f,h,i,j,k,l,m,n,o){f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;I=f+2|0;if(!(a[I>>0]|0))return;H=f+2040|0;G=(k&65535)>>>3&65535;D=l<<24>>24==0;E=f+8628|0;F=h+2040|0;C=0;m=0;A=0;while(1){z=f+5+A|0;k=a[z>>0]|0;if(k<<24>>24){y=0;l=a[f>>0]|0;do{if(!(l<<24>>24))l=0;else{x=N(m&255,G)|0;w=0;v=0;while(1){if((a[f+6842+(A*120|0)+v>>0]|0)==13){a[f+10282+v>>0]=0;a[f+10364+v>>0]=0;a[f+10224+v>>0]=0;t=b[f+1936+(v+1<<1)>>1]|0;r=b[H>>1]|0;u=e[f+1936+(v<<1)>>1]|0;r=(((t&65535)<(r&65535)?t:r)&65535)-u|0;t=r&65535;u=i+(x+u<<2)|0;p=b[f+7812+(A*102|0)+(v<<1)>>1]|0;s=1.0/+(t&65535);t=t<<16>>16==0;if(t)q=0.0;else{l=r&65535;q=0.0;k=0;do{K=s*+($f(n,o)|0);g[u+(k<<2)>>2]=K;q=q+K*K;k=k+1|0}while((k|0)!=(l|0))}q=1.0/+B(+q);q=q*+kc(+(+(p<<16>>16)*.25));if(!t){l=r&65535;k=0;do{t=u+(k<<2)|0;g[t>>2]=q*+g[t>>2];k=k+1|0}while((k|0)!=(l|0))}}a:do if(!D?(a[h+6842+(A*120|0)+v>>0]|0)==13:0){switch(a[E>>0]|0){case 1:{if(a[f+8629+(A*51|0)+v>>0]|0)J=18;break}case 2:{J=18;break}default:{}}if((J|0)==18){J=0;u=b[h+1936+(v+1<<1)>>1]|0;r=b[F>>1]|0;k=e[h+1936+(v<<1)>>1]|0;r=(((u&65535)<(r&65535)?u:r)&65535)-k&65535;if(!r)break;l=x+k|0;k=0;p=0;while(1){v=l+p|0;c[j+(v<<2)>>2]=c[i+(v<<2)>>2];k=k+1<<16>>16;p=k&65535;if(r>>>0<=p>>>0)break a}}a[h+10282+v>>0]=0;a[h+10364+v>>0]=0;a[h+10224+v>>0]=0;r=b[h+1936+(v+1<<1)>>1]|0;t=b[F>>1]|0;u=e[h+1936+(v<<1)>>1]|0;t=(((r&65535)<(t&65535)?r:t)&65535)-u|0;r=t&65535;u=j+(x+u<<2)|0;p=b[h+7812+(A*102|0)+(v<<1)>>1]|0;s=1.0/+(r&65535);r=r<<16>>16==0;if(r)q=0.0;else{l=t&65535;q=0.0;k=0;do{K=s*+($f(n,o)|0);g[u+(k<<2)>>2]=K;q=q+K*K;k=k+1|0}while((k|0)!=(l|0))}q=1.0/+B(+q);q=q*+kc(+(+(p<<16>>16)*.25));if(!r){l=t&65535;k=0;do{v=u+(k<<2)|0;g[v>>2]=q*+g[v>>2];k=k+1|0}while((k|0)!=(l|0))}}while(0);k=w+1<<24>>24;l=a[f>>0]|0;if((k&255)<(l&255)){w=k;v=k&255}else break}k=a[z>>0]|0}m=m+1<<24>>24;y=y+1<<24>>24}while((y&255)<(k&255))}k=C+1<<24>>24;if((k&255)<(d[I>>0]|0)){C=k;A=k&255}else break}return}function hh(c,d,e,f,h){c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0;i=a[c+8628>>0]|0;if(!(i<<24>>24))return;v=a[c+2>>0]|0;if(!(v<<24>>24))return;s=c+2040|0;r=(h&65535)>>>3&65535;j=0;q=0;p=0;while(1){o=c+5+p|0;h=a[o>>0]|0;if(h<<24>>24){n=a[c>>0]|0;m=0;k=n;do{if(!(k<<24>>24))k=0;else{l=N(j&255,r)|0;k=0;h=0;while(1){if(!(a[c+8629+(p*51|0)+h>>0]|0)){if(i<<24>>24==2){i=2;w=10}}else w=10;if((w|0)==10){w=0;if(((a[d+6842+(p*120|0)+h>>0]|1)<<24>>24!=15?(a[c+6842+(p*120|0)+h>>0]|0)!=13:0)?(t=b[c+1936+(h<<1)>>1]|0,u=c+1936+(h+1<<1)|0,x=b[u>>1]|0,h=b[s>>1]|0,(t&65535)<(((x&65535)<(h&65535)?x:h)&65535)):0){h=t;do{y=l+(h&65535)&65535;x=e+(y<<2)|0;A=+g[x>>2];y=f+(y<<2)|0;z=+g[y>>2];g[x>>2]=A+z;g[y>>2]=A-z;h=h+1<<16>>16;y=b[u>>1]|0;x=b[s>>1]|0}while((h&65535)<(((y&65535)<(x&65535)?y:x)&65535))}}h=k+1<<24>>24;if((h&255)<(n&255)){k=h;h=h&255}else break}h=a[o>>0]|0;k=n}j=j+1<<24>>24;m=m+1<<24>>24}while((m&255)<(h&255))}h=q+1<<24>>24;if((h&255)<(v&255)){q=h;p=h&255}else break}return}function ih(c,e,f,h,i){c=c|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0,B=0,D=0,E=0;D=e+2|0;j=a[D>>0]|0;if(!(j<<24>>24))return;E=c+2040|0;y=(i&65535)>>>3&65535;x=c+8628|0;w=0;i=0;v=0;while(1){u=e+5+v|0;l=a[u>>0]|0;if(l<<24>>24){t=0;k=a[e>>0]|0;j=l;do{if(!(k<<24>>24))k=0;else{s=N(i&255,y)|0;r=0;j=0;while(1){q=e+6842+(v*120|0)+j|0;if((a[q>>0]|1)<<24>>24==15?(a[c+10224+j>>0]=0,a[e+10224+j>>0]=0,z=+C(.5,+(+(b[e+7812+(v*102|0)+(j<<1)>>1]|0)*.25)),A=b[e+1936+(j<<1)>>1]|0,B=e+1936+(j+1<<1)|0,o=b[B>>1]|0,p=b[E>>1]|0,(A&65535)<(((o&65535)<(p&65535)?o:p)&65535)):0){l=c+8629+(v*51|0)+j|0;m=(a[x>>0]|0)==1;k=A;do{o=s+(k&65535)|0;n=+g[f+(o<<2)>>2]*z;o=h+(o<<2)|0;g[o>>2]=n;p=a[q>>0]|0;if(m)j=1-(d[l>>0]<<1)&255;else j=1;if((p<<24>>24==15?1:(p<<24>>24==14)<<31>>31)<<24>>24!=j<<24>>24)g[o>>2]=-n;k=k+1<<16>>16;o=b[B>>1]|0;p=b[E>>1]|0}while((k&65535)<(((o&65535)<(p&65535)?o:p)&65535))}j=r+1<<24>>24;k=a[e>>0]|0;if((j&255)<(k&255)){r=j;j=j&255}else break}j=a[u>>0]|0}i=i+1<<24>>24;t=t+1<<24>>24}while((t&255)<(j&255));j=a[D>>0]|0}k=w+1<<24>>24;if((k&255)<(j&255)){w=k;v=k&255}else break}return}function jh(f,h,i,k,l){f=f|0;h=h|0;i=i|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0,A=0.0,B=0,C=0.0,D=0,E=0.0,F=0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0;if((a[f+4>>0]|0)==2){if(!(k<<16>>16))return;n=k&65535;m=0;do{k=i+(m*12|0)|0;f=k;b[f>>1]=0;b[f+2>>1]=0>>>16;k=k+4|0;b[k>>1]=0;b[k+2>>1]=0>>>16;b[i+(m*12|0)+8>>1]=16256;b[i+(m*12|0)+10>>1]=16256;m=m+1|0}while((m|0)!=(n|0));return}if(!((Yf(l)|0)<<24>>24))m=f+9042|0;else{M=f+2040|0;m=f+9042|0;L=0;n=0;while(1){p=b[f+1936+(n<<1)>>1]|0;K=b[f+1936+(n+1<<1)>>1]|0;o=b[M>>1]|0;o=(K&65535)<(o&65535)?K:o;if((p&65535)<(o&65535)){K=f+10224+n|0;I=o&65535;J=(a[m>>0]|0)==0;H=p&65535;do{t=h+(H<<2)|0;q=+g[t>>2];if(J)o=0;else o=(a[K>>0]|0)!=0;v=i+(H*12|0)|0;w=(c[j>>2]=e[v>>1]<<16,+g[j>>2]);x=i+(H*12|0)+2|0;y=(c[j>>2]=e[x>>1]<<16,+g[j>>2]);z=i+(H*12|0)+4|0;A=(c[j>>2]=e[z>>1]<<16,+g[j>>2]);B=i+(H*12|0)+6|0;C=(c[j>>2]=e[B>>1]<<16,+g[j>>2]);D=i+(H*12|0)+8|0;n=b[D>>1]|0;E=(c[j>>2]=(n&65535)<<16,+g[j>>2]);F=i+(H*12|0)+10|0;p=b[F>>1]|0;G=(c[j>>2]=(p&65535)<<16,+g[j>>2]);if((n&65535)>16383)u=+g[107556+((((n&65535)>>>7&65535)<<16)+-8388608>>16<<2)>>2]*A*+g[108068+((n&127)<<2)>>2];else u=0.0;if(o){if((p&65535)>16383)s=+g[107556+((((p&65535)>>>7&65535)<<16)+-8388608>>16<<2)>>2]*C*+g[108068+((p&127)<<2)>>2];else s=0.0;r=u*w;o=(g[j>>2]=r+s*y,c[j>>2]|0);n=o&-65536;if(o&32768){p=o&-8388608;s=(c[j>>2]=n,+g[j>>2]);s=s+(c[j>>2]=p|65536,+g[j>>2]);n=(g[j>>2]=s-(c[j>>2]=p,+g[j>>2]),c[j>>2]|0)}q=q+(c[j>>2]=n,+g[j>>2]);g[t>>2]=q}else r=u*w;s=q-r;b[v>>1]=(g[j>>2]=q*.953125,c[j>>2]|0)>>>16;b[x>>1]=(g[j>>2]=(w-u*q)*.953125,c[j>>2]|0)>>>16;b[z>>1]=(g[j>>2]=A*.90625+q*w,c[j>>2]|0)>>>16;b[B>>1]=(g[j>>2]=C*.90625+s*y,c[j>>2]|0)>>>16;b[D>>1]=(g[j>>2]=E*.90625+(w*w+q*q)*.5,c[j>>2]|0)>>>16;b[F>>1]=(g[j>>2]=G*.90625+(y*y+s*s)*.5,c[j>>2]|0)>>>16;H=H+1|0}while(H>>>0>>0)}n=L+1<<24>>24;if((n&255)<((Yf(l)|0)&255)){L=n;n=n&255}else break}}if(!(a[m>>0]|0))return;if(!(a[f+10222>>0]|0))return;m=(d[f+10223>>0]|0)+65535&65535;n=k&65535;if(m>>>0>=n>>>0)return;do{k=i+(m*12|0)|0;f=k;b[f>>1]=0;b[f+2>>1]=0>>>16;k=k+4|0;b[k>>1]=0;b[k+2>>1]=0>>>16;b[i+(m*12|0)+8>>1]=16256;b[i+(m*12|0)+10>>1]=16256;m=m+30&65535}while(m>>>0>>0);return}function kh(c,d){c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if((a[c+4>>0]|0)==2)return;o=c+2|0;e=a[o>>0]|0;if(!(e<<24>>24))return;p=c+2040|0;l=0;k=0;while(1){j=c+5+k|0;f=a[j>>0]|0;if(!(f<<24>>24))f=e;else{g=a[c>>0]|0;i=0;e=g;while(1){if(!(e<<24>>24)){h=g;e=0}else{h=0;f=0;e=g;while(1){if((a[c+6842+(k*120|0)+f>>0]|0)==13?(m=b[c+1936+(f<<1)>>1]|0,g=b[c+1936+(f+1<<1)>>1]|0,n=b[p>>1]|0,n=(g&65535)<(n&65535)?g:n,(m&65535)<(n&65535)):0){e=n&65535;f=m&65535;do{g=d+(f*12|0)|0;q=g;b[q>>1]=0;b[q+2>>1]=0>>>16;g=g+4|0;b[g>>1]=0;b[g+2>>1]=0>>>16;b[d+(f*12|0)+8>>1]=16256;b[d+(f*12|0)+10>>1]=16256;f=f+1|0}while(f>>>0>>0);g=a[c>>0]|0}else g=e;e=h+1<<24>>24;if((e&255)<(g&255)){h=e;f=e&255;e=g}else break}f=a[j>>0]|0;h=g;e=g}i=i+1<<24>>24;if((i&255)>=(f&255))break;else g=h}f=a[o>>0]|0}e=l+1<<24>>24;if((e&255)<(f&255)){l=e;k=e&255;e=f}else break}return}function lh(c,f,h,i,j,k,n,o,p,q){c=c|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16384|0;if((l|0)>=(m|0))W(16384);s=B+8192|0;y=B;t=a[c+4>>0]|0;if(t<<24>>24==2){l=B;return}if(!(a[f+1>>0]|0)){l=B;return}u=(q&65535)<<1&65534;if(u|0){v=e[f+2>>1]|0;w=+g[107524+(d[f+5>>0]<<2)>>2];r=0;x=0;do{g[s+(x<<2)>>2]=w*+(b[i+(x+u-v<<1)>>1]|0);r=r+1<<16>>16;x=r&65535}while(u>>>0>x>>>0)}Eh(j,t,k,n,s,y,p,q);Fh(c,c+9053|0,o,p,y,q);u=a[f>>0]|0;if(!(u<<24>>24)){l=B;return}v=c+2040|0;t=0;r=0;while(1){if(a[f+6+r>>0]|0?(z=b[c+1936+(r<<1)>>1]|0,q=b[c+1936+(r+1<<1)>>1]|0,A=b[v>>1]|0,A=(q&65535)<(A&65535)?q:A,(z&65535)<(A&65535)):0){r=A&65535;s=z&65535;do{q=h+(s<<2)|0;g[q>>2]=+g[y+(s<<2)>>2]+ +g[q>>2];s=s+1|0}while(s>>>0>>0)}r=t+1<<24>>24;if((r&255)<(u&255)){t=r;r=r&255}else break}l=B;return}function mh(e,f,h,i,j,k){e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0;P=l;l=l+336|0;if((l|0)>=(m|0))W(336);J=P+168|0;K=P+84|0;L=P;if(!(a[e+9040>>0]|0)){l=P;return}E=e+3|0;if(!(a[E>>0]|0)){l=P;return}G=e+1|0;M=L+4|0;O=K+4|0;H=e+4|0;I=e+2040|0;D=(k&65535)>>>3&65535;C=0;z=0;while(1){y=f+z|0;if(a[y>>0]|0){A=f+8+z|0;B=N(z,D)|0;w=0;x=d[G>>0]|0;t=0;while(1){k=x&65535;n=k-(d[f+16+(z<<2)+t>>0]|0)|0;x=(n|0)>0?n:0;n=a[f+48+(z<<2)+t>>0]|0;n=(n&255)<20?n:20;if(n<<24>>24){o=((d[A>>0]|0)+3&255)<<24>>24==3;o=(a[f+112+(z<<2)+t>>0]|0)==0?(o?107396:107460):o?107268:107332;v=n&255;n=0;do{c[J+(n<<2)>>2]=c[o+(d[f+144+(z<<7)+(t<<5)+n>>0]<<2)>>2];n=n+1|0}while((n|0)!=(v|0));g[L>>2]=1.0;q=0;s=1;while(1){n=((q<<2)+1020&1020)+4|0;o=J+(s+-1<<2)|0;if(s>>>0>1){p=+g[o>>2];r=1;do{g[K+(r<<2)>>2]=+g[L+(r<<2)>>2]+p*+g[L+(s-r<<2)>>2];r=r+1|0}while((r|0)!=(s|0));DZ(M|0,O|0,n|0)|0}c[L+(s<<2)>>2]=c[o>>2];if(s>>>0>>0){q=q+1|0;s=s+1|0}else break}n=x&65535;if(n>>>0>=((Zf(h,i,(a[H>>0]|0)==2&1)|0)&255)>>>0)n=(Zf(h,i,(a[H>>0]|0)==2&1)|0)&255;u=d[e>>0]|0;u=b[e+1936+(((n>>>0>>0?n:u)&65535)<<1)>>1]|0;n=b[I>>1]|0;n=(u&65535)<(n&65535)?u:n;if(k>>>0>=((Zf(h,i,(a[H>>0]|0)==2&1)|0)&255)>>>0)k=(Zf(h,i,(a[H>>0]|0)==2&1)|0)&255;s=d[e>>0]|0;s=b[e+1936+(((k>>>0>>0?k:s)&65535)<<1)>>1]|0;k=b[I>>1]|0;k=((s&65535)<(k&65535)?s:k)&65535;s=k-(n&65535)|0;u=s&65535;if((s<<16|0)>=65536?(F=(a[f+80+(z<<2)+t>>0]|0)==0,FZ(J|0,0,160)|0,u<<16>>16):0){s=F?1:-1;t=v+255&255;r=0;k=j+(B+((F?n:k+65535&65535)&65535)<<2)|0;n=0;while(1){o=n<<24>>24;p=+g[k>>2];q=0;do{Q=q;q=q+1|0;p=p-+g[J+(Q+o<<2)>>2]*+g[L+(q<<2)>>2]}while((q|0)!=(v|0));Q=n+-1<<24>>24;n=Q<<24>>24<0?t:Q;Q=n<<24>>24;g[J+(Q+v<<2)>>2]=p;g[J+(Q<<2)>>2]=p;g[k>>2]=p;r=r+1<<16>>16;if((r&65535)>=(u&65535))break;else k=k+(s<<2)|0}}}k=w+1<<24>>24;if((k&255)>=(d[y>>0]|0))break;else{w=k;t=k&255}}}k=C+1<<24>>24;if((k&255)<(d[E>>0]|0)){C=k;z=k&255}else break}l=P;return}function nh(b,c){b=b|0;c=c|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=a[b+1>>0]|0;switch(e<<24>>24){case 1:{a[b+4>>0]=-1;break}case 0:return;default:{}}l=b+188|0;m=b+21|0;n=b+184|0;k=e&255;i=0;h=0;e=0;do{j=(d[b+4+e>>0]<<2)+4|0;if(!(a[b+22+e>>0]|0))f=+g[l>>2]*+((d[b+39+e>>0]|0)+-80+(d[m>>0]|0)|0);else f=-(+g[n>>2]*+((d[b+39+e>>0]|0)+-80+(d[m>>0]|0)|0));f=+kc(+(f/24.0));e=h&65535;if(j>>>0>e>>>0)do{o=c+(e<<2)|0;g[o>>2]=+g[o>>2]*f;h=h+1<<16>>16;e=h&65535}while(j>>>0>e>>>0);h=j&65535;i=i+1<<16>>16;e=i&65535}while(e>>>0>>0);return}function oh(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+8192|0;if((l|0)>=(m|0))W(8192);G=H;FZ(G|0,0,8192)|0;F=k&65535;q=(k&65535)>>>3;E=q&65535;u=(k&65535)>>>4;o=(F-E|0)/2|0;d=d&255;if(j<<24>>24==23){j=a+16+(d<<2)|0;e=a+16+((e&255)<<2)|0;D=0;v=0}else{v=e&255;j=a+(d<<2)|0;e=a+(v<<2)|0;D=c[a+8+(d<<2)>>2]|0;v=c[a+8+(v<<2)>>2]|0}p=c[j>>2]|0;e=c[e>>2]|0;switch(b<<24>>24){case 0:{switch((F<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;n=8;break}case 960:case 1024:{d=a+28|0;n=8;break}default:d=0}if((n|0)==8)d=c[d>>2]|0;Dh(d,f,G);d=k<<16>>16==0;if(d){l=H;return}else j=0;do{g[h+(j<<2)>>2]=+g[i+(j<<2)>>2]+ +g[G+(j<<2)>>2]*+g[e+(j<<2)>>2];E=j+1|0;g[h+(E<<2)>>2]=+g[i+(E<<2)>>2]+ +g[G+(E<<2)>>2]*+g[e+(E<<2)>>2];E=j+2|0;g[h+(E<<2)>>2]=+g[i+(E<<2)>>2]+ +g[G+(E<<2)>>2]*+g[e+(E<<2)>>2];E=j+3|0;g[h+(E<<2)>>2]=+g[i+(E<<2)>>2]+ +g[G+(E<<2)>>2]*+g[e+(E<<2)>>2];j=(j<<16)+262144>>16}while((j|0)<(F|0));if(d){l=H;return}e=F+-1|0;a=F+-2|0;b=F+-3|0;n=F+-4|0;j=0;d=0;while(1){E=d+F|0;g[i+(d<<2)>>2]=+g[G+(E<<2)>>2]*+g[p+(e+j<<2)>>2];g[i+(d+1<<2)>>2]=+g[G+(E+1<<2)>>2]*+g[p+(a+j<<2)>>2];g[i+(d+2<<2)>>2]=+g[G+(E+2<<2)>>2]*+g[p+(b+j<<2)>>2];g[i+(d+3<<2)>>2]=+g[G+(E+3<<2)>>2]*+g[p+(n+j<<2)>>2];d=(d<<16)+262144>>16;if((d|0)<(F|0))j=0-d|0;else break}l=H;return}case 1:{switch((F<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;n=17;break}case 960:case 1024:{d=a+28|0;n=17;break}default:d=0}if((n|0)==17)d=c[d>>2]|0;Dh(d,f,G);if(k<<16>>16){d=0;do{g[h+(d<<2)>>2]=+g[i+(d<<2)>>2]+ +g[G+(d<<2)>>2]*+g[e+(d<<2)>>2];C=d+1|0;g[h+(C<<2)>>2]=+g[i+(C<<2)>>2]+ +g[G+(C<<2)>>2]*+g[e+(C<<2)>>2];C=d+2|0;g[h+(C<<2)>>2]=+g[i+(C<<2)>>2]+ +g[G+(C<<2)>>2]*+g[e+(C<<2)>>2];C=d+3|0;g[h+(C<<2)>>2]=+g[i+(C<<2)>>2]+ +g[G+(C<<2)>>2]*+g[e+(C<<2)>>2];d=(d<<16)+262144>>16}while((d|0)<(F|0))}n=o&65535;b=(n|0)==0;if(!b){d=0;j=0;do{c[i+(j<<2)>>2]=c[G+(j+F<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((n|0)>(j|0))}if(q<<16>>16){j=n+F|0;e=E+-1|0;d=0;a=0;do{g[i+(a+n<<2)>>2]=+g[G+(j+a<<2)>>2]*+g[D+(e-a<<2)>>2];d=d+1<<16>>16;a=d<<16>>16}while((E|0)>(a|0))}if(b){l=H;return}j=n+E|0;d=0;e=0;do{g[i+(j+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((n|0)>(e|0));l=H;return}case 2:{C=a+24|0;r=q<<1&65535;Dh(c[C>>2]|0,f,G);Dh(c[C>>2]|0,f+(E<<2)|0,G+(r<<2)|0);y=q<<2&65535;Dh(c[C>>2]|0,f+(r<<2)|0,G+(y<<2)|0);s=E*3|0;Dh(c[C>>2]|0,f+(s<<2)|0,G+(r*3<<2)|0);A=k&-8&65535;Dh(c[C>>2]|0,f+(y<<2)|0,G+(A<<2)|0);t=E*5|0;Dh(c[C>>2]|0,f+(t<<2)|0,G+(r*5<<2)|0);x=E*6|0;Dh(c[C>>2]|0,f+(x<<2)|0,G+(r*6<<2)|0);B=E*7|0;Dh(c[C>>2]|0,f+(B<<2)|0,G+(r*7<<2)|0);C=o&65535;z=(C|0)==0;if(!z){d=0;j=0;do{c[h+(j<<2)>>2]=c[i+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((C|0)>(j|0))}j=q<<16>>16==0;if(!j){e=C+E|0;a=E+-1|0;b=C+r|0;n=C+s|0;o=u&65535;f=C+y|0;d=0;k=0;do{w=k+C|0;g[h+(w<<2)>>2]=+g[i+(w<<2)>>2]+ +g[G+(k<<2)>>2]*+g[v+(k<<2)>>2];w=e+k|0;p=D+(a-k<<2)|0;q=D+(k<<2)|0;g[h+(w<<2)>>2]=+g[i+(w<<2)>>2]+ +g[G+(k+E<<2)>>2]*+g[p>>2]+ +g[G+(k+r<<2)>>2]*+g[q>>2];w=b+k|0;g[h+(w<<2)>>2]=+g[i+(w<<2)>>2]+ +g[G+(k+s<<2)>>2]*+g[p>>2]+ +g[G+(k+y<<2)>>2]*+g[q>>2];w=n+k|0;g[h+(w<<2)>>2]=+g[i+(w<<2)>>2]+ +g[G+(k+t<<2)>>2]*+g[p>>2]+ +g[G+(k+x<<2)>>2]*+g[q>>2];if((k|0)<(o|0)){w=f+k|0;g[h+(w<<2)>>2]=+g[i+(w<<2)>>2]+ +g[G+(k+B<<2)>>2]*+g[p>>2]+ +g[G+(k+A<<2)>>2]*+g[q>>2]}d=d+1<<16>>16;k=d<<16>>16}while((k|0)<(E|0));if(!j){u=u&65535;v=E*9|0;h=E+-1|0;w=E*10|0;r=t-F+C|0;s=E*11|0;t=E*12|0;n=x-F+C|0;o=E*13|0;f=E*14|0;k=B-F+C|0;p=E*15|0;q=A-F+C|0;b=y-F+C|0;a=0;j=0;d=0;while(1){if((d|0)<(u|0)){j=D+(h+j<<2)|0;e=D+(d<<2)|0}else{j=D+(h+j<<2)|0;e=D+(d<<2)|0;g[i+(b+d<<2)>>2]=+g[G+(d+B<<2)>>2]*+g[j>>2]+ +g[G+(d+A<<2)>>2]*+g[e>>2]}g[i+(r+d<<2)>>2]=+g[G+(d+v<<2)>>2]*+g[j>>2]+ +g[G+(d+w<<2)>>2]*+g[e>>2];g[i+(n+d<<2)>>2]=+g[G+(d+s<<2)>>2]*+g[j>>2]+ +g[G+(d+t<<2)>>2]*+g[e>>2];g[i+(k+d<<2)>>2]=+g[G+(d+o<<2)>>2]*+g[j>>2]+ +g[G+(d+f<<2)>>2]*+g[e>>2];g[i+(q+d<<2)>>2]=+g[G+(d+p<<2)>>2]*+g[j>>2];a=a+1<<16>>16;d=a<<16>>16;if((d|0)>=(E|0))break;else j=0-d|0}}}if(z){l=H;return}j=C+E|0;d=0;e=0;do{g[i+(j+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((C|0)>(e|0));l=H;return}case 3:{switch((F<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;n=47;break}case 960:case 1024:{d=a+28|0;n=47;break}default:d=0}if((n|0)==47)d=c[d>>2]|0;Dh(d,f,G);a=o&65535;e=(a|0)==0;if(!e){d=0;j=0;do{c[h+(j<<2)>>2]=c[i+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((a|0)>(j|0))}if(q<<16>>16){d=0;j=0;do{D=j+a|0;g[h+(D<<2)>>2]=+g[i+(D<<2)>>2]+ +g[G+(D<<2)>>2]*+g[v+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((j|0)<(E|0))}if(!e){j=a+E|0;d=0;e=0;do{E=j+e|0;g[h+(E<<2)>>2]=+g[i+(E<<2)>>2]+ +g[G+(E<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((a|0)>(e|0))}if(!(k<<16>>16)){l=H;return}j=F+-1|0;d=0;e=0;do{g[i+(e<<2)>>2]=+g[G+(e+F<<2)>>2]*+g[p+(j-e<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((e|0)<(F|0));l=H;return}default:{l=H;return}}}function ph(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,l=0,m=0;l=e&65535;e=e<<16>>16!=0;if(f<<24>>24==23){if(!e)return;j=l<<1;i=l*3|0;k=0;do{e=a+(k+l<<1)|0;b[a+(k<<1)>>1]=b[e>>1]|0;f=a+(k+j<<1)|0;b[e>>1]=b[f>>1]|0;h=+g[c+(k<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=9;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=9;else e=32767}if((m|0)==9){m=0;e=~~h&65535}b[f>>1]=e;h=+g[d+(k<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=13;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=13;else e=32767}if((m|0)==13){m=0;e=~~h&65535}b[a+(k+i<<1)>>1]=e;k=k+1|0}while((k|0)!=(l|0));return}else{if(!e)return;i=l<<1;j=0;do{f=a+(j+l<<1)|0;b[a+(j<<1)>>1]=b[f>>1]|0;h=+g[c+(j<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=18;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=18;else e=32767}if((m|0)==18){m=0;e=~~h&65535}b[f>>1]=e;h=+g[d+(j<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=22;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=22;else e=32767}if((m|0)==22){m=0;e=~~h&65535}b[a+(j+i<<1)>>1]=e;j=j+1|0}while((j|0)!=(l|0));return}}function qh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0;o=l;l=l+16384|0;if((l|0)>=(m|0))W(16384);n=o;if(!b){b=20;l=o;return b|0}if((a[b+12436>>0]|0)!=1){b=21;l=o;return b|0}j=b+10|0;if(a[j>>0]|0)if(!(a[b+12426>>0]|0))i=1;else{a[b+12412>>0]=-1;i=1}else i=(c[b+12432>>2]|0)==0&1;k=b+9|0;a[k>>0]=g<<24>>24!=0&1;g=(rh(b,e,n,0,i)|0)&255;a[j>>0]=(d[j>>0]|0)+g;h=h<<24>>24!=0;g=c[b+12448>>2]|0;if(h)sh(b,g,n,e);else th(b,g,n,e);g=(rh(b,f,n,1,i)|0)&255;a[j>>0]=(d[j>>0]|0)+g;g=c[b+12452>>2]|0;if(h)sh(b,g,n,f);else th(b,g,n,f);if(a[b+53426>>0]|0)a[k>>0]=0;if(c[b+12432>>2]|0?(a[j>>0]|0)==0:0){g=uh(b,0)|0;if(g<<24>>24){b=g;l=o;return b|0}g=uh(b,1)|0;if(g<<24>>24){b=g;l=o;return b|0}}f=b+53418|0;if(a[f>>0]|0){e=b+53416|0;h=0;g=0;while(1){EZ(b+12456+(g<<9)|0,b+12456+(g+(d[e>>0]|0)<<9)|0,512)|0;i=h+1<<24>>24;g=a[f>>0]|0;if((i&255)<(g&255)){h=i;g=i&255}else break}if((g&255)<40)j=23;else j=25}else{g=0;j=23}if((j|0)==23){FZ(b+(((g&255)<<9)+12456)|0,0,((39-g&255)<<9)+512|0)|0;if(!(a[f>>0]|0)){g=0;j=27}else{e=b+53416|0;j=25}}if((j|0)==25){h=0;g=0;while(1){EZ(b+32936+(g<<9)|0,b+32936+(g+(d[e>>0]|0)<<9)|0,512)|0;i=h+1<<24>>24;g=a[f>>0]|0;if((i&255)<(g&255)){h=i;g=i&255}else break}if((g&255)<40)j=27}if((j|0)==27)FZ(b+(((g&255)<<9)+32936)|0,0,((39-g&255)<<9)+512|0)|0;b=b+12428|0;c[b>>2]=(c[b>>2]|0)+1;b=0;l=o;return b|0}function rh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=b+12421|0;a[B>>0]=0;C=g&255;k=c[b+12440+(C<<2)>>2]|0;i=b+12456+(C*20480|0)|0;j=a[b+53418>>0]|0;if(!(h<<24>>24)){A=b+14|0;yh(b,k,e,i,j,a[A>>0]|0);zh(b,i,i,g);h=Ah(b,i,g)|0;if(!((h|a[b+9>>0])<<24>>24)){t=b+53416|0;e=a[t>>0]|0;if(!(e<<24>>24)){C=h;return C|0}u=b+616+(C*6|0)|0;v=b+12420|0;w=b+12423|0;x=b+12422|0;y=b+15|0;z=b+53419|0;s=0;r=0;do{q=s<<16>>16;p=(r|0)<(d[u>>0]|0);l=a[(p?x:B)>>0]|0;m=a[(p?w:y)>>0]|0;p=a[(p?v:A)>>0]|0;o=p&255;n=o+(l&255)|0;if(n|0){j=r+(d[z>>0]|0)|0;i=0;g=0;do{c[f+(r<<9)+(g<<3)>>2]=c[b+12456+(C*20480|0)+(j<<9)+(g<<3)>>2];c[f+(r<<9)+(g<<3)+4>>2]=c[b+12456+(C*20480|0)+(j<<9)+(g<<3)+4>>2];i=i+1<<16>>16;g=i<<16>>16}while((n|0)>(g|0))}j=o+(m&255)|0;if(j>>>0>n>>>0){g=r+(d[z>>0]|0)|0;i=n&65535;k=n;do{c[f+(r<<9)+(k<<3)>>2]=c[b+12456+(C*20480|0)+(g<<9)+(k<<3)>>2];c[f+(r<<9)+(k<<3)+4>>2]=c[b+12456+(C*20480|0)+(g<<9)+(k<<3)+4>>2];i=i+1<<16>>16;k=i<<16>>16}while((j|0)>(k|0))}j=n>>>0>j>>>0?l:m;i=(j&255)+o|0;if((i&65535)<<16>>16<64){FZ(f+(q<<9)+(i<<3)|0,0,(63-(j&255)-(p&255)<<3&524280)+8|0)|0;e=a[t>>0]|0}s=s+1<<16>>16;r=s<<16>>16}while((r|0)<(e&255|0));return h|0}}else{yh(b,k,e,i,j,32);h=0}i=b+53416|0;if(!(a[i>>0]|0)){C=h;return C|0}j=b+53419|0;e=0;g=0;do{B=g+(d[j>>0]|0)|0;c[f+(g<<9)>>2]=c[b+12456+(C*20480|0)+(B<<9)>>2];c[f+(g<<9)+4>>2]=c[b+12456+(C*20480|0)+(B<<9)+4>>2];c[f+(g<<9)+8>>2]=c[b+12456+(C*20480|0)+(B<<9)+8>>2];c[f+(g<<9)+12>>2]=c[b+12456+(C*20480|0)+(B<<9)+12>>2];c[f+(g<<9)+16>>2]=c[b+12456+(C*20480|0)+(B<<9)+16>>2];c[f+(g<<9)+20>>2]=c[b+12456+(C*20480|0)+(B<<9)+20>>2];c[f+(g<<9)+24>>2]=c[b+12456+(C*20480|0)+(B<<9)+24>>2];c[f+(g<<9)+28>>2]=c[b+12456+(C*20480|0)+(B<<9)+28>>2];c[f+(g<<9)+32>>2]=c[b+12456+(C*20480|0)+(B<<9)+32>>2];c[f+(g<<9)+36>>2]=c[b+12456+(C*20480|0)+(B<<9)+36>>2];c[f+(g<<9)+40>>2]=c[b+12456+(C*20480|0)+(B<<9)+40>>2];c[f+(g<<9)+44>>2]=c[b+12456+(C*20480|0)+(B<<9)+44>>2];c[f+(g<<9)+48>>2]=c[b+12456+(C*20480|0)+(B<<9)+48>>2];c[f+(g<<9)+52>>2]=c[b+12456+(C*20480|0)+(B<<9)+52>>2];c[f+(g<<9)+56>>2]=c[b+12456+(C*20480|0)+(B<<9)+56>>2];c[f+(g<<9)+60>>2]=c[b+12456+(C*20480|0)+(B<<9)+60>>2];c[f+(g<<9)+64>>2]=c[b+12456+(C*20480|0)+(B<<9)+64>>2];c[f+(g<<9)+68>>2]=c[b+12456+(C*20480|0)+(B<<9)+68>>2];c[f+(g<<9)+72>>2]=c[b+12456+(C*20480|0)+(B<<9)+72>>2];c[f+(g<<9)+76>>2]=c[b+12456+(C*20480|0)+(B<<9)+76>>2];c[f+(g<<9)+80>>2]=c[b+12456+(C*20480|0)+(B<<9)+80>>2];c[f+(g<<9)+84>>2]=c[b+12456+(C*20480|0)+(B<<9)+84>>2];c[f+(g<<9)+88>>2]=c[b+12456+(C*20480|0)+(B<<9)+88>>2];c[f+(g<<9)+92>>2]=c[b+12456+(C*20480|0)+(B<<9)+92>>2];c[f+(g<<9)+96>>2]=c[b+12456+(C*20480|0)+(B<<9)+96>>2];c[f+(g<<9)+100>>2]=c[b+12456+(C*20480|0)+(B<<9)+100>>2];c[f+(g<<9)+104>>2]=c[b+12456+(C*20480|0)+(B<<9)+104>>2];c[f+(g<<9)+108>>2]=c[b+12456+(C*20480|0)+(B<<9)+108>>2];c[f+(g<<9)+112>>2]=c[b+12456+(C*20480|0)+(B<<9)+112>>2];c[f+(g<<9)+116>>2]=c[b+12456+(C*20480|0)+(B<<9)+116>>2];c[f+(g<<9)+120>>2]=c[b+12456+(C*20480|0)+(B<<9)+120>>2];c[f+(g<<9)+124>>2]=c[b+12456+(C*20480|0)+(B<<9)+124>>2];c[f+(g<<9)+128>>2]=c[b+12456+(C*20480|0)+(B<<9)+128>>2];c[f+(g<<9)+132>>2]=c[b+12456+(C*20480|0)+(B<<9)+132>>2];c[f+(g<<9)+136>>2]=c[b+12456+(C*20480|0)+(B<<9)+136>>2];c[f+(g<<9)+140>>2]=c[b+12456+(C*20480|0)+(B<<9)+140>>2];c[f+(g<<9)+144>>2]=c[b+12456+(C*20480|0)+(B<<9)+144>>2];c[f+(g<<9)+148>>2]=c[b+12456+(C*20480|0)+(B<<9)+148>>2];c[f+(g<<9)+152>>2]=c[b+12456+(C*20480|0)+(B<<9)+152>>2];c[f+(g<<9)+156>>2]=c[b+12456+(C*20480|0)+(B<<9)+156>>2];c[f+(g<<9)+160>>2]=c[b+12456+(C*20480|0)+(B<<9)+160>>2];c[f+(g<<9)+164>>2]=c[b+12456+(C*20480|0)+(B<<9)+164>>2];c[f+(g<<9)+168>>2]=c[b+12456+(C*20480|0)+(B<<9)+168>>2];c[f+(g<<9)+172>>2]=c[b+12456+(C*20480|0)+(B<<9)+172>>2];c[f+(g<<9)+176>>2]=c[b+12456+(C*20480|0)+(B<<9)+176>>2];c[f+(g<<9)+180>>2]=c[b+12456+(C*20480|0)+(B<<9)+180>>2];c[f+(g<<9)+184>>2]=c[b+12456+(C*20480|0)+(B<<9)+184>>2];c[f+(g<<9)+188>>2]=c[b+12456+(C*20480|0)+(B<<9)+188>>2];c[f+(g<<9)+192>>2]=c[b+12456+(C*20480|0)+(B<<9)+192>>2];c[f+(g<<9)+196>>2]=c[b+12456+(C*20480|0)+(B<<9)+196>>2];c[f+(g<<9)+200>>2]=c[b+12456+(C*20480|0)+(B<<9)+200>>2];c[f+(g<<9)+204>>2]=c[b+12456+(C*20480|0)+(B<<9)+204>>2];c[f+(g<<9)+208>>2]=c[b+12456+(C*20480|0)+(B<<9)+208>>2];c[f+(g<<9)+212>>2]=c[b+12456+(C*20480|0)+(B<<9)+212>>2];c[f+(g<<9)+216>>2]=c[b+12456+(C*20480|0)+(B<<9)+216>>2];c[f+(g<<9)+220>>2]=c[b+12456+(C*20480|0)+(B<<9)+220>>2];c[f+(g<<9)+224>>2]=c[b+12456+(C*20480|0)+(B<<9)+224>>2];c[f+(g<<9)+228>>2]=c[b+12456+(C*20480|0)+(B<<9)+228>>2];c[f+(g<<9)+232>>2]=c[b+12456+(C*20480|0)+(B<<9)+232>>2];c[f+(g<<9)+236>>2]=c[b+12456+(C*20480|0)+(B<<9)+236>>2];c[f+(g<<9)+240>>2]=c[b+12456+(C*20480|0)+(B<<9)+240>>2];c[f+(g<<9)+244>>2]=c[b+12456+(C*20480|0)+(B<<9)+244>>2];c[f+(g<<9)+248>>2]=c[b+12456+(C*20480|0)+(B<<9)+248>>2];c[f+(g<<9)+252>>2]=c[b+12456+(C*20480|0)+(B<<9)+252>>2];FZ(f+256+(e<<16>>16<<7<<2)|0,0,256)|0;e=e+1<<16>>16;g=e<<16>>16}while((g|0)<(d[i>>0]|0));return h|0}function sh(e,f,h,i){e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0;w=l;l=l+256|0;if((l|0)>=(m|0))W(256);u=w+128|0;v=w;s=e+53416|0;if(!(a[s>>0]|0)){l=w;return}t=f+4|0;q=0;r=0;j=0;while(1){e=0;do{y=+g[h+(j<<9)+(e<<3)>>2];z=+g[102888+(e<<3)>>2];A=+g[h+(j<<9)+(e<<3)+4>>2];x=+g[102888+(e<<3)+4>>2];g[u+(e<<2)>>2]=(y*z-A*x)*.015625;g[v+(e<<2)>>2]=(A*z+y*x)*.015625;e=e+1|0}while((e|0)!=32);wh(u,u);xh(v,v);n=c[f>>2]|0;o=b[t>>1]|0;p=o<<16>>16;e=0;j=0;while(1){B=u+(j<<2)|0;k=v+(j<<2)|0;A=+g[k>>2]-+g[B>>2];g[n+(j+640+p<<2)>>2]=A;g[n+(j+p<<2)>>2]=A;A=+g[B>>2]+ +g[k>>2];g[n+(e+703+p<<2)>>2]=A;g[n+(e+63+p<<2)>>2]=A;k=j+1|0;if((k|0)==32){e=r;j=0;break}else{e=~j;j=k}}while(1){B=j<<1;g[i+(e<<2)>>2]=+g[n+(j+p<<2)>>2]*+g[99432+(B<<2)>>2]+ +g[n+(j+96+p<<2)>>2]*+g[99432+(B+64<<2)>>2]+ +g[n+(j+128+p<<2)>>2]*+g[99432+(B+128<<2)>>2]+ +g[n+(j+224+p<<2)>>2]*+g[99432+(B+192<<2)>>2]+ +g[n+(j+256+p<<2)>>2]*+g[99432+(B+256<<2)>>2]+ +g[n+(j+352+p<<2)>>2]*+g[99432+(B+320<<2)>>2]+ +g[n+(j+384+p<<2)>>2]*+g[99432+(B+384<<2)>>2]+ +g[n+(j+480+p<<2)>>2]*+g[99432+(B+448<<2)>>2]+ +g[n+(j+512+p<<2)>>2]*+g[99432+(B+512<<2)>>2]+ +g[n+(j+608+p<<2)>>2]*+g[99432+(B+576<<2)>>2];j=j+1|0;if((j|0)==32)break;else e=e+1|0}b[t>>1]=o+-64<<16>>16<<16>>16<0?576:(o&65535)+65472&65535;e=q+1<<24>>24;if((e&255)<(d[s>>0]|0)){q=e;r=r+32|0;j=e&255}else break}l=w;return}function th(e,f,h,i){e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0;E=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);y=E+896|0;z=E+768|0;A=E+640|0;B=E+512|0;C=E+384|0;D=E+256|0;w=E+128|0;x=E;q=e+53416|0;if(!(a[q>>0]|0)){l=E;return}r=z+124|0;s=D+124|0;t=y+124|0;u=C+124|0;v=f+4|0;o=0;p=0;while(1){j=p&255;g[r>>2]=+g[h+(j<<9)+8>>2]*.015625;g[y>>2]=+g[h+(j<<9)>>2]*.015625;g[s>>2]=+g[h+(j<<9)+500>>2]*.015625;g[C>>2]=+g[h+(j<<9)+508>>2]*.015625;e=1;do{n=e<<1;F=n|1;k=31-e|0;g[z+(k<<2)>>2]=+g[h+(j<<9)+(F<<3)>>2]*.015625;g[y+(e<<2)>>2]=+g[h+(j<<9)+(n<<3)>>2]*.015625;g[D+(k<<2)>>2]=+g[h+(j<<9)+(63-F<<3)+4>>2]*.015625;g[C+(e<<2)>>2]=+g[h+(j<<9)+(63-n<<3)+4>>2]*.015625;e=e+1|0}while((e|0)!=31);g[z>>2]=+g[h+(j<<9)+504>>2]*.015625;g[t>>2]=+g[h+(j<<9)+496>>2]*.015625;g[D>>2]=+g[h+(j<<9)+4>>2]*.015625;g[u>>2]=+g[h+(j<<9)+12>>2]*.015625;vh(y,z,A,B);vh(C,D,w,x);k=b[v>>1]|0;n=(c[f>>2]|0)+(k<<16>>16<<2)|0;j=n+5120|0;e=0;do{I=w+(e<<2)|0;H=A+(e<<2)|0;G=+g[I>>2]-+g[H>>2];F=e<<1;g[j+(F<<2)>>2]=G;g[n+(F<<2)>>2]=G;G=+g[I>>2]+ +g[H>>2];H=127-F|0;g[j+(H<<2)>>2]=G;g[n+(H<<2)>>2]=G;H=31-e|0;I=x+(H<<2)|0;H=B+(H<<2)|0;G=+g[I>>2]+ +g[H>>2];F=F|1;g[j+(F<<2)>>2]=G;g[n+(F<<2)>>2]=G;G=+g[I>>2]-+g[H>>2];F=127-F|0;g[j+(F<<2)>>2]=G;g[n+(F<<2)>>2]=G;e=e+1|0}while((e|0)!=32);e=0;j=o;while(1){J=e+192|0;F=e+256|0;H=e+448|0;I=e+512|0;g[i+(j<<2)>>2]=+g[n+(e<<2)>>2]*+g[99432+(e<<2)>>2]+ +g[n+(J<<2)>>2]*+g[99432+(e+64<<2)>>2]+ +g[n+(F<<2)>>2]*+g[99432+(e+128<<2)>>2]+ +g[n+(H<<2)>>2]*+g[99432+(J<<2)>>2]+ +g[n+(I<<2)>>2]*+g[99432+(F<<2)>>2]+ +g[n+(e+704<<2)>>2]*+g[99432+(e+320<<2)>>2]+ +g[n+(e+768<<2)>>2]*+g[99432+(e+384<<2)>>2]+ +g[n+(e+960<<2)>>2]*+g[99432+(H<<2)>>2]+ +g[n+(e+1024<<2)>>2]*+g[99432+(I<<2)>>2]+ +g[n+(e+1216<<2)>>2]*+g[99432+(e+576<<2)>>2];e=e+1|0;if((e|0)==64)break;else j=j+1|0}b[v>>1]=k+-128<<16>>16<<16>>16<0?1152:(k&65535)+65408&65535;p=p+1<<24>>24;if((p&255)>=(d[q>>0]|0))break;else o=o+64|0}l=E;return}function uh(e,f){e=e|0;f=f|0;var g=0,h=0,i=0;a[e+12420>>0]=a[e+14>>0]|0;a[e+12423>>0]=a[e+15>>0]|0;a[e+12422>>0]=a[e+12421>>0]|0;g=f&255;h=e+610+g|0;f=a[h>>0]|0;a[e+612+g>>0]=f;if(!(f<<24>>24)){e=19;return e|0}a[e+646+g>>0]=a[(f&255)+-1+(e+634+(g*6|0))>>0]|0;i=e+614+g|0;b[e+2010+(g<<7)>>1]=b[e+730+(g*640|0)+((f&255)+-1<<1)>>1]|0;c[e+10460+(g<<8)>>2]=c[e+7388+(g<<9)+((d[i>>0]|0)+-1<<2)>>2];f=1;do{b[e+2010+(g<<7)+(f<<1)>>1]=b[e+730+(g*640|0)+(f*10|0)+((d[h>>0]|0)+-1<<1)>>1]|0;c[e+10460+(g<<8)+(f<<2)>>2]=c[e+7388+(g<<9)+(f<<3)+((d[i>>0]|0)+-1<<2)>>2];f=f+1|0}while((f|0)!=49);a[e+12277+(g<<6)>>0]=a[e+12149+(g<<6)>>0]|0;a[e+12277+(g<<6)+1>>0]=a[e+12149+(g<<6)+1>>0]|0;a[e+12277+(g<<6)+2>>0]=a[e+12149+(g<<6)+2>>0]|0;a[e+12277+(g<<6)+3>>0]=a[e+12149+(g<<6)+3>>0]|0;a[e+12277+(g<<6)+4>>0]=a[e+12149+(g<<6)+4>>0]|0;a[e+12277+(g<<6)+5>>0]=a[e+12149+(g<<6)+5>>0]|0;a[e+12277+(g<<6)+6>>0]=a[e+12149+(g<<6)+6>>0]|0;a[e+12277+(g<<6)+7>>0]=a[e+12149+(g<<6)+7>>0]|0;a[e+12277+(g<<6)+8>>0]=a[e+12149+(g<<6)+8>>0]|0;a[e+12277+(g<<6)+9>>0]=a[e+12149+(g<<6)+9>>0]|0;a[e+12277+(g<<6)+10>>0]=a[e+12149+(g<<6)+10>>0]|0;a[e+12277+(g<<6)+11>>0]=a[e+12149+(g<<6)+11>>0]|0;a[e+12277+(g<<6)+12>>0]=a[e+12149+(g<<6)+12>>0]|0;a[e+12277+(g<<6)+13>>0]=a[e+12149+(g<<6)+13>>0]|0;a[e+12277+(g<<6)+14>>0]=a[e+12149+(g<<6)+14>>0]|0;a[e+12277+(g<<6)+15>>0]=a[e+12149+(g<<6)+15>>0]|0;a[e+12277+(g<<6)+16>>0]=a[e+12149+(g<<6)+16>>0]|0;a[e+12277+(g<<6)+17>>0]=a[e+12149+(g<<6)+17>>0]|0;a[e+12277+(g<<6)+18>>0]=a[e+12149+(g<<6)+18>>0]|0;a[e+12277+(g<<6)+19>>0]=a[e+12149+(g<<6)+19>>0]|0;a[e+12277+(g<<6)+20>>0]=a[e+12149+(g<<6)+20>>0]|0;a[e+12277+(g<<6)+21>>0]=a[e+12149+(g<<6)+21>>0]|0;a[e+12277+(g<<6)+22>>0]=a[e+12149+(g<<6)+22>>0]|0;a[e+12277+(g<<6)+23>>0]=a[e+12149+(g<<6)+23>>0]|0;a[e+12277+(g<<6)+24>>0]=a[e+12149+(g<<6)+24>>0]|0;a[e+12277+(g<<6)+25>>0]=a[e+12149+(g<<6)+25>>0]|0;a[e+12277+(g<<6)+26>>0]=a[e+12149+(g<<6)+26>>0]|0;a[e+12277+(g<<6)+27>>0]=a[e+12149+(g<<6)+27>>0]|0;a[e+12277+(g<<6)+28>>0]=a[e+12149+(g<<6)+28>>0]|0;a[e+12277+(g<<6)+29>>0]=a[e+12149+(g<<6)+29>>0]|0;a[e+12277+(g<<6)+30>>0]=a[e+12149+(g<<6)+30>>0]|0;a[e+12277+(g<<6)+31>>0]=a[e+12149+(g<<6)+31>>0]|0;a[e+12277+(g<<6)+32>>0]=a[e+12149+(g<<6)+32>>0]|0;a[e+12277+(g<<6)+33>>0]=a[e+12149+(g<<6)+33>>0]|0;a[e+12277+(g<<6)+34>>0]=a[e+12149+(g<<6)+34>>0]|0;a[e+12277+(g<<6)+35>>0]=a[e+12149+(g<<6)+35>>0]|0;a[e+12277+(g<<6)+36>>0]=a[e+12149+(g<<6)+36>>0]|0;a[e+12277+(g<<6)+37>>0]=a[e+12149+(g<<6)+37>>0]|0;a[e+12277+(g<<6)+38>>0]=a[e+12149+(g<<6)+38>>0]|0;a[e+12277+(g<<6)+39>>0]=a[e+12149+(g<<6)+39>>0]|0;a[e+12277+(g<<6)+40>>0]=a[e+12149+(g<<6)+40>>0]|0;a[e+12277+(g<<6)+41>>0]=a[e+12149+(g<<6)+41>>0]|0;a[e+12277+(g<<6)+42>>0]=a[e+12149+(g<<6)+42>>0]|0;a[e+12277+(g<<6)+43>>0]=a[e+12149+(g<<6)+43>>0]|0;a[e+12277+(g<<6)+44>>0]=a[e+12149+(g<<6)+44>>0]|0;a[e+12277+(g<<6)+45>>0]=a[e+12149+(g<<6)+45>>0]|0;a[e+12277+(g<<6)+46>>0]=a[e+12149+(g<<6)+46>>0]|0;a[e+12277+(g<<6)+47>>0]=a[e+12149+(g<<6)+47>>0]|0;a[e+12277+(g<<6)+48>>0]=a[e+12149+(g<<6)+48>>0]|0;a[e+53445+g>>0]=a[e+53443+g>>0]|0;a[e+12418+g>>0]=((a[e+10972+g>>0]|0)!=(d[h>>0]|0))<<31>>31;e=0;return e|0}function vh(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0;f=0;do{h=a+(f<<2)|0;j=+g[h>>2];i=b+(f<<2)|0;l=+g[i>>2];k=(j+l)*+g[101992+(f<<2)>>2];g[h>>2]=k+l*+g[101992+(f+64<<2)>>2];g[i>>2]=k+j*+g[101992+(f+32<<2)>>2];f=f+1|0}while((f|0)!=32);f=0;do{p=a+(f<<2)|0;r=+g[p>>2];n=b+(f<<2)|0;i=f+16|0;h=a+(i<<2)|0;q=+g[h>>2];i=b+(i<<2)|0;o=+g[i>>2];j=+g[102760+(f<<2)>>2];l=+g[102824+(f<<2)>>2];k=r-q;m=+g[n>>2]-o;g[p>>2]=r+q;g[n>>2]=o+ +g[n>>2];g[h>>2]=k*j-m*l;g[i>>2]=m*j+k*l;f=f+1|0}while((f|0)!=16);f=0;h=0;while(1){q=+g[102760+(h<<2)>>2];m=+g[102824+(h<<2)>>2];n=a+(f<<2)|0;r=+g[n>>2];p=b+(f<<2)|0;i=f+8|0;s=a+(i<<2)|0;o=+g[s>>2];i=b+(i<<2)|0;l=+g[i>>2];k=r-o;j=+g[p>>2]-l;g[n>>2]=r+o;g[p>>2]=l+ +g[p>>2];g[s>>2]=q*k-m*j;g[i>>2]=m*k+q*j;i=f+16|0;s=a+(i<<2)|0;j=+g[s>>2];i=b+(i<<2)|0;p=f+24|0;n=a+(p<<2)|0;k=+g[n>>2];p=b+(p<<2)|0;l=+g[p>>2];o=j-k;r=+g[i>>2]-l;g[s>>2]=j+k;g[i>>2]=l+ +g[i>>2];g[n>>2]=q*o-m*r;g[p>>2]=m*o+q*r;f=f+1|0;if((f|0)==8)break;else h=h+2|0}r=+g[a>>2];q=+g[b>>2];sa=a+16|0;o=+g[sa>>2];ra=b+16|0;m=+g[ra>>2];g[a>>2]=r+o;g[b>>2]=m+ +g[b>>2];g[sa>>2]=r-o;g[ra>>2]=q-m;oa=a+32|0;m=+g[oa>>2];na=b+32|0;q=+g[na>>2];ka=a+48|0;o=+g[ka>>2];ja=b+48|0;r=+g[ja>>2];g[oa>>2]=m+o;g[na>>2]=r+ +g[na>>2];g[ka>>2]=m-o;g[ja>>2]=q-r;ga=a+64|0;r=+g[ga>>2];fa=b+64|0;q=+g[fa>>2];ca=a+80|0;o=+g[ca>>2];ba=b+80|0;m=+g[ba>>2];g[ga>>2]=r+o;g[fa>>2]=m+ +g[fa>>2];g[ca>>2]=r-o;g[ba>>2]=q-m;_=a+96|0;m=+g[_>>2];Z=b+96|0;q=+g[Z>>2];W=a+112|0;o=+g[W>>2];V=b+112|0;r=+g[V>>2];g[_>>2]=m+o;g[Z>>2]=r+ +g[Z>>2];g[W>>2]=m-o;g[V>>2]=q-r;h=a+4|0;r=+g[h>>2];i=b+4|0;Q=a+20|0;q=+g[Q>>2];P=b+20|0;o=+g[P>>2];m=r-q;l=+g[i>>2]-o;g[h>>2]=r+q;g[i>>2]=o+ +g[i>>2];g[Q>>2]=(m+l)*.7071067690849304;g[P>>2]=(l-m)*.7071067690849304;M=a+36|0;m=+g[M>>2];L=b+36|0;I=a+52|0;l=+g[I>>2];H=b+52|0;o=+g[H>>2];q=m-l;r=+g[L>>2]-o;g[M>>2]=m+l;g[L>>2]=o+ +g[L>>2];g[I>>2]=(q+r)*.7071067690849304;g[H>>2]=(r-q)*.7071067690849304;E=a+68|0;q=+g[E>>2];D=b+68|0;A=a+84|0;r=+g[A>>2];z=b+84|0;o=+g[z>>2];l=q-r;m=+g[D>>2]-o;g[E>>2]=q+r;g[D>>2]=o+ +g[D>>2];g[A>>2]=(l+m)*.7071067690849304;g[z>>2]=(m-l)*.7071067690849304;w=a+100|0;l=+g[w>>2];v=b+100|0;n=a+116|0;m=+g[n>>2];p=b+116|0;o=+g[p>>2];r=l-m;q=+g[v>>2]-o;g[w>>2]=l+m;g[v>>2]=o+ +g[v>>2];g[n>>2]=(r+q)*.7071067690849304;g[p>>2]=(q-r)*.7071067690849304;ua=a+8|0;r=+g[ua>>2];ta=b+8|0;q=+g[ta>>2];qa=a+24|0;o=+g[qa>>2];pa=b+24|0;m=+g[pa>>2];g[ua>>2]=r+o;g[ta>>2]=m+ +g[ta>>2];g[qa>>2]=q-m;g[pa>>2]=o-r;ma=a+40|0;r=+g[ma>>2];la=b+40|0;o=+g[la>>2];ia=a+56|0;m=+g[ia>>2];ha=b+56|0;q=+g[ha>>2];g[ma>>2]=r+m;g[la>>2]=q+ +g[la>>2];g[ia>>2]=o-q;g[ha>>2]=m-r;ea=a+72|0;r=+g[ea>>2];da=b+72|0;m=+g[da>>2];aa=a+88|0;q=+g[aa>>2];$=b+88|0;o=+g[$>>2];g[ea>>2]=r+q;g[da>>2]=o+ +g[da>>2];g[aa>>2]=m-o;g[$>>2]=q-r;Y=a+104|0;r=+g[Y>>2];X=b+104|0;q=+g[X>>2];U=a+120|0;o=+g[U>>2];T=b+120|0;m=+g[T>>2];g[Y>>2]=r+o;g[X>>2]=m+ +g[X>>2];g[U>>2]=q-m;g[T>>2]=o-r;S=a+12|0;r=+g[S>>2];R=b+12|0;O=a+28|0;o=+g[O>>2];N=b+28|0;m=+g[N>>2];q=r-o;l=+g[R>>2]-m;g[S>>2]=r+o;g[R>>2]=m+ +g[R>>2];g[O>>2]=(q-l)*-.7071068286895752;g[N>>2]=(q+l)*-.7071068286895752;K=a+44|0;l=+g[K>>2];J=b+44|0;G=a+60|0;q=+g[G>>2];F=b+60|0;m=+g[F>>2];o=l-q;r=+g[J>>2]-m;g[K>>2]=l+q;g[J>>2]=m+ +g[J>>2];g[G>>2]=(o-r)*-.7071068286895752;g[F>>2]=(o+r)*-.7071068286895752;C=a+76|0;r=+g[C>>2];B=b+76|0;y=a+92|0;o=+g[y>>2];x=b+92|0;m=+g[x>>2];q=r-o;l=+g[B>>2]-m;g[C>>2]=r+o;g[B>>2]=m+ +g[B>>2];g[y>>2]=(q-l)*-.7071068286895752;g[x>>2]=(q+l)*-.7071068286895752;u=a+108|0;l=+g[u>>2];t=b+108|0;s=a+124|0;q=+g[s>>2];f=b+124|0;m=+g[f>>2];o=l-q;r=+g[t>>2]-m;g[u>>2]=l+q;g[t>>2]=m+ +g[t>>2];g[s>>2]=(o-r)*-.7071068286895752;g[f>>2]=(o+r)*-.7071068286895752;r=+g[a>>2];o=+g[b>>2];m=+g[ua>>2];q=+g[ta>>2];g[a>>2]=r+m;g[b>>2]=q+ +g[b>>2];g[ua>>2]=r-m;g[ta>>2]=o-q;q=+g[sa>>2];o=+g[ra>>2];m=+g[qa>>2];r=+g[pa>>2];g[sa>>2]=q+m;g[ra>>2]=r+ +g[ra>>2];g[qa>>2]=q-m;g[pa>>2]=o-r;r=+g[oa>>2];o=+g[na>>2];m=+g[ma>>2];q=+g[la>>2];g[oa>>2]=r+m;g[na>>2]=q+ +g[na>>2];g[ma>>2]=r-m;g[la>>2]=o-q;q=+g[ka>>2];o=+g[ja>>2];m=+g[ia>>2];r=+g[ha>>2];g[ka>>2]=q+m;g[ja>>2]=r+ +g[ja>>2];g[ia>>2]=q-m;g[ha>>2]=o-r;r=+g[ga>>2];o=+g[fa>>2];m=+g[ea>>2];q=+g[da>>2];g[ga>>2]=r+m;g[fa>>2]=q+ +g[fa>>2];g[ea>>2]=r-m;g[da>>2]=o-q;q=+g[ca>>2];o=+g[ba>>2];m=+g[aa>>2];r=+g[$>>2];g[ca>>2]=q+m;g[ba>>2]=r+ +g[ba>>2];g[aa>>2]=q-m;g[$>>2]=o-r;r=+g[_>>2];o=+g[Z>>2];m=+g[Y>>2];q=+g[X>>2];g[_>>2]=r+m;g[Z>>2]=q+ +g[Z>>2];g[Y>>2]=r-m;g[X>>2]=o-q;q=+g[W>>2];o=+g[V>>2];m=+g[U>>2];r=+g[T>>2];g[W>>2]=q+m;g[V>>2]=r+ +g[V>>2];g[U>>2]=q-m;g[T>>2]=o-r;r=+g[h>>2];o=+g[i>>2];m=+g[S>>2];q=+g[R>>2];g[h>>2]=r+m;g[i>>2]=q+ +g[i>>2];g[S>>2]=o-q;g[R>>2]=m-r;r=+g[Q>>2];m=+g[P>>2];q=+g[O>>2];o=+g[N>>2];g[Q>>2]=r+q;g[P>>2]=o+ +g[P>>2];g[O>>2]=m-o;g[N>>2]=q-r;r=+g[M>>2];q=+g[L>>2];o=+g[K>>2];m=+g[J>>2];g[M>>2]=r+o;g[L>>2]=m+ +g[L>>2];g[K>>2]=q-m;g[J>>2]=o-r;r=+g[I>>2];o=+g[H>>2];m=+g[G>>2];q=+g[F>>2];g[I>>2]=r+m;g[H>>2]=q+ +g[H>>2];g[G>>2]=o-q;g[F>>2]=m-r;r=+g[E>>2];m=+g[D>>2];q=+g[C>>2];o=+g[B>>2];g[E>>2]=r+q;g[D>>2]=o+ +g[D>>2];g[C>>2]=m-o;g[B>>2]=q-r;r=+g[A>>2];q=+g[z>>2];o=+g[y>>2];m=+g[x>>2];g[A>>2]=r+o;g[z>>2]=m+ +g[z>>2];g[y>>2]=q-m;g[x>>2]=o-r;r=+g[w>>2];o=+g[v>>2];m=+g[u>>2];q=+g[t>>2];g[w>>2]=r+m;g[v>>2]=q+ +g[v>>2];g[u>>2]=o-q;g[t>>2]=m-r;r=+g[n>>2];m=+g[p>>2];q=+g[s>>2];o=+g[f>>2];g[n>>2]=r+q;g[p>>2]=o+ +g[p>>2];g[s>>2]=m-o;g[f>>2]=q-r;f=0;do{ua=f|1;ra=a+(f<<2)|0;m=+g[ra>>2];sa=b+(f<<2)|0;q=+g[sa>>2];ta=a+(ua<<2)|0;o=+g[ta>>2];ua=b+(ua<<2)|0;r=+g[ua>>2];g[ra>>2]=m+o;g[sa>>2]=r+ +g[sa>>2];g[ta>>2]=m-o;g[ua>>2]=q-r;f=f+2|0}while(f>>>0<32);f=0;do{ua=d[184109+f>>0]|0;r=+g[a+(ua<<2)>>2];o=+g[b+(ua<<2)>>2];q=(r+o)*+g[101992+(f+96<<2)>>2];g[c+(f<<2)>>2]=q+o*+g[101992+(f+160<<2)>>2];g[e+(f<<2)>>2]=q+r*+g[101992+(f+128<<2)>>2];f=f+1|0}while((f|0)!=16);g[e+64>>2]=(+g[i>>2]-+g[h>>2])*.7071067690849304;g[c+64>>2]=(+g[h>>2]+ +g[i>>2])*.7071067690849304;f=17;do{ua=d[184109+f>>0]|0;r=+g[a+(ua<<2)>>2];o=+g[b+(ua<<2)>>2];q=(r+o)*+g[101992+(f+96<<2)>>2];g[c+(f<<2)>>2]=q+o*+g[101992+(f+160<<2)>>2];g[e+(f<<2)>>2]=q+r*+g[101992+(f+128<<2)>>2];f=f+1|0}while((f|0)!=32);return}function wh(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0;e=+g[b+60>>2];h=+g[b+64>>2];c=(e+h)*.7071067690849304;h=(e-h)*.7071067690849304;e=+g[b+32>>2];p=+g[b+92>>2];i=(e+p)*.7071067690849304;p=(e-p)*.7071067690849304;e=+g[b+48>>2];r=+g[b+76>>2];I=(e+r)*.7071067690849304;r=(e-r)*.7071067690849304;e=+g[b+44>>2];s=+g[b+80>>2];o=(e+s)*.7071067690849304;s=(e-s)*.7071067690849304;e=+g[b+56>>2];v=+g[b+68>>2];u=(e+v)*.7071067690849304;v=(e-v)*.7071067690849304;e=+g[b+36>>2];D=+g[b+88>>2];A=(e+D)*.7071067690849304;D=(e-D)*.7071067690849304;e=+g[b+52>>2];F=+g[b+72>>2];l=(e+F)*.7071067690849304;F=(e-F)*.7071067690849304;e=+g[b+40>>2];j=+g[b+84>>2];G=(e+j)*.7071067690849304;j=(e-j)*.7071067690849304;e=+g[b>>2];z=e-c;e=c+e;c=+g[b+124>>2];k=c-h;c=h+c;h=+g[b+28>>2];t=h-i;h=i+h;i=+g[b+96>>2];f=i-p;i=p+i;p=+g[b+12>>2];n=p-I;p=I+p;I=+g[b+112>>2];w=I-r;I=r+I;r=+g[b+16>>2];x=r-o;r=o+r;o=+g[b+108>>2];m=o-s;o=s+o;s=+g[b+4>>2];J=s-u;s=u+s;u=+g[b+120>>2];C=u-v;u=v+u;v=+g[b+24>>2];H=v-A;v=A+v;A=+g[b+100>>2];y=A-D;A=D+A;D=+g[b+8>>2];B=D-l;D=l+D;l=+g[b+116>>2];q=l-F;l=F+l;F=+g[b+20>>2];d=F-G;F=G+F;G=+g[b+104>>2];E=G-j;G=j+G;j=(h+i)*.9238795042037964;i=j-i*.5411961078643799;j=h*1.3065630197525024-j;h=(t+f)*-.3826834261417389;f=f*1.3065630197525024+h;h=t*.5411961078643799-h;t=(r+o)*.9238795042037964;o=t-o*.5411961078643799;t=r*1.3065630197525024-t;r=(x+m)*-.3826834261417389;m=m*1.3065630197525024+r;r=x*.5411961078643799-r;x=(v+A)*.9238795042037964;A=x-A*.5411961078643799;x=v*1.3065630197525024-x;v=(H+y)*-.3826834261417389;y=y*1.3065630197525024+v;v=H*.5411961078643799-v;H=(F+G)*.9238795042037964;G=H-G*.5411961078643799;H=F*1.3065630197525024-H;F=(d+E)*-.3826834261417389;E=E*1.3065630197525024+F;F=d*.5411961078643799-F;d=e-i;i=e+i;e=c-j;j=c+j;c=z-f;f=z+f;z=k-h;h=k+h;k=p-o;o=p+o;p=I-t;t=I+t;I=n-m;m=n+m;n=w-r;r=w+r;w=s-A;A=s+A;s=u-x;x=u+x;u=J-y;y=J+y;J=C-v;v=C+v;C=D-G;G=D+G;D=l-H;H=l+H;l=B-E;E=B+E;B=q-F;F=q+F;q=(t+o)*.9807852506637573;t=q-t*.78569495677948;q=o*1.1758755445480347-q;o=(r+m)*.5555702447891235;r=r*.27589938044548035+o;o=m*1.3870398998260498-o;m=(p+k)*-.19509032368659973;p=p*1.1758755445480347+m;m=k*.78569495677948-m;k=(n+I)*-.8314695954322815;n=n*1.3870398998260498+k;k=I*-.27589938044548035-k;I=(H+G)*.9807852506637573;H=I-H*.78569495677948;I=G*1.1758755445480347-I;G=(F+E)*.5555702447891235;F=F*.27589938044548035+G;G=E*1.3870398998260498-G;E=(D+C)*-.19509032368659973;D=D*1.1758755445480347+E;E=C*.78569495677948-E;C=(B+l)*-.8314695954322815;B=B*1.3870398998260498+C;C=l*-.27589938044548035-C;l=i-t;t=i+t;i=j-q;q=j+q;j=f-r;r=f+r;f=h-o;o=h+o;h=d-p;p=d+p;d=e-m;m=e+m;e=c-n;n=c+n;c=z-k;k=z+k;z=A-H;H=A+H;A=x-I;I=x+I;x=y-F;F=y+F;y=v-G;G=v+G;v=w-D;D=w+D;w=s-E;E=s+E;s=u-B;B=u+B;u=J-C;C=J+C;J=(I+H)*.9951847195625305;I=J-I*.8971675634384155;J=H*1.0932018756866455-J;H=(G+F)*.8819212913513184;G=H-G*.41052451729774475;H=F*1.3533179759979248-H;F=(E+D)*.6343932747840881;E=E*.13861717283725739+F;F=D*1.4074037075042725-F;D=(C+B)*.290284663438797;C=C*.6666556596755981+D;D=B*1.247225046157837-D;B=(A+z)*-.0980171412229538;A=A*1.0932018756866455+B;B=z*.8971675634384155-B;z=(y+x)*-.4713967442512512;y=y*1.3533179759979248+z;z=x*.41052451729774475-z;x=(w+v)*-.7730104327201843;w=w*1.4074037075042725+x;x=v*-.13861717283725739-x;v=(u+s)*-.9569403529167175;u=u*1.247225046157837+v;v=s*-.6666556596755981-v;s=t-I;I=t+I;t=q-J;J=q+J;q=r-G;G=r+G;r=o-H;H=o+H;o=p-E;E=p+E;p=m-F;F=m+F;m=n-C;C=n+C;n=k-D;D=k+D;k=l-A;A=l+A;l=i-B;B=i+B;i=j-y;y=j+y;j=f-z;z=f+z;f=h-w;w=h+w;h=d-x;x=d+x;d=e-u;u=e+u;e=c-v;v=c+v;c=(J+I)*.99969881772995;g[a>>2]=c-J*.975157618522644;g[a+124>>2]=I*1.0242400169372559-c;c=(H+G)*.9924795627593994;g[a+8>>2]=c-H*.8700688481330872;g[a+116>>2]=G*1.114890217781067-c;c=(F+E)*.9757021069526672;g[a+16>>2]=c-F*.7566009163856506;g[a+108>>2]=E*1.1948033571243286-c;c=(D+C)*.949528157711029;g[a+24>>2]=c-D*.6358464360237122;g[a+100>>2]=C*1.2632099390029907-c;c=(B+A)*.91420978307724;g[a+32>>2]=c-B*.5089684128761292;g[a+92>>2]=A*1.319451093673706-c;c=(z+y)*.8700869679450989;g[a+40>>2]=c-z*.3771888017654419;g[a+84>>2]=y*1.3629851341247559-c;c=(x+w)*.8175848126411438;g[a+48>>2]=c-x*.24177661538124084;g[a+76>>2]=w*1.3933930397033691-c;c=(v+u)*.7572088241577148;g[a+56>>2]=c-v*.10403600335121155;g[a+68>>2]=u*1.4103816747665405-c;c=(t+s)*.6895405650138855;g[a+64>>2]=t*.034706536680459976+c;g[a+60>>2]=s*1.413787603378296-c;c=(r+q)*.6152315735816956;g[a+72>>2]=r*.1731148362159729+c;g[a+52>>2]=q*1.4035780429840088-c;c=(p+o)*.5349976420402527;g[a+80>>2]=p*.30985593795776367+c;g[a+44>>2]=o*1.379851222038269-c;c=(n+m)*.4496113359928131;g[a+88>>2]=n*.4436129629611969+c;g[a+36>>2]=m*1.3428356647491455-c;c=(l+k)*.3598950505256653;g[a+96>>2]=l*.5730977654457092+c;g[a+28>>2]=k*1.292887806892395-c;c=(j+i)*.2667127549648285;g[a+104>>2]=j*.6970633268356323+c;g[a+20>>2]=i*1.2304887771606445-c;c=(h+f)*.1709618866443634;g[a+112>>2]=h*.8143157362937927+c;g[a+12>>2]=f*1.1562395095825195-c;c=(e+d)*.0735645666718483;g[a+120>>2]=e*.9237259030342102+c;g[a+4>>2]=d*1.0708550214767456-c;return}function xh(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0;u=+g[b>>2];q=+g[b+4>>2];H=u-q;F=+g[b+8>>2];q=F-q;K=+g[b+12>>2];F=F-K;D=+g[b+16>>2];K=D-K;s=+g[b+20>>2];D=D-s;r=+g[b+24>>2];s=r-s;w=+g[b+28>>2];r=r-w;J=+g[b+32>>2];w=J-w;o=+g[b+36>>2];J=J-o;l=+g[b+40>>2];o=l-o;E=+g[b+44>>2];l=l-E;e=+g[b+48>>2];E=e-E;f=+g[b+52>>2];e=e-f;n=+g[b+56>>2];f=n-f;y=+g[b+60>>2];n=n-y;C=+g[b+64>>2];i=+g[b+68>>2];j=C-i;z=+g[b+72>>2];i=z-i;A=+g[b+76>>2];z=z-A;t=+g[b+80>>2];A=t-A;m=+g[b+84>>2];t=t-m;B=+g[b+88>>2];m=B-m;k=+g[b+92>>2];B=B-k;x=+g[b+96>>2];k=x-k;I=+g[b+100>>2];x=x-I;p=+g[b+104>>2];I=p-I;G=+g[b+108>>2];p=p-G;v=+g[b+112>>2];G=v-G;d=+g[b+116>>2];v=v-d;h=+g[b+120>>2];d=h-d;h=h-+g[b+124>>2];y=(C-y)*.7071067690849304;C=u-y;y=u+y;u=(w+k)*-.9238795042037964;w=w*1.3065630197525024+u;u=k*-.5411961078643799-u;k=y-u;u=y+u;y=C-w;w=C+w;C=(E+A)*.7071067690849304;c=K-C;C=K+C;A=(E-A)*.7071067690849304;E=A-G;G=A+G;A=(C+G)*.9807852506637573;G=A-G*.78569495677948;A=C*1.1758755445480347-A;C=(c+E)*.8314695954322815;E=C-E*.27589938044548035;C=c*1.3870398998260498-C;c=u-G;G=u+G;u=w-E;E=w+E;w=y-C;C=y+C;y=k-A;A=k+A;k=s-o;o=s+o;s=m-I;I=m+I;m=(f+i)*.7071067690849304;K=q-m;m=q+m;q=(o+I)*-.9238795042037964;o=o*1.3065630197525024+q;q=I*-.5411961078643799-q;I=m-q;q=m+q;m=K-o;o=K+o;i=(f-i)*.7071067690849304;f=d-i;d=i+d;i=(k+s)*-.9238795042037964;s=s*1.3065630197525024+i;i=k*-.5411961078643799-i;k=d-i;d=i+d;i=f-s;f=s+f;s=(q+d)*.9951847195625305;d=s-d*.8971675634384155;s=q*1.0932018756866455-s;q=(o-f)*.9569403529167175;f=f*.6666556596755981+q;q=o*1.247225046157837-q;o=(m+i)*.8819212913513184;i=o-i*.41052451729774475;o=m*1.3533179759979248-o;m=(I-k)*.7730104327201843;k=k*.13861717283725739+m;m=I*1.4074037075042725-m;I=G-d;d=G+d;G=E-f;f=E+f;E=C-i;i=C+i;C=A-k;k=A+k;A=y-m;m=y+m;y=w-o;o=w+o;w=u-q;q=u+q;u=c-s;s=c+s;c=(H+h)*-.9987954497337341;H=H*1.0478631258010864+c;c=h*-.9497277736663818-c;h=(D+p)*-.9700312614440918;D=D*1.213011384010315+h;h=p*-.7270510792732239-h;p=(J+B)*-.903989315032959;J=J*1.3315443992614746+p;p=B*-.47643420100212097-p;B=(e+z)*-.803207516670227;e=e*1.3989068269729614+B;B=z*-.20750822126865387-B;z=(n+j)*-.6715589761734009;j=j*1.4125100374221802+z;z=n*.06939216703176498-z;n=(l+t)*-.5141027569770813;t=t*1.3718312978744507+n;n=l*.34362587332725525-n;l=(r+x)*-.3368898630142212;x=x*1.278433918952942+l;l=r*.6046541929244995-l;r=(F+v)*-.1467304676771164;v=v*1.1359069347381592+r;r=F*.8424460291862488-r;F=c-z;c=z+c;z=H-j;H=j+H;j=h-n;h=n+h;n=D-t;D=t+D;t=p-l;l=p+l;p=J-x;x=J+x;J=B-r;r=B+r;B=e-v;v=e+v;e=(F+z)*-.9807852506637573;F=F*1.1758755445480347+e;e=z*-.78569495677948-e;z=(j+n)*-.5555702447891235;j=j*1.3870398998260498+z;z=n*.27589938044548035-z;n=(t+p)*.19509032368659973;t=t*.78569495677948+n;n=p*1.1758755445480347-n;p=(J+B)*.8314695954322815;J=p-J*.27589938044548035;p=B*1.3870398998260498-p;B=c-l;c=l+c;l=H-x;H=x+H;x=h-r;r=h+r;h=D-v;v=D+v;D=e-n;e=n+e;n=F-t;F=t+F;t=z-p;p=z+p;z=j-J;J=j+J;j=(B+l)*-.9238795042037964;B=B*1.3065630197525024+j;j=l*-.5411961078643799-j;l=(x+h)*.3826834261417389;x=x*.5411961078643799+l;l=h*1.3065630197525024-l;h=(D+n)*-.9238795042037964;D=D*1.3065630197525024+h;h=n*-.5411961078643799-h;n=(t+z)*.3826834261417389;t=t*.5411961078643799+n;n=z*1.3065630197525024-n;z=c-r;c=r+c;r=H-v;H=v+H;v=j-l;j=l+j;l=B-x;B=x+B;x=e-p;e=p+e;p=F-J;F=J+F;J=h-n;h=n+h;n=D-t;D=t+D;t=(z-r)*.7071067690849304;r=(z+r)*.7071067690849304;z=(v-l)*.7071067690849304;l=(v+l)*.7071067690849304;v=(x-p)*.7071067690849304;p=(x+p)*.7071067690849304;x=(J-n)*.7071067690849304;n=(J+n)*.7071067690849304;g[a+124>>2]=(d+c)*.5001506209373474;g[a+120>>2]=(f+e)*.5013584494590759;g[a+116>>2]=(i+h)*.5037887096405029;g[a+112>>2]=(k+j)*.5074711441993713;g[a+108>>2]=(m+l)*.5124514698982239;g[a+104>>2]=(o+n)*.5187926888465881;g[a+100>>2]=(q+p)*.5265772938728333;g[a+96>>2]=(s+r)*.5359098315238953;g[a+92>>2]=(u+t)*.5469204187393188;g[a+88>>2]=(w+v)*.5597698092460632;g[a+84>>2]=(y+x)*.5746551752090454;g[a+80>>2]=(A+z)*.5918185114860535;g[a+76>>2]=(C+B)*.6115573644638062;g[a+72>>2]=(E+D)*.6342389583587646;g[a+68>>2]=(G+F)*.6603198051452637;g[a+64>>2]=(I+H)*.690372109413147;g[a+60>>2]=(I-H)*.7251205444335938;g[a+56>>2]=(G-F)*.765494167804718;g[a+52>>2]=(E-D)*.8127021193504333;g[a+48>>2]=(C-B)*.8683447241783142;g[a+44>>2]=(A-z)*.9345836043357849;g[a+40>>2]=(y-x)*1.0144082307815552;g[a+36>>2]=(w-v)*1.1120716333389282;g[a+32>>2]=(u-t)*1.2338327169418335;g[a+28>>2]=(s-r)*1.389293909072876;g[a+24>>2]=(q-p)*1.5939723253250122;g[a+20>>2]=(o-n)*1.874675989151001;g[a+16>>2]=(m-l)*2.282050132751465;g[a+12>>2]=(k-j)*2.924628496170044;g[a+8>>2]=(i-h)*4.084610939025879;g[a+4>>2]=(f-e)*6.796750545501709;g[a>>2]=(d-c)*20.373878479003906;return}function yh(e,f,h,i,j,k){e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=l;l=l+768|0;if((l|0)>=(m|0))W(768);E=I+512|0;F=I+384|0;G=I+256|0;H=I+128|0;D=I;w=e+53416|0;if(!(a[w>>0]|0)){l=I;return}x=f+4|0;y=E+4|0;z=G+124|0;A=E+128|0;B=E+132|0;C=F+124|0;v=k&255;t=j&255;r=0;s=0;q=0;u=32;while(1){j=c[f>>2]|0;o=b[x>>1]|0;p=o<<16>>16;e=s;k=31;while(1){J=c[h+(e<<2)>>2]|0;e=e+1|0;c[j+(k+320+p<<2)>>2]=J;c[j+(k+p<<2)>>2]=J;if(u<<16>>16==(e&65535)<<16>>16){e=0;break}else k=k+-1|0}do{k=e+p|0;J=e<<1;g[E+(e<<2)>>2]=+g[j+(k<<2)>>2]*+g[99432+(J<<2)>>2]+ +g[j+(k+64<<2)>>2]*+g[99432+(J+128<<2)>>2]+ +g[j+(k+128<<2)>>2]*+g[99432+(J+256<<2)>>2]+ +g[j+(k+192<<2)>>2]*+g[99432+(J+384<<2)>>2]+ +g[j+(k+256<<2)>>2]*+g[99432+(J+512<<2)>>2];e=e+1|0}while((e|0)!=64);b[x>>1]=o+-32<<16>>16<<16>>16<0?288:(o&65535)+65504&65535;c[z>>2]=c[y>>2];c[F>>2]=c[E>>2];e=1;do{J=e;e=e+1|0;c[G+(31-J<<2)>>2]=c[E+(e<<2)>>2];g[F+(J<<2)>>2]=-+g[E+(64-J<<2)>>2]}while((e|0)!=31);c[G>>2]=c[A>>2];g[C>>2]=-+g[B>>2];vh(F,G,H,D);k=q+t|0;o=0;do{e=o<<1;j=e|1;if((j|0)<(v|0)){g[i+(k<<9)+(e<<3)>>2]=+g[H+(o<<2)>>2]*2.0;g[i+(k<<9)+(e<<3)+4>>2]=+g[D+(o<<2)>>2]*2.0;J=31-o|0;g[i+(k<<9)+(j<<3)>>2]=+g[D+(J<<2)>>2]*-2.0;n=+g[H+(J<<2)>>2]*-2.0}else{if((e|0)<(v|0)){g[i+(k<<9)+(e<<3)>>2]=+g[H+(o<<2)>>2]*2.0;n=+g[D+(o<<2)>>2]*2.0}else{g[i+(k<<9)+(e<<3)>>2]=0.0;n=0.0}g[i+(k<<9)+(e<<3)+4>>2]=n;g[i+(k<<9)+(j<<3)>>2]=0.0;n=0.0}g[i+(k<<9)+(j<<3)+4>>2]=n;o=o+1|0}while((o|0)!=16);e=r+1<<24>>24;if((e&255)<(d[w>>0]|0)){r=e;s=s+32|0;q=e&255;u=u+32<<16>>16}else break}l=I;return}function zh(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0.0,I=0,J=0.0,K=0.0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;ba=l;l=l+512|0;if((l|0)>=(m|0))W(512);_=ba;$=b+53419|0;L=a[$>>0]|0;aa=h&255;M=a[b+616+(aa*6|0)>>0]|0;P=a[(d[b+610+aa>>0]|0)+(b+616+(aa*6|0))>>0]|0;i=a[b+19>>0]|0;a:do if(i<<24>>24){s=i&255;r=0;while(1){p=a[b+10976+(aa*5|0)+r>>0]|0;q=b+10986+(aa*5|0)+r|0;i=a[q>>0]|0;switch(p<<24>>24){case 1:{n=i<<24>>24==0?.6000000238418579:.75;break}case 2:{n=.8999999761581421;break}case 3:{n=.9800000190734863;break}default:n=i<<24>>24==1?.6000000238418579:0.0}k=b+10996+(aa<<8)+(r<<2)|0;o=b+11508+(aa<<8)+(r<<2)|0;T=+g[o>>2];Z=n>2]=n;if(!(n<.015625))if(!(n>=.99609375))i=(g[j>>2]=n,c[j>>2]|0);else{i=1065287680;t=9}else{i=0;t=9}if((t|0)==9){t=0;c[k>>2]=i}c[o>>2]=i;a[q>>0]=p;r=r+1|0;if((r|0)==(s|0))break a}}while(0);do if(h<<24>>24==0?a[b+12426>>0]|0:0){q=b+13|0;s=a[q>>0]|0;F=b+14|0;r=a[F>>0]|0;k=a[184149+((Wf(c[b>>2]|0)|0)&255)>>0]|0;I=b+12020|0;a[I>>0]=0;F=a[F>>0]|0;G=(d[b+15>>0]|0)+(F&255)|0;if(G>>>0>(k&255)>>>0)if((d[b+26>>0]|0)<(k&255)){i=0;p=0;while(1){i=i+1<<24>>24;o=i&255;if((d[b+26+o>>0]|0)>=(k&255))break;else p=o}i=p+1&255}else i=0;else i=a[b+16>>0]|0;A=a[b+16>>0]|0;if(!(A<<24>>24)){a[I>>0]=0;a[b+12021>>0]=0;a[b+12085>>0]=0;break}u=d[q>>0]|0;v=u+-2|0;w=u+-1|0;k=s;s=i;q=0;while(1){h=s&255;k=w+(k&255)|0;i=h+1&255;do{i=i+-1<<24>>24;p=a[(i&255)+(b+26)>>0]|0;t=p&255;o=(v+t|0)%2|0}while((k-(o&255)|0)<(t|0));Y=t-(r&255)|0;Y=(Y|0)>0?Y:0;Z=Y&255;i=q&255;a[b+12021+i>>0]=Z;a[b+12085+i>>0]=u-o-Y;i=q+1<<24>>24;if(!(Z<<24>>24)){k=F;i=q}else{a[I>>0]=i;r=p;k=p}if((G|0)==(t|0))break;else{s=((d[b+26+h>>0]|0)-t|0)<3?A:s;q=i}}k=i+-1<<24>>24;if((i&255)>1?(d[(i&255)+-1+(b+12021)>>0]|0)<3:0){a[I>>0]=k;i=k}a[I>>0]=(i&255)<5?i:5}while(0);X=a[b+12020>>0]|0;if(X<<24>>24){Y=b+14|0;V=b+53416|0;Z=M&255;I=L&255;L=I+-2+Z|0;U=I+-1+Z|0;F=(M&255)<(P&255);G=P&255;A=P&255;k=0;i=0;while(1){v=b+12021+k|0;if(a[v>>0]|0){w=i<<24>>24==0;h=b+12085+k|0;t=d[Y>>0]|0;u=i&255;s=0;p=0;while(1){k=p+t|0;if(!w){o=0;do{k=(k&255)+(d[b+12021+o>>0]|0)|0;o=o+1|0}while((o|0)!=(u|0))}o=p+(d[h>>0]|0)|0;r=k&255;S=+g[b+10996+(aa<<8)+(d[b+538+r>>0]<<2)>>2];T=S*S;if(T>0.0){k=a[$>>0]|0;p=k&255;P=p+-2|0;q=o&255;Q=+g[e+(P<<9)+(q<<3)>>2];R=+g[e+(P<<9)+(q<<3)+4>>2];o=p+-1|0;N=+g[e+(o<<9)+(q<<3)>>2];O=+g[e+(o<<9)+(q<<3)+4>>2];o=k<<24>>24;p=((a[V>>0]|0)+6&255)+p|0;if((p|0)>(o|0)){J=0.0;K=0.0;C=0.0;D=0.0;E=0.0;B=Q;x=O;z=N;H=R;while(1){n=+g[e+(o<<9)+(q<<3)>>2];y=+g[e+(o<<9)+(q<<3)+4>>2];J=J+(z*n+x*y);K=K+(z*y-x*n);C=C+(B*n+H*y);D=D+(B*y-H*n);E=E+(x*x+z*z);k=k+1<<24>>24;o=k<<24>>24;if((p|0)<=(o|0))break;else{H=x;B=z;x=y;z=n}}}else{J=0.0;K=0.0;C=0.0;D=0.0;E=0.0;z=Q;y=O;n=N;x=R}B=Q*N+R*O+(J-(x*y+n*z));y=Q*O-R*N+(K-(y*z-x*n));n=E*(Q*Q+R*R+(E-(x*x+z*z)))-(y*y+B*B)*.9999990463256836;if(n==0.0){x=0.0;z=0.0}else{z=1.0/n;x=(J*B-K*y-E*C)*z;z=(J*y+K*B-E*D)*z}if(E==0.0){o=_+(q<<3)|0;g[o>>2]=0.0;y=0.0;n=0.0}else{R=1.0/E;n=-(R*(y*z+(J+B*x)));o=_+(q<<3)|0;g[o>>2]=n;y=-(R*(K+B*z-y*x))}k=_+(q<<3)+4|0;g[k>>2]=y;if(!(!(n*n+y*y>=16.0)?!(x*x+z*z>=16.0):0)){g[o>>2]=0.0;g[k>>2]=0.0;n=+g[_+(q<<3)>>2];x=0.0;y=0.0;z=0.0}J=S*n;H=T*x;E=S*y;B=T*z;if(F){n=+g[e+(L<<9)+(q<<3)+4>>2];x=+g[e+(U<<9)+(q<<3)>>2];y=+g[e+(L<<9)+(q<<3)>>2];z=+g[e+(U<<9)+(q<<3)+4>>2];k=Z;while(1){P=k+I|0;C=+g[e+(P<<9)+(q<<3)>>2];D=+g[e+(P<<9)+(q<<3)+4>>2];g[f+(P<<9)+(r<<3)>>2]=H*y+(J*x-E*z)-B*n+C;g[f+(P<<9)+(r<<3)+4>>2]=H*n+(B*y+(E*x+J*z))+D;k=k+1|0;if((k|0)==(G|0))break;else{y=x;n=z;x=C;z=D}}}}else if(F){k=o&255;o=Z;do{P=o+I|0;c[f+(P<<9)+(r<<3)>>2]=c[e+(P<<9)+(k<<3)>>2];c[f+(P<<9)+(r<<3)+4>>2]=c[e+(P<<9)+(k<<3)+4>>2];o=o+1|0}while((o|0)!=(A|0))}k=s+1<<24>>24;if((k&255)<(d[v>>0]|0)){s=k;p=k&255}else break}}i=i+1<<24>>24;if((i&255)<(X&255))k=i&255;else break}}if(!(a[b+12426>>0]|0)){l=ba;return}Ch(b);l=ba;return}function Ah(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0.0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0,ca=0.0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;la=l;l=l+3536|0;if((l|0)>=(m|0))W(3536);da=la+3332|0;ea=la+3136|0;fa=la+2940|0;ja=la;FZ(ja|0,0,2940)|0;ka=h&255;k=a[e+53451+ka>>0]|0;do if(k<<24>>24){i=a[e+53507+ka>>0]|0;j=i&255;if(k<<24>>24==2){if((i&255)<=1){i=-1;break}i=j+255&255;break}else{if(!(i<<24>>24)){i=-1;break}i=1-j+(d[e+610+ka>>0]|0)&255;break}}else i=-1;while(0);ia=e+10972+ka|0;a[ia>>0]=i;ha=e+610+ka|0;j=a[ha>>0]|0;i=j<<24>>24!=0;if((a[e+53440>>0]|0)==1)if(i){x=e+53419|0;y=e+14|0;w=a[e+15>>0]|0;z=w&255;v=j&255;i=w;u=0;do{t=u;u=u+1|0;r=d[e+616+(ka*6|0)+u>>0]|0;s=d[e+616+(ka*6|0)+t>>0]|0;aa=r-s|0;q=(aa|0)==0?1.0:+(aa|0);if(!(i<<24>>24))i=0;else{p=0;do{k=d[x>>0]|0;i=k+s|0;j=i&255;k=k+r|0;if(k>>>0>j>>>0){o=p+(d[y>>0]|0)|0;i=i&255;n=0.0;do{ba=+g[f+(j<<9)+(o<<3)>>2];ca=+g[f+(j<<9)+(o<<3)+4>>2];n=n+(ba*ba+ca*ca);i=i+1<<24>>24;j=i&255}while(k>>>0>j>>>0)}else n=0.0;g[e+4828+(ka*1280|0)+(p*20|0)+(t<<2)>>2]=n/q;p=p+1|0}while(p>>>0>>0);i=w}}while((u|0)!=(v|0));aa=a[ha>>0]|0}else aa=0;else if(i){A=e+53419|0;C=e+14|0;z=0;i=j;y=0;while(1){x=e+634+(ka*6|0)+y|0;j=a[x>>0]|0;k=j&255;if(a[e+24+k>>0]|0){v=e+616+(ka*6|0)+y|0;w=y+1+(e+616+(ka*6|0))|0;u=0;i=j;j=0;while(1){o=a[e+90+(k<<6)+j>>0]|0;j=a[j+1+(e+90+(k<<6))>>0]|0;if((o&255)<(j&255)){t=j&255;p=o&255;r=t-p|0;s=p;do{o=d[w>>0]|0;i=d[v>>0]|0;aa=N(o-i|0,r)|0;q=(aa|0)==0?1.0:+(aa|0);aa=d[A>>0]|0;i=aa+i|0;j=i&255;o=aa+o|0;if(o>>>0>j>>>0){k=i&255;n=0.0;do{i=p;do{ba=+g[f+(j<<9)+(i<<3)>>2];ca=+g[f+(j<<9)+(i<<3)+4>>2];n=n+(ba*ba+ca*ca);i=i+1|0}while((i|0)!=(t|0));k=k+1<<24>>24;j=k&255}while(o>>>0>j>>>0)}else n=0.0;g[e+4828+(ka*1280|0)+((s-(d[C>>0]|0)|0)*20|0)+(y<<2)>>2]=n/q;s=s+1|0}while((s|0)!=(t|0));i=a[x>>0]|0}j=u+1<<24>>24;k=i&255;if((j&255)>=(d[e+24+k>>0]|0))break;else{u=j;j=j&255}}i=a[ha>>0]|0}j=z+1<<24>>24;if((j&255)<(i&255)){z=j;y=j&255}else{aa=i;break}}}else aa=0;if(aa<<24>>24){T=e+53439|0;U=e+14|0;V=e+53445+ka|0;X=e+12418+ka|0;Y=a[ia>>0]|0;Z=d[e+53438>>0]|0;_=a[e+20+Z>>0]|0;$=_<<24>>24==0;R=0;S=0;Q=0;j=aa;while(1){P=(Q|0)==(Y|0);if(P)i=1;else i=(Q|0)==(a[X>>0]|0);O=i^1;S=S+((d[Q+1+(e+616+(ka*6|0))>>0]|0)>(d[(S&255)+1+(e+628+(ka*3|0))>>0]|0)&1)<<24>>24;if(!$){s=Bh(e,h,R,0)|0;K=e+634+(ka*6|0)+Q|0;L=S&255;ca=+g[103144+(d[T>>0]<<2)>>2];M=(Q|0)<(Y|0);I=0;t=0;u=0;v=0;j=0;i=0;while(1){z=a[e+282+(Z<<6)+i>>0]|0;A=a[i+1+(e+282+(Z<<6))>>0]|0;C=(z&255)<(A&255);i=z&255;if(C){o=d[U>>0]|0;p=d[K>>0]|0;r=A&255;q=0.0;n=0.0;k=i;do{j=j+((k+o|0)==(d[(j&255)+1+(e+90+(p<<6))>>0]|0)&1)<<24>>24;n=n+ +g[e+2268+(ka*1280|0)+((j&255)*20|0)+(Q<<2)>>2];q=q+ +g[e+4828+(ka*1280|0)+(k*20|0)+(Q<<2)>>2];k=k+1|0}while((k|0)!=(r|0));z=j}else{q=0.0;n=0.0;z=j}ba=n+1.0e-12;J=ba/(q+1.0e-12)*ca;J=J<1.0e10?J:1.0e10;if(C){w=d[U>>0]|0;x=d[K>>0]|0;y=A&255;n=0.0;r=s;j=t;o=u;k=v;t=i;while(1){s=t+w|0;p=j+((s|0)==(d[(j&255)+1+(e+218)>>0]|0)&1)<<24>>24;j=k+1<<24>>24;if((s|0)==(d[(k&255)+1+(e+90+(x<<6))>>0]|0)){r=Bh(e,h,R,j)|0;k=j}o=o+((s|0)==(d[(o&255)+1+(e+154)>>0]|0)&1)<<24>>24;j=o&255;if(M)if((a[e+12277+(ka<<6)+j>>0]|0)!=0?(a[V>>0]|0)!=0:0)ga=49;else j=0;else ga=49;if((ga|0)==49){ga=0;if((s|0)==(((d[e+154+j>>0]|0)+(d[j+1+(e+154)>>0]|0)|0)>>>1|0))j=a[e+12149+(ka<<6)+j>>0]|0;else j=0}v=p&255;D=+g[e+8412+(ka<<9)+(v<<3)+(L<<2)>>2];E=+g[e+9436+(ka<<9)+(v<<3)+(L<<2)>>2];q=+g[e+2268+(ka*1280|0)+((k&255)*20|0)+(Q<<2)>>2];H=E*q;j=j<<24>>24==0;F=D*q;g[fa+(t<<2)>>2]=j?0.0:F;G=+g[e+4828+(ka*1280|0)+(t*20|0)+(Q<<2)>>2];q=q/(G+1.0);if(r<<24>>24==0&O)q=D*q;else q=r<<24>>24==1?E*q:q;v=q>2]=H;g[ea+(t<<2)>>2]=E;n=(j?n:n+F)+G*E;n=j?(P?n:H+n):n;t=t+1|0;if((t|0)==(y|0))break;else j=p}}else{n=0.0;r=s;p=t;o=u;k=v}q=ba/(n+1.0e-12);q=q<2.51188643?q:2.51188643;if(C){j=A&255;do{g[ja+(Q*196|0)+(i<<2)>>2]=+B(+(+g[ea+(i<<2)>>2]*q));g[ja+980+(Q*196|0)+(i<<2)>>2]=+B(+(+g[da+(i<<2)>>2]*q));n=+g[fa+(i<<2)>>2];if(n!=0.0)n=+B(+(n*q));else n=0.0;g[ja+1960+(Q*196|0)+(i<<2)>>2]=n;i=i+1|0}while((i|0)!=(j|0))}i=I+1<<24>>24;if((i&255)<(_&255)){I=i;s=r;t=p;u=o;v=k;j=z;i=i&255}else{j=aa;break}}}i=R+1<<24>>24;if((i&255)>=(j&255))break;else{R=i;Q=i&255}}}if((a[e+12426>>0]|0)==1){i=0;k=1}else{i=b[e+12406+(ka<<1)>>1]|0;k=0}h=e+12410+ka|0;j=a[h>>0]|0;if(!(aa<<24>>24)){ja=j;f=i;ka=e+12406+(ka<<1)|0;b[ka>>1]=f;a[h>>0]=ja;l=la;return 0}L=e+53441|0;M=e+728+ka|0;O=e+15|0;P=e+53419|0;Q=e+14|0;R=e+53448|0;S=e+53449|0;T=e+12418+ka|0;U=e+648+(ka*20|0)|0;V=e+688+(ka*20|0)|0;X=e+648+(ka*20|0)+4|0;Y=e+688+(ka*20|0)+4|0;Z=e+648+(ka*20|0)+8|0;_=e+688+(ka*20|0)+8|0;$=e+648+(ka*20|0)+12|0;aa=e+688+(ka*20|0)+12|0;K=0;A=0;while(1){if((A|0)==(a[ia>>0]|0))I=1;else I=(A|0)==(a[T>>0]|0);C=I|(a[L>>0]|0)==1;if(k<<24>>24){fa=ja+(A*196|0)|0;ga=ja+980+(A*196|0)|0;DZ(c[U>>2]|0,fa|0,d[O>>0]<<2|0)|0;DZ(c[V>>2]|0,ga|0,d[O>>0]<<2|0)|0;DZ(c[X>>2]|0,fa|0,d[O>>0]<<2|0)|0;DZ(c[Y>>2]|0,ga|0,d[O>>0]<<2|0)|0;DZ(c[Z>>2]|0,fa|0,d[O>>0]<<2|0)|0;DZ(c[_>>2]|0,ga|0,d[O>>0]<<2|0)|0;DZ(c[$>>2]|0,fa|0,d[O>>0]<<2|0)|0;DZ(c[aa>>2]|0,ga|0,d[O>>0]<<2|0)|0;a[M>>0]=4}k=a[e+616+(ka*6|0)+A>>0]|0;x=A+1+(e+616+(ka*6|0))|0;if((k&255)<(d[x>>0]|0)){y=ja+(A*196|0)|0;z=ja+980+(A*196|0)|0;w=k;p=a[M>>0]|0;o=a[O>>0]|0;v=k&255;while(1){DZ(c[e+648+(ka*20|0)+(p<<24>>24<<2)>>2]|0,y|0,(o&255)<<2|0)|0;DZ(c[e+688+(ka*20|0)+(a[M>>0]<<2)>>2]|0,z|0,d[O>>0]<<2|0)|0;o=a[O>>0]|0;if(!(o<<24>>24))o=0;else{u=j&255;F=+(a[184141+u>>0]|0);G=+(a[184145+u>>0]|0);u=o&255;t=0;do{k=a[M>>0]|0;if(C){ga=k<<24>>24;n=+g[(c[e+688+(ka*20|0)+(ga<<2)>>2]|0)+(t<<2)>>2];D=+g[(c[e+648+(ka*20|0)+(ga<<2)>>2]|0)+(t<<2)>>2]}else{ga=k+1<<24>>24;ga=(ga&255)>4?(ga&255)+251&255:ga;s=ga&255;ga=ga+1<<24>>24;ga=(ga&255)>4?(ga&255)+251&255:ga;da=ga&255;ga=ga+1<<24>>24;ga=(ga&255)>4?(ga&255)+251&255:ga;ea=ga&255;ga=ga+1<<24>>24;ga=(ga&255)>4?(ga&255)+251&255:ga;fa=ga&255;ga=ga+1<<24>>24;ga=((ga&255)>4?(ga&255)+251&255:ga)&255;n=+g[(c[e+688+(ka*20|0)+(s<<2)>>2]|0)+(t<<2)>>2]*.031830500811338425+0.0+ +g[(c[e+688+(ka*20|0)+(da<<2)>>2]|0)+(t<<2)>>2]*.11516383290290833+ +g[(c[e+688+(ka*20|0)+(ea<<2)>>2]|0)+(t<<2)>>2]*.21816949546337128+ +g[(c[e+688+(ka*20|0)+(fa<<2)>>2]|0)+(t<<2)>>2]*.3015028238296509+ +g[(c[e+688+(ka*20|0)+(ga<<2)>>2]|0)+(t<<2)>>2]*.3333333432674408;D=+g[(c[e+648+(ka*20|0)+(s<<2)>>2]|0)+(t<<2)>>2]*.031830500811338425+0.0+ +g[(c[e+648+(ka*20|0)+(da<<2)>>2]|0)+(t<<2)>>2]*.11516383290290833+ +g[(c[e+648+(ka*20|0)+(ea<<2)>>2]|0)+(t<<2)>>2]*.21816949546337128+ +g[(c[e+648+(ka*20|0)+(fa<<2)>>2]|0)+(t<<2)>>2]*.3015028238296509+ +g[(c[e+648+(ka*20|0)+(ga<<2)>>2]|0)+(t<<2)>>2]*.3333333432674408}E=+g[ja+1960+(A*196|0)+(t<<2)>>2];q=I|E!=0.0?0.0:n;i=i+1&511;k=v+(d[P>>0]|0)|0;p=t+(d[Q>>0]|0)|0;r=f+(k<<9)+(p<<3)|0;s=i&65535;n=D*+g[r>>2]+q*+g[103160+(s<<3)>>2];g[r>>2]=n;if((a[R>>0]|0)==3?(a[S>>0]|0)==42:0){g[r>>2]=16428320.0;n=16428320.0}ga=f+(k<<9)+(p<<3)+4|0;ca=D*+g[ga>>2]+q*+g[103160+(s<<3)+4>>2];g[r>>2]=n+E*F;g[ga>>2]=ca+E*+((p<<25&33554432^33554432)+-16777216>>24|0)*G;t=t+1|0}while((t|0)!=(u|0))}j=j+1&3;p=(a[M>>0]|0)+1<<24>>24;p=p<<24>>24>4?0:p;a[M>>0]=p;k=w+1<<24>>24;if((k&255)>=(d[x>>0]|0))break;else{w=k;v=k&255}}}o=K+1<<24>>24;if((o&255)<(d[ha>>0]|0)){K=o;k=0;A=o&255}else break}ka=e+12406+(ka<<1)|0;b[ka>>1]=i;a[h>>0]=j;l=la;return 0}function Bh(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=c&255;f=d&255;if((a[b+634+(i*6|0)+f>>0]|0)==1){c=e&255;if((f|0)<(a[b+10972+i>>0]|0)){if(!(a[b+12277+(i<<6)+c>>0]|0)){b=0;return b|0}if(!(a[b+53445+i>>0]|0)){b=0;return b|0}}b=a[b+12149+(i<<6)+c>>0]|0;return b|0}g=(e&255)<<1;e=a[b+17>>0]&1;c=g-e|0;d=c&255;c=c&255;e=g+2-e&255;if(e>>>0<=c>>>0){b=0;return b|0}g=b+53445+i|0;if((f|0)>=(a[b+10972+i>>0]|0)){while(1){if((a[b+12149+(i<<6)+c>>0]|0)==1){c=1;d=14;break}d=d+1<<24>>24;c=d&255;if(e>>>0<=c>>>0){c=0;d=14;break}}if((d|0)==14)return c|0}else{h=d;j=c}while(1){if((a[b+12277+(i<<6)+j>>0]|0?a[g>>0]|0:0)?(a[b+12149+(i<<6)+j>>0]|0)==1:0){c=1;d=14;break}h=h+1<<24>>24;j=h&255;if(e>>>0<=j>>>0){c=0;d=14;break}}if((d|0)==14)return c|0;return 0}function Ch(b){b=b|0;var e=0,f=0,h=0,i=0,j=0.0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+464|0;if((l|0)>=(m|0))W(464);v=C;x=C+400|0;A=b+14|0;i=a[A>>0]|0;y=i&255;a[b+282>>0]=(d[b+90>>0]|0)-y;w=b+18|0;a[b+283>>0]=(d[(d[w>>0]|0)+(b+90)>>0]|0)-y;a[b+20>>0]=1;y=b+12020|0;z=x+1|0;e=1;while(1){FZ(v|0,0,400)|0;f=z;h=f+63|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(h|0));a[x>>0]=i;k=a[y>>0]|0;if(k<<24>>24){h=1;f=1;while(1){u=f+-1|0;a[x+f>>0]=(d[b+12021+u>>0]|0)+(d[x+u>>0]|0);f=h+1<<24>>24;if((f&255)>(k&255))break;else{h=f;f=f&255}}}i=a[w>>0]|0;h=0;f=0;while(1){c[v+(f<<2)>>2]=d[b+90+f>>0];f=h+1<<24>>24;if((f&255)>(i&255))break;else{h=f;f=f&255}}if((k&255)>1){i=i&255;f=k&255;h=1;do{c[v+(h+i<<2)>>2]=d[x+h>>0];h=h+1|0}while(h>>>0>>0);h=i}else{h=i&255;f=k&255}GW(v,h+f|0,4,7);f=(d[y>>0]|0)+255+(d[w>>0]|0)|0;h=f&255;if(f&128|0)break;f=f<<24;a:do if((f|0)<16777216)i=f>>24;else{u=107256+(e+-1<<2)|0;s=1;t=1;do{p=v+(t+-1<<2)|0;q=v+(t<<2)|0;r=v+((s&255)<<2)|0;while(1){o=c[p>>2]|0;if(!o)j=0.0;else j=+(c[q>>2]|0)/+(o|0);if(!(j<+g[u>>2]))break;k=c[q>>2]|0;if((k|0)!=(o|0)){n=a[y>>0]|0;f=0;i=0;do{f=(k|0)==(d[x+(i&255)>>0]|0|0)?1:f;i=i+1<<24>>24}while((i&255)<=(n&255));if(f<<24>>24){f=0;i=0;do{f=(o|0)==(d[x+(i&255)>>0]|0|0)?1:f;i=i+1<<24>>24}while((i&255)<=(n&255));if(f<<24>>24)break;o=d[w>>0]|0;c[p>>2]=d[b+90+o>>0];GW(v,o+(n&255)|0,4,7)}else B=24}else B=24;if((B|0)==24){B=0;c[r>>2]=d[(d[w>>0]|0)+(b+90)>>0];GW(v,h<<24>>24,4,7)}h=h+-1<<24>>24;i=h<<24>>24;if((t|0)>(i|0))break a}s=s+1<<24>>24;t=s&255;i=h<<24>>24}while((t|0)<=(i|0))}while(0);a[b+20+e>>0]=h;if((i|0)>=0){f=0;h=0;do{a[b+282+(e<<6)+h>>0]=(c[v+(h<<2)>>2]|0)-(d[A>>0]|0);f=f+1<<24>>24;h=f&255}while((i|0)>=(h|0))}e=e+1|0;if(e>>>0>=4){B=32;break}i=a[A>>0]|0}if((B|0)==32){l=C;return}l=C;return}function Dh(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;B=l;l=l+4096|0;if((l|0)>=(m|0))W(4096);A=B;j=c[a+8>>2]|0;k=b[a>>1]|0;n=(k&65535)>>>1;f=(k&65535)>>>2;k=(k&65535)>>>3;z=f&65535;f=f<<16>>16==0;if(!f){h=(n&65535)+-1|0;i=0;do{y=i<<1;D=+g[d+(y<<2)>>2];F=+g[d+(h-y<<2)>>2];E=+g[j+(i<<3)>>2];C=+g[j+(i<<3)+4>>2];g[A+(i<<3)+4>>2]=D*E+F*C;g[A+(i<<3)>>2]=F*E-D*C;i=i+1|0}while(i>>>0>>0);Qf(c[a+4>>2]|0,A);if(!f){a=0;do{y=A+(a<<3)|0;C=+g[y>>2];x=A+(a<<3)+4|0;E=+g[x>>2];D=+g[j+(a<<3)>>2];F=+g[j+(a<<3)+4>>2];g[x>>2]=E*D+C*F;g[y>>2]=C*D-E*F;a=a+1|0}while(a>>>0>>0)}}else Qf(c[a+4>>2]|0,A);y=k&65535;if(!(k<<16>>16)){l=B;return}q=y+1|0;r=y+-1|0;s=y+-2|0;t=z+2|0;u=z+-1|0;v=z+1|0;w=z+-2|0;x=z+3|0;f=n&65535;h=f+2|0;i=f+1|0;j=f+3|0;k=f+z|0;n=k+2|0;o=k+1|0;p=k+3|0;d=0;a=0;while(1){M=a+y|0;G=a<<1;c[e+(G<<2)>>2]=c[A+(M<<3)+4>>2];L=q+a|0;c[e+(G+2<<2)>>2]=c[A+(L<<3)+4>>2];K=r+d|0;g[e+((G|1)<<2)>>2]=-+g[A+(K<<3)>>2];J=s+d|0;g[e+(G+3<<2)>>2]=-+g[A+(J<<3)>>2];c[e+(G+z<<2)>>2]=c[A+(a<<3)>>2];I=a+1|0;c[e+(t+G<<2)>>2]=c[A+(I<<3)>>2];H=u+d|0;g[e+(v+G<<2)>>2]=-+g[A+(H<<3)+4>>2];d=w+d|0;g[e+(x+G<<2)>>2]=-+g[A+(d<<3)+4>>2];c[e+(G+f<<2)>>2]=c[A+(M<<3)>>2];c[e+(h+G<<2)>>2]=c[A+(L<<3)>>2];g[e+(i+G<<2)>>2]=-+g[A+(K<<3)+4>>2];g[e+(j+G<<2)>>2]=-+g[A+(J<<3)+4>>2];g[e+(G+k<<2)>>2]=-+g[A+(a<<3)+4>>2];g[e+(n+G<<2)>>2]=-+g[A+(I<<3)+4>>2];c[e+(o+G<<2)>>2]=c[A+(H<<3)>>2];c[e+(p+G<<2)>>2]=c[A+(d<<3)>>2];a=a+2&65535;if(a>>>0>>0)d=0-a|0;else break}l=B;return}function Eh(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+8192|0;if((l|0)>=(m|0))W(8192);u=w;FZ(u|0,0,8192)|0;t=j&65535;q=(j&65535)>>>3;s=q&65535;n=(t-s|0)/2|0;if(b<<24>>24==2)Ua(184161,184201,353,184212);k=d&255;if(i<<24>>24==23){d=a+16+(k<<2)|0;i=a+16+((e&255)<<2)|0;o=0;p=0}else{o=e&255;d=a+(k<<2)|0;i=a+(o<<2)|0;o=c[a+8+(o<<2)>>2]|0;p=c[a+8+(k<<2)>>2]|0}r=c[d>>2]|0;k=c[i>>2]|0;switch(b<<24>>24){case 0:{e=t+-1|0;d=e&65535;if(d<<16>>16>-1){i=e<<16>>16;while(1){g[u+(i<<2)>>2]=+g[f+(i<<2)>>2]*+g[k+(i<<2)>>2];s=i+t|0;g[u+(s<<2)>>2]=+g[f+(s<<2)>>2]*+g[r+(e-i<<2)>>2];i=d+-1<<16>>16;if(i<<16>>16>-1){d=i;i=i<<16>>16}else break}}switch((t<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;v=16;break}case 240:case 256:{d=a+24|0;v=16;break}case 960:case 1024:{d=a+28|0;v=16;break}default:d=0}if((v|0)==16)d=c[d>>2]|0;Gh(d,u,h);l=w;return}case 1:{if(j<<16>>16){d=0;i=0;do{g[u+(i<<2)>>2]=+g[f+(i<<2)>>2]*+g[k+(i<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((i|0)<(t|0))}n=n&65535;b=(n|0)==0;if(!b){d=0;i=0;do{r=i+t|0;c[u+(r<<2)>>2]=c[f+(r<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((n|0)>(i|0))}if(q<<16>>16){i=n+t|0;e=s+-1|0;d=0;k=0;do{r=i+k|0;g[u+(r<<2)>>2]=+g[f+(r<<2)>>2]*+g[p+(e-k<<2)>>2];d=d+1<<16>>16;k=d<<16>>16}while((k|0)<(s|0))}if(!b){i=s+t+n|0;d=0;e=0;do{g[u+(i+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((n|0)>(e|0))}switch((t<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;v=31;break}case 240:case 256:{d=a+24|0;v=31;break}case 960:case 1024:{d=a+28|0;v=31;break}default:d=0}if((v|0)==31)d=c[d>>2]|0;Gh(d,u,h);l=w;return}case 3:{k=n&65535;e=(k|0)==0;if(!e){d=0;i=0;do{g[u+(i<<2)>>2]=0.0;d=d+1<<16>>16;i=d<<16>>16}while((k|0)>(i|0))}if(q<<16>>16){d=0;i=0;do{q=i+k|0;g[u+(q<<2)>>2]=+g[f+(q<<2)>>2]*+g[o+(i<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((i|0)<(s|0))}if(!e){i=k+s|0;d=0;e=0;do{s=i+e|0;c[u+(s<<2)>>2]=c[f+(s<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((k|0)>(e|0))}if(j<<16>>16){i=t+-1|0;d=0;e=0;do{s=e+t|0;g[u+(s<<2)>>2]=+g[f+(s<<2)>>2]*+g[r+(i-e<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((e|0)<(t|0))}switch((t<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;v=46;break}case 240:case 256:{d=a+24|0;v=46;break}case 960:case 1024:{d=a+28|0;v=46;break}default:d=0}if((v|0)==46)d=c[d>>2]|0;Gh(d,u,h);l=w;return}default:{l=w;return}}}function Fh(e,f,h,i,j,k){e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;Q=l;l=l+336|0;if((l|0)>=(m|0))W(336);K=Q+168|0;L=Q+84|0;M=Q;if(!(a[e+9040>>0]|0)){l=Q;return}F=e+3|0;if(!(a[F>>0]|0)){l=Q;return}H=e+1|0;O=M+4|0;P=L+4|0;I=e+4|0;J=e+2040|0;E=(k&65535)>>>3&65535;D=0;A=0;while(1){z=f+A|0;if(a[z>>0]|0){B=f+8+A|0;C=N(A,E)|0;x=0;y=d[H>>0]|0;u=0;while(1){k=y&65535;n=k-(d[f+16+(A<<2)+u>>0]|0)|0;y=(n|0)>0?n:0;n=a[f+48+(A<<2)+u>>0]|0;n=(n&255)<20?n:20;if(n<<24>>24){o=((d[B>>0]|0)+3&255)<<24>>24==3;o=(a[f+112+(A<<2)+u>>0]|0)==0?(o?107396:107460):o?107268:107332;w=n&255;n=0;do{c[K+(n<<2)>>2]=c[o+(d[f+144+(A<<7)+(u<<5)+n>>0]<<2)>>2];n=n+1|0}while((n|0)!=(w|0));g[M>>2]=1.0;q=0;s=1;while(1){n=((q<<2)+1020&1020)+4|0;o=K+(s+-1<<2)|0;if(s>>>0>1){p=+g[o>>2];r=1;do{g[L+(r<<2)>>2]=+g[M+(r<<2)>>2]+p*+g[M+(s-r<<2)>>2];r=r+1|0}while((r|0)!=(s|0));DZ(O|0,P|0,n|0)|0}c[M+(s<<2)>>2]=c[o>>2];if(s>>>0>>0){q=q+1|0;s=s+1|0}else break}n=y&65535;if(n>>>0>=((Zf(h,i,(a[I>>0]|0)==2&1)|0)&255)>>>0)n=(Zf(h,i,(a[I>>0]|0)==2&1)|0)&255;v=d[e>>0]|0;v=b[e+1936+(((n>>>0>>0?n:v)&65535)<<1)>>1]|0;n=b[J>>1]|0;n=(v&65535)<(n&65535)?v:n;if(k>>>0>=((Zf(h,i,(a[I>>0]|0)==2&1)|0)&255)>>>0)k=(Zf(h,i,(a[I>>0]|0)==2&1)|0)&255;s=d[e>>0]|0;s=b[e+1936+(((k>>>0>>0?k:s)&65535)<<1)>>1]|0;k=b[J>>1]|0;k=((s&65535)<(k&65535)?s:k)&65535;s=k-(n&65535)|0;v=s&65535;if((s<<16|0)>=65536?(G=(a[f+80+(A<<2)+u>>0]|0)==0,FZ(K|0,0,160)|0,v<<16>>16):0){s=G?1:-1;u=w+255&255;r=0;k=j+(C+((G?n:k+65535&65535)&65535)<<2)|0;n=0;while(1){t=+g[k>>2];o=n<<24>>24;p=t;q=0;do{R=q;q=q+1|0;p=p+ +g[K+(R+o<<2)>>2]*+g[M+(q<<2)>>2]}while((q|0)!=(w|0));R=n+-1<<24>>24;n=R<<24>>24<0?u:R;R=n<<24>>24;g[K+(R+w<<2)>>2]=t;g[K+(R<<2)>>2]=t;g[k>>2]=p;r=r+1<<16>>16;if((r&65535)>=(v&65535))break;else k=k+(s<<2)|0}}}k=x+1<<24>>24;if((k&255)>=(d[z>>0]|0))break;else{x=k;u=k&255}}}k=D+1<<24>>24;if((k&255)<(d[F>>0]|0)){D=k;A=k&255}else break}l=Q;return}function Gh(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0;x=l;l=l+4096|0;if((l|0)>=(m|0))W(4096);v=x;w=c[a+8>>2]|0;q=b[a>>1]|0;t=q&65535;s=(q&65535)>>>1;u=(q&65535)>>>2;f=(q&65535)>>>3;r=+(q&65535);if(f<<16>>16){f=f&65535;h=u&65535;i=t-h|0;j=i+-1|0;k=h+-1|0;n=s&65535;o=n+-1|0;p=t+-1|0;q=0;do{y=q<<1;C=+g[d+(j-y<<2)>>2]+ +g[d+(y+i<<2)>>2];z=+g[d+(y+h<<2)>>2]-+g[d+(k-y<<2)>>2];B=+g[w+(q<<3)>>2];A=+g[w+(q<<3)+4>>2];g[v+(q<<3)>>2]=(C*B+z*A)*r;g[v+(q<<3)+4>>2]=(z*B-C*A)*r;A=+g[d+(o-y<<2)>>2]-+g[d+(y<<2)>>2];C=+g[d+(y+n<<2)>>2]+ +g[d+(p-y<<2)>>2];y=q+f|0;B=+g[w+(y<<3)>>2];z=+g[w+(y<<3)+4>>2];g[v+(y<<3)>>2]=(A*B+C*z)*r;g[v+(y<<3)+4>>2]=(C*B-A*z)*r;q=q+1|0}while(q>>>0>>0)}Lf(c[a+4>>2]|0,v);if(!(u<<16>>16)){l=x;return}j=s&65535;k=j+-1|0;i=t+-1|0;f=u&65535;h=0;do{y=h<<1;A=+g[v+(h<<3)>>2];r=+g[v+(h<<3)+4>>2];z=+g[w+(h<<3)>>2];B=+g[w+(h<<3)+4>>2];C=A*z+r*B;B=r*z-A*B;g[e+(y<<2)>>2]=-C;g[e+(k-y<<2)>>2]=B;g[e+(y+j<<2)>>2]=-B;g[e+(i-y<<2)>>2]=C;h=h+1|0}while(h>>>0>>0);l=x;return}function Hh(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=b+8|0;h=b+4|0;i=b+20|0;e=0;while(1){f=e&65535;if(!(a[185093+(f<<1)+1>>0]|0))break;e=c[g>>2]|0;if(!e){e=(c[h>>2]|0)>>>31;if(!(a[i>>0]|0))Gf(b,1)}else{e=e+-1|0;c[g>>2]=e;e=(c[b>>2]|0)>>>e&1}e=f+(d[185093+(f<<1)+e>>0]|0)|0;if((e&65535)>>>0>=241){e=-1;j=9;break}}if((j|0)==9)return e|0;j=a[185093+(f<<1)>>0]|0;return j|0}function Ih(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=e+8|0;f=c[l>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){Gf(e,1);g=c[l>>2]|0;h=6;break}else{a[d+10443>>0]=f;f=0;h=8;break}}else{g=f+-1|0;c[l>>2]=g;f=(c[e>>2]|0)>>>g&1;h=6}while(0);if((h|0)==6){a[d+10443>>0]=f;if(g>>>0<8){f=g;h=8}else{i=c[e>>2]<<32-g>>>24;f=g}}if((h|0)==8){i=8-f|0;i=(c[e>>2]&(1<>2]|0)>>>(32-i|0)}k=e+20|0;do if(!(a[k>>0]|0))if(f>>>0>8){f=f+-8|0;c[l>>2]=f;break}else{Gf(e,8);f=c[l>>2]|0;break}while(0);a[d+10444>>0]=i;g=(a[d+4>>0]|0)==2?11:9;if(f>>>0>>0){h=g-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>(32-g|0);do if(!(a[k>>0]|0))if(f>>>0>g>>>0){c[l>>2]=f-g;break}else{Gf(e,g);break}while(0);f=h&65535;i=d+10446|0;b[i>>1]=f;j=d+9037|0;if(a[j>>0]|0){g=c[l>>2]|0;if(g>>>0<9){h=9-g|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>23;do if(!(a[k>>0]|0))if(g>>>0>9){c[l>>2]=g+-9;break}else{Gf(e,9);f=b[i>>1]|0;break}while(0);b[d+10448>>1]=h;b[i>>1]=(f&65535)+65527}f=c[l>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(e,1)}else{f=f+-1|0;c[l>>2]=f;f=(c[e>>2]|0)>>>f&1}i=f&255;a[d+10450>>0]=i;if(i<<24>>24){g=c[l>>2]|0;if(g>>>0<8){f=8-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>24;do if(!(a[k>>0]|0))if(g>>>0>8){c[l>>2]=g+-8;break}else{Gf(e,8);break}while(0);a[d+10451>>0]=f}if(!(a[j>>0]|0))return 0;g=c[l>>2]|0;if(g>>>0<9){f=9-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>23;do if(!(a[k>>0]|0))if(g>>>0>9){c[l>>2]=g+-9;break}else{Gf(e,9);break}while(0);b[d+10452>>1]=f;return 0}function Jh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=(a[b+4>>0]|0)==2;z=B?1:2;A=B?4:6;B=B?3:5;x=b+3|0;if(!(a[x>>0]|0))return;y=f+8|0;s=f+4|0;t=f+20|0;u=32-B|0;v=32-A|0;w=32-z|0;r=0;q=0;while(1){g=c[y>>2]|0;if(g>>>0>>0){b=z-g|0;b=(c[f>>2]&(1<>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>w;do if(!(a[t>>0]|0))if(g>>>0>z>>>0){c[y>>2]=g-z;break}else{Gf(f,z);break}while(0);o=b&255;p=e+q|0;a[p>>0]=o;if(o<<24>>24){b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}b=b&255;a[e+8+q>>0]=b;if(a[p>>0]|0){o=b<<24>>24==0?3:4;n=0;m=0;while(1){g=c[y>>2]|0;if(g>>>0>>0){b=A-g|0;b=(c[f>>2]&(1<>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>v;do if(!(a[t>>0]|0))if(g>>>0>A>>>0){c[y>>2]=g-A;break}else{Gf(f,A);break}while(0);a[e+16+(q<<2)+m>>0]=b;g=c[y>>2]|0;if(g>>>0>>0){b=B-g|0;b=(c[f>>2]&(1<>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>u;do if(!(a[t>>0]|0))if(g>>>0>B>>>0){c[y>>2]=g-B;break}else{Gf(f,B);break}while(0);k=b&255;l=e+48+(q<<2)+m|0;a[l>>0]=k;a:do if(k<<24>>24){b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}a[e+80+(q<<2)+m>>0]=b;b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}a[e+112+(q<<2)+m>>0]=b;g=a[l>>0]|0;if(g<<24>>24){j=o-b&255;k=32-j|0;if(!j){b=0;while(1){a[(b&255)+(e+144+(q<<7)+(m<<5))>>0]=0;b=b+1<<24>>24;if((b&255)>=(g&255))break a}}else g=0;do{h=g&255;i=c[y>>2]|0;if(i>>>0>>0){b=j-i|0;b=(c[f>>2]&(1<>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-i>>>k;do if(!(a[t>>0]|0))if(i>>>0>j>>>0){c[y>>2]=i-j;break}else{Gf(f,j);break}while(0);a[e+144+(q<<7)+(m<<5)+h>>0]=b;g=g+1<<24>>24}while((g&255)<(d[l>>0]|0))}}while(0);b=n+1<<24>>24;if((b&255)<(d[p>>0]|0)){n=b;m=b&255}else break}}}b=r+1<<24>>24;if((b&255)<(d[x>>0]|0)){r=b;q=b&255}else break}return}function Kh(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+80|0;if((l|0)>=(m|0))W(80);x=A+36|0;y=A;z=c+10446|0;g=b[z>>1]|0;if(!(g<<16>>16))v=0;else{v=If(f,g&65535)|0;Cf(x,v,((e[z>>1]|0)+7|0)>>>3)}w=c+10450|0;if(!(a[w>>0]|0))u=0;else{t=c+10451|0;u=If(f,d[t>>0]|0)|0;Cf(y,u,((d[t>>0]|0)+7|0)>>>3)}g=a[c+7810>>0]|0;s=c+2|0;f=a[s>>0]|0;a:do if(!(f<<24>>24))g=0;else{t=c+10448|0;o=(g&255)+65190&65535;j=0;k=g&255;n=1;i=0;h=0;q=0;g=a[c>>0]|0;r=0;while(1){if(!(g<<24>>24))g=0;else{p=0;g=i;f=h;h=o;o=0;while(1){if(!(g<<24>>24)){switch(a[c+6842+(r*120|0)+o>>0]|0){case 0:{g=0;break}case 14:case 15:{f=Uh(x,y)|0;g=(f<<24>>24)+(j&65535)&65535;j=g;break}case 13:{if(!(n<<24>>24)){f=Uh(x,y)|0;g=(f<<24>>24)+(h&65535)|0}else g=(b[t>>1]|0)+(h<<16>>16)|0;g=g&65535;h=g;n=0;break}default:{f=Uh(x,y)|0;k=(f<<24>>24)+(k&65535)|0;g=k&65535;if(!(k&32768))k=g;else{g=4;break a}}}b[c+7812+(r*102|0)+(o<<1)>>1]=g;i=f<<24>>24==99&1}else{b[c+7812+(r*102|0)+(o<<1)>>1]=0;i=g}p=p+1<<24>>24;o=p<<24>>24;g=a[c>>0]|0;if((o|0)>=(g&255|0))break;else g=i}o=h;h=f;f=a[s>>0]|0}q=q+1<<24>>24;r=q<<24>>24;if((r|0)>=(f&255|0)){g=0;break}}}while(0);if(u|0)Vf(u);if(v|0)Vf(v);if(!(a[w>>0]|0)){l=A;return g|0}l=A;return g|0}function Lh(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0;Ba=l;l=l+14352|0;if((l|0)>=(m|0))W(14352);wa=Ba+6144|0;Aa=Ba;sa=Ba+14336|0;j=(e[f+10>>1]|0)>>>3;oa=b[g+10440>>1]|0;pa=oa&65535;if(!(oa<<16>>16)){Aa=0;l=Ba;return Aa|0}qa=g+10442|0;ra=a[qa>>0]|0;if(ra<<24>>24==0|pa>>>0<(ra&255)>>>0){Aa=10;l=Ba;return Aa|0}b[sa>>1]=0;ra=g+2|0;p=a[ra>>0]|0;if((p&255)>1){k=j&65535;n=p&255;j=1;o=1;do{na=o+-1|0;b[sa+(o<<1)>>1]=(N(d[g+5+na>>0]|0,k)|0)+(e[sa+(na<<1)>>1]|0);j=j+1<<16>>16;o=j&65535}while(o>>>0>>0)}ga=(a[f+6>>0]|0)==0;ea=ga?6:22;ga=ga?185033:185039;ha=g+2040|0;ia=h+8|0;ja=h+4|0;ka=h+20|0;la=wa+2|0;ma=wa+1|0;na=wa+12|0;o=0;q=0;f=0;fa=0;k=0;j=p;n=0;while(1){ba=a[ga+n>>0]|0;if(!(a[g>>0]|0))D=q;else{ca=(ba&255)<11;da=(ba&255)+1|0;aa=0;Z=0;while(1){Y=Z+1|0;_=g+1936+(Y<<1)|0;V=b[_>>1]|0;X=b[ha>>1]|0;$=g+1936+(Z<<1)|0;if((((V&65535)<(X&65535)?V:X)&65535)>(e[$>>1]|0)){X=0;V=0;do{if(!(j<<24>>24))j=0;else{U=0;T=0;do{O=g+7802+T|0;j=a[O>>0]|0;if(j<<24>>24){P=g+16+(T*240|0)+(Y<<1)|0;Q=g+16+(T*240|0)+(Z<<1)|0;R=g+5+T|0;S=sa+(T<<1)|0;M=0;n=0;do{do if((Z>>>0>=(e[g+3002+(T*240|0)+(n<<1)>>1]|0)>>>0?Z>>>0<(e[g+4922+(T*240|0)+(n<<1)>>1]|0)>>>0:0)?(ta=a[g+2042+(T*120|0)+n>>0]|0,ua=ta&255,(ta+-1&255)<11|(ta&-16)<<24>>24==16):0){if(!(ta<<24>>24==ba<<24>>24|ca&(da|0)==(ua|0)))break;L=(ta&255)<5;K=L?4:2;L=d[R>>0]<<2>>>(L?2:1);I=a[185061+ua>>0]|0;H=a[qa>>0]|0;H=(I&255)<(H&255)?I:H;I=H&255;J=N(L,V)|0;if((L|0)<=0)break;A=(e[P>>1]|0)-(e[Q>>1]|0)&65535;B=(H&255)>32;C=I+-32|0;D=(C|0)==0;E=64-I|0;F=H<<24>>24==0;G=32-I|0;z=0;j=0;do{j=j+J|0;if(j>>>0>=A>>>0)break;p=(N(j,K)|0)+(e[S>>1]|0)+(e[Q>>1]|0)|0;y=p&65535;do if(!(o<<16>>16)){j=k&65535;r=j+I|0;if(r>>>0<=pa>>>0){n=q&65535;o=Aa+(n*12|0)|0;a[Aa+(n*12|0)+8>>0]=H;if(B){do if(!D){k=c[ia>>2]|0;if(k>>>0>>0){j=C-k|0;j=(c[h>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>E;if(a[ka>>0]|0){va=31;break}if(k>>>0>C>>>0){k=k-C|0;c[ia>>2]=k;break}else{Gf(h,C);va=31;break}}else{j=0;va=31}while(0);if((va|0)==31){va=0;k=c[ia>>2]|0}c[Aa+(n*12|0)+4>>2]=j;if(k>>>0<32)j=(c[h>>2]&(1<>2]|0)>>>k;else j=c[h>>2]<<32-k;do if(!(a[ka>>0]|0))if(k>>>0>32){c[ia>>2]=k+-32;break}else{Gf(h,32);break}while(0);c[o>>2]=j}else{do if(!F){k=c[ia>>2]|0;if(k>>>0>>0){j=I-k|0;j=(c[h>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>G;if(a[ka>>0]|0)break;if(k>>>0>I>>>0){c[ia>>2]=k-I;break}else{Gf(h,I);break}}else j=0;while(0);c[o>>2]=j;c[Aa+(n*12|0)+4>>2]=0}Sh(ta,o,i+((p&65535)<<1)|0)|0;Th(o);o=0;q=q+1<<16>>16;k=r&65535;break}if((oa&65535)>(k&65535)){x=pa-j|0;v=x&255;r=q&65535;w=Aa+(r*12|0)|0;p=Aa+(r*12|0)+8|0;a[p>>0]=v;o=x&255;if((v&255)>32){k=o+-32|0;do if(k){n=c[ia>>2]|0;if(n>>>0>>0){j=k-n|0;j=(c[h>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-n>>>(64-o|0);if(a[ka>>0]|0){va=60;break}if(n>>>0>k>>>0){k=n-k|0;c[ia>>2]=k;break}else{Gf(h,k);va=60;break}}else{j=0;va=60}while(0);if((va|0)==60){va=0;k=c[ia>>2]|0}c[Aa+(r*12|0)+4>>2]=j;if(k>>>0<32)j=(c[h>>2]&(1<>2]|0)>>>k;else j=c[h>>2]<<32-k;do if(!(a[ka>>0]|0))if(k>>>0>32){c[ia>>2]=k+-32;break}else{Gf(h,32);break}while(0);c[w>>2]=j}else{do if(o){k=c[ia>>2]|0;if(k>>>0>>0){j=o-k|0;j=(c[h>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>(32-o|0);if(a[ka>>0]|0)break;if(k>>>0>o>>>0){c[ia>>2]=k-o;break}else{Gf(h,o);break}}else j=0;while(0);c[w>>2]=j;c[Aa+(r*12|0)+4>>2]=0}u=r+-1|0;k=Aa+(u*12|0)|0;v=Aa+(u*12|0)+8|0;a[p>>0]=(d[p>>0]|0)+(d[v>>0]|0);Th(w);t=a[v>>0]|0;if(t<<24>>24>32){j=t&255;r=c[Aa+(r*12|0)+4>>2]|0;n=t+-32&255;s=t<<24>>24;do if((j+224&255)<<24>>24){o=s-n|0;p=c[Aa+(u*12|0)+4>>2]|0;if((o|0)<32){n=(c[k>>2]|0)>>>o|(p&-1>>>(64-s|0))<>>(o+-32|0)&-1>>>(32-n|0);break}}else n=0;while(0);n=n+r|0;c[Aa+(u*12|0)+4>>2]=n;if(t<<24>>24<64){u=64-s|0;n=(c[k>>2]|0)>>>(s+-32|0)|(n&-1>>>u)<>>(s+-64|0);c[k>>2]=n+(c[w>>2]|0)}else{p=c[w>>2]|0;j=t&255;do if(t<<24>>24){n=t<<24>>24;o=c[k>>2]|0;if((n|0)<(j|0)){n=o<>>(32-j|0);break}else{n=o>>>(n-j|0)&-1>>>(32-j|0);break}}else n=0;while(0);c[k>>2]=n+p;c[Aa+(u*12|0)+4>>2]=c[Aa+(r*12|0)+4>>2]}a[v>>0]=x+j}b[la>>1]=y;a[wa>>0]=ta;a[ma>>0]=0;a[na>>0]=0;o=1;k=oa}else{x=(f&65535)-(q&65535)&65535;b[wa+(x<<4)+2>>1]=y;a[wa+(x<<4)>>0]=ta;a[wa+(x<<4)+1>>0]=0;a[wa+(x<<4)+12>>0]=0}while(0);f=f+1<<16>>16;z=z+1<<16>>16;j=z&65535}while((L|0)>(j|0));j=a[O>>0]|0}while(0);M=M+1<<16>>16;n=M&65535}while(n>>>0<(j&255)>>>0)}U=U+1<<16>>16;T=U&65535;j=a[ra>>0]|0}while(T>>>0<(j&255)>>>0)}X=X+1<<24>>24;V=X&255;T=b[_>>1]|0;U=b[ha>>1]|0}while((V<<2|0)<((((T&65535)<(U&65535)?T:U)&65535)-(e[$>>1]|0)|0))}n=aa+1<<24>>24;if((n&255)<(d[g>>0]|0)){aa=n;Z=n&255}else{D=q;break}}}fa=fa+1<<16>>16;n=fa&65535;if(ea>>>0<=n>>>0)break;else q=D}B=D&65535;if(!(D<<16>>16)){Aa=10;l=Ba;return Aa|0}C=(f&65535)/(D&65535)|0;if((D&65535)>(f&65535)){Aa=0;l=Ba;return Aa|0}A=(f&65535)-B|0;z=1;j=1;while(1){x=(N(j,B)|0)-B|0;y=0;do{w=0;j=0;while(1){q=((j+y|0)>>>0)%(B>>>0)|0;s=x+j&65535;if((s|0)>=(A|0))break;t=wa+(s<<4)+1|0;do if((a[t>>0]|0)==0?(xa=Aa+(q*12|0)|0,ya=Aa+(q*12|0)+8|0,za=a[ya>>0]|0,za<<24>>24>0):0){u=wa+(s<<4)+4|0;v=wa+(s<<4)+12|0;r=a[v>>0]|0;if(!(r<<24>>24))j=za;else{j=c[u>>2]|0;n=za<<24>>24;k=c[xa>>2]|0;if(za<<24>>24>32){va=Aa+(q*12|0)+4|0;f=n+-32|0;p=j<>2]&(1<>2]<>>(32-n|0);o=j<>2]=o|k;c[j>>2]=p|f;j=(za&255)+(r&255)&255;a[ya>>0]=j}if((Sh(a[wa+(s<<4)>>0]|0,xa,i+(e[wa+(s<<4)+2>>1]<<1)|0)|0)<<24>>24>-1){a[t>>0]=1;break}else{c[u>>2]=c[xa>>2];c[u+4>>2]=c[xa+4>>2];c[u+8>>2]=c[xa+8>>2];a[v>>0]=j;break}}while(0);j=w+1<<16>>16;if((j&65535)<(D&65535)){w=j;j=j&65535}else break}y=y+1|0}while((y|0)!=(B|0));j=0;do{Th(Aa+(j*12|0)|0);j=j+1|0}while((j|0)!=(B|0));j=z+1<<16>>16;if((j&65535)>(C&65535)){j=0;break}else{z=j;j=j&65535}}l=Ba;return j|0}function Mh(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do switch(d<<24>>24){case 2:case 1:{f=Oh(d,f,g)|0;return f|0}case 3:{j=f+8|0;k=f+4|0;l=f+20|0;h=0;do{d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}h=h+(a[184228+(h*5|0)+1+d>>0]|0)&65535}while(!(a[184228+(h*5|0)>>0]|0));if((h|0)>161){i=10;d=b[g>>1]|0}else{d=a[184228+(h*5|0)+1>>0]|0;b[g>>1]=d;b[g+2>>1]=a[184228+(h*5|0)+2>>0]|0;b[g+4>>1]=a[184228+(h*5|0)+3>>0]|0;b[g+6>>1]=a[184228+(h*5|0)+4>>0]|0;i=0}if(d<<16>>16){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(b[h>>1]|0){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+4|0;if(b[h>>1]|0){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+6|0;if(!(b[h>>1]|0)){f=i;return f|0}d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=i;return f|0}b[h>>1]=0-(e[h>>1]|0);f=i;return f|0}case 4:{l=Oh(4,f,g)|0;i=f+8|0;j=f+4|0;k=f+20|0;if(b[g>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(b[h>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+4|0;if(b[h>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+6|0;if(!(b[h>>1]|0)){f=l;return f|0}d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=l;return f|0}b[h>>1]=0-(e[h>>1]|0);f=l;return f|0}case 5:{if(!(a[179804]|0)){j=f+8|0;k=f+4|0;l=f+20|0;h=0;d=179804;do{i=c[j>>2]|0;if(!i){i=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0)){Gf(f,1);d=179804}}else{i=i+-1|0;c[j>>2]=i;i=(c[f>>2]|0)>>>i&1}h=h+(a[d+(h*3|0)+1+i>>0]|0)&65535}while((a[d+(h*3|0)>>0]|0)==0)}else{h=0;d=179804}if((h|0)>161){f=10;return f|0}b[g>>1]=a[d+(h*3|0)+1>>0]|0;b[g+2>>1]=a[d+(h*3|0)+2>>0]|0;f=0;return f|0}case 6:{f=Ph(6,f,g)|0;return f|0}case 9:case 7:{n=d&255;j=53452+(n<<2)|0;d=c[j>>2]|0;if(!(a[d>>0]|0)){k=f+8|0;l=f+4|0;m=f+20|0;h=0;do{i=c[k>>2]|0;if(!i){i=(c[l>>2]|0)>>>31;if(!(a[m>>0]|0)){Gf(f,1);d=c[j>>2]|0}}else{i=i+-1|0;c[k>>2]=i;i=(c[f>>2]|0)>>>i&1}h=h+(a[d+(h*3|0)+1+i>>0]|0)&65535}while((a[d+(h*3|0)>>0]|0)==0)}else h=0;if((h|0)>(c[53596+(n<<2)>>2]|0)){l=10;d=b[g>>1]|0}else{n=a[d+(h*3|0)+1>>0]|0;b[g>>1]=n;b[g+2>>1]=a[d+(h*3|0)+2>>0]|0;l=0;d=n}i=f+8|0;j=f+4|0;k=f+20|0;if(d<<16>>16){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(!(b[h>>1]|0)){f=l;return f|0}d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=l;return f|0}b[h>>1]=0-(e[h>>1]|0);f=l;return f|0}case 10:case 8:{f=Qh(d,f,g)|0;return f|0}case 12:{f=Ph(11,f,g)|0;b[g>>1]=250;b[g+2>>1]=-21216;return f|0}case 11:{n=Qh(11,f,g)|0;b[g>>1]=Rh(f,b[g>>1]|0)|0;g=g+2|0;b[g>>1]=Rh(f,b[g>>1]|0)|0;f=n;return f|0}case 31:case 30:case 29:case 28:case 27:case 26:case 25:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:{i=Qh(11,f,g)|0;b[g>>1]=Rh(f,b[g>>1]|0)|0;j=g+2|0;h=Rh(f,b[j>>1]|0)|0;b[j>>1]=h;if((d&-16)<<24>>24!=16){f=i;return f|0}n=b[g>>1]|0;f=n<<16>>16;d=e[170880+((d&255)+-16<<1)>>1]|0;if(((n<<16>>16>-1?f:0-f|0)|0)<=(d|0)?(f=h<<16>>16,((h<<16>>16>-1?f:0-f|0)|0)<=(d|0)):0){f=i;return f|0}b[g>>1]=0;b[j>>1]=0;f=i;return f|0}default:{f=11;return f|0}}while(0);return 0}function Nh(a,c,e){a=a|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=b[a+1936+((d[a+9044>>0]|0)<<1)>>1]|0;h=b[a+2040>>1]|0;j=a+9043|0;i=e&65535;e=(f&65535)<(h&65535)?f:h;h=0;f=0;while(1){g=(d[a+9045+f>>0]|0)+(e&65535)|0;e=g&65535;if(e>>>0>=i>>>0){e=15;f=4;break}e=c+(e<<1)|0;k=b[e>>1]|0;f=d[a+9049+f>>0]|0;b[e>>1]=(k<<16>>16>0?f:0-f|0)+(k&65535);f=h+1<<24>>24;if((f&255)>(d[j>>0]|0)){e=0;f=4;break}else{e=g&65535;h=f;f=f&255}}if((f|0)==4)return e|0;return 0}function Oh(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e&255;l=181679+n|0;h=d[l>>0]|0;m=f+8|0;i=c[m>>2]|0;if(i>>>0>>0){e=h-i|0;e=(c[f>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-h|0);k=c[53308+(n<<2)>>2]|0;j=a[k+(e<<1)>>0]|0;e=a[k+(e<<1)+1>>0]|0;do if(!(e<<24>>24)){e=j&255;h=d[(c[53356+(n<<2)>>2]|0)+(e*5|0)>>0]|0;if(!(a[f+20>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{Gf(f,h);break}}else{k=f+20|0;do if(!(a[k>>0]|0))if(i>>>0>h>>>0){i=i-h|0;c[m>>2]=i;break}else{Gf(f,h);i=c[m>>2]|0;break}while(0);e=e&255;if(i>>>0>>0){e=e-i|0;e=(c[f>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-e|0);e=e+(j&255)|0;h=(d[(c[53356+(n<<2)>>2]|0)+((e&65535)*5|0)>>0]|0)-(d[l>>0]|0)|0;if(!(a[k>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{Gf(f,h);break}}while(0);e=e&65535;if((c[53500+(n<<2)>>2]|0)<(e|0)){g=10;return g|0}n=c[53356+(n<<2)>>2]|0;b[g>>1]=a[n+(e*5|0)+1>>0]|0;b[g+2>>1]=a[n+(e*5|0)+2>>0]|0;b[g+4>>1]=a[n+(e*5|0)+3>>0]|0;b[g+6>>1]=a[n+(e*5|0)+4>>0]|0;g=0;return g|0}function Ph(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e&255;l=181679+n|0;h=d[l>>0]|0;m=f+8|0;i=c[m>>2]|0;if(i>>>0>>0){e=h-i|0;e=(c[f>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-h|0);k=c[53308+(n<<2)>>2]|0;j=a[k+(e<<1)>>0]|0;e=a[k+(e<<1)+1>>0]|0;do if(!(e<<24>>24)){e=j&255;h=d[(c[53404+(n<<2)>>2]|0)+(e*3|0)>>0]|0;if(!(a[f+20>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{Gf(f,h);break}}else{k=f+20|0;do if(!(a[k>>0]|0))if(i>>>0>h>>>0){i=i-h|0;c[m>>2]=i;break}else{Gf(f,h);i=c[m>>2]|0;break}while(0);e=e&255;if(i>>>0>>0){e=e-i|0;e=(c[f>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-e|0);e=e+(j&255)|0;h=(d[(c[53404+(n<<2)>>2]|0)+((e&65535)*3|0)>>0]|0)-(d[l>>0]|0)|0;if(!(a[k>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{Gf(f,h);break}}while(0);e=e&65535;if((c[53548+(n<<2)>>2]|0)<(e|0)){g=10;return g|0}n=c[53404+(n<<2)>>2]|0;b[g>>1]=a[n+(e*3|0)+1>>0]|0;b[g+2>>1]=a[n+(e*3|0)+2>>0]|0;g=0;return g|0}function Qh(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=Ph(d,f,g)|0;h=f+8|0;i=f+4|0;j=f+20|0;if(b[g>>1]|0){d=c[h>>2]|0;if(!d){d=(c[i>>2]|0)>>>31;if(!(a[j>>0]|0))Gf(f,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}g=g+2|0;if(!(b[g>>1]|0))return k|0;d=c[h>>2]|0;if(!d){d=(c[i>>2]|0)>>>31;if(!(a[j>>0]|0))Gf(f,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d)return k|0;b[g>>1]=0-(e[g>>1]|0);return k|0}function Rh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d<<16>>16<0)if(d<<16>>16==-16)j=1;else{b=d;return b|0}else if(d<<16>>16==16)j=0;else{b=d;return b|0}h=b+8|0;g=b+4|0;i=b+20|0;e=4;while(1){d=c[h>>2]|0;if(!d){d=(c[g>>2]|0)>>>31;if(!(a[i>>0]|0))Gf(b,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[b>>2]|0)>>>d&1}if(!d)break;else e=e+1<<24>>24}f=e&255;do if(e<<24>>24){e=c[h>>2]|0;if(e>>>0>>0){d=f-e|0;d=(c[b>>2]&(1<>2]|0)>>>(32-d|0)}else d=c[b>>2]<<32-e>>>(32-f|0);if(!(a[i>>0]|0))if(e>>>0>f>>>0){c[h>>2]=e-f;break}else{Gf(b,f);break}}else d=0;while(0);b=d&65535|1<>24==0?b:0-b|0)&65535;return b|0}function Sh(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f&255;a:do switch(f<<24>>24){case 4:case 2:case 1:{p=181679+q|0;r=a[p>>0]|0;l=r&255;do if(r<<24>>24){r=a[g+8>>0]|0;k=r<<24>>24;if(r<<24>>24<33){i=c[g>>2]|0;if((k|0)<(l|0)){i=i<>>(32-l|0);break}else{i=i>>>(k-l|0)&-1>>>(32-l|0);break}}else{i=k-l|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-k|0))<>>(i+-32|0)&-1>>>(32-l|0);break}}}else i=0;while(0);r=c[53308+(q<<2)>>2]|0;n=a[r+(i<<1)>>0]|0;i=a[r+(i<<1)+1>>0]|0;if(!(i<<24>>24)){j=n&255;i=53356+(q<<2)|0;q=g+8|0;p=(d[q>>0]|0)-(d[(c[i>>2]|0)+(j*5|0)>>0]|0)|0;r=(p&128|0)==0;a[q>>0]=r?p&255:0;if(!r){h=-1;return h|0}}else{o=g+8|0;m=(d[o>>0]|0)-l|0;r=(m&128|0)==0;m=r?m&255:0;a[o>>0]=m;if(!r){h=-1;return h|0}k=i&255;l=m<<24>>24;do if(m<<24>>24<33){i=c[g>>2]|0;if((l|0)<(k|0)){i=i<>>(32-k|0);break}else{i=i>>>(l-k|0)&-1>>>(32-k|0);break}}else{i=l-k|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-l|0))<>>(i+-32|0)&-1>>>(32-k|0);break}}while(0);j=i+(n&255)|0;i=53356+(q<<2)|0;q=(m&255)-((d[(c[i>>2]|0)+((j&65535)*5|0)>>0]|0)-(d[p>>0]|0)&255)|0;r=(q&128|0)==0;a[o>>0]=r?q&255:0;if(!r){h=-1;return h|0}}r=c[i>>2]|0;i=j&65535;b[h>>1]=a[r+(i*5|0)+1>>0]|0;b[h+2>>1]=a[r+(i*5|0)+2>>0]|0;b[h+4>>1]=a[r+(i*5|0)+3>>0]|0;k=f;l=0;i=r+(i*5|0)+4|0;j=3;r=61;break}case 31:case 30:case 29:case 28:case 27:case 26:case 25:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 11:case 10:case 8:case 6:{k=(f&255)>15;l=k?f:0;k=k?11:f;f=k&255;r=181679+f|0;q=a[r>>0]|0;n=q&255;do if(q<<24>>24){q=a[g+8>>0]|0;m=q<<24>>24;if(q<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{i=m-n|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-m|0))<>>(i+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);q=c[53308+(f<<2)>>2]|0;p=a[q+(i<<1)>>0]|0;i=a[q+(i<<1)+1>>0]|0;if(!(i<<24>>24)){j=p&255;i=53404+(f<<2)|0;f=g+8|0;q=(d[f>>0]|0)-(d[(c[i>>2]|0)+(j*3|0)>>0]|0)|0;r=(q&128|0)==0;a[f>>0]=r?q&255:0;if(!r){h=-1;return h|0}}else{q=g+8|0;o=(d[q>>0]|0)-n|0;n=(o&128|0)==0;o=n?o&255:0;a[q>>0]=o;if(!n){h=-1;return h|0}m=i&255;n=o<<24>>24;do if(o<<24>>24<33){i=c[g>>2]|0;if((n|0)<(m|0)){i=i<>>(32-m|0);break}else{i=i>>>(n-m|0)&-1>>>(32-m|0);break}}else{i=n-m|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-n|0))<>>(i+-32|0)&-1>>>(32-m|0);break}}while(0);j=i+(p&255)|0;i=53404+(f<<2)|0;f=(o&255)-((d[(c[i>>2]|0)+((j&65535)*3|0)>>0]|0)-(d[r>>0]|0)&255)|0;r=(f&128|0)==0;a[q>>0]=r?f&255:0;if(!r){h=-1;return h|0}}r=c[i>>2]|0;i=j&65535;b[h>>1]=a[r+(i*3|0)+1>>0]|0;i=r+(i*3|0)+2|0;j=1;r=61;break}case 3:{k=g+8|0;m=g+4|0;l=a[k>>0]|0;n=0;while(1){i=l<<24>>24;do if(l<<24>>24<33){j=c[g>>2]|0;if(l<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[m>>2]|0)>>>(i+-33|0);while(0);r=l+-1<<24>>24<<24>>24>-1;l=(l&255)+255&255;a[k>>0]=r?l:0;if(!r){i=-1;r=100;break}n=n+(a[(i&1)+(184228+(n*5|0)+1)>>0]|0)&65535;if(a[184228+(n*5|0)>>0]|0){r=52;break}}if((r|0)==52){b[h>>1]=a[184228+(n*5|0)+1>>0]|0;b[h+2>>1]=a[184228+(n*5|0)+2>>0]|0;b[h+4>>1]=a[184228+(n*5|0)+3>>0]|0;k=3;l=0;i=184228+(n*5|0)+4|0;j=3;r=61;break a}else if((r|0)==100)return i|0;break}case 9:case 7:case 5:{o=53452+(q<<2)|0;i=c[o>>2]|0;b:do if(!(a[i>>0]|0)){l=g+8|0;n=g+4|0;m=a[l>>0]|0;j=0;while(1){i=m<<24>>24;do if(m<<24>>24<33){k=c[g>>2]|0;if(m<<24>>24<1){k=k<<1-i;break}else{k=k>>>(i+-1|0);break}}else k=(c[n>>2]|0)>>>(i+-33|0);while(0);r=m+-1<<24>>24<<24>>24>-1;m=(m&255)+255&255;a[l>>0]=r?m:0;if(!r){i=-1;break}i=c[o>>2]|0;j=j+(a[(k&1)+(i+(j*3|0)+1)>>0]|0)&65535;if(a[i+(j*3|0)>>0]|0)break b}return i|0}else j=0;while(0);b[h>>1]=a[i+(j*3|0)+1>>0]|0;k=f;l=0;i=i+(j*3|0)+2|0;j=1;r=61;break}default:{k=f;l=0}}while(0);if((r|0)==61)b[h+(j<<1)>>1]=a[i>>0]|0;c:do if(a[181691+(k&255)>>0]|0){q=(k&255)<5?4:2;p=g+8|0;f=g+4|0;o=0;i=0;while(1){n=h+(i<<1)|0;if(b[n>>1]|0){m=a[p>>0]|0;i=m<<24>>24;do if(m<<24>>24<33){j=c[g>>2]|0;if(m<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[f>>2]|0)>>>(i+-33|0);while(0);j=m+-1<<24>>24<<24>>24>-1;a[p>>0]=j?(m&255)+255&255:0;if(!j){i=-1;break}if(i&1|0)b[n>>1]=0-(e[n>>1]|0)}o=o+1<<24>>24;i=o&255;if(q>>>0<=i>>>0)break c}return i|0}while(0);f=g+8|0;do if(k<<24>>24==11|(k&255)>15){q=g+4|0;o=b[h>>1]|0;d:do switch(o<<16>>16){case -16:case 16:{k=a[f>>0]|0;m=4;e:while(1){i=k<<24>>24;do if(k<<24>>24<33){j=c[g>>2]|0;if(k<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[q>>2]|0)>>>(i+-33|0);while(0);p=k+-1<<24>>24<<24>>24>-1;k=p?(k&255)+255&255:0;i=p?((i&1|0)==0?13:0):1;switch(i&15){case 13:break e;case 0:break;default:{r=94;break e}}m=m+1<<24>>24}if((r|0)==94){a[f>>0]=k;if(!i)break d;else i=-1;return i|0}a[f>>0]=k;n=m&255;do if(m<<24>>24){m=k<<24>>24;if(k<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{i=m-n|0;j=c[q>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-m|0))<>>(i+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);m=(k&255)-n|0;p=(m&128|0)==0;a[f>>0]=p?m&255:0;i=i+(1<>1]=o<<16>>16<0?0-i|0:i;break d}else{h=-1;return h|0}}default:{}}while(0);p=h+2|0;o=b[p>>1]|0;f:do switch(o<<16>>16){case -16:case 16:{k=a[f>>0]|0;m=4;g:while(1){i=k<<24>>24;do if(k<<24>>24<33){j=c[g>>2]|0;if(k<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[q>>2]|0)>>>(i+-33|0);while(0);n=k+-1<<24>>24<<24>>24>-1;k=n?(k&255)+255&255:0;i=n?((i&1|0)==0?13:0):1;switch(i&15){case 13:break g;case 0:break;default:{r=119;break g}}m=m+1<<24>>24}if((r|0)==119){a[f>>0]=k;if(!i)break f;else i=-1;return i|0}a[f>>0]=k;n=m&255;do if(m<<24>>24){m=k<<24>>24;if(k<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{j=m-n|0;i=c[q>>2]|0;if((j|0)<32){i=(c[g>>2]|0)>>>j|(i&-1>>>(64-m|0))<>>(j+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);r=(k&255)-n|0;g=(r&128|0)==0;a[f>>0]=g?r&255:0;i=i+(1<>1]=o<<16>>16<0?0-i|0:i;break f}else{h=-1;return h|0}}default:{}}while(0);if(l<<24>>24!=0&(l&-16)<<24>>24==16){r=b[h>>1]|0;g=r<<16>>16;i=e[170880+((l&255)+-16<<1)>>1]|0;if(((r<<16>>16>-1?g:0-g|0)|0)<=(i|0)?(r=b[p>>1]|0,g=r<<16>>16,((r<<16>>16>-1?g:0-g|0)|0)<=(i|0)):0)break;b[h>>1]=0;b[p>>1]=0}}while(0);h=a[f>>0]|0;return h|0}function Th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+8>>0]|0;if(!(d<<24>>24))return;f=b+4|0;e=d&255;if((d&255)<33){c[f>>2]=0;d=c[b>>2]|0;d=d>>>1&1431655765|d<<1&-1431655766;d=d>>>2&858993459|d<<2&-858993460;d=d>>>4&252645135|d<<4&-252645136;d=d>>>8&16711935|d<<8&-16711936;d=(d>>>16|d<<16)>>>(32-e|0)}else{h=c[f>>2]|0;g=c[b>>2]|0;g=g>>>1&1431655765|g<<1&-1431655766;h=h>>>1&1431655765|h<<1&-1431655766;g=g>>>2&858993459|g<<2&-858993460;h=h>>>2&858993459|h<<2&-858993460;g=g>>>4&252645135|g<<4&-252645136;h=h>>>4&252645135|h<<4&-252645136;g=g>>>8&16711935|g<<8&-16711936;h=h>>>8&16711935|h<<8&-16711936;g=g>>>16|g<<16;d=64-e|0;c[b>>2]=g<>>16|h<<16)>>>d;d=g>>>d;b=f}c[b>>2]=d;return}function Uh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=b+8|0;f=c[n>>2]|0;if(!f)e=c[b+4>>2]|0;else e=c[b>>2]<<32-f;m=b+20|0;do if(!(a[m>>0]|0))if(f>>>0>1){c[n>>2]=f+-1;break}else{Gf(b,1);break}while(0);if((e|0)>-1)e=141620;else{l=b+4|0;j=1;k=141620;f=1;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<>2]|0;if(g>>>0>>0){f=h-g|0;f=(c[b>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[b>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[n>>2]=g-h;break}else{Gf(b,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<10?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;n=e&255;do if(e<<24>>24==7){b=d+8|0;e=c[b>>2]|0;if(e>>>0<2){f=2-e|0;f=(c[d>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-e>>>30;m=d+20|0;do if(!(a[m>>0]|0))if(e>>>0>2){c[b>>2]=e+-2;break}else{Gf(d,2);break}while(0);if(!f)e=141812;else{l=d+4|0;j=2;k=141812;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<>2]|0;if(g>>>0>>0){f=h-g|0;f=(c[d>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[b>>2]=g-h;break}else{Gf(d,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<21?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;if(e<<24>>24==99){d=99;return d|0}else{e=(e&255)+n&255;break}}while(0);n=e&255;if(e<<24>>24!=-7){d=e;return d|0}b=d+8|0;e=c[b>>2]|0;if(e>>>0<2){f=2-e|0;f=(c[d>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-e>>>30;m=d+20|0;do if(!(a[m>>0]|0))if(e>>>0>2){c[b>>2]=e+-2;break}else{Gf(d,2);break}while(0);if(!f)e=141812;else{l=d+4|0;j=2;k=141812;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<>2]|0;if(g>>>0>>0){f=h-g|0;f=(c[d>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[b>>2]=g-h;break}else{Gf(d,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<21?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;if(e<<24>>24==99){d=99;return d|0}d=n-(e&255)&255;return d|0}function Vh(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=a[f+3>>0]|0;switch(a[g+4>>0]|0){case 3:case 1:case 0:{a[g+3>>0]=1;a[g+2>>0]=1;a[g+5>>0]=1;j=(a[f+4>>0]|0)==23;l=f+10|0;h=b[l>>1]|0;do if(j){i=k&255;if(h<<16>>16==512){i=185575+i|0;break}else{i=185587+i|0;break}}else{i=k&255;if(h<<16>>16==1024){i=185599+i|0;break}else{i=185611+i|0;break}}while(0);f=a[i>>0]|0;a[g+1>>0]=f;if((d[g>>0]|0)>(f&255)){g=32;return g|0}if(j){i=f<<24>>24!=0;if(h<<16>>16==512){if(i){j=c[142348+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}}}else if(i){j=c[142300+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}}h=f&255;b[g+16+(h<<1)>>1]=b[l>>1]|0}else{if(!(f<<24>>24))i=0;else{j=c[142252+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}i=f;h=b[l>>1]|0}b[g+16+((i&255)<<1)>>1]=h;h=f&255}b[g+1936+(h<<1)>>1]=b[l>>1]|0;b[g+2040>>1]=b[l>>1]|0;g=0;return g|0}case 2:{a[g+3>>0]=8;l=g+2|0;a[l>>0]=1;a[g+5>>0]=1;k=k&255;s=a[185623+k>>0]|0;a[g+1>>0]=s;if((d[g>>0]|0)>(s&255)){g=32;return g|0}j=c[142396+(k<<2)>>2]|0;i=0;h=0;while(1){b[g+1936+(h<<1)>>1]=b[j+(h<<1)>>1]|0;h=i+1<<24>>24;if((h&255)<(s&255)){i=h;h=h&255}else break}r=f+10|0;b[g+1936+((s&255)<<1)>>1]=(e[r>>1]|0)>>>3;b[g+2040>>1]=(e[r>>1]|0)>>>3;j=g+14|0;if(!(a[j>>0]&64)){a[l>>0]=2;a[g+6>>0]=1;i=2}else{i=g+5|0;a[i>>0]=(d[i>>0]|0)+1;i=1}h=i&255;if(!(a[j>>0]&32)){q=h+1&255;a[l>>0]=q;a[(i&255)+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&16)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&8)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&4)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&2)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&1)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}if(!(i<<24>>24)){g=0;return g|0}p=142396+(k<<2)|0;q=s&255;o=0;j=s;n=0;while(1){if(!(j<<24>>24)){f=0;h=0;j=0}else{m=g+5+n|0;if(j<<24>>24==1){h=(e[r>>1]|0)>>>3&65535;j=c[p>>2]|0}else{j=c[p>>2]|0;h=e[j+2>>1]|0}f=N(h-(e[j>>1]|0)&65535,d[m>>0]|0)|0;b[g+16+(n*240|0)>>1]=0;l=1;f=f&65535;k=1;while(1){h=k+1|0;if((h|0)==(q|0)){h=(e[r>>1]|0)>>>3&65535;j=c[p>>2]|0}else{j=c[p>>2]|0;h=e[j+(h<<1)>>1]|0}k=N(h-(e[j+(k<<1)>>1]|0)&65535,d[m>>0]|0)|0;h=l+1<<24>>24;b[g+16+(n*240|0)+((l&255)<<1)>>1]=f;f=k+(f&65535)&65535;if((h&255)<(s&255)){l=h;k=h&255}else{j=s;break}}}b[g+16+(n*240|0)+((h&255)<<1)>>1]=f;h=o+1<<24>>24;if((h&255)<(i&255)){o=h;n=h&255}else{h=0;break}}return h|0}default:{g=32;return g|0}}return 0}function Wh(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+4096|0;if((l|0)>=(m|0))W(4096);s=u;t=f+25|0;o=d[t>>0]|0;r=(a[f+1084+o>>0]|0)==0;j=r?1:2;k=f+26+o|0;n=a[k>>0]|0;if(n<<24>>24){if((j|0)!=(n&255|0)){a[f+74+o>>0]=0;q=4}}else q=4;if((q|0)==4)a[k>>0]=j;if(!(a[f+74+o>>0]|0)){n=f+4|0;j=a[n>>0]|0;p=d[h>>0]|0;if(j<<24>>24==1){j=f+1136+(p<<2)|0;k=c[j>>2]|0;if(k|0){Vf(k);c[j>>2]=0}q=f+10|0;o=Jf((e[q>>1]|0)*12|0)|0;c[j>>2]=o;dh(o,b[q>>1]|0);j=a[n>>0]|0}if((eh(j)|0)<<24>>24){j=f+1392+(p<<2)|0;k=c[j>>2]|0;if(k|0){Vf(k);c[j>>2]=0}q=f+10|0;o=Jf(e[q>>1]<<3)|0;c[j>>2]=o;FZ(o|0,0,e[q>>1]<<3|0)|0}k=f+328+(p<<2)|0;j=c[k>>2]|0;if(j|0){Vf(j);c[k>>2]=0}j=(d[t>>0]|0)+(f+843)|0;a[j>>0]=0;if((a[f+840>>0]|0)!=1?(a[f+841>>0]|0)!=1:0)n=4;else{a[j>>0]=1;n=8}o=f+10|0;q=Jf(N(n,e[o>>1]|0)|0)|0;c[k>>2]=q;FZ(q|0,0,N(n,e[o>>1]|0)|0)|0;if(!r){j=f+328+(p+1<<2)|0;k=c[j>>2]|0;if(k|0){Vf(k);c[j>>2]=0}r=Jf(N(n,e[o>>1]|0)|0)|0;c[j>>2]=r;FZ(r|0,0,N(n,e[o>>1]|0)|0)|0}j=f+584+(p<<2)|0;k=c[j>>2]|0;if(k|0){Vf(k);c[j>>2]=0}r=Jf(e[o>>1]<<2)|0;c[j>>2]=r;FZ(r|0,0,e[o>>1]<<2|0)|0;a[(d[t>>0]|0)+(f+74)>>0]=1;r=o}else r=f+10|0;j=fh(g,i,s)|0;if(j<<24>>24){h=j;l=u;return h|0}n=f+4|0;gh(g,0,s,0,b[r>>1]|0,0,a[n>>0]|0,f+1648|0,f+1652|0);j=a[n>>0]|0;do if(j<<24>>24==1){j=c[f+1136+(d[h>>0]<<2)>>2]|0;if(!j){h=33;l=u;return h|0}else{jh(g,s,j,b[r>>1]|0,a[f+3>>0]|0);kh(g,c[f+1136+(d[h>>0]<<2)>>2]|0);j=a[n>>0]|0;break}}while(0);if(!((eh(j)|0)<<24>>24))p=f+3|0;else{j=a[n>>0]|0;if(j<<24>>24==23){if(a[g+10277>>0]|0?a[g+10280>>0]|0:0)b[f+192+(d[h>>0]<<1)>>1]=b[g+10278>>1]|0;k=a[h>>0]|0;b[g+10278>>1]=b[f+192+((k&255)<<1)>>1]|0}else k=a[h>>0]|0;i=k&255;p=f+3|0;lh(g,g+10276|0,s,c[f+1392+(i<<2)>>2]|0,c[f+320>>2]|0,a[g+13>>0]|0,a[f+128+i>>0]|0,a[p>>0]|0,j,b[r>>1]|0)}mh(g,g+9053|0,a[p>>0]|0,a[n>>0]|0,s,b[r>>1]|0);j=c[f+324>>2]|0;do if(a[j>>0]|0){if(a[(d[h>>0]|0)+(j+56)>>0]|0?a[j+3>>0]|0:0)break;nh(j,s)}while(0);i=g+13|0;q=d[h>>0]|0;oh(c[f+320>>2]|0,a[g+4>>0]|0,a[i>>0]|0,a[f+128+q>>0]|0,s,c[f+328+(q<<2)>>2]|0,c[f+584+(q<<2)>>2]|0,a[n>>0]|0,b[r>>1]|0);a[(d[h>>0]|0)+(f+128)>>0]=a[i>>0]|0;if((eh(a[n>>0]|0)|0)<<24>>24){s=d[h>>0]|0;ph(c[f+1392+(s<<2)>>2]|0,c[f+328+(s<<2)>>2]|0,c[f+584+(s<<2)>>2]|0,b[r>>1]|0,a[n>>0]|0)}j=(a[f+840>>0]|0)==1;if(!j?(a[f+841>>0]|0)!=1:0)q=56;else q=48;do if((q|0)==48){o=d[t>>0]|0;if(!(a[f+843+o>>0]|0))if(j){q=57;break}else{q=56;break}n=d[h>>0]|0;k=f+892+(o<<2)|0;j=c[k>>2]|0;if(!j){g=b[r>>1]|0;s=a[f+2128+o>>0]|0;j=(Xf(a[p>>0]|0)|0)<<1;j=Dg(g,s,j,a[f+842>>0]|0)|0;c[k>>2]=j}s=a[h+6>>0]|0;s=b[h+1942+(((s&255)>1?(s&255)+-1|0:0)<<1)>>1]|0;k=b[h+2046>>1]|0;k=((s&65535)<(k&65535)?s:k)&65535;c[j+4>>2]=(a[h+10>>0]|0)==2?k<<3:k;k=c[f+328+(n<<2)>>2]|0;if(!(a[f+1084+o>>0]|0))j=Xh(j,k,a[f+12>>0]|0,a[f+842>>0]|0)|0;else j=Yh(j,k,c[f+328+(n+1<<2)>>2]|0,a[f+12>>0]|0,a[f+842>>0]|0)|0;if(j<<24>>24){h=j;l=u;return h|0}}while(0);if((q|0)==56?(a[f+841>>0]|0)==1:0)q=57;if((q|0)==57?(a[(d[t>>0]|0)+(f+843)>>0]|0)==0:0){h=23;l=u;return h|0}j=d[t>>0]|0;if(a[f+1084+j>>0]|0){h=0;l=u;return h|0}if((a[f+26+j>>0]|0)!=2){h=0;l=u;return h|0}t=d[h>>0]|0;h=N(e[r>>1]<<2,a[f+843+j>>0]|0?2:1)|0;DZ(c[f+328+(t+1<<2)>>2]|0,c[f+328+(t<<2)>>2]|0,h|0)|0;h=0;l=u;return h|0} -function En(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D+4|0;A=D;B=g+21796|0;C=c[B>>2]|0;c[A>>2]=0;h=(c[f+25972>>2]|0)+(C*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));x=g+21828|0;if(!(c[x>>2]|0))h=0;else{c[A>>2]=128;h=128}z=g+840|0;if((c[z>>2]|0)==3){h=h|63744;c[A>>2]=h;if(c[g+21844>>2]|0){Fn(f,g,h);In(f,g,h)}Ym(f,g,A);k=c[A>>2]|2048;c[A>>2]=k;h=f+26368|0}else{k=h|14344;c[A>>2]=k;Fn(f,g,k);r=c[f+24384>>2]|0;s=c[f+24352>>2]|0;h=f+26368|0;t=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;n=c[g+21740>>2]|0;if(!(n&12288))if(!n)i=0;else{w=253248;u=-1;o=16}else{i=c[g+21720>>2]|0;w=d[c[g+21748>>2]>>0]|0;j=a[r+((w&254)+(i<<2|1))>>0]|0;i=s+((N(t,w)|0)+3+(c[(c[f+26360>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=i>>16<<1;i=y;j=j>>1;break}else{if(n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=y;j=j<<1;break}}while(0);if(!(c[i>>2]|j))i=0;else{w=i;u=j;o=16}}do if((o|0)==16){n=c[g+21732>>2]|0;if(!(n&12288))if(!n){i=0;break}else{p=-1;q=253248}else{j=c[g+21712>>2]|0;i=a[r+(j<<2|2)>>0]|0;j=s+((c[(c[f+26360>>2]|0)+(j<<2)>>2]|0)+(t*3|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=q>>16<<1;i=i>>1;break}else{if(n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=((q>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[j>>2]|i)){i=0;break}else{p=i;q=j}}j=c[g+21736>>2]|0;do if(!(j&12288))if((j|0)==0?(v=c[g+21728>>2]|0,(v&12288|0)!=0):0){n=c[g+21708>>2]|0;o=c[g+21752>>2]|0;i=a[r+(n<<2|o&2|1)>>0]|0;n=s+(t+3+(o&t<<1)+(c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)<<2)|0;if(c[f+26376>>2]|0){j=(v&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}else{o=253248;i=-1}else{n=c[g+21716>>2]|0;i=a[r+(n<<2|2)>>0]|0;n=s+((c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)+(t*3|0)<<2)|0;if(c[f+26376>>2]|0){j=(j&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}while(0);n=(p|0)!=0;j=(u|0)!=0;i=((n^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=On(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=On(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0;break}if(!j){j=b[w+2>>1]|0;i=b[w>>1]|0;break}if(n){j=b[o+2>>1]|0;i=b[o>>1]|0;break}else{j=b[q+2>>1]|0;i=b[q>>1]|0;break}}else{i=On(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=On(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0}while(0);i=j<<16|i&65535}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i}h=c[h>>2]|0;i=(N(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[B>>2]<<2;if(!(k&12288)){y=(c[f+24384>>2]|0)+j|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[f+24352>>2]|0)+(i<<2)|0;w=g+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24384>>2]|0)+j|0;a[y>>0]=a[g+28284>>0]|0;a[y+1>>0]=a[g+28286>>0]|0;a[y+2>>0]=a[g+28300>>0]|0;a[y+3>>0]=a[g+28302>>0]|0}if(k&49152|0){y=(c[f+24356>>2]|0)+(i<<2)|0;w=g+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24388>>2]|0)+j|0;a[y>>0]=a[g+28324>>0]|0;a[y+1>>0]=a[g+28326>>0]|0;a[y+2>>0]=a[g+28340>>0]|0;a[y+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[z>>2]|0)!=3)){B=(c[f+26408>>2]|0)+(c[B>>2]<<2)|0;a[B+1>>0]=(e[g+28554>>1]|0)>>>1;a[B+2>>0]=(e[g+28556>>1]|0)>>>1;a[B+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(C<<2)>>2]=c[A>>2];a[(c[f+24340>>2]|0)+C>>0]=c[g+848>>2];b[(c[f+26372>>2]|0)+(C<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;l=D;return}function Fn(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=205498;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?205594:205562;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=205530;h=i}else d=205594;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Gn(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[190847+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[191487+f>>0]|0;h=c[g>>2]|0;e=d[190335+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Yn(b);return f&1|0}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(Gn(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(Gn(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(Zn(e)|0)){b=(Gn(e,f+1|0)|0)*12|1;if(Gn(e,f+2|0)|0)b=b+4+((Gn(e,f+(d+2)|0)|0)<<2)|0;b=((Gn(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(Gn(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function In(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ja=l;l=l+16|0;if((l|0)>=(m|0))W(16);za=Ja+8|0;Aa=Ja;Ba=c[g+21748>>2]|0;Ha=c[g+21708>>2]|0;qa=c[g+21712>>2]|0;ra=c[g+21716>>2]|0;sa=c[g+21720>>2]|0;c[za>>2]=sa;ta=c[g+21724>>2]|0;c[za+4>>2]=ta;ua=c[g+21728>>2]|0;va=c[g+21732>>2]|0;wa=c[g+21736>>2]|0;xa=c[g+21740>>2]|0;c[Aa>>2]=xa;ya=c[g+21744>>2]|0;c[Aa+4>>2]=ya;if(!(h&2048)){v=(h&7|0)!=0;a:do if(v){r=c[(c[f+28212>>2]|0)+56>>2]|0?7:-1;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;o=g+21756|0;c[o>>2]=65535;p=g+21764|0;c[p>>2]=61162;q=(r&va|0)!=0;if(q){i=65535;n=60138}else{c[o>>2]=46079;c[i>>2]=13311;c[p>>2]=9962;i=46079;n=8938}j=h&128;do if((j|0)==(xa&128|0)){if(!(xa&r)){i=i&57183;c[o>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((xa&r|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27016>>2]|0)+sa<<2)>>2]&r|0)==0))break;i=i&57183;c[o>>2]=i;c[k>>2]=24415;break}if(!(xa&r)){i=i&57343;c[o>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(ya&r)){i=i&65375;c[o>>2]=i;c[k>>2]=j}}while(0);if(!(r&ua))c[o>>2]=i&32767;if(!(r&wa))c[p>>2]=n;if(h&1|0){if(!(va&1)){FZ(g+21668|0,(q?2:-1)|0,4)|0;n=g+21704|0;o=f+26364|0}else{n=g+21704|0;o=f+26364|0;c[g+21668>>2]=c[(c[n>>2]|0)+(c[(c[o>>2]|0)+(qa<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[Aa+(k<<2)>>2]|0;if(!(i&1)){i=(i&r|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{pa=(c[n>>2]|0)+(c[(c[o>>2]|0)+(c[za+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[pa+(6-(d[Ba+i>>0]|0))>>0]|0;i=a[pa+(6-(d[Ba+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);u=(va|0)!=0;if(u){t=f+25972|0;i=c[t>>2]|0;c[g+27828>>2]=c[i+(qa*48|0)+12>>2];pa=(c[f+25680>>2]|0)==0;c[g+27868>>2]=c[(pa?28:20)+(i+(qa*48|0))>>2];i=c[(pa?44:36)+(i+(qa*48|0))>>2]|0}else{i=v?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;t=f+25972|0}c[g+27908>>2]=i;r=v?64:0;s=f+28216|0;q=0;while(1){if((q|0)==2)break;if(!(c[Aa+(q<<2)>>2]|0)){j=q<<4;a[j+99+(g+27824)>>0]=r;a[j+91+(g+27824)>>0]=r;a[j+59+(g+27824)>>0]=r;a[j+51+(g+27824)>>0]=r;a[j+19+(g+27824)>>0]=r;j=j|11;i=r}else{o=c[t>>2]|0;p=c[za+(q<<2)>>2]|0;i=q<<1;k=Ba+(i+8)|0;j=q<<4;a[(j|11)+(g+27824)>>0]=a[(d[k>>0]|0)+(o+(p*48|0))>>0]|0;n=Ba+(i+9)|0;a[j+19+(g+27824)>>0]=a[(d[n>>0]|0)+(o+(p*48|0))>>0]|0;switch(c[(c[s>>2]|0)+12>>2]|0){case 3:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+32+(o+(p*48|0))>>0]|0;n=(d[n>>0]|0)+32|0;i=j+99|0;break}case 2:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+30+(o+(p*48|0))>>0]|0;i=(d[n>>0]|0)+30|0;k=99;w=39;break}default:{j=q<<3;a[j+51+(g+27824)>>0]=a[(d[Ba+(i+12)>>0]|0)+(o+(p*48|0))>>0]|0;i=d[Ba+(i+13)>>0]|0;k=91;w=39}}if((w|0)==39){w=0;n=i;i=k+j|0}j=i;i=a[o+(p*48|0)+n>>0]|0}a[g+27824+j>>0]=i;q=q+1|0}if(u)i=e[(c[f+26392>>2]|0)+(qa<<1)>>1]|0;else i=v?1999:15;c[g+21860>>2]=i;if(!xa)i=v?1999:15;else{i=c[f+26392>>2]|0;pa=e[i+(sa<<1)>>1]|0;i=pa>>>(a[Ba>>0]&-2&255)&2|pa&2032|(e[i+(ta<<1)>>1]|0)>>>(a[Ba+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)w=53}else w=53;b:do if((w|0)==53){y=c[f+26368>>2]|0;z=g+23412|0;A=f+26360|0;B=y*3|0;D=qa<<2;C=D|2;D=D|3;E=(h&80|0)==0;F=xa|0?-1:-2;G=sa<<2|1;H=wa|0?-1:-2;I=ua|0?-1:-2;J=g+21752|0;K=y<<1;L=y+3|0;M=Ha<<2;O=(h&2304|0)==0;P=f+26364|0;Q=g+840|0;R=g+28524|0;S=f+26408|0;T=g+28532|0;U=g+28548|0;V=g+28540|0;X=(va&256|0)==0;Y=(va&64|0)==0;Z=g+28516|0;_=g+28518|0;$=g+28523|0;aa=ta<<2|1;ba=Ba+2|0;ca=g+28539|0;da=Ba+3|0;ea=Ba+1|0;fa=f+26376|0;ga=g+21828|0;ha=(ua&128|0)!=0;ia=(va&128|0)==0;ja=(wa&128|0)==0;ka=(xa&128|0)==0;la=(ya&128|0)==0;ma=ra<<2|2;na=va|0?-1:-16843010;oa=(xa&320|0)==64;w=xa&256|0?-128:4;pa=(ya&320|0)==64;x=ya&256|0?-128:4;v=0;while(1){if(v>>>0>=(c[z>>2]|0)>>>0)break b;p=g+28272+(v*40|0)+12|0;r=c[f+24384+(v<<2)>>2]|0;q=g+27952+(v*160|0)+48|0;s=c[f+24352+(v<<2)>>2]|0;u=12288<<(v<<1);do if(u&h|0){t=(u&va|0)!=0;if(t){k=(c[(c[A>>2]|0)+(qa<<2)>>2]|0)+B|0;j=s+(k<<2)|0;o=c[j+4>>2]|0;n=g+27952+(v*160|0)+16|0;c[n>>2]=c[j>>2];c[n+4>>2]=o;k=s+(k<<2)+8|0;n=c[k+4>>2]|0;o=g+27952+(v*160|0)+24|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;o=a[r+C>>0]|0;a[g+28272+(v*40|0)+5>>0]=o;a[g+28272+(v*40|0)+4>>0]=o;o=a[r+D>>0]|0;a[g+28272+(v*40|0)+7>>0]=o;a[g+28272+(v*40|0)+6>>0]=o}else{o=g+27952+(v*160|0)+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[g+28272+(v*40|0)+4>>2]=na}c:do if(E){if(!(xa&u)){c[g+27952+(v*160|0)+44>>2]=0;i=F}else{c[g+27952+(v*160|0)+44>>2]=c[s+((c[(c[A>>2]|0)+(sa<<2)>>2]|0)+3+(N(y,d[Ba>>0]|0)|0)<<2)>>2];i=a[r+(G+(a[Ba>>0]&-2&255))>>0]|0}a[g+28272+(v*40|0)+11>>0]=i}else{o=0;while(1){if((o|0)==2)break c;j=o<<1;k=o<<4;i=k+-1|0;n=c[Aa+(o<<2)>>2]|0;if(!(n&u)){c[q+(i<<2)>>2]=0;k=k|7;c[q+(k<<2)>>2]=0;j=n|0?-1:-2;a[p+k>>0]=j}else{Ka=c[za+(o<<2)>>2]|0;Ma=(c[(c[A>>2]|0)+(Ka<<2)>>2]|0)+3|0;Ka=Ka<<2|1;La=Ba+j|0;c[q+(i<<2)>>2]=c[s+((N(y,d[La>>0]|0)|0)+Ma<<2)>>2];j=Ba+(j|1)|0;n=k|7;c[q+(n<<2)>>2]=c[s+((N(y,d[j>>0]|0)|0)+Ma<<2)>>2];a[p+i>>0]=a[r+(Ka+(a[La>>0]&-2&255))>>0]|0;j=a[r+(Ka+(a[j>>0]&-2&255))>>0]|0;i=n}a[p+i>>0]=j;o=o+1|0}}while(0);if(!(u&wa)){c[g+27952+(v*160|0)+32>>2]=0;i=H}else{c[g+27952+(v*160|0)+32>>2]=c[s+((c[(c[A>>2]|0)+(ra<<2)>>2]|0)+B<<2)>>2];i=a[r+ma>>0]|0}o=g+28272+(v*40|0)+8|0;a[o>>0]=i;n=g+28272+(v*40|0)+6|0;if((a[n>>0]|i)<<24>>24<0){if(!(u&ua)){c[g+27952+(v*160|0)+12>>2]=0;i=I}else{i=c[J>>2]|0;c[g+27952+(v*160|0)+12>>2]=c[s+(L+(c[(c[A>>2]|0)+(Ha<<2)>>2]|0)+(i&K)<<2)>>2];i=a[r+(M|i&2|1)>>0]|0}a[g+28272+(v*40|0)+3>>0]=i}if(O){k=c[g+32848+(v<<2)>>2]|0;a[g+28272+(v*40|0)+30>>0]=-2;a[g+28272+(v*40|0)+14>>0]=-2;c[g+27952+(v*160|0)+56>>2]=0;c[g+27952+(v*160|0)+120>>2]=0;if(t){j=k+(c[(c[P>>2]|0)+(qa<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ma=g+28352+(v*80|0)+8|0;c[Ma>>2]=i;c[Ma+4>>2]=j;if(!(xa&u)){b[g+28352+(v*80|0)+22>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(sa<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+22>>1]=b[k+(i-(d[Ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[ea>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+38>>1]=i;if(!(ya&u)){b[g+28352+(v*80|0)+54>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(ta<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+54>>1]=b[k+(i-(d[ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[da>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+70>>1]=i;b[g+28352+(v*80|0)+28>>1]=0;b[g+28352+(v*80|0)+60>>1]=0;if((c[Q>>2]|0)==3){j=c[S>>2]|0;c[R>>2]=67372036;c[T>>2]=67372036;c[V>>2]=67372036;c[U>>2]=67372036;do if(X)if(Y){c[Z>>2]=67372036;break}else{a[Z>>0]=a[j+C>>0]|0;a[_>>0]=a[j+D>>0]|0;break}else c[Z>>2]=-2139062144;while(0);if(oa)i=a[j+(G+(a[Ba>>0]&-2&255))>>0]|0;else i=w;a[$>>0]=i;if(pa)i=a[j+(aa+(a[ba>>0]&-2&255))>>0]|0;else i=x;a[ca>>0]=i}if(!(c[fa>>2]|0))break}else if(!(c[fa>>2]|0))break;if(!(c[ga>>2]|0)){if(ha?(Fa=g+28272+(v*40|0)+3|0,Ga=a[Fa>>0]|0,Ga<<24>>24>-1):0){a[Fa>>0]=(Ga&255)>>>1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=d[Ma>>0]<<1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=(i&255)>>>1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(!ja?(Ia=a[o>>0]|0,Ia<<24>>24>-1):0){a[o>>0]=(Ia&255)>>>1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=d[Ma>>0]<<1;break}else{if(!ha?(Ca=g+28272+(v*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=Da<<24>>24<<1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=i<<24>>24<<1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(ja?(Ea=a[o>>0]|0,Ea<<24>>24>-1):0){a[o>>0]=Ea<<24>>24<<1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(!la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1;break}}while(0);v=v+1|0}}while(0);c[g+21840>>2]=(xa>>>24&1)+(va>>>24&1);l=Ja;return}function Jn(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Sn(c,a+32972|0)|0)){a=a+32973|0;d=Sn(c,a)|0;d=((Sn(c,a)|0)<<1)+d|0;c=d+((Sn(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function Kn(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26396>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26396>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(Gn(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(Gn(b,e)|0))e=1;else{e=(Gn(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function Ln(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Sn(d,a+32940|0)|0))a=0;else{do if(!(Sn(d,a+32941|0)|0)){b=Sn(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Sn(d,a+32942|0)|0)if(!(Sn(d,c)|0))a=7;else{b=Sn(d,c)|0;a=11;break}else a=3;b=((Sn(d,c)|0)<<1)+a|0;a=Sn(d,c)|0}while(0);a=b+a|0}return a|0}function Mn(a){a=a|0;var b=0;b=a+32856|0;if(!(Sn(b,a+32925|0)|0))if(!(Sn(b,a+32926|0)|0))a=1;else{a=(Sn(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function Nn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[215911+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Sn(g,e+54+(b+32904)|0)|0))break;if((f|0)>30){f=-1;break}else{f=f+1|0;e=(e>>2)+4|0}}return f|0}function On(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Pn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;i=a+32856|0;do if(!(Sn(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if((f|0)>=9){d=3;h=7;break}if(!(Sn(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+((f|0)<4&1)|0;f=f+1|0;d=b}if((h|0)==7){while(1){h=0;if(!(Xn(i)|0)){b=d;break}f=(1<23){h=12;break}else{d=d+1|0;h=7}}if((h|0)==12){gi(c[(c[a>>2]|0)+4>>2]|0,16,205465,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((Xn(i)|0)<>2]=d;d=c[i>>2]<<1;c[i>>2]=d;if(!(d&65534)){Wn(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);l=j;return d|0}function Qn(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=Gn(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((Gn(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((Gn(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((Gn(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function Rn(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a+21864>>2]|0)>>>4&3;e=(c[a+21860>>2]|0)>>>4&3;f=(b|0)!=0&1;d=a+32856|0;f=(Gn(d,((e|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;b=(b|0)==2?5:4;if(f)b=0;else b=(Gn(d,((e|0)==2?b|2:b)+77+(a+32904)|0)|0)+1|0;return b|0}function Sn(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[190847+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[191487+f>>0]|0;h=c[g>>2]|0;e=d[190335+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Yn(b);return f&1|0}function Tn(f,g,h,i,j,k,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;B=g+32860|0;t=w+4|0;c[t>>2]=c[B>>2];y=g+32856|0;c[w>>2]=c[y>>2];z=g+32872|0;A=w+16|0;c[A>>2]=c[z>>2];s=c[g+21828>>2]|0;r=(c[164488+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[164600+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;u=(c[164712+(i<<2)>>2]|0)+(g+32904)|0;q=n+-1|0;p=0;o=0;while(1){if((p|0)>=(q|0)){x=6;break}if(Sn(w,r+p|0)|0){n=o+1|0;c[v+(o<<2)>>2]=p;if(!(Sn(w,s+p|0)|0))o=n;else{o=n;break}}p=p+1|0}if((x|0)==6)if((p|0)==(q|0)){c[v+(o<<2)>>2]=q;o=o+1|0}s=(i|0)==3;i=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(s?64:256)<<(s?-49:-48)+j|(e[i>>1]|0);a[(d[215911+j>>0]|0)+(g+27824)>>0]=o;if(!(c[f+25664>>2]|0)){s=o;n=0;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Sn(w,u+(d[205299+n>>0]|0)|0)|0)){o=d[205307+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Wn(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[205323+n>>0]|0)|0;r=d[205315+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=34;break}if(!(Sn(w,o)|0))break;n=n+1|0}if((x|0)==34){while(1){x=0;if((n|0)<23&(Xn(w)|0)!=0){n=n+1|0;x=34}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Xn(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Wn(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}b[h+(f<<1)>>1]=p-q;if(!s)break;else n=r}}else{n=0;s=o;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Sn(w,u+(d[205299+n>>0]|0)|0)|0)){o=d[205307+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Wn(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[205323+n>>0]|0)|0;r=d[205315+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=18;break}if(!(Sn(w,o)|0))break;n=n+1|0}if((x|0)==18){while(1){x=0;if((n|0)<23&(Xn(w)|0)!=0){n=n+1|0;x=18}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Xn(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Wn(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}c[h+(f<<2)>>2]=p-q;if(!s)break;else n=r}}c[B>>2]=o;c[y>>2]=n;c[z>>2]=c[A>>2];l=C;return}function Un(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;y=f+32860|0;u=w+4|0;c[u>>2]=c[y>>2];z=f+32856|0;c[w>>2]=c[z>>2];A=f+32872|0;B=w+16|0;c[B>>2]=c[A>>2];p=c[f+21828>>2]|0;q=(c[164488+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[164600+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;t=(c[164712+(h<<2)>>2]|0)+(f+32904)|0;s=(n|0)==64;a:do if(s){o=0;n=0;while(1){if((o|0)>=63)break;if(Sn(w,q+(d[205339+(p*63|0)+o>>0]|0)|0)|0){D=r+(d[191615+o>>0]|0)|0;h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Sn(w,D)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==63){c[v+(n<<2)>>2]=63;n=n+1|0}}else{p=n+-1|0;o=0;n=0;while(1){if((o|0)>=(p|0))break;if(Sn(w,q+o|0)|0){h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Sn(w,r+o|0)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==(p|0)){c[v+(n<<2)>>2]=p;n=n+1|0}}while(0);if(s){D=(d[215911+i>>0]|0)+(f+27824)|0;i=n*257&65535;b[D>>1]=i;b[D+8>>1]=i}else a[(d[215911+i>>0]|0)+(f+27824)>>0]=n;if(!(c[e+25664>>2]|0)){q=n;h=0;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Sn(w,t+(d[205299+h>>0]|0)|0)|0)){n=d[205307+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Wn(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[205323+h>>0]|0)|0;p=d[205315+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=44;break}if(!(Sn(w,n)|0))break;h=h+1|0}if((x|0)==44){while(1){x=0;if((h|0)<23&(Xn(w)|0)!=0){h=h+1|0;x=44}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Xn(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Wn(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}b[g+(r<<1)>>1]=o>>>6;if(!q)break;else h=p}}else{h=0;q=n;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Sn(w,t+(d[205299+h>>0]|0)|0)|0)){n=d[205307+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Wn(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[205323+h>>0]|0)|0;p=d[205315+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=28;break}if(!(Sn(w,n)|0))break;h=h+1|0}if((x|0)==28){while(1){x=0;if((h|0)<23&(Xn(w)|0)!=0){h=h+1|0;x=28}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Xn(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Wn(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}c[g+(r<<2)>>2]=o>>6;if(!q)break;else h=p}}c[y>>2]=n;c[z>>2]=h;c[A>>2]=c[B>>2];l=C;return}function Vn(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+304|0;if((l|0)>=(m|0))W(304);s=A+48|0;t=A;y=g+32860|0;u=t+4|0;c[u>>2]=c[y>>2];z=g+32856|0;c[t>>2]=c[z>>2];w=g+32872|0;x=t+16|0;c[x>>2]=c[w>>2];q=c[g+21828>>2]|0;p=(c[164488+(q*56|0)+12>>2]|0)+(g+32904)|0;q=(c[164600+(q*56|0)+12>>2]|0)+(g+32904)|0;r=g+33161|0;o=0;k=0;while(1){if((o|0)>=7){v=6;break}j=d[205292+o>>0]|0;if(Sn(t,p+j|0)|0){n=k+1|0;c[s+(k<<2)>>2]=o;if(!(Sn(t,q+j|0)|0))k=n;else{k=n;break}}o=o+1|0}if((v|0)==6)if((o|0)==7){c[s+(k<<2)>>2]=7;k=k+1|0}q=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[q>>1]=64<>1]|0);a[(d[215911+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25664>>2]|0)){q=k;j=0;while(1){q=q+-1|0;f=d[193319+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Sn(t,r+(d[205299+j>>0]|0)|0)|0)){k=d[205307+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Wn(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[205331+j>>0]|0)|0;p=d[205315+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=34;break}if(!(Sn(t,k)|0))break;j=j+1|0}if((v|0)==34){while(1){v=0;if((j|0)<23&(Xn(t)|0)!=0){j=j+1|0;v=34}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Xn(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Wn(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}b[h+(f<<1)>>1]=n-o;if(!q)break;else j=p}}else{j=0;q=k;while(1){q=q+-1|0;f=d[193319+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Sn(t,r+(d[205299+j>>0]|0)|0)|0)){k=d[205307+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Wn(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[205331+j>>0]|0)|0;p=d[205315+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=18;break}if(!(Sn(t,k)|0))break;j=j+1|0}if((v|0)==18){while(1){v=0;if((j|0)<23&(Xn(t)|0)!=0){j=j+1|0;v=18}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Xn(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Wn(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}c[h+(f<<2)>>2]=n-o;if(!q)break;else j=p}}c[y>>2]=k;c[z>>2]=j;c[w>>2]=c[x>>2];l=A;return}function Wn(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function Xn(a){a=a|0;var b=0,d=0;b=c[a>>2]<<1;c[a>>2]=b;if(!(b&65534)){Wn(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function Yn(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[190335+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function Zn(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){_n(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function _n(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))Wn(a);return}function $n(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=u;s=b+556|0;p=c[s>>2]|0;q=(N(p,f)|0)+e|0;r=b+552|0;n=c[r>>2]|0;o=n+-1|0;q=(q|0)<0?0:(q|0)>(o|0)?o:q;h=(N(p,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(n|0)?n:h;n=b+548|0;p=c[n>>2]|0;o=c[p+(q<<2)>>2]|0;p=c[p+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+592>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((p|0)<(o|0)|(q|0)>(h|0)){gi(e,16,205626,j);break}if(c[e+572>>2]|0){if(!(i&18))e=-2;else{e=b+572|0;c[e>>2]=(c[e>>2]|0)+(q+~h);e=-20}if(i&36){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-38}if(i&72){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-73}if(i&14|0){c[b+576>>2]=1;c[b+572>>2]=2147483647}g=b+580|0;a:do if((e|0)==-128)FZ((c[g>>2]|0)+o|0,0,p-o|0)|0;else{f=o;while(1){if((f|0)>=(p|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[r>>2]|0))c[b+572>>2]=2147483647;else{r=(c[g>>2]|0)+p|0;a[r>>0]=e&(d[r>>0]|0);r=(c[g>>2]|0)+p|0;a[r>>0]=d[r>>0]|0|i}i=(c[g>>2]|0)+o|0;a[i>>0]=a[i>>0]|1;if(((((o|0)>0?(t=c[b>>2]|0,(c[t+696>>2]&2|0)==0):0)?fl(b)|0:0)?(N(c[s>>2]|0,c[t+268>>2]|0)|0)<(q|0):0)?(a[(c[g>>2]|0)+(c[(c[n>>2]|0)+(q+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;c[b+572>>2]=2147483647}}}while(0);l=u;return}function ao(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function bo(a,b,c){a=a|0;b=b|0;c=c|0;eo(a,b,c,0);return}function co(a,b,c){a=a|0;b=b|0;c=c|0;eo(a,b,c,1);return}function eo(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=218161;c[h+4>>2]=213858;c[h+8>>2]=33;gi(0,0,229320,h);Tb()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;ci(b);if(!g)f=oi(h)|0;else f=Zi(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}l=i;return}function fo(a){a=a|0;var b=0,d=0;b=a+64|0;HZ(b|0)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;wc(a|0,b|0)|0}c[d>>2]=1;IZ(b|0)|0;return}function go(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+112|0;if((l|0)>=(m|0))W(112);E=F+96|0;D=F+88|0;B=F+80|0;A=F+72|0;s=F+64|0;r=F+56|0;o=F+48|0;n=F+40|0;k=F+32|0;j=F+24|0;i=F+16|0;g=F;if((c[b+25628>>2]|0)==(e|0)?(c[b+29560>>2]|0)==0:0)if(!(c[b+29588>>2]|0))p=1;else{c[g>>2]=217022;c[g+4>>2]=203124;c[g+8>>2]=1681;gi(0,0,229320,g);Tb()}else p=0;C=e+4|0;g=e+21808|0;c[g>>2]=eP(C)|0;h=fP(C)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[193214+(i?h+-5|0:h)>>0]|0;w=i&255;x=e+836|0;c[x>>2]=w;w=w&3;u=e+840|0;c[u>>2]=w;t=f+44|0;if(!((w|0)==1|(c[t>>2]|0)!=5)){gi(c[b+4>>2]|0,16,217072,j);g=-1094995529;break}h=gP(C)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;gi(g,16,220457,k);g=-1094995529;break}g=c[b+27180+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[n>>2]=h;gi(g,16,220481,n);g=-1094995529;break}w=c[g+4>>2]|0;g=c[w>>2]|0;h=c[b+27052+(g<<2)>>2]|0;if(!h){E=c[b+4>>2]|0;c[o>>2]=g;gi(E,16,220513,o);g=-1094995529;break}o=c[h+4>>2]|0;j=o+20|0;g=hP(C,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!p?(q=c[b+28244>>2]|0,(q|0)!=(g|0)):0){E=c[b+4>>2]|0;c[r>>2]=q;c[r+4>>2]=g;gi(E,16,217111,r);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[o+64>>2]|0)){if(i<<24>>24==3&(c[o+72>>2]|0)==0){gi(c[b+4>>2]|0,16,217143,s);g=-1;break}if(iP(C)|0)n=(iP(C)|0)+1|0;else n=3}else n=3;c[e+21824>>2]=n;c[e+21828>>2]=(n|0)!=3&1;i=(n|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<>2]|0)==5)eP(C)|0;h=o+24|0;g=c[h>>2]|0;if(!g){c[e+34736>>2]=hP(C,c[o+28>>2]|0)|0;if(i&(c[w+8>>2]|0)==1)c[e+34740>>2]=jP(C)|0;g=c[h>>2]|0}if(((g|0)==1?(c[o+32>>2]|0)==0:0)?(c[e+34744>>2]=jP(C)|0,i&(c[w+8>>2]|0)==1):0)c[e+34748>>2]=jP(C)|0;g=e+21836|0;c[g>>2]=0;if(c[w+60>>2]|0)c[g>>2]=gP(C)|0;g=c[u>>2]|0;if((g|0)==3){c[e+21844>>2]=iP(C)|0;g=c[u>>2]|0}i=e+23404|0;k=b+4|0;g=kP(e+23412|0,i,C,w,g,n,c[k>>2]|0)|0;if((g|0)>=0){if((c[u>>2]|0)!=1?(v=lP(e,c[k>>2]|0)|0,(v|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=v;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[w+28>>2]|0)!=0?(c[u>>2]|0)==2:0){y=2;g=51}else g=49;if(((g|0)==49?(c[w+32>>2]|0)==1:0)?(c[u>>2]|0)==3:0){y=3;g=51}if((g|0)==51?(z=mP(C,o,i,y,h,n,c[k>>2]|0)|0,(z|0)<0):0){g=z;break}c[e+34728>>2]=0;do if(c[f+64>>2]|0){if((nP(e,C,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+580>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[u>>2]|0)!=1){if(!(c[w+4>>2]|0))break;g=fP(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[A>>2]=g;gi(E,16,217213,A);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[w+36>>2]|0;g=(jP(C)|0)+g|0;if(g>>>0>(((c[o+1184>>2]|0)*6|0)+3|0)>>>0){E=c[k>>2]|0;c[B>>2]=g;gi(E,16,217241,B);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[w+548+g>>0];c[e+856>>2]=d[w+636+g>>0];g=c[x>>2]|0;if((g|0)==6){iP(C)|0;g=c[x>>2]|0}if((g+-5|0)>>>0<2)jP(C)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[w+52>>2]|0)){g=0;break}g=fP(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[D>>2]=g;gi(E,16,217261,D);g=-1094995529;break}D=(g|0)==2?2:g^1;c[h>>2]=D;if(!D){g=0;break}h=jP(C)|0;g=jP(C)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){D=c[k>>2]|0;c[E>>2]=h;c[E+4>>2]=g;gi(D,16,217300,E);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{E=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;gi(E,16,217041,i);g=-1094995529}while(0);l=F;return g|0}function ho(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+96|0;if((l|0)>=(m|0))W(96);z=G+72|0;y=G+56|0;w=G+48|0;q=G+40|0;r=G+32|0;n=G+16|0;k=G;e=yo(a,b,e)|0;a:do if((e|0)>=0){B=a+28216|0;s=c[B>>2]|0;o=a+25684|0;p=c[o>>2]|0;F=a+26380|0;x=c[F>>2]|0;D=d+64|0;c[o>>2]=(c[D>>2]|0)==0&1;e=c[b+21824>>2]|0;c[F>>2]=e;f=c[b+34732>>2]|0;A=a+28224|0;E=a+28244|0;c[E>>2]=f;c[A>>2]=c[b+34736>>2];c[a+28232>>2]=c[b+34740>>2];c[a+28236>>2]=c[b+34744>>2];c[a+28240>>2]=c[b+34748>>2];t=a+28264|0;g=c[t>>2]|0;if((f|0)!=(g|0)?(h=1<>2],C=c[s+48>>2]|0,i=f-C|0,(f-g+((f|0)<(g|0)?h:0)|0)>(C|0)):0)c[t>>2]=i+-1+((i|0)<1?h:0);C=a+26384|0;do if(c[C>>2]|0){i=(x|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=214822;c[k+4>>2]=203124;c[k+8>>2]=1446;gi(0,0,229320,k);Tb()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[n>>2]=214837;c[n+4>>2]=203124;c[n+8>>2]=1447;gi(0,0,229320,n);Tb()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){Mk(g+4|0,2147483647,f);e=c[F>>2]|0}if((e|0)==3|(e|0)==(x|0)){if((x|0)==3){p=j;break}Mk((c[j>>2]|0)+4|0,2147483647,(x|0)==1&1);p=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[E>>2]|0)){if((x|0)==3){p=j;break}Mk(f+4|0,2147483647,(x|0)==1&1);p=j;break}if(!((x|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[r>>2]=x;c[r+4>>2]=e;gi(a,16,214863,r);c[F>>2]=x;c[o>>2]=p;e=-1094995529;break a}if((p|0)==(c[o>>2]|0))p=j;else{Zk(c[h>>2]|0,214901,q);c[F>>2]=x;c[o>>2]=p;e=-1163346256;break a}}else{h=a+4|0;p=a+24312|0}while(0);k=s+20|0;n=a+29556|0;g=s+52|0;o=a+29548|0;j=a+28348|0;while(1){i=c[E>>2]|0;e=c[t>>2]|0;f=(c[C>>2]|0)==0;if((i|0)==(e|0)){g=45;break}if(!f){g=46;break}if((i|0)==((e+1|0)%(1<>2]|0)|0|0)){g=57;break}if(!(c[n>>2]|0))f=0;else f=c[j>>2]|0;s=c[h>>2]|0;c[w>>2]=i;c[w+4>>2]=e;gi(s,48,214967,w);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=zo(a)|0;if((e|0)<0){g=33;break}s=((c[t>>2]|0)+1|0)%(1<>2]|0)|0;c[t>>2]=s;e=c[p>>2]|0;c[e+88>>2]=s;c[e+648>>2]=(c[g>>2]|0)==0&1;Mk(e+4|0,2147483647,0);Mk((c[p>>2]|0)+4|0,2147483647,1);c[o>>2]=0;e=Lk(a)|0;if((e|0)<0?c[(c[h>>2]|0)+580>>2]&8|0:0)break a;if(!(c[n>>2]|0))continue;e=c[j>>2]|0;if((((f|0)!=0?(u=c[e>>2]|0,v=c[f>>2]|0,(c[u+68>>2]|0)==(c[v+68>>2]|0)):0)?(c[u+72>>2]|0)==(c[v+72>>2]|0):0)?(c[u+80>>2]|0)==(c[v+80>>2]|0):0){e=f+4|0;il(e,2147483647,0);if(c[f+636>>2]|0)il(e,2147483647,1);s=c[c[j>>2]>>2]|0;e=c[f>>2]|0;ak(s,s+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[t>>2]}if((g|0)==33){c[C>>2]=0;break}else if((g|0)==45)if(f)g=57;else g=46;do if((g|0)==46){g=c[p>>2]|0;if(!g){c[y>>2]=214822;c[y+4>>2]=203124;c[y+8>>2]=1553;gi(0,0,229320,y);Tb()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[z>>2]=214837;c[z+4>>2]=203124;c[z+8>>2]=1554;gi(0,0,229320,z);Tb()}e=c[F>>2]|0;f=a+29584|0;if((e|0)==3|(e|0)==(x|0)){c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=0;f=(e|0)!=3&1;c[C>>2]=f;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){Mk(g+4|0,2147483647,(e|0)==2&1);c[C>>2]=1;c[p>>2]=0;e=c[F>>2]|0;f=1;break}if(!(c[g+640>>2]&4)){c[C>>2]=0;f=0;break}else{c[C>>2]=1;c[p>>2]=0;f=1;break}}else if((g|0)==57){e=c[F>>2]|0;f=(e|0)!=3&1;c[C>>2]=f}while(0);if(!((e|0)!=3&(f|0)==0)){if((zo(a)|0)<0){c[C>>2]=0;e=-1094995529;break}}else{Ao(a,0);c[(c[p>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[F>>2]|0;c:do if((e|0)==3)FZ(c[a+26372>>2]|0,-1,(N(c[a+27008>>2]<<1,c[a+27016>>2]|0)|0)+-2|0)|0;else{g=a+27008|0;h=a+26372|0;i=a+27016|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;y=c[i>>2]|0;z=e+1|0;FZ((c[h>>2]|0)+((N(y,e)|0)<<1)|0,-1,y-((z|0)==(f|0)&1)<<1|0)|0;e=z}}while(0);e=c[p>>2]|0;e=Bo(e+76|0,e+84|0,c[B>>2]|0,A,c[F>>2]|0,c[D>>2]|0)|0;if((e|0)>=0){k=b+34724|0;DZ(a+28748|0,b+33932|0,(c[k>>2]|0)*12|0)|0;c[a+29540>>2]=c[k>>2];c[o>>2]=c[b+34728>>2];k=(c[d+44>>2]|0)==5;j=k&1;c[a+25712>>2]=j;h=c[a+29716>>2]|0;do if((h|0)>-1){i=c[E>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29568>>2]=1;g=a+29572|0;f=c[g>>2]|0;if((f|0)>=0){e=c[(c[B>>2]|0)+20>>2]|0;if(((1<>>0<=h>>>0)break}else e=c[(c[B>>2]|0)+20>>2]|0;B=(1<>2]=B;c[g>>2]=(c[a+29568>>2]|0)==0?i:B}while(0);f=c[p>>2]|0;e=(c[f>>2]|0)+84|0;c[e>>2]=c[e>>2]|j;e=a+29572|0;if(k){c[e>>2]=-1;c[f+644>>2]=1;E=a+29576|0;e=c[E>>2]|1;c[E>>2]=e}else{if((c[e>>2]|0)==(c[E>>2]|0)?c[D>>2]|0:0){c[e>>2]=-1;c[f+644>>2]=1}e=c[a+29576>>2]|0}E=f+644|0;c[E>>2]=c[E>>2]|e;if(((c[F>>2]|0)!=3?c[C>>2]|0:0)?(c[a+29584>>2]|0)<=1:0){e=0;break}Co(a);Do(a);e=0}}while(0);l=G;return e|0}function io(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+160|0;if((l|0)>=(m|0))W(160);F=G+24|0;o=G+16|0;g=G+8|0;f=G;x=G+96|0;if((c[a+25712>>2]|0)!=0?(c[e+44>>2]|0)!=5:0){gi(c[a+4>>2]|0,16,214147,f);f=-1094995529}else y=4;do if((y|0)==4){h=c[d+21808>>2]|0;j=a+26376|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26380>>2]|0)!=3;else f=1;E=c[a+27020>>2]|0;if(!(h<<(f&1)>>>0>>0&h>>>0>>0)){gi(c[a+4>>2]|0,16,214186,g);f=-1094995529;break}A=a+27012|0;f=c[A>>2]|0;w=(h>>>0)%(f>>>0)|0;B=d+21788|0;c[B>>2]=w;c[d+21800>>2]=w;w=a+26380|0;E=c[w>>2]|0;f=((h>>>0)/(f>>>0)|0)<<(((E|0)!=3|i^1)&1);v=d+21792|0;c[v>>2]=f;n=d+21804|0;c[n>>2]=f;if((E|0)==2){E=f+1|0;c[v>>2]=E;c[n>>2]=E}f=jo(a,d)|0;if((f|0)>=0){h=a+28212|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){ko(a,d,-1);if(!(c[j>>2]|0))y=15;else{ko(a,d,0);ko(a,d,1);y=15}}}else y=15;if(((y|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)lo(a,d);if(!(c[a+29588>>2]|0))mo(a,d);u=a+4|0;k=c[u>>2]|0;f=c[k+724>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27028>>2]|0)==5)y=24;else{y=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){y=29;break a}else break;else if((f|0)>7)break;else break a;else y=24;while(0);if((y|0)==24?(c[g>>2]|0)!=1:0){y=29;break}if(!(c[e+64>>2]|0))y=29}else y=29;while(0);if((y|0)==29)c[d+868>>2]=0;C=d+868|0;do if((c[C>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[k+64>>2]&1)){c[a+25708>>2]=1;break}else{c[C>>2]=2;break}while(0);D=d+872|0;i=c[D>>2]|0;E=d+876|0;j=c[E>>2]|0;g=c[h>>2]|0;f=g+44|0;h=c[f>>2]|0;z=(h|0)<0;g=g+48|0;h=((z?0:h)|0)<=(c[g>>2]|0);if(h|z^1)f=c[(h?g:f)>>2]|0;else f=0;c[d+860>>2]=-33-((i|0)>(j|0)?j:i)-f+((c[(c[a+28216>>2]|0)+1184>>2]|0)*6|0);t=a+29560|0;g=c[t>>2]|0;h=g+1|0;c[t>>2]=h;t=d+832|0;c[t>>2]=h;if(!h)f=c[n>>2]|0;else{f=c[n>>2]|0;b[a+29600+((g&31)<<1)>>1]=f}z=b[a+29600+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(z|0)&(z+3|0)>=(f|0))){c[o>>2]=h;c[o+4>>2]=32;gi(k,24,214214,o)}p=d+23412|0;q=a+29556|0;r=a+29552|0;o=0;while(1){if((o|0)==2)break;s=c[t>>2]&31;k=d+23404+(o<<2)|0;j=0;while(1){if((j|0)==16)break;n=x+(j<<2)|0;c[n>>2]=60;b:do if(o>>>0<(c[p>>2]|0)>>>0?j>>>0<(c[k>>2]|0)>>>0:0){f=c[(c[c[d+23416+(o*1920|0)+(j*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!f)break;h=c[f>>2]|0;i=c[q>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;if((c[c[(c[c[a+28348+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(h|0)){y=53;break}f=f+1|0}if((y|0)==53){y=0;c[n>>2]=f}g=c[r>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;z=c[a+28476+(f<<2)>>2]|0;if(z|0?(c[c[(c[z>>2]|0)+248>>2]>>2]|0)==(h|0):0)break;f=f+1|0}c[n>>2]=i+f}while(0);j=j+1|0}c[a+29940+(s<<9)+(o<<8)+4>>2]=-1;c[a+29940+(s<<9)+(o<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29940+(s<<9)+(o<<8)+(f+2<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f<<2)>>2]<<2;f=f+1|0}c[a+29940+(s<<9)+(o<<8)+76>>2]=-1;c[a+29940+(s<<9)+(o<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29940+(s<<9)+(o<<8)+(f+4<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f+-16>>1<<2)>>2]<<2;f=f+1|0}o=o+1|0}z=c[u>>2]|0;if(!(c[z+576>>2]&1))f=0;else{y=c[t>>2]|0;x=c[w>>2]|0;u=N(c[A>>2]|0,c[v>>2]|0)|0;u=u+(c[B>>2]|0)|0;f=d+836|0;v=(gl(c[f>>2]|0)|0)<<24>>24;w=c[d+844>>2]|0?214315:332204;s=(c[e+44>>2]|0)==5?214320:332204;t=c[a+28244>>2]|0;o=c[a+24312>>2]|0;n=c[o+76>>2]|0;o=c[o+80>>2]|0;p=c[d+23404>>2]|0;q=c[d+23408>>2]|0;r=c[d+848>>2]|0;k=c[C>>2]|0;j=c[D>>2]|0;g=c[E>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=c[d+884>>2]|0?214325:332204;else i=332204;if((c[f>>2]|0)==3)f=c[d+21844>>2]|0?214327:214332;else f=332204;c[F>>2]=y;c[F+4>>2]=(x|0)==3?214313:(x|0)==1?214309:214311;c[F+8>>2]=u;c[F+12>>2]=v;c[F+16>>2]=w;c[F+20>>2]=s;c[F+24>>2]=t;c[F+28>>2]=n;c[F+32>>2]=o;c[F+36>>2]=p;c[F+40>>2]=q;c[F+44>>2]=r;c[F+48>>2]=k;c[F+52>>2]=j;c[F+56>>2]=g;c[F+60>>2]=h;c[F+64>>2]=i;c[F+68>>2]=f;gi(z,48,214337,F);f=0}}}while(0);l=G;return f|0}function jo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+64|0;if((l|0)>=(m|0))W(64);I=K+48|0;J=K+40|0;E=K+32|0;D=K+16|0;C=K+8|0;B=K;w=K+60|0;Sk(b);Tk(b);po(b,d);F=d+23412|0;x=d+34752|0;z=d+34756|0;A=b+29556|0;G=b+4|0;H=b+26380|0;u=0;a:while(1){e=c[F>>2]|0;if(u>>>0>=e>>>0){p=0;r=29;break}s=d+27768+(u<<2)|0;t=d+23404+(u<<2)|0;p=0;e=c[x>>2]|0;while(1){if((p|0)>=(c[s>>2]|0))break;f=a[d+27256+(u<<8)+(p<<3)>>0]|0;i=c[d+27256+(u<<8)+(p<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[z>>2]|0;if(g>>>0>h>>>0){r=11;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;g=Ok(b,e,w)|0;i=c[w>>2]|0;f=c[A>>2]|0;while(1){r=f;f=f+-1|0;if((r|0)<=0){r=18;break b}h=c[b+28348+(f<<2)>>2]|0;if((c[h+88>>2]|0)!=(g|0))continue;if(i&c[h+640>>2]|0){o=e;r=15;break}}break}case 2:{f=Ok(b,i,w)|0;if(f>>>0>31){r=16;break a}f=c[b+28476+(f<<2)>>2]|0;if((f|0)!=0?(y=c[w>>2]|0,(y&c[f+640>>2]|0)!=0):0){o=e;h=f;e=i;i=y;r=15}else r=18;break}default:{r=17;break a}}while(0);if((r|0)==15){c[h+96>>2]=e;f=h+96|0;g=c[t>>2]|0;j=h+100|0;e=p;while(1){k=e+1|0;if(k>>>0>=g>>>0)break;n=c[d+23416+(u*1920|0)+(e*40|0)+36>>2]|0;if(!n){e=k;continue}if((c[j>>2]|0)!=(c[n+100>>2]|0)){e=k;continue}if((c[f>>2]|0)==(c[d+23416+(u*1920|0)+(e*40|0)+32>>2]|0))break;else e=k}while(1){if((e|0)<=(p|0))break;g=e+-1|0;f=d+23416+(u*1920|0)+(e*40|0)|0;e=d+23416+(u*1920|0)+(g*40|0)|0;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=g}e=d+23416+(u*1920|0)+(p*40|0)|0;qo(e,h);if((c[H>>2]|0)==3)e=o;else{ro(e,i);e=o}}else if((r|0)==18){gi(c[G>>2]|0,16,214605,E);f=d+23416+(u*1920|0)+(p*40|0)|0;q=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(q|0))}p=p+1|0}u=u+1|0}c:do if((r|0)==11){gi(c[G>>2]|0,16,214550,B);v=-1094995529}else if((r|0)==16){gi(c[G>>2]|0,16,214577,C);v=-1094995529}else if((r|0)==17){c[D>>2]=235325;c[D+4>>2]=197403;c[D+8>>2]=373;gi(0,0,229320,D);Tb()}else if((r|0)==29){d:while(1){r=0;if(p>>>0>=e>>>0)break;i=d+23404+(p<<2)|0;j=b+28268+(p*40|0)|0;k=b+28268+(p*40|0)+28|0;n=b+28268+(p*40|0)+36|0;o=b+28268+(p*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(p*1920|0)+(h*40|0)|0;g=d+23416+(p*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[H>>2]|0)==3?(c[d+23416+(p*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)r=35}else r=35;if((r|0)==35){r=0;e=c[G>>2]|0;c[J>>2]=c[k>>2];gi(e,16,214647,J);e=0;while(1){if((e|0)==16)break;c[b+28676+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[n>>2]|0)){v=-1;break c}if((c[H>>2]|0)==3?(c[o>>2]&3|0)!=3:0){v=-1;break c}e=j;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=c[g>>2]|0}if((so(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{r=43;break d}}p=p+1|0;e=c[F>>2]|0;r=29}if((r|0)==43){c[I>>2]=214689;c[I+4>>2]=197403;c[I+8>>2]=411;gi(0,0,229320,I);Tb()}if(!(c[b+26376>>2]|0))v=0;else{to(d);v=0}}while(0);l=K;return v|0}function ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26380>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26376>>2]|0)==0?(l=c[b+23444>>2]|0,m=c[b+25364>>2]|0,l=oZ(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0,m=g<<1,(l|0)==(m|0)&(y|0)==(((m|0)<0)<<31>>31|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(p=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,p=(p+128|0)>>>0>255?p>>31^127:p,o=p&255,p=p<<24>>24,o<<24>>24!=0):0){i=(N((((o<<24>>24>-1?p:0-p|0)>>1)+16384|0)/(p|0)|0,l)|0)+32>>8;i=(i+64|0)>>>0<193?64-i|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=c[a+26380>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26376>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;c[b+21996+(e<<7)+((a^e)<<2)>>2]=oo(b,g,h,a+16|0)|0;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;c[b+21868+(a<<2)>>2]=oo(b,j,k,a)|0;a=a+1|0}return}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;j=s;o=a+24312|0;h=c[o>>2]|0;n=a+26380|0;q=c[n>>2]&1^1;p=b+25360|0;f=c[p>>2]&1;k=b+23412|0;d=0;while(1){if(d>>>0>=(c[k>>2]|0)>>>0)break;g=b+23404+(d<<2)|0;c[h+616+(q<<3)+(d<<2)>>2]=c[g>>2];e=0;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break;c[h+104+(q<<8)+(d<<7)+(e<<2)>>2]=c[b+23416+(d*1920|0)+(e*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(e*40|0)+36>>2]|0)+88>>2]<<2;e=e+1|0}d=d+1|0}i=f^1;if((c[n>>2]|0)==3){e=h+616|0;f=c[e+4>>2]|0;g=h+624|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;DZ(h+360|0,h+104|0,256)|0}if(c[a+29560>>2]|0){if((c[h+632>>2]|0)!=(c[a+26376>>2]|0)){c[j>>2]=214427;c[j+4>>2]=214459;c[j+8>>2]=144;gi(0,0,229320,j);Tb()}}else c[h+632>>2]=c[a+26376>>2];f=b+21852|0;c[f>>2]=0;a:do if((c[k>>2]|0)==2?c[b+23408>>2]|0:0){e=c[n>>2]|0;if((e|0)!=3){d=c[p>>2]|0;if((d&e|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0){c[f>>2]=(d<<1)+-3;d=q}else d=q}else{d=c[(c[o>>2]|0)+84>>2]|0;f=c[b+25372>>2]|0;e=c[f+76>>2]|0;f=c[f+80>>2]|0;if((e|0)==2147483647&(f|0)==2147483647){gi(c[a+4>>2]|0,16,214484,r);d=1}else{r=e-d|0;d=f-d|0;d=(((r|0)>-1?r:0-r|0)|0)>=(((d|0)>-1?d:0-d|0)|0)&1}c[b+21848>>2]=d;i=d}if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26376|0;f=0;while(1){if((f|0)==2)break a;no(a,b,g,f,d,i,0);b:do if(c[h>>2]|0){e=0;while(1){if((e|0)==2)break b;no(a,b,b+22636+(e*384|0)|0,f,e,e,1);e=e+1|0}}while(0);f=f+1|0}}}while(0);l=s;return}function no(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26380>>2]|0)!=3;FZ(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;a:while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0)){h=m;continue a}h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=13;break}h=h+1|0}if((t|0)==13){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}}return}function oo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;h=c[a+23416+(e*40|0)+28>>2]|0;i=((h|0)<0)<<31>>31;d=pZ(d|0,((d|0)<0)<<31>>31|0,h|0,i|0)|0;g=(d+128|0)>>>0>255?d>>31^127:d;f=g&255;g=g<<24>>24;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))Zk(c[(c[a>>2]|0)+4>>2]|0,214513,k);if(f<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=pZ(b|0,((b|0)<0)<<31>>31|0,h|0,i|0)|0;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))gi(c[(c[a>>2]|0)+4>>2]|0,48,214531,j);j=(N((((f<<24>>24>-1?g:0-g|0)>>1)+16384|0)/(g|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=j>>6;d=(d+1024|0)>>>0>2047?j>>31^1023:d}else d=256;l=k;return d|0}function po(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+240|0;if((l|0)>=(m|0))W(240);t=u+48|0;d=u+32|0;p=u+16|0;o=u;n=u+104|0;q=u+96|0;r=u+56|0;s=b+840|0;do if((c[s>>2]|0)==3){k=a+26380|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28348|0;i=a+29556|0;j=a+28476|0;f=0;while(1){if((f|0)>=2){d=11;break}d=uo(n,h,c[i>>2]|0,g,f^1)|0;d=(uo(n+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=vo(b+23416+(f*1920|0)|0,48,n,d,0,c[k>>2]|0)|0;d=(vo(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)FZ(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[q+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[o>>2]=214762;c[o+4>>2]=197403;c[o+8>>2]=153;gi(0,0,229320,o);Tb()}else if((d|0)==7){c[p>>2]=214762;c[p+4>>2]=197403;c[p+8>>2]=160;gi(0,0,229320,p);Tb()}else if((d|0)==11){e=c[q>>2]|0;q=c[q+4>>2]|0;if((e|0)==(q|0)&(q|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=r;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=r;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{r=a+26380|0;e=vo(b+23416|0,48,a+28348|0,c[a+29556>>2]|0,0,c[r>>2]|0)|0;e=(vo(b+23416+(e*40|0)|0,48-e|0,a+28476|0,16,1,c[r>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=214762;c[d+4>>2]=197403;c[d+8>>2]=181;gi(0,0,229320,d);Tb()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)FZ(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if((f|0)>=(((c[s>>2]|0)==3?2:1)|0))break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;e=b+23416+(f*1920|0)+(g*40|0)|0;d=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(d|0?wo(a,d)|0:0){gi(c[h>>2]|0,16,214772,t);j=e;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28268+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}l=u;return}function qo(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function so(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function to(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+23412|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;k=a+23404+(g<<2)|0;h=0;while(1){if(h>>>0>=(c[k>>2]|0)>>>0)break;f=(h<<1)+16|0;j=a+23416+(g*1920|0)+(f*40|0)|0;b=j;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=j+40|0;d=j;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=j+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[j+64>>2]=2;c[j+68>>2]=c[(c[j+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function uo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f|0?-2147483648:2147483647;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function vo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;q=s;p=g^3;o=(f|0)==0;j=0;f=0;h=0;while(1){if(!((f|0)<(e|0)|(h|0)<(e|0))){f=24;break}while(1){if((f|0)>=(e|0)){i=0;break}n=c[d+(f<<2)>>2]|0;if(n|0?c[n+640>>2]&g|0:0){i=1;break}f=f+1|0}n=h;while(1){if((n|0)>=(e|0)){k=0;break}k=c[d+(n<<2)>>2]|0;if(k|0?c[k+640>>2]&p|0:0){k=1;break}n=n+1|0}if(i){if((j|0)>=(b|0)){f=14;break}i=c[d+(f<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=f;c[i+96>>2]=h;xo(a+(j*40|0)|0,i,g,1);j=j+1|0;f=f+1|0}if(!k){h=n;continue}if((j|0)>=(b|0)){f=20;break}i=c[d+(n<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=n;c[i+96>>2]=h;xo(a+(j*40|0)|0,i,p,0);j=j+1|0;h=n+1|0}if((f|0)==14){c[q>>2]=214806;c[q+4>>2]=197403;c[q+8>>2]=90;gi(0,0,229320,q);Tb()}else if((f|0)==20){c[r>>2]=214806;c[r+4>>2]=197403;c[r+8>>2]=95;gi(0,0,229320,r);Tb()}else if((f|0)==24){l=s;return j|0}return 0}function wo(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function xo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(qo(a,b),(d|0)!=3):0){ro(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function yo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;if((l|0)>=(m|0))W(64);o=t+56|0;n=t+48|0;s=t+40|0;r=t+24|0;q=t;k=(d|0)!=0;if(k){i=a+28204|0;Ni(i);f=a+28212|0;c[f>>2]=0;d=Pj(c[a+27180+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28212|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28216|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27052+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28208|0;Ni(i);c[h>>2]=0;d=Pj(c[a+27052+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+27012>>2]|0)==(c[g+56>>2]|0)?(c[a+27008>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29596>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27044>>2]|0)==(e|0)?(c[a+27048>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25692|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+100>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+104>>2]|0)):0)?(c[a+29596>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)?(c[a+27012>>2]|0)==(f|0):0)f=(c[a+27008>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+112>>2]|0;if(!((e|0)!=-1?(j=Rp(e)|0,(j|0)==(Rp(Sp(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+188|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];o=(Tp(n,o)|0)==0;f=o?f:1}if(((c[a+29588>>2]|0)==0?(o=Up(g)|0,n=c[h>>2]|0,c[n+716>>2]=o,c[n+720>>2]=c[g+8>>2],c[n+300>>2]=c[g+48>>2],n=c[g+56>>2]|0,c[a+27012>>2]=n,o=c[g+60>>2]|0,c[a+27008>>2]=o,c[a+27020>>2]=N(o,n)|0,c[a+27016>>2]=n+1,c[a+26368>>2]=n<<2,c[a+25680>>2]=(c[g+12>>2]|0)<2&1,c[a+25668>>2]=n<<4,c[a+25672>>2]=o<<4,Vp(a),(c[g+108>>2]|0)!=0):0)?(p=c[h>>2]|0,c[p+328>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){o=p+324|0;n=c[g+128>>2]|0;d=(c[o>>2]|0)==(n|0)?d:1;c[p+316>>2]=c[g+120>>2];c[p+320>>2]=c[g+124>>2];c[o>>2]=n}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;p=c[d+100>>2]|0;b=c[a+25672>>2]|0;r=c[d+104>>2]|0;s=(c[a+29560>>2]|0)+1|0;c[q>>2]=c[a+25668>>2];c[q+4>>2]=p;c[q+8>>2]=b;c[q+12>>2]=r;c[q+16>>2]=s;gi(d,16,215556,q);d=-1094995529;break}if(!e)ej(a);d=Sp(a,1)|0;if((d|0)>=0){q=c[h>>2]|0;c[q+112>>2]=d;p=c[a+25668>>2]|0;b=c[a+25672>>2]|0;d=Cj(d)|0;c[r>>2]=p;c[r+4>>2]=b;c[r+8>>2]=d;gi(q,40,215611,r);d=Wp(a)|0;if((d|0)<0)gi(c[h>>2]|0,16,215649,s);else d=0}}else d=0}while(0);l=t;return d|0}function zo(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=p+8|0;f=p+16|0;n=c[b+25664>>2]|0;o=b+28216|0;g=c[o>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(Ho(c[g>>2]|0)|0){Ao(b,1);k=b+24312|0;c[k>>2]=0;d=Io(b)|0;if((d|0)<0){gi(c[g>>2]|0,16,215116,e);break}i=b+696+(d*656|0)|0;j=b+26380|0;h=c[j>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25684>>2]|0)==0?h:0;e=b+25688|0;q=c[e>>2]|0;c[e>>2]=q+1;e=c[i>>2]|0;c[e+128>>2]=q;c[b+696+(d*656|0)+636>>2]=(h|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28244>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29716>>2];h=b+25628|0;c[e+88>>2]=c[(c[h>>2]|0)+836>>2];c[e+392>>2]=c[b+25716>>2];c[e+396>>2]=c[b+25720>>2];c[e+384>>2]=c[b+25724>>2];c[e+388>>2]=c[b+25728>>2];d=Jo(b,i)|0;if((d|0)>=0){if((c[b+29576>>2]|0)==0?(c[(c[g>>2]|0)+592>>2]|0)==0:0)Ko(c[i>>2]|0,f);c[k>>2]=i;d=b+24316|0;gj(b,d);dl((c[h>>2]|0)+696|0,0);d=wk(b,d,c[k>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;g=c[c[k>>2]>>2]|0;q=c[h>>2]|0;c[q+(d*34768|0)+21772>>2]=c[g+32>>2];c[q+(d*34768|0)+21776>>2]=c[g+36>>2];d=d+1|0}if(!(c[b+29672>>2]|0))d=0;else{Lo((c[h>>2]|0)+24|0);dl((c[h>>2]|0)+728|0,0);dl((c[h>>2]|0)+760|0,0);d=0}while(1){if((d|0)==16){d=0;break}q=a[215911+d>>0]|0;h=((q<<2&255)+16&28)<>3;c[b+25976+(d<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<2,q)|0);c[b+25976+(d+48<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<3,q)|0);d=d+1|0}while(1){if((d|0)==16)break;q=a[215911+d>>0]|0;h=((q<<2&255)+16&28)<>3;g=h+(N(c[(c[i>>2]|0)+36>>2]<<2,q)|0)|0;c[b+25976+(d+32<<2)>>2]=g;c[b+25976+(d+16<<2)>>2]=g;q=h+(N(c[(c[i>>2]|0)+36>>2]<<3,q)|0)|0;c[b+25976+(d+80<<2)>>2]=q;c[b+25976+(d+64<<2)>>2]=q;d=d+1|0}q=c[k>>2]|0;c[q+640>>2]=0;c[q+80>>2]=2147483647;c[q+76>>2]=2147483647;c[b+28740>>2]=0;c[b+25708>>2]=0;if(!(c[(c[o>>2]|0)+68>>2]|0))d=0;else d=(c[j>>2]|0)==3&1;c[b+26376>>2]=d;d=c[b+29712>>2]|0;if((d|0)>-1){c[b+25704>>2]=d;d=0}else d=0}}}else{gi(c[g>>2]|0,16,215070,p);d=-1}while(0);l=p;return d|0}function Ao(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;gj(a,f)}while(0);b=b+1|0}return}function Bo(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=k+i|0;l=((j|0)<0)<<31>>31;if((g|0)==3){k=c[f+8>>2]|0;k=oZ(k|0,((k|0)<0)<<31>>31|0,j|0,l|0)|0;i=j;h=l;j=y}else{i=j;h=l;k=j;j=l}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:l+i|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){i=i+-1|0;k=(i|0)%(m|0)|0;i=N((i|0)/(m|0)|0,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;i=(c[f+12>>2]|0)+i|0;l=((i|0)<0)<<31>>31;k=c[e+40>>2]|0;k=oZ(i|0,l|0,k|0,((k|0)<0)<<31>>31|0)|0;j=y;if((g|0)==3){h=c[f+16>>2]|0;k=oZ(k|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=l;j=y}else h=l;break}default:{k=(l+i<<1)+(((h|0)==0)<<31>>31)|0;j=((k|0)<0)<<31>>31;i=k;h=j}}if((i|0)==(i|0)&(h|0)==(((i|0)<0)<<31>>31|0)?(k|0)==(k|0)&(j|0)==(((k|0)<0)<<31>>31|0):0){if((g|0)!=2?(c[a>>2]=i,(g|0)==1):0)j=a+4|0;else{j=a+4|0;c[j>>2]=k;i=c[a>>2]|0}c[d>>2]=c[a+(((i|0)>(c[j>>2]|0)&1)<<2)>>2];i=0}else i=-1094995529;return i|0}function Co(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+28216>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;g=j+212|0;c[g>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29676>>2]|0)!=0:0){f=c[b+29680>>2]|0;switch(f|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[g>>2]=1;d=1;break}case 4:case 3:{if((c[b+26376>>2]|0)==0?(c[b+26380>>2]|0)==3:0)d=c[b+29564>>2]|0;else d=1;c[g>>2]=d;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}e=c[b+29684>>2]|0;if((e&3|0)!=0&f>>>0<5){d=e>>>1&1;h=17}}else{if(!(c[b+26376>>2]|0))d=(c[b+26380>>2]|0)!=3;else d=1;d=d&1;h=17}if((h|0)==17)c[g>>2]=d;c[b+29564>>2]=d;e=c[q+76>>2]|0;f=c[q+80>>2]|0;do if((e|0)==(f|0)){if(!i?c[b+29676>>2]|0:0){switch(c[b+29680>>2]|0){case 5:case 3:{d=1;break}default:d=0}c[j+216>>2]=d;break}c[j+216>>2]=(d|0)!=0&1}else c[j+216>>2]=(e|0)<(f|0)&1;while(0);if(((c[b+29852>>2]|0?(k=b+29864|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29872|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=Eo(j)|0,m|0):0){switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:{c[m>>2]=c[b+29876>>2]|0?5:1;break}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}if((c[l>>2]|0)==2)c[m+4>>2]=1;if((c[k>>2]|0)==5)c[m+8>>2]=c[b+29880>>2]|0?1:2}do if(c[b+29884>>2]|0){d=c[b+29888>>2]|0;if(((d|0)==0?(c[b+29892>>2]|0)==0:0)?(c[b+29896>>2]|0)==0:0)break;e=lk(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;Fo(c[m>>2]|0,+(d*360|0)*.0000152587890625);Go(c[m>>2]|0,c[b+29892>>2]|0,c[b+29896>>2]|0)}}while(0);d=b+29696|0;if(c[d>>2]|0?(n=lk(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29700>>0]|0;c[d>>2]=0}d=b+29708|0;if(c[d>>2]|0){e=b+29704|0;f=lk(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)DZ(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;ci(d);c[e>>2]=0;n=(c[b+4>>2]|0)+848|0;c[n>>2]=c[n>>2]|2}if((c[b+29916>>2]|0?(o=b+29920|0,Ml(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+320>>2]=p}return}function Do(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);r=s+32|0;o=s+16|0;k=s+8|0;h=s;d=c[a+28216>>2]|0;n=c[a+24312>>2]|0;j=a+29544|0;i=n+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=d+660|0;b=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[b+568>>2]|0)<=0:0)){p=b+140|0;f=c[p>>2]|0;g=c[d+664>>2]|0;c[p>>2]=(f|0)>(g|0)?f:g}g=n+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;p=8;break}d=c[a+28676+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){p=7;break}if(!e)c[a+28676+(b+-1<<2)>>2]=d;b=b+1|0}if((p|0)==7)if(e)b=0;else p=8;if((p|0)==8)c[a+28676+(b+-1<<2)>>2]=f;e=16-b|0;if((c[(c[n>>2]|0)+88>>2]|0)==3)if((e|0)>1)p=17;else p=16;else{p=c[a+28732>>2]|0;if((p|0)!=-2147483648?!((e|0)>1?1:((c[a+28736>>2]|0)-p|0)<3):0)p=16;else p=17}if((p|0)==16){b=a+4|0;e=1;d=c[b>>2]|0;p=22}else if((p|0)==17){f=a+4|0;d=c[f>>2]|0;if(!b){e=a+28676|0;b=c[e>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;gi(d,40,214988,h);b=1;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}c[e>>2]=c[g>>2];c[i>>2]=1;h=f}else{b=f;p=22}}if((p|0)==22)if((c[d+140>>2]|0)<(e|0)?(c[j>>2]|0)==0:0){h=(c[d+360>>2]|0)>1?24:40;c[k>>2]=e;gi(d,h,215007,k);c[(c[b>>2]|0)+140>>2]=e;h=b}else h=b;k=0;while(1){b=a+28604+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if((k|0)>=17){c[o>>2]=215040;c[o+4>>2]=203124;c[o+8>>2]=1337;gi(0,0,229320,o);Tb()}c[b>>2]=n;b=n+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28604|0;f=c[j>>2]|0;n=f;i=0;b=1;while(1){d=c[a+28604+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;p=(c[d+84>>2]|0)<(c[n+84>>2]|0);n=p?d:n;i=p?b:i;b=b+1|0}b=c[h>>2]|0;e=c[b+140>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28744>>2]=-2147483648}while(0);d=c[n+84>>2]|0;g=a+28744|0;f=(d|0)<(c[g>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=n+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28604+(i<<2)>>2]|0;while(1){if(!e)break;p=b+1|0;e=c[a+28604+(p<<2)>>2]|0;c[a+28604+(b<<2)>>2]=e;b=p}if(f){b=c[h>>2]|0;p=61;break}else{e=c[h>>2]|0;b=e;e=c[e+140>>2]|0;p=47;break}}else p=47;while(0);do if((p|0)==47){if((k|0)<(e|0)){p=61;break}h=a+28740|0;c[h>>2]=n;if((i|0)==0?(q=c[j>>2]|0,(q|0)!=0):0)if((c[(c[q>>2]|0)+84>>2]|0)==0?(c[q+92>>2]|0)==0:0)p=53;else d=-2147483648;else p=53;c[g>>2]=d;f=n+644|0;g=c[f>>2]|0;e=a+29576|0;d=c[e>>2]|0;if(g){d=d|2;c[e>>2]=d}a=d>>>1&1|g;c[f>>2]=a;if(!a){if((c[b+60>>2]&8|0)==0?(c[b+64>>2]&4194304|0)==0:0){c[h>>2]=0;break}a=(c[n>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((p|0)==61){c[r>>2]=f?215051:332204;gi(b,48,215055,r)}l=s;return}function Eo(b){b=b|0;var d=0,e=0;b=lk(b,2,12)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d+12|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));b=c[b>>2]|0}return b|0}function Fo(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+D(+b);b=+E(+b);d=a+8|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function Go(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;c[d>>2]=N(c[d>>2]|0,c[e+(((b|0)%3|0)<<2)>>2]|0)|0;b=b+1|0}}while(0);l=f;return}function Ho(a){a=a|0;var b=0;if((c[a+696>>2]&1|0)!=0?(c[(c[(c[a+28>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+68>>2]|0))if((c[a+700>>2]|0)==0?(c[a+400>>2]|0)!=12:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function Io(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function Jo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=215166;c[e+4>>2]=203124;c[e+8>>2]=192;gi(0,0,229320,e);Tb()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=Ep(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+592>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=215183;c[g+4>>2]=203124;c[g+8>>2]=202;gi(0,0,229320,g);Tb()}e=c[e+40>>2]|0;if(e|0){e=Hj(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29924|0;e=c[f>>2]|0;if(!e){d=Fp(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}f=b+20|0;c[f>>2]=wj(e)|0;e=wj(c[a+29928>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27016>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29932|0;g=a+29936|0;e=0;while(1){if((e|0)>=2){d=0;break a}i=b+28+(e<<2)|0;c[i>>2]=wj(c[f>>2]|0)|0;h=wj(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){gj(a,b);d=(d|0)<0?d:-12}l=k;return d|0}function Ko(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=v;g=Bj(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=215143;c[f+4>>2]=196722;c[f+8>>2]=410;gi(0,0,229320,f);Tb()}q=g+4|0;r=a+68|0;s=g+5|0;t=a+72|0;u=g+6|0;o=g+32|0;n=0;while(1){if((n|0)>=(d[q>>0]|0|0))break;f=c[r>>2]|0;if((n+-1|0)>>>0<2){p=0-(0-(c[t>>2]|0)>>(d[u>>0]|0))|0;f=0-(0-f>>(d[s>>0]|0))|0}else p=c[t>>2]|0;j=a+32+(n<<2)|0;k=e+(n<<2)|0;g=0;i=c[a+(n<<2)>>2]|0;while(1){if((g|0)>=(p|0))break;a:do if((c[o>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[k>>2];h=h+1|0}}else FZ(i|0,c[k>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[j>>2]|0)|0}n=n+1|0}l=v;return}function Lo(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+572>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){Mo(a+4|0,b);c[d>>2]=1}FZ(c[a+580>>2]|0,127,N(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function Mo(a,b){a=a|0;b=b|0;c[a>>2]=19;c[a+484>>2]=2;c[a+488>>2]=3;c[a+492>>2]=4;c[a+496>>2]=5;c[a+500>>2]=6;c[a+504>>2]=7;c[a+508>>2]=8;c[a+512>>2]=9;c[a+52>>2]=10;c[a+56>>2]=11;c[a+68>>2]=12;c[a+72>>2]=13;c[a+76>>2]=14;c[a+80>>2]=15;c[a+292>>2]=16;c[a+296>>2]=17;c[a+316>>2]=18;c[a+320>>2]=19;c[a+4>>2]=2;c[a+8>>2]=6;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function No(a){a=a|0;var c=0,d=0,e=0,f=0;c=0;d=0;while(1){if((c|0)==64)break;f=b[a+(c<<1)>>1]|0;e=f<<16>>16;c=c+1|0;d=(f<<16>>16>-1?e:0-e|0)+d|0}return d|0}function Oo(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Po(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=d[a+1>>0]|0;w=(d[b>>0]|0)-(((d[a>>0]|0)+1+v|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+1+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Qo(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Ro(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;y=d[a+1>>0]|0;w=d[c+1>>0]|0;x=(d[b>>0]|0)-(((d[a>>0]|0)+2+y+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+2+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function So(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function To(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=d[a+1>>0]|0;o=(d[b>>0]|0)-(((d[a>>0]|0)+1+n|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Uo(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Vo(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;q=d[a+1>>0]|0;o=d[c+1>>0]|0;p=(d[b>>0]|0)-(((d[a>>0]|0)+2+q+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+2+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Wo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Xo(a,b,c,d,8)|0;f=(Xo(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Xo(a,g,b,d,8)|0)+f|0;f=f+(Xo(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Xo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;i=l;l=l+256|0;if((l|0)>=(m|0))W(256);h=i;a=0;while(1){if((a|0)==8){a=0;g=0;break}j=N(a,f)|0;r=j+1|0;t=d[e+r>>0]|0;r=d[b+r>>0]|0;k=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;q=k+t-r|0;g=a<<3;r=k-t+r|0;t=j+2|0;k=j+3|0;s=d[e+k>>0]|0;k=d[b+k>>0]|0;t=(d[e+t>>0]|0)-(d[b+t>>0]|0)|0;o=t+s-k|0;k=t-s+k|0;s=j+4|0;t=j+5|0;u=d[e+t>>0]|0;t=d[b+t>>0]|0;s=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;p=s+u-t|0;t=s-u+t|0;u=j+6|0;j=j+7|0;s=d[e+j>>0]|0;j=d[b+j>>0]|0;u=(d[e+u>>0]|0)-(d[b+u>>0]|0)|0;n=u+s-j|0;j=u-s+j|0;s=o+q|0;o=q-o|0;q=k+r|0;k=r-k|0;r=n+p|0;n=p-n|0;p=j+t|0;j=t-j|0;c[h+(g<<2)>>2]=r+s;c[h+((g|4)<<2)>>2]=s-r;c[h+((g|1)<<2)>>2]=p+q;c[h+((g|5)<<2)>>2]=q-p;c[h+((g|2)<<2)>>2]=n+o;c[h+((g|6)<<2)>>2]=o-n;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}while(1){if((g|0)==8)break;y=h+(g<<2)|0;s=c[y>>2]|0;w=h+(g+8<<2)|0;v=c[w>>2]|0;x=v+s|0;v=s-v|0;s=h+(g+16<<2)|0;b=c[s>>2]|0;n=h+(g+24<<2)|0;k=c[n>>2]|0;u=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;p=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+p|0;j=p-j|0;p=h+(g+48<<2)|0;q=c[p>>2]|0;o=h+(g+56<<2)|0;t=c[o>>2]|0;r=t+q|0;t=q-t|0;q=u+x|0;c[y>>2]=q;u=x-u|0;c[s>>2]=u;s=k+v|0;c[w>>2]=s;k=v-k|0;c[n>>2]=k;n=r+e|0;c[b>>2]=n;r=e-r|0;c[p>>2]=r;p=t+j|0;c[f>>2]=p;t=j-t|0;c[o>>2]=t;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=r+u|0;r=u-r|0;u=k+t|0;t=k-t|0;a=((n|0)>-1?n:0-n|0)+a+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)+((t|0)>-1?t:0-t|0)+((u|0)>-1?u:0-u|0)|0;g=g+1|0}l=i;return a|0}function Yo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Zo(a,b,c,d,8)|0;f=(Zo(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Zo(a,g,b,d,8)|0)+f|0;f=f+(Zo(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Zo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=l;l=l+256|0;if((l|0)>=(m|0))W(256);g=h;a=0;while(1){if((a|0)==8){a=0;e=0;break}i=N(a,f)|0;r=d[b+i>>0]|0;q=d[b+(i+1)>>0]|0;p=q+r|0;e=a<<3;q=r-q|0;r=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;n=j+r|0;j=r-j|0;r=d[b+(i+4)>>0]|0;s=d[b+(i+5)>>0]|0;o=s+r|0;s=r-s|0;r=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+r|0;i=r-i|0;r=n+p|0;n=p-n|0;p=j+q|0;j=q-j|0;q=k+o|0;k=o-k|0;o=i+s|0;i=s-i|0;c[g+(e<<2)>>2]=q+r;c[g+((e|4)<<2)>>2]=r-q;c[g+((e|1)<<2)>>2]=o+p;c[g+((e|5)<<2)>>2]=p-o;c[g+((e|2)<<2)>>2]=k+n;c[g+((e|6)<<2)>>2]=n-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}while(1){if((e|0)==8)break;y=g+(e<<2)|0;q=c[y>>2]|0;w=g+(e+8<<2)|0;v=c[w>>2]|0;x=v+q|0;v=q-v|0;q=g+(e+16<<2)|0;u=c[q>>2]|0;j=g+(e+24<<2)|0;i=c[j>>2]|0;s=i+u|0;i=u-i|0;u=g+(e+32<<2)|0;n=c[u>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;t=f+n|0;f=n-f|0;n=g+(e+48<<2)|0;o=c[n>>2]|0;k=g+(e+56<<2)|0;r=c[k>>2]|0;p=r+o|0;r=o-r|0;o=s+x|0;c[y>>2]=o;s=x-s|0;c[q>>2]=s;q=i+v|0;c[w>>2]=q;i=v-i|0;c[j>>2]=i;j=p+t|0;c[u>>2]=j;p=t-p|0;c[n>>2]=p;n=r+f|0;c[b>>2]=n;r=f-r|0;c[k>>2]=r;k=j+o|0;j=o-j|0;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=i+r|0;r=i-r|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;e=e+1|0}y=(c[g+128>>2]|0)+(c[g>>2]|0)|0;l=h;return a-((y|0)>-1?y:0-y|0)|0}function _o(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=$o(a,b,c,d,8)|0;f=($o(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=($o(a,g,b,d,8)|0)+f|0;f=f+($o(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function $o(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=f;Vd[c[a+2964>>2]&255](g,b,d,e);Sd[c[a+2032>>2]&63](g);e=Ld[c[a+2372>>2]&31](g)|0;l=f;return e|0}function ap(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=bp(a,b,c,d,8)|0;f=(bp(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(bp(a,g,b,d,8)|0)+f|0;f=f+(bp(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function bp(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Vd[c[a+2964>>2]&255](h,d,e,f);Sd[c[a+2032>>2]&63](h);g=0;a=0;while(1){if((g|0)==64)break;e=b[h+(g<<1)>>1]|0;f=e<<16>>16;f=e<<16>>16>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}l=i;return a|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=dp(a,b,c,d,8)|0;f=(dp(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(dp(a,g,b,d,8)|0)+f|0;f=f+(dp(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function dp(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Vd[c[a+2964>>2]&255](h,d,e,f);g=0;while(1){if((g|0)==8){g=0;a=0;break}w=h+(g<<4)|0;A=b[w>>1]|0;f=h+(g<<4)+14|0;p=b[f>>1]|0;C=p+A|0;v=h+(g<<4)+2|0;z=b[v>>1]|0;a=h+(g<<4)+12|0;y=b[a>>1]|0;B=y+z|0;u=h+(g<<4)+4|0;o=b[u>>1]|0;n=h+(g<<4)+10|0;x=b[n>>1]|0;j=x+o|0;t=h+(g<<4)+6|0;d=b[t>>1]|0;q=h+(g<<4)+8|0;e=b[q>>1]|0;k=e+d|0;s=k+C|0;r=j+B|0;k=C-k|0;j=B-j|0;p=A-p|0;y=z-y|0;x=o-x|0;e=d-e|0;d=(p>>1)+p+y+x|0;o=p-e-((x>>1)+x)|0;p=p-y-(y>>1)+e|0;e=e+(y-x)+(e>>1)|0;b[w>>1]=s+r;b[v>>1]=(e>>>2)+d;b[u>>1]=k+(j>>>1);b[t>>1]=o+(p>>>2);b[q>>1]=s-r;b[n>>1]=p-(o>>>2);b[a>>1]=(k>>>1)-j;b[f>>1]=(d>>>2)-e;g=g+1|0}while(1){if((a|0)==8)break;y=b[h+(a<<1)>>1]|0;s=b[h+112+(a<<1)>>1]|0;p=s+y|0;w=b[h+16+(a<<1)>>1]|0;C=b[h+96+(a<<1)>>1]|0;q=C+w|0;A=b[h+32+(a<<1)>>1]|0;v=b[h+80+(a<<1)>>1]|0;z=v+A|0;u=b[h+48+(a<<1)>>1]|0;B=b[h+64+(a<<1)>>1]|0;t=B+u|0;r=t+p|0;x=z+q|0;t=p-t|0;z=q-z|0;s=y-s|0;C=w-C|0;v=A-v|0;B=u-B|0;u=(s>>1)+s+C+v|0;A=s-B-((v>>1)+v)|0;s=s-C-(C>>1)+B|0;B=B+(C-v)+(B>>1)|0;v=r+x|0;C=(B>>2)+u|0;w=t+(z>>1)|0;y=A+(s>>2)|0;x=r-x|0;A=s-(A>>2)|0;z=(t>>1)-z|0;B=(u>>2)-B|0;g=((v|0)>-1?v:0-v|0)+g+((w|0)>-1?w:0-w|0)+((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)+((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)+((B|0)>-1?B:0-B|0)+((C|0)>-1?C:0-C|0)|0;a=a+1|0}l=i;return g|0}function ep(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[165792+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[165792+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function fp(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[165792+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[165792+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function gp(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[165792+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[165792+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[165792+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function hp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=ip(a,b,c,d,8)|0;f=(ip(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(ip(a,g,b,d,8)|0)+f|0;f=f+(ip(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function ip(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+272|0;if((l|0)>=(m|0))W(272);i=k;h=k+256|0;j=i+128|0;c[a+4304>>2]=0;Vd[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;c[a+16>>2]=Pd[c[a+6244>>2]&63](a,i,0,c[g>>2]|0,h)|0;Vd[c[a+6236>>2]&255](a,i,0,c[g>>2]|0);Bp(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(N(a,a)|0)+g|0;d=d+1|0}l=k;return g|0}function jp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=kp(a,b,c,d,8)|0;f=(kp(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(kp(a,g,b,d,8)|0)+f|0;f=f+(kp(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function kp(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+272|0;if((l|0)>=(m|0))W(272);r=u+128|0;s=u+64|0;t=u;p=u+256|0;q=c[a+4908>>2]|0;Ap(s,e,g);Ap(t,f,g);Vd[c[a+2960>>2]&255](r,s,t,8);k=a+1920|0;n=Pd[c[a+6244>>2]&63](a,r,0,c[k>>2]|0,p)|0;c[a+16>>2]=n;o=(c[a+4304>>2]|0)==0;if(o){g=0;e=a+4932|0;f=a+4928|0;h=0}else{g=1;e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[r>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((n|0)>=(g|0)){f=0;while(1){c[p>>2]=g;if((g|0)>=(n|0))break;e=b[r+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=q;f=0;h=e+h|0}g=g+1|0}e=d[a+204+n>>0]|0;c[p>>2]=e;e=(b[r+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+q|0;break}}while(0);do if((n|0)>-1)if(o){Vd[c[a+6236>>2]&255](a,r,0,c[k>>2]|0);break}else{Vd[c[a+6232>>2]&255](a,r,0,c[k>>2]|0);break}while(0);Ud[c[a+2300>>2]&1023](t,8,r);a=Pd[c[a+2404>>2]&63](0,t,s,8,8)|0;t=c[k>>2]|0;a=((N(N(h*109|0,t)|0,t)|0)+64>>7)+a|0;l=u;return a|0}function lp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=mp(a,b,c,d,8)|0;f=(mp(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(mp(a,g,b,d,8)|0)+f|0;f=f+(mp(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function mp(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+144|0;if((l|0)>=(m|0))W(144);n=q;o=q+128|0;p=c[a+4908>>2]|0;Vd[c[a+2964>>2]&255](n,e,f,g);k=Pd[c[a+6244>>2]&63](a,n,0,c[a+1920>>2]|0,o)|0;c[a+16>>2]=k;if(!(c[a+4304>>2]|0)){e=a+4932|0;f=a+4928|0;h=0;g=0}else{e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[n>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[o>>2]=g;if((g|0)>=(k|0))break;e=b[n+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=p;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[o>>2]=e;e=(b[n+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+p|0;break}}while(0);l=q;return h|0}function np(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function op(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function pp(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function qp(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function rp(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function sp(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function tp(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function up(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function vp(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function wp(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function xp(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(zp(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function yp(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(zp(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function zp(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Ap(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function Bp(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8){b=0;break}Cp(a+(b<<3<<1)|0);b=b+1|0}while(1){if((b|0)==8)break;Dp(a+(b<<1)|0);b=b+1|0}return}function Cp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(N(e,-4520)|0)+(f*19266|0)|0;i=(N(e,-22725)|0)+(f*12873|0)|0;e=(N(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=N(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(N(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(N(y,-22725)|0)+k+(N(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function Dp(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;j=b[s>>1]|0;d=n+(N(j,-8867)|0)|0;r=n+(N(j,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(N(q,-4520)|0)+(c*19266|0)|0;g=(N(q,-22725)|0)+(c*12873|0)|0;c=(N(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;i=N(h,-16383)|0;h=m?0:h*16383|0;l=n+(j*21407|0)+h|0;i=m?0:i;j=n+(j*8867|0)+i|0;i=d+i|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(N(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=i;g=l}else{g=f<<16>>16;h=(N(g,-8867)|0)+h|0;k=(g*21407|0)+i|0;j=(N(g,-21407)|0)+j|0;g=(g*8867|0)+l|0}i=a+112|0;f=b[i>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(N(l,-22725)|0)+c|0;e=(N(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+j>>20;b[s>>1]=d+k>>20;b[p>>1]=c+h>>20;b[q>>1]=h-c>>20;b[r>>1]=k-d>>20;b[n>>1]=j-e>>20;b[i>>1]=g-f>>20;return}function Ep(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=Gp(a,b,c)|0;if((b|0)<0)gi(a,16,215213,d);l=d;return b|0}function Fp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+27016|0;g=c[i>>2]|0;f=c[a+27008>>2]|0;e=(N(f+1|0,g)|0)+1|0;h=N(f<<4,c[a+27012>>2]<<2|1)|0;b=a+29924|0;c[b>>2]=Ij(e+g|0,17)|0;d=a+29928|0;c[d>>2]=Ij((c[i>>2]|0)+e<<2,17)|0;e=a+29932|0;c[e>>2]=Ij(h+16|0,17)|0;f=Ij(N(g<<2,f)|0,17)|0;a=a+29936|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{ij(b);ij(d);ij(e);ij(a);a=-12}return a|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;e=a+28|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;a:do if(!(c[a+696>>2]&1))e=Hp(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+68>>2]|0)){if(c[a+700>>2]|0)break;if((c[a+400>>2]|0)==12)break}gi(a,16,215241,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=Mj(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}HZ((c[i>>2]|0)+8|0)|0;g=a+700|0;if((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0){f=i+184|0;HZ(f|0)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;GZ(e|0)|0;while(1){if((c[h>>2]|0)==1)break;wc(e|0,f|0)|0}e=c[i+296>>2]|0;IZ(f|0)|0}else e=Hp(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0)?(c[(c[a+12>>2]|0)+68>>2]|0)==0:0)Xk(a);if(e|0)Ni(b+12|0);IZ((c[i>>2]|0)+8|0)|0}while(0);l=j;return e|0}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=Ip(a,b,d)|0;if((d|0)<0){gi(a,16,215303,e);c[b+72>>2]=0;c[b+68>>2]=0}l=e;return d|0}function Ip(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=o+8|0;e=o;j=c[a+592>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+92|0;g=a+96|0;f=a+872|0;if((ik(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+112>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{q=c[h>>2]|0;h=c[a+680>>2]|0;p=0-(0-(c[a+100>>2]|0)>>h)|0;c[f>>2]=(q|0)>(p|0)?q:p;g=c[g>>2]|0;h=0-(0-(c[a+104>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;n=13;break}gi(a,16,215368,i);e=-22;break}gi(a,16,215324,e);e=-22}else{f=1;n=13}while(0);if((n|0)==13){e=Jp(a,b)|0;if((e|0)>=0){if(j){e=c[j+20>>2]|0;if(!e)n=18;else e=Md[e&15](a,b)|0}else{c[a+768>>2]=c[a+112>>2];n=18}if((n|0)==18){e=Nd[c[a+400>>2]&15](a,b,d)|0;if((e|0)>=0){Kp(a,b);e=Lp(b)|0}}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+116>>2]&16|0)==0:0){c[b+68>>2]=c[a+92>>2];c[b+72>>2]=c[a+96>>2]}if((e|0)<0)mj(b)}}l=o;return e|0}function Jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+24|0;k=n+16|0;j=n+8|0;i=n;g=c[(c[a+28>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=Ck(g,c[166816+(d<<3)>>2]|0,h)|0;if(e|0){f=lk(b,c[166816+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}DZ(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){Np(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+584|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+316>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+320>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+324>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+328>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+332>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+112>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+188|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a};c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((Op(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;gi(a,24,241900,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+344>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+352>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+376|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+348>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;gi(a,16,215532,k);d=-38;break a}d=gk(d,e)|0;if((d|0)==(c[a+348>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{gi(a,16,215495,j);d=-22;break a}}else d=c[a+348>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);l=n;return d|0}function Kp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=$j(c[d>>2]|0)|0;d=Bj(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=215411;c[g+4>>2]=194262;c[g+8>>2]=1782;gi(0,0,229320,g);Tb()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)gi(a,16,215426,i);c[f>>2]=0;d=d+1|0}}while(0);l=j;return}function Lp(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=a+400|0;Ni(b);a=Zi(20)|0;c[d>>2]=a;do if(a){a=yj(a,20,17,0,1)|0;if(!a){ci(d);a=-12;break}else{c[b>>2]=a;a=0;break}}else a=-12;while(0);l=e;return a|0}function Mp(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=b;a=c[b+8>>2]|0;if(a|0)Sd[a&63](c[b+4>>2]|0);a=c[b+16>>2]|0;if(a|0)Sd[a&63](c[b+12>>2]|0);ci(d);l=e;return}function Np(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;a=Ck(a,13,e)|0;Qp(a,c[e>>2]|0,b+344|0)|0;l=d;return}function Op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0){d=(f|0)<(e|0);if((f|0)==0|(f|0)==(e|0))d=0;else{g=d?e:f;f=d?f:e;d=Pp(d?a:b,0,f,((f|0)<0)<<31>>31,g,((g|0)<0)<<31>>31,0)|0;f=y;d=(f|0)>0|(f|0)==0&d>>>0>0?0:-22}}else d=-22;return d|0}function Pp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=oZ(a|0,b|0,1,-2147483648)|0;i=y;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=pZ(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=Pp(j,y,c,d,e,f,g>>>1&1^g)|0;f=pZ(0,0,f|0,y|0)|0;return f|0}if((g|0)==5){g=sZ(e|0,f|0,2,0)|0;h=y}else{h=(g&1|0)==0;g=oZ(e|0,f|0,-1,-1)|0;g=h?0:g;h=h?0:y}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){l=xZ(c|0,d|0,32)|0;k=y;j=uZ(l|0,k|0,a|0,0)|0;d=y;i=uZ(c|0,0,b|0,0)|0;i=oZ(j|0,d|0,i|0,y|0)|0;d=y;c=uZ(c|0,0,a|0,0)|0;c=oZ(0,i|0,c|0,y|0)|0;j=y;a=uZ(l|0,k|0,b|0,0)|0;a=oZ(d|0,0,a|0,y|0)|0;a=oZ(a|0,y|0,(j>>>0>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=y;j=oZ(g|0,h|0,c|0,j|0)|0;c=y;b=oZ(a|0,b|0,(c>>>0>>0|(c|0)==(h|0)&j>>>0>>0)&1|0,0)|0;a=63;g=y;h=d;while(1){if((a|0)<=-1)break;d=yZ(j|0,c|0,a|0)|0;n=zZ(b|0,g|0,1)|0;m=y;n=d&1|n;d=zZ(i|0,h|0,1)|0;l=y;k=m>>>0>>0|(m|0)==(f|0)&n>>>0>>0;m=pZ(n|0,m|0,(k?0:e)|0,(k?0:f)|0)|0;a=a+-1|0;b=m;g=y;i=d|(k^1)&1;h=l}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=uZ(c|0,d|0,a|0,b|0)|0;a=oZ(g|0,h|0,a|0,y|0)|0;a=sZ(a|0,y|0,e|0,f|0)|0;b=y;break}i=sZ(a|0,b|0,e|0,f|0)|0;j=y;a=vZ(a|0,b|0,e|0,f|0)|0;a=uZ(a|0,y|0,c|0,d|0)|0;a=oZ(a|0,y|0,g|0,h|0)|0;a=sZ(a|0,y|0,e|0,f|0)|0;b=y;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=pZ(-1,2147483647,a|0,b|0)|0,n=sZ(n|0,y|0,c|0,d|0)|0,m=y,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=uZ(i|0,j|0,c|0,d|0)|0;a=oZ(a|0,b|0,n|0,y|0)|0;b=y}else{b=-2147483648;a=0}while(0);y=b;return a|0}function Qp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(YW(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=ok(d,e,c,0)|0;if((b|0)<0)break a;e=c+(YW(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function Rp(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;h=j+8|0;d=c[a+28216>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?75:68;g=23;break a}else{e=h+4|0;d=(d|0)==2?72:62;g=23;break a}}case 10:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?77:70;g=23;break a}else{e=h+4|0;d=(d|0)==2?66:64;g=23;break a}}case 12:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?137:133;g=23;break a}else{e=h+4|0;d=(d|0)==2?129:125;g=23;break a}}case 14:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?139:135;g=23;break a}else{e=h+4|0;d=(d|0)==2?131:127;g=23;break a}}case 8:{e=c[d+12>>2]|0;if((e|0)==3){d=c[a+4>>2]|0;if(!(c[d+324>>2]|0)){e=h+4|0;d=73;g=23;break a}else{e=h+4|0;d=(c[d+328>>2]|0)==2?14:5;g=23;break a}}d=a+4|0;f=c[d>>2]|0;if((e|0)==2){e=h+4|0;d=(c[f+328>>2]|0)==2?13:4;g=23;break a}e=c[(c[f+12>>2]|0)+24>>2]|0;if(!e){e=h+4|0;d=(c[f+328>>2]|0)==2?12:0;g=23}else{i=e;e=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;gi(d,16,215709,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=d;i=h;d=a+4|0;g=24}b:do if((g|0)==24){c[e>>2]=-1;g=c[d>>2]|0;h=g+112|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=_O(g,i)|0}while(0);l=j;return d|0}function Tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=uZ(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=y;e=c[b>>2]|0;b=c[a+4>>2]|0;a=uZ(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=pZ(h|0,d|0,a|0,y|0)|0;d=y;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=xZ(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;b=b|1}return b|0}function Up(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function Vp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=q+16|0;h=q;f=c[a+28216>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;o=c[a+25668>>2]|0;r=d+b|0;k=o-r|0;p=c[a+25672>>2]|0;g=f+e|0;j=p-g|0;if(o>>>0<=r>>>0){c[h>>2]=216267;c[h+4>>2]=203124;c[h+8>>2]=878;gi(0,0,229320,h);Tb()}if(p>>>0<=g>>>0){c[i>>2]=216321;c[i+4>>2]=203124;c[i+8>>2]=879;gi(0,0,229320,i);Tb()}g=a+29664|0;i=c[g>>2]|0;h=a+29668|0;if((((i|0)>0?(n=c[h>>2]|0,(e|d|0)==0&(n|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((n|0)>(j|0)|((i|0)>(k|0)|(n+15^j+15)>>>0>15)):0){h=n;g=i;f=p-n|0;e=0;d=0;b=o-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}r=c[a+4>>2]|0;c[r+100>>2]=o;c[r+104>>2]=p;c[r+92>>2]=g;c[r+96>>2]=h;c[a+25720>>2]=b;c[a+25716>>2]=d;c[a+25724>>2]=e;c[a+25728>>2]=f;l=q;return}function Wp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=p+32|0;k=p+24|0;g=p+16|0;f=p+8|0;e=c[a+28216>>2]|0;n=a+4|0;i=c[n>>2]|0;h=e+100|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];Xp(i,j)|0;Yp(c[(c[n>>2]|0)+112>>2]|0,a+25676|0,a+25680|0)|0;if(c[e+132>>2]|0){j=zZ(c[e+140>>2]|0,0,(c[a+25704>>2]|0)>>>0<44|0)|0;i=c[n>>2]|0;Zp(i+764|0,i+760|0,N(c[i+84>>2]|0,c[e+136>>2]|0)|0,0,j,y,1073741824,0)|0}hj(a);c[a+26384>>2]=0;c[a+29564>>2]=1;_p(a);b=$p(a)|0;a:do if((b|0)<0){gi(c[n>>2]|0,16,215682,p);o=15}else{b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[(c[n>>2]|0)+676>>2]=d;c[a+29596>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29592>>2]=i;c[a+25664>>2]=(d|0)>8&1;c[a+27048>>2]=i;c[a+27044>>2]=d;aq(a+16|0,d,i);bq(a+152|0,c[e+1188>>2]|0);cq(a+184|0,c[b>>2]|0);dq(a+25736|0,c[(c[n>>2]|0)+16>>2]|0,c[b>>2]|0,c[j>>2]|0);eq(a+8|0,c[b>>2]|0);if(!(c[(c[n>>2]|0)+696>>2]&2)){b=fq(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}gi(c[n>>2]|0,16,215735,g);o=15;break a}e=a+25632|0;f=a+25628|0;g=a+25732|0;h=a+27016|0;i=a+26400|0;j=a+26404|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}q=c[f>>2]|0;b=q+(d*34768|0)|0;c[b>>2]=a;r=N(c[h>>2]|0,d<<4)|0;c[q+(d*34768|0)+21704>>2]=(c[g>>2]|0)+r;c[q+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(r<<1);c[q+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(r<<1);b=fq(a,b)|0;if((b|0)<0)break;else d=d+1|0}gi(c[n>>2]|0,16,215735,k);o=15;break a}while(0);b=c[n>>2]|0;c[f>>2]=d;gi(b,16,215709,f);b=-1094995529;o=15}while(0);if((o|0)==15){hj(a);d=0}c[a+25692>>2]=d;l=p;return b|0}function Xp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=f+8|0;e=f;h=c[a+92>>2]|0;g=c[a+96>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=Op(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;gi(a,24,216238,e);c[a+188>>2]=0;c[a+192>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+188|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}l=f;return d|0}function Yp(a,b,e){a=a|0;b=b|0;e=e|0;a=Bj(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function Zp(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0;x=g^e;k=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=pZ(0,0,d|0,e|0)|0;j=k?d:j;k=k?e:y;m=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=pZ(0,0,f|0,g|0)|0;l=m?f:l;m=m?g:y;n=ZO(j,k,l,m)|0;o=y;if(!((n|0)==0&(o|0)==0)){d=sZ(j|0,k|0,n|0,o|0)|0;e=y;f=sZ(l|0,m|0,n|0,o|0)|0;g=y}w=(e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0;v=(g|0)>(i|0)|(g|0)==(i|0)&f>>>0>h>>>0;j=v|w;k=j?1:d;j=j?0:f;a:do if(!((f|0)==0&(g|0)==0|(v|w)^1)){w=0;v=1;while(1){m=sZ(d|0,e|0,f|0,g|0)|0;l=y;n=uZ(m|0,l|0,f|0,g|0)|0;n=pZ(d|0,e|0,n|0,y|0)|0;o=y;r=((k|0)<0)<<31>>31;p=uZ(m|0,l|0,k|0,r|0)|0;s=((w|0)<0)<<31>>31;p=oZ(p|0,y|0,w|0,s|0)|0;A=y;t=((j|0)<0)<<31>>31;q=uZ(m|0,l|0,j|0,t|0)|0;u=((v|0)<0)<<31>>31;q=oZ(q|0,y|0,v|0,u|0)|0;z=y;if((A|0)>(i|0)|(A|0)==(i|0)&p>>>0>h>>>0|((z|0)>(i|0)|(z|0)==(i|0)&q>>>0>h>>>0))break;if((n|0)==0&(o|0)==0){k=p;j=q;f=0;g=0;break a}else{e=g;d=f;v=j;w=k;k=p;j=q;f=n;g=o}}if(k){m=pZ(h|0,i|0,w|0,s|0)|0;m=sZ(m|0,y|0,k|0,r|0)|0;l=y}if(j){i=pZ(h|0,i|0,v|0,u|0)|0;i=sZ(i|0,y|0,j|0,t|0)|0;A=y;z=l>>>0>A>>>0|(l|0)==(A|0)&m>>>0>i>>>0;m=z?i:m;l=z?A:l}z=zZ(j|0,t|0,1)|0;z=uZ(z|0,y|0,m|0,l|0)|0;z=oZ(z|0,y|0,v|0,u|0)|0;z=uZ(z|0,y|0,f|0,g|0)|0;h=y;A=uZ(d|0,e|0,j|0,t|0)|0;i=y;if(h>>>0>i>>>0|(h|0)==(i|0)&z>>>0>A>>>0){j=uZ(m|0,l|0,j|0,t|0)|0;j=oZ(j|0,y|0,v|0,u|0)|0;k=uZ(m|0,l|0,k|0,r|0)|0;k=oZ(k|0,y|0,w|0,s|0)|0}}else{f=0;g=0}while(0);c[a>>2]=(x|0)<0?0-k|0:k;c[b>>2]=j;return (f|0)==0&(g|0)==0&1|0}function _p(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16){e=0;break}g=d[201216+e>>0]|0;a[b+26428+e>>0]=g<<2&12|g>>>2;g=d[215962+e>>0]|0;a[b+26572+e>>0]=g<<2&12|g>>>2;e=e+1|0}while(1){if((e|0)==64)break;g=d[201233+e>>0]|0;a[b+26444+e>>0]=g<<3&56|g>>>3;g=d[215979+e>>0]|0;a[b+26508+e>>0]=g<<3&56|g>>>3;g=d[216044+e>>0]|0;a[b+26588+e>>0]=g<<3&56|g>>>3;g=d[216109+e>>0]|0;a[b+26652+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26716|0;if(!(c[(c[b+28216>>2]|0)+16>>2]|0)){f=b+26428|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26732|0;f=b+26444|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26796|0;f=b+26508|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26860|0;f=b+26572|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26876|0;f=b+26588|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26940|0;f=b+26652|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{f=201216;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26732|0;f=201233;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26796|0;f=215979;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26860|0;f=215962;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26876|0;f=216044;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26940|0;f=216109;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0))}return}function $p(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+96|0;if((l|0)>=(m|0))W(96);t=x+80|0;s=x+72|0;r=x+64|0;q=x+56|0;n=x+48|0;i=x+40|0;g=x+32|0;f=x+24|0;e=x+16|0;d=x+8|0;u=a+27016|0;h=c[u>>2]|0;v=a+27008|0;p=N((c[v>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=N((b|0)>1?b:1,h<<1)|0;b=vj(h,8)|0;c[a+25732>>2]=b;a:do if(!b){gi(c[a+4>>2]|0,16,215759,x);w=29}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=Zi(p*48|0)|0;c[a+25972>>2]=k;o=(p|0)==0;if(!(o|(k|0)!=0)){gi(c[a+4>>2]|0,16,215759,d);w=29;break}d=Zi((c[u>>2]|0)+p<<1)|0;k=a+28220|0;c[k>>2]=d;if((d|0)==0?(c[u>>2]|0)+p&2147483647|0:0){gi(c[a+4>>2]|0,16,215759,e);w=29;break}d=p<<1;e=Zi(d)|0;c[a+26392>>2]=e;if(!((d|0)==0|(e|0)!=0)){gi(c[a+4>>2]|0,16,215759,f);w=29;break}f=Zi(p)|0;c[a+26396>>2]=f;if(!(o|(f|0)!=0)){gi(c[a+4>>2]|0,16,215759,g);w=29;break}g=vj(h,16)|0;d=a+26400|0;c[d>>2]=g;if(!g){gi(c[a+4>>2]|0,16,215759,i);w=29;break}i=vj(h,16)|0;b=a+26404|0;c[b>>2]=i;if(!i){gi(c[a+4>>2]|0,16,215759,n);w=29;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=p<<2;n=Zi(b)|0;c[a+26408>>2]=n;d=(b|0)==0;if(!(d|(n|0)!=0)){gi(c[a+4>>2]|0,16,215759,q);w=29;break}q=Zi(p)|0;c[a+26388>>2]=q;if(!(o|(q|0)!=0)){gi(c[a+4>>2]|0,16,215759,r);w=29;break}FZ(c[k>>2]|0,-1,(c[u>>2]|0)+p<<1|0)|0;c[a+26372>>2]=(c[k>>2]|0)+(c[u>>2]<<1<<1)+2;r=Zi(b)|0;h=a+26360|0;c[h>>2]=r;if(!(d|(r|0)!=0)){gi(c[a+4>>2]|0,16,215759,s);w=29;break}g=Zi(b)|0;c[a+26364>>2]=g;if(!(d|(g|0)!=0)){gi(c[a+4>>2]|0,16,215759,t);w=29;break}f=a+27012|0;e=a+26368|0;d=0;while(1){if((d|0)<(c[v>>2]|0))b=0;else{b=0;break a}while(1){if((b|0)>=(c[f>>2]|0))break;a=(N(c[u>>2]|0,d)|0)+b|0;t=(N(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=t;c[g+(a<<2)>>2]=((a|0)%(c[u>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((w|0)==29){hj(a);b=-12}l=x;return b|0}function aq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?9:8;c[a+124>>2]=h?11:10;a:do switch(b|0){case 9:{c[a+84>>2]=12;c[a+88>>2]=13;c[a+92>>2]=14;c[a+96>>2]=15;c[a+100>>2]=4;c[a+104>>2]=5;e=(d|0)<2;c[a+108>>2]=e?7:6;c[a+112>>2]=8;c[a+116>>2]=16;c[a+120>>2]=e?19:18;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=9;c[a+36>>2]=10;c[a+40>>2]=11;c[a+44>>2]=5;c[a+48>>2]=6;c[a+52>>2]=7;c[a+56>>2]=12;c[a+60>>2]=e?14:13;c[a+64>>2]=e?16:15;c[a+68>>2]=8;c[a+72>>2]=e?10:9;e=e?12:11;break}case 10:{c[a+84>>2]=17;c[a+88>>2]=18;c[a+92>>2]=19;c[a+96>>2]=20;c[a+100>>2]=17;c[a+104>>2]=18;e=(d|0)<2;c[a+108>>2]=e?20:19;c[a+112>>2]=21;c[a+116>>2]=21;c[a+120>>2]=e?21:20;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=22;c[a+36>>2]=23;c[a+40>>2]=24;c[a+44>>2]=13;c[a+48>>2]=14;c[a+52>>2]=15;c[a+56>>2]=25;c[a+60>>2]=e?27:26;c[a+64>>2]=e?29:28;c[a+68>>2]=16;c[a+72>>2]=e?18:17;e=e?20:19;break}case 12:{c[a+84>>2]=22;c[a+88>>2]=23;c[a+92>>2]=24;c[a+96>>2]=25;c[a+100>>2]=30;c[a+104>>2]=31;e=(d|0)<2;c[a+108>>2]=e?33:32;c[a+112>>2]=34;c[a+116>>2]=26;c[a+120>>2]=e?23:22;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=35;c[a+36>>2]=36;c[a+40>>2]=37;c[a+44>>2]=21;c[a+48>>2]=22;c[a+52>>2]=23;c[a+56>>2]=38;c[a+60>>2]=e?40:39;c[a+64>>2]=e?42:41;c[a+68>>2]=24;c[a+72>>2]=e?26:25;e=e?28:27;break}case 14:{c[a+84>>2]=27;c[a+88>>2]=28;c[a+92>>2]=29;c[a+96>>2]=30;c[a+100>>2]=43;c[a+104>>2]=44;e=(d|0)<2;c[a+108>>2]=e?46:45;c[a+112>>2]=47;c[a+116>>2]=31;c[a+120>>2]=e?25:24;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=48;c[a+36>>2]=49;c[a+40>>2]=50;c[a+44>>2]=29;c[a+48>>2]=30;c[a+52>>2]=31;c[a+56>>2]=51;c[a+60>>2]=e?53:52;c[a+64>>2]=e?55:54;c[a+68>>2]=32;c[a+72>>2]=e?34:33;e=e?36:35;break}default:if((b|0)<9){c[a+84>>2]=32;c[a+88>>2]=33;c[a+92>>2]=34;c[a+96>>2]=35;c[a+100>>2]=56;c[a+104>>2]=57;e=(d|0)<2;c[a+108>>2]=e?59:58;c[a+112>>2]=60;c[a+116>>2]=36;c[a+120>>2]=e?27:26;c[a>>2]=21;c[a+4>>2]=22;c[a+8>>2]=23;c[a+12>>2]=24;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=61;c[a+36>>2]=62;c[a+40>>2]=63;c[a+44>>2]=37;c[a+48>>2]=38;c[a+52>>2]=39;c[a+56>>2]=64;c[a+60>>2]=e?66:65;c[a+64>>2]=e?68:67;c[a+68>>2]=40;c[a+72>>2]=e?42:41;e=e?44:43;break a}else{c[f>>2]=215871;c[f+4>>2]=215884;c[f+8>>2]=150;gi(0,0,229320,f);Tb()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=10;l=g;return}function bq(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?26:25;c[a+4>>2]=b?28:27;c[a+8>>2]=b?30:29;c[a+12>>2]=b?32:31;c[a+16>>2]=b?34:33;c[a+20>>2]=b?36:35;c[a+24>>2]=b?38:37;c[a+28>>2]=b?40:39;return}function cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;switch(b|0){case 9:{b=101;d=105;e=109;f=113;g=102;h=106;i=110;j=114;k=103;l=107;m=111;n=115;o=104;p=108;q=112;r=116;s=133;t=137;u=141;v=145;w=134;x=138;y=142;z=146;A=135;B=139;C=143;D=147;E=136;F=140;G=144;H=148;I=117;J=121;K=125;L=129;M=118;N=122;O=126;P=130;Q=119;R=123;S=127;T=131;U=120;V=124;W=128;X=132;Y=37;Z=41;_=45;$=49;aa=38;ba=42;ca=46;da=50;ea=39;fa=43;ga=47;ha=51;ia=40;ja=44;ka=48;la=52;ma=85;na=89;oa=93;pa=97;qa=86;ra=90;sa=94;ta=98;ua=87;va=91;wa=95;xa=99;ya=88;za=92;Aa=96;Ba=100;Ca=69;Da=73;Ea=77;Fa=81;Ga=70;Ha=74;Ia=78;Ja=82;Ka=71;La=75;Ma=79;Na=83;Oa=72;Pa=76;Qa=80;Ra=84;Sa=53;Ta=57;Ua=61;Va=65;Wa=54;Xa=58;Ya=62;Za=66;_a=55;$a=59;ab=63;bb=67;cb=56;db=60;eb=64;fb=68;break}case 10:{b=325;d=329;e=333;f=337;g=326;h=330;i=334;j=338;k=327;l=331;m=335;n=339;o=328;p=332;q=336;r=340;s=357;t=361;u=365;v=369;w=358;x=362;y=366;z=370;A=359;B=363;C=367;D=371;E=360;F=364;G=368;H=372;I=341;J=345;K=349;L=353;M=342;N=346;O=350;P=354;Q=343;R=347;S=351;T=355;U=344;V=348;W=352;X=356;Y=261;Z=265;_=269;$=273;aa=262;ba=266;ca=270;da=274;ea=263;fa=267;ga=271;ha=275;ia=264;ja=268;ka=272;la=276;ma=309;na=313;oa=317;pa=321;qa=310;ra=314;sa=318;ta=322;ua=311;va=315;wa=319;xa=323;ya=312;za=316;Aa=320;Ba=324;Ca=293;Da=297;Ea=301;Fa=305;Ga=294;Ha=298;Ia=302;Ja=306;Ka=295;La=299;Ma=303;Na=307;Oa=296;Pa=300;Qa=304;Ra=308;Sa=277;Ta=281;Ua=285;Va=289;Wa=278;Xa=282;Ya=286;Za=290;_a=279;$a=283;ab=287;bb=291;cb=280;db=284;eb=288;fb=292;break}case 12:{b=437;d=441;e=445;f=449;g=438;h=442;i=446;j=450;k=439;l=443;m=447;n=451;o=440;p=444;q=448;r=452;s=469;t=473;u=477;v=481;w=470;x=474;y=478;z=482;A=471;B=475;C=479;D=483;E=472;F=476;G=480;H=484;I=453;J=457;K=461;L=465;M=454;N=458;O=462;P=466;Q=455;R=459;S=463;T=467;U=456;V=460;W=464;X=468;Y=373;Z=377;_=381;$=385;aa=374;ba=378;ca=382;da=386;ea=375;fa=379;ga=383;ha=387;ia=376;ja=380;ka=384;la=388;ma=421;na=425;oa=429;pa=433;qa=422;ra=426;sa=430;ta=434;ua=423;va=427;wa=431;xa=435;ya=424;za=428;Aa=432;Ba=436;Ca=405;Da=409;Ea=413;Fa=417;Ga=406;Ha=410;Ia=414;Ja=418;Ka=407;La=411;Ma=415;Na=419;Oa=408;Pa=412;Qa=416;Ra=420;Sa=389;Ta=393;Ua=397;Va=401;Wa=390;Xa=394;Ya=398;Za=402;_a=391;$a=395;ab=399;bb=403;cb=392;db=396;eb=400;fb=404;break}case 14:{b=549;d=553;e=557;f=561;g=550;h=554;i=558;j=562;k=551;l=555;m=559;n=563;o=552;p=556;q=560;r=564;s=581;t=585;u=589;v=593;w=582;x=586;y=590;z=594;A=583;B=587;C=591;D=595;E=584;F=588;G=592;H=596;I=565;J=569;K=573;L=577;M=566;N=570;O=574;P=578;Q=567;R=571;S=575;T=579;U=568;V=572;W=576;X=580;Y=485;Z=489;_=493;$=497;aa=486;ba=490;ca=494;da=498;ea=487;fa=491;ga=495;ha=499;ia=488;ja=492;ka=496;la=500;ma=533;na=537;oa=541;pa=545;qa=534;ra=538;sa=542;ta=546;ua=535;va=539;wa=543;xa=547;ya=536;za=540;Aa=544;Ba=548;Ca=517;Da=521;Ea=525;Fa=529;Ga=518;Ha=522;Ia=526;Ja=530;Ka=519;La=523;Ma=527;Na=531;Oa=520;Pa=524;Qa=528;Ra=532;Sa=501;Ta=505;Ua=509;Va=513;Wa=502;Xa=506;Ya=510;Za=514;_a=503;$a=507;ab=511;bb=515;cb=504;db=508;eb=512;fb=516;break}default:{b=213;d=217;e=221;f=225;g=214;h=218;i=222;j=226;k=215;l=219;m=223;n=227;o=216;p=220;q=224;r=228;s=245;t=249;u=253;v=257;w=246;x=250;y=254;z=258;A=247;B=251;C=255;D=259;E=248;F=252;G=256;H=260;I=229;J=233;K=237;L=241;M=230;N=234;O=238;P=242;Q=231;R=235;S=239;T=243;U=232;V=236;W=240;X=244;Y=149;Z=153;_=157;$=161;aa=150;ba=154;ca=158;da=162;ea=151;fa=155;ga=159;ha=163;ia=152;ja=156;ka=160;la=164;ma=197;na=201;oa=205;pa=209;qa=198;ra=202;sa=206;ta=210;ua=199;va=203;wa=207;xa=211;ya=200;za=204;Aa=208;Ba=212;Ca=181;Da=185;Ea=189;Fa=193;Ga=182;Ha=186;Ia=190;Ja=194;Ka=183;La=187;Ma=191;Na=195;Oa=184;Pa=188;Qa=192;Ra=196;Sa=165;Ta=169;Ua=173;Va=177;Wa=166;Xa=170;Ya=174;Za=178;_a=167;$a=171;ab=175;bb=179;cb=168;db=172;eb=176;fb=180}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function dq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;switch(d|0){case 9:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=611;g=610}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=597;c[a+12>>2]=(b|0)==23?599:598;c[a+16>>2]=600;c[a+20>>2]=601;c[a+24>>2]=602;c[a+28>>2]=d?604:603;c[a+32>>2]=605;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=608;c[a+52>>2]=609;c[a+40>>2]=610;d=14;f=611;break}default:{c[d>>2]=606;d=10;f=615}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=616;i=10}}else{c[a>>2]=610;c[a+4>>2]=611;c[a+8>>2]=597;c[a+12>>2]=612;c[a+16>>2]=600;c[a+20>>2]=601;c[a+24>>2]=602;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=606;c[a+40>>2]=615;c[a+44>>2]=616;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=10}if((i|0)==10)c[a+(d<<2)>>2]=f;c[a+60>>2]=45;c[a+64>>2]=46;c[a+68>>2]=47;c[a+72>>2]=48;c[a+76>>2]=49;c[a+80>>2]=50;c[a+84>>2]=51;c[a+88>>2]=52;c[a+92>>2]=53;c[a+96>>2]=54;c[a+100>>2]=55;c[a+104>>2]=56;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?29:28;c[a+112>>2]=e?31:30;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?33:32}a:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break a}c[a+136>>2]=50;d=8;f=175;i=20;break}default:if(e){c[d>>2]=35;c[a+124>>2]=36;c[a+128>>2]=37;c[a+136>>2]=38;c[a+140>>2]=39;c[a+144>>2]=40;d=10;f=173;i=20;break a}else{c[d>>2]=41;c[a+124>>2]=42;c[a+128>>2]=43;c[a+136>>2]=44;c[a+140>>2]=45;c[a+144>>2]=46;d=10;f=174;i=20;break a}}while(0);if((i|0)==20)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?52:51;c[a+152>>2]=53;c[a+160>>2]=54;c[a+156>>2]=55;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=57;d=8;f=178;break}default:{d=3;f=179}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=58;c[a+172>>2]=59;c[a+176>>2]=60;c[a+188>>2]=619;c[a+192>>2]=620;c[a+196>>2]=621;c[a+200>>2]=622;c[a+204>>2]=69;c[a+208>>2]=70;f=126;g=125;h=e?60:59;d=e?58:57;break}case 10:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=634;g=633}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=623;c[a+12>>2]=(b|0)==23?599:624;c[a+16>>2]=625;c[a+20>>2]=626;c[a+24>>2]=627;c[a+28>>2]=d?604:628;c[a+32>>2]=629;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=631;c[a+52>>2]=632;c[a+40>>2]=633;d=14;f=634;break}default:{c[d>>2]=630;d=10;f=635}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=636;i=34}}else{c[a>>2]=633;c[a+4>>2]=634;c[a+8>>2]=623;c[a+12>>2]=612;c[a+16>>2]=625;c[a+20>>2]=626;c[a+24>>2]=627;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=630;c[a+40>>2]=635;c[a+44>>2]=636;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=34}if((i|0)==34)c[a+(d<<2)>>2]=f;c[a+60>>2]=61;c[a+64>>2]=62;c[a+68>>2]=63;c[a+72>>2]=64;c[a+76>>2]=65;c[a+80>>2]=66;c[a+84>>2]=67;c[a+88>>2]=68;c[a+92>>2]=69;c[a+96>>2]=70;c[a+100>>2]=71;c[a+104>>2]=72;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?62:61;c[a+112>>2]=e?64:63;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?66:65}b:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break b}c[a+136>>2]=79;d=8;f=182;i=44;break}default:if(e){c[d>>2]=67;c[a+124>>2]=68;c[a+128>>2]=69;c[a+136>>2]=70;c[a+140>>2]=71;c[a+144>>2]=72;d=10;f=180;i=44;break b}else{c[d>>2]=73;c[a+124>>2]=74;c[a+128>>2]=75;c[a+136>>2]=76;c[a+140>>2]=77;c[a+144>>2]=78;d=10;f=181;i=44;break b}}while(0);if((i|0)==44)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?81:80;c[a+152>>2]=82;c[a+160>>2]=83;c[a+156>>2]=84;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=85;d=8;f=183;break}default:{d=3;f=184}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=86;c[a+172>>2]=87;c[a+176>>2]=88;c[a+188>>2]=637;c[a+192>>2]=638;c[a+196>>2]=639;c[a+200>>2]=640;c[a+204>>2]=71;c[a+208>>2]=72;f=128;g=127;h=e?76:75;d=e?74:73;break}case 12:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=652;g=651}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=641;c[a+12>>2]=(b|0)==23?599:642;c[a+16>>2]=643;c[a+20>>2]=644;c[a+24>>2]=645;c[a+28>>2]=d?604:646;c[a+32>>2]=647;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=649;c[a+52>>2]=650;c[a+40>>2]=651;d=14;f=652;break}default:{c[d>>2]=648;d=10;f=653}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=654;i=58}}else{c[a>>2]=651;c[a+4>>2]=652;c[a+8>>2]=641;c[a+12>>2]=612;c[a+16>>2]=643;c[a+20>>2]=644;c[a+24>>2]=645;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=648;c[a+40>>2]=653;c[a+44>>2]=654;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=58}if((i|0)==58)c[a+(d<<2)>>2]=f;c[a+60>>2]=77;c[a+64>>2]=78;c[a+68>>2]=79;c[a+72>>2]=80;c[a+76>>2]=81;c[a+80>>2]=82;c[a+84>>2]=83;c[a+88>>2]=84;c[a+92>>2]=85;c[a+96>>2]=86;c[a+100>>2]=87;c[a+104>>2]=88;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?90:89;c[a+112>>2]=e?92:91;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?94:93}c:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break c}c[a+136>>2]=107;d=8;f=187;i=68;break}default:if(e){c[d>>2]=95;c[a+124>>2]=96;c[a+128>>2]=97;c[a+136>>2]=98;c[a+140>>2]=99;c[a+144>>2]=100;d=10;f=185;i=68;break c}else{c[d>>2]=101;c[a+124>>2]=102;c[a+128>>2]=103;c[a+136>>2]=104;c[a+140>>2]=105;c[a+144>>2]=106;d=10;f=186;i=68;break c}}while(0);if((i|0)==68)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?109:108;c[a+152>>2]=110;c[a+160>>2]=111;c[a+156>>2]=112;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=113;d=8;f=188;break}default:{d=3;f=189}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=114;c[a+172>>2]=115;c[a+176>>2]=116;c[a+188>>2]=655;c[a+192>>2]=656;c[a+196>>2]=657;c[a+200>>2]=658;c[a+204>>2]=73;c[a+208>>2]=74;f=130;g=129;h=e?92:91;d=e?90:89;break}case 14:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=670;g=669}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=659;c[a+12>>2]=(b|0)==23?599:660;c[a+16>>2]=661;c[a+20>>2]=662;c[a+24>>2]=663;c[a+28>>2]=d?604:664;c[a+32>>2]=665;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=667;c[a+52>>2]=668;c[a+40>>2]=669;d=14;f=670;break}default:{c[d>>2]=666;d=10;f=671}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=672;i=82}}else{c[a>>2]=669;c[a+4>>2]=670;c[a+8>>2]=659;c[a+12>>2]=612;c[a+16>>2]=661;c[a+20>>2]=662;c[a+24>>2]=663;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=666;c[a+40>>2]=671;c[a+44>>2]=672;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=82}if((i|0)==82)c[a+(d<<2)>>2]=f;c[a+60>>2]=93;c[a+64>>2]=94;c[a+68>>2]=95;c[a+72>>2]=96;c[a+76>>2]=97;c[a+80>>2]=98;c[a+84>>2]=99;c[a+88>>2]=100;c[a+92>>2]=101;c[a+96>>2]=102;c[a+100>>2]=103;c[a+104>>2]=104;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?118:117;c[a+112>>2]=e?120:119;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?122:121}d:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break d}c[a+136>>2]=135;d=8;f=192;i=92;break}default:if(e){c[d>>2]=123;c[a+124>>2]=124;c[a+128>>2]=125;c[a+136>>2]=126;c[a+140>>2]=127;c[a+144>>2]=128;d=10;f=190;i=92;break d}else{c[d>>2]=129;c[a+124>>2]=130;c[a+128>>2]=131;c[a+136>>2]=132;c[a+140>>2]=133;c[a+144>>2]=134;d=10;f=191;i=92;break d}}while(0);if((i|0)==92)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?137:136;c[a+152>>2]=138;c[a+160>>2]=139;c[a+156>>2]=140;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=141;d=8;f=193;break}default:{d=3;f=194}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=142;c[a+172>>2]=143;c[a+176>>2]=144;c[a+188>>2]=673;c[a+192>>2]=674;c[a+196>>2]=675;c[a+200>>2]=676;c[a+204>>2]=75;c[a+208>>2]=76;f=132;g=131;h=e?108:107;d=e?106:105;break}default:{if((d|0)>=9){c[f>>2]=215871;c[f+4>>2]=215849;c[f+8>>2]=590;gi(0,0,229320,f);Tb()}if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=688;g=687}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=677;c[a+12>>2]=(b|0)==23?599:678;c[a+16>>2]=679;c[a+20>>2]=680;c[a+24>>2]=681;c[a+28>>2]=d?604:682;c[a+32>>2]=683;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=685;c[a+52>>2]=686;c[a+40>>2]=687;d=14;f=688;break}default:{c[d>>2]=684;d=10;f=689}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=690;i=108}}else{c[a>>2]=687;c[a+4>>2]=688;c[a+8>>2]=677;c[a+12>>2]=612;c[a+16>>2]=679;c[a+20>>2]=680;c[a+24>>2]=681;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=684;c[a+40>>2]=689;c[a+44>>2]=690;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=108}if((i|0)==108)c[a+(d<<2)>>2]=f;c[a+60>>2]=109;c[a+64>>2]=110;c[a+68>>2]=111;c[a+72>>2]=112;c[a+76>>2]=113;c[a+80>>2]=114;c[a+84>>2]=115;c[a+88>>2]=116;c[a+92>>2]=117;c[a+96>>2]=118;c[a+100>>2]=119;c[a+104>>2]=120;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?146:145;c[a+112>>2]=e?148:147;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?150:149}e:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break e}c[a+136>>2]=163;d=8;f=197;i=118;break}default:if(e){c[d>>2]=151;c[a+124>>2]=152;c[a+128>>2]=153;c[a+136>>2]=154;c[a+140>>2]=155;c[a+144>>2]=156;d=10;f=195;i=118;break e}else{c[d>>2]=157;c[a+124>>2]=158;c[a+128>>2]=159;c[a+136>>2]=160;c[a+140>>2]=161;c[a+144>>2]=162;d=10;f=196;i=118;break e}}while(0);if((i|0)==118)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?165:164;c[a+152>>2]=166;c[a+160>>2]=167;c[a+156>>2]=168;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=169;d=8;f=198;break}default:{d=3;f=199}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=170;c[a+172>>2]=171;c[a+176>>2]=172;c[a+188>>2]=691;c[a+192>>2]=692;c[a+196>>2]=693;c[a+200>>2]=694;c[a+204>>2]=77;c[a+208>>2]=78;f=134;g=133;h=e?124:123;d=e?122:121}}c[a+220>>2]=d;c[a+216>>2]=h;c[a+232>>2]=g;c[a+228>>2]=f;l=j;return}function eq(a,b){a=a|0;b=b|0;c[a+4>>2]=698;c[a>>2]=(b|0)<9?2:1;return}function fq(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+32|0;if((l|0)>=(m|0))W(32);v=x+24|0;p=x+16|0;o=x+8|0;g=x;f=e+24|0;k=d+27008|0;r=c[k>>2]|0;t=d+27016|0;w=c[t>>2]|0;n=N(w,r)|0;u=d+27012|0;q=N(c[u>>2]<<1|1,r<<1|1)|0;r=N(w,r+1|0)|0;w=q+(r<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){s=d+4|0;c[f>>2]=c[s>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27020|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[u>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[t>>2];c[e+592>>2]=h<<1|1;j=Zi((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){gi(c[s>>2]|0,16,215759,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[u>>2]|0;i=N(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;c[j+(i+f<<2)>>2]=(N(c[t>>2]|0,d)|0)+f;f=f+1|0}d=d+1|0}h=N(c[t>>2]|0,g+-1|0)|0;i=c[u>>2]|0;c[j+((N(i,g)|0)<<2)>>2]=h+i;j=Zi(n)|0;c[e+604>>2]=j;if(!((n|0)==0|(j|0)!=0)){gi(c[s>>2]|0,16,215759,o);d=-12;break}o=oi(N((c[k>>2]|0)*17|0,c[t>>2]|0)|0)|0;c[e+608>>2]=o;if((o|0)==0?N((c[k>>2]|0)*17|0,c[t>>2]|0)|0:0){gi(c[s>>2]|0,16,215759,p);d=-12;break}p=w<<1;f=Zi(p)|0;c[e+27784>>2]=f;if(!((p|0)==0|(f|0)!=0)){gi(c[s>>2]|0,16,215759,v);d=-12;break}c[e+612>>2]=f+(c[u>>2]<<1<<1)+4;d=f+(q<<1)+(c[t>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(r<<1);d=0;while(1){if((d|0)>=(w|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{FZ(f|0,0,808)|0;d=0}while(0);l=x;return d|0}function gq(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q+8|0;j=q;o=a+25628|0;k=c[o>>2]|0;c[k+21788>>2]=h;c[k+21792>>2]=i;n=k+21796|0;c[n>>2]=(N(c[a+27016>>2]|0,i)|0)+h;e=k+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[k+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[k+23416+(e*40|0)>>2]|0)){gi(c[a+4>>2]|0,48,215784,j);e=0}if((c[k+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[n>>2]<<2)|0;p=e*257&65535;b[d>>1]=p;b[d+2>>1]=p;d=N(e,16843009)|0;c[k+28284>>2]=d;c[k+28292>>2]=d;c[k+28300>>2]=d;c[k+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[k+28e3>>2]=g;c[k+28004>>2]=g;c[k+28008>>2]=g;c[k+28012>>2]=g;c[k+28032>>2]=g;c[k+28036>>2]=g;c[k+28040>>2]=g;c[k+28044>>2]=g;c[k+28064>>2]=g;c[k+28068>>2]=g;c[k+28072>>2]=g;c[k+28076>>2]=g;c[k+28096>>2]=g;c[k+28100>>2]=g;c[k+28104>>2]=g;c[k+28108>>2]=g;c[k+21828>>2]=0;c[k+21832>>2]=0;Gm(a,c[o>>2]|0)}else gi(c[a+4>>2]|0,48,215830,p);l=q;return}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return}function iq(b,c,d,e,f,g,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(N(c,e)|0))|0;k=p+(N(c,d)|0)|0;h=b+p|0;l=0;while(1){if((l|0)>=(c|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((N(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if((c|0)>=(p|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function jq(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(N(c,e)|0))|0;j=p-q<<1;k=(N(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if((l|0)>=(c|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;DZ(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((N(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if((c|0)>=(q|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function lq(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=d[a+(0-e)>>0]|0;h=d[a+(1-e)>>0]|0;g=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;b=(i+2+(h<<1)+g|0)>>>2<<8|((d[a+~e>>0]|0)+2+(i<<1)+h|0)>>>2|(h+2+(g<<1)+f|0)>>>2<<16|(g+2+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function mq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=uZ(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=uZ(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function nq(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d[a+-1>>0]|0;i=d[a+(e+-1)>>0]|0;h=e<<1;g=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;c[a>>2]=N(((d[a+~e>>0]|0)+2+(j<<1)+i|0)>>>2,16843009)|0;c[a+e>>2]=N((j+2+(i<<1)+g|0)>>>2,16843009)|0;c[a+h>>2]=N((i+2+(g<<1)+f|0)>>>2,16843009)|0;c[a+b>>2]=N((g+2+f+(f<<1)|0)>>>2,16843009)|0;return}function oq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function pq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return} -function FT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;j=n+8|0;i=j+4|0;e=0;a:while(1){e=Qi(a,e)|0;if(!e)break;g=a+(c[e+8>>2]|0)|0;f=c[e+40>>2]|0;if(!((f&b|0)==(d|0)&(f&128|0)==0))continue;f=c[e+12>>2]|0;switch(f|0){case 8:case 10:continue a;case 13:case 12:case 17:case 15:case 9:case 2:case 1:case 0:case 18:{f=e+16|0;xS(a,e,g,1.0,1,c[f>>2]|0,c[f+4>>2]|0)|0;continue a}case 4:case 3:{xS(a,e,g,+h[e+16>>3],1,1,0)|0;continue a}case 6:{XS(j,+h[e+16>>3],2147483647);f=c[j>>2]|0;xS(a,e,g,1.0,c[i>>2]|0,f,((f|0)<0)<<31>>31)|0;continue a}case 16:{mT(a,c[e+16>>2]|0,g)|0;continue a}case 5:{fT(c[e+16>>2]|0,g)|0;continue a}case 11:{hT(a,c[e+16>>2]|0,g)|0;continue a}case 14:{iT(a,c[e+16>>2]|0,g)|0;continue a}case 7:{gT(c[e+16>>2]|0,g)|0;continue a}default:{g=c[e>>2]|0;c[k>>2]=f;c[k+4>>2]=g;gi(a,48,229018,k);continue a}}}l=n;return}function GT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=nk(c[b>>2]|0,332204,f,2)|0;if(!f){d=7;break}h=f+4|0;e=dT(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=ok(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=6;break}}if((d|0)==6){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;gi(a,16,229069,i);Ri(g);break}else if((d|0)==7){Ri(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);l=j;return e|0}function HT(a,b){a=a|0;b=b|0;return GT(a,b,0)|0}function IT(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[163720+(a*20|0)+16>>2]|0}else a=-1;return a|0}function JT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=o;if((f|0)<=-1){c[g>>2]=229107;c[g+4>>2]=229123;c[g+8>>2]=102;gi(0,0,229320,g);Tb()}if(!f){f=ZS()|0;f=(f|0)>1?f+1|0:1}k=(e|0)==0;j=f+(k<<31>>31)|0;n=Zi(120)|0;c[a>>2]=n;a:do if(!n)f=-12;else{if(j|0?(i=cT(j,88)|0,c[n>>2]=i,(i|0)==0):0){ci(a);f=-12;break}c[n+108>>2]=b;c[n+112>>2]=d;c[n+116>>2]=e;b=n+4|0;c[b>>2]=f;g=n+8|0;c[n+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;Cc(n+24|0,0)|0;uc(n+52|0,0)|0;c[n+100>>2]=0;g=0;while(1){if((g|0)>=(j|0))break a;p=c[n>>2]|0;i=p+(g*88|0)|0;c[i>>2]=n;d=p+(g*88|0)+4|0;Cc(d|0,0)|0;e=p+(g*88|0)+32|0;uc(e|0,0)|0;HZ(d|0)|0;h=p+(g*88|0)+84|0;c[h>>2]=0;i=xc(p+(g*88|0)+80|0,0,22,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;wc(e|0,d|0)|0}IZ(d|0)|0;g=g+1|0}c[b>>2]=g+(k&1);IZ(d|0)|0;tc(e|0)|0;Bc(d|0)|0;LT(a);f=0-i|0}while(0);l=o;return f|0}function KT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;HZ(h|0)|0;i=a+32|0;vc(i|0)|0;j=g+104|0;b=a+84|0;d=g+24|0;e=g+100|0;f=g+52|0;while(1){c[b>>2]=1;a=1;while(1){if(!a)break;wc(i|0,h|0)|0;a=c[b>>2]|0}if(c[j>>2]|0)break;if(!(MT(g)|0))continue;HZ(d|0)|0;c[e>>2]=1;vc(f|0)|0;IZ(d|0)|0}IZ(h|0)|0;return 0}function LT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(e=c[a>>2]|0,e|0):0){d=(c[e+4>>2]|0)+(((c[e+116>>2]|0)==0)<<31>>31)|0;c[e+104>>2]=1;b=0;while(1){if((b|0)>=(d|0)){b=0;break}g=c[e>>2]|0;f=g+(b*88|0)+4|0;HZ(f|0)|0;c[g+(b*88|0)+84>>2]=0;vc(g+(b*88|0)+32|0)|0;IZ(f|0)|0;b=b+1|0}while(1){if((b|0)>=(d|0))break;g=c[e>>2]|0;zc(c[g+(b*88|0)+80>>2]|0,0)|0;tc(g+(b*88|0)+32|0)|0;Bc(g+(b*88|0)+4|0)|0;b=b+1|0}tc(e+52|0)|0;Bc(e+24|0)|0;ci(e);ci(a)}return}function MT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{Wd[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0>>0);return (a|0)==(d+-1+e|0)|0}function NT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;if((b|0)<=0){c[e>>2]=229147;c[e+4>>2]=229123;c[e+8>>2]=168;gi(0,0,229320,e);Tb()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;HZ(i|0)|0;c[j+(e*88|0)+84>>2]=0;vc(j+(e*88|0)+32|0)|0;IZ(i|0)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(MT(a)|0))g=9}else{Sd[b&63](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;HZ(e|0)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;wc(b|0,e|0)|0}c[d>>2]=0;IZ(e|0)|0}l=h;return}function OT(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[169664+(d<<2)>>2]|0;Dc(255312,4)|0;if(!d)c[a>>2]=1;return b|0}function PT(){var a=0,b=0;a=0;while(1){b=c[169664+(a<<2)>>2]|0;if(a|0)break;a=c[b+76>>2]|0;if(!a){a=1;continue}Sd[a&63](b);a=1}return}function QT(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a=0;while(1){d=OT(b)|0;if(!d)break;if(!a){a=d;continue}c[a+60>>2]=d;a=d}l=e;return}function RT(a){a=a|0;Dc(255316,5)|0;if(!a)a=163548;else a=c[a+60>>2]|0;return a|0}function ST(a){a=a|0;return UT(a,23)|0}function TT(a){a=a|0;if(a)if((c[a+84>>2]|0)==0?(c[a+88>>2]|0)==0:0)a=(c[a+100>>2]|0)!=0&1;else a=1;else a=0;return a|0}function UT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;c[f>>2]=0;d=VT(a)|0;a=0;a:while(1){while(1){e=OT(f)|0;if(!e)break a;if(!(Ld[b&31](e)|0))continue;if((c[e+12>>2]|0)==(d|0))break}if(a|0?1:(c[e+16>>2]&512|0)==0){a=e;break}else a=e}l=g;return a|0}function VT(a){a=a|0;return a|0}function WT(a){a=a|0;return UT(a,24)|0}function XT(a){a=a|0;if(a)if(!(c[a+92>>2]|0))a=(c[a+108>>2]|0)!=0&1;else a=1;else a=0;return a|0}function YT(a){a=a|0;var b=0;b=oi(896)|0;if(b){if((hU(b,a)|0)<0){di(b);b=0}}else b=0;return b|0}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(_T(a)|0){f=a+28|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if(c[b+20>>2]|0)$T(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+96>>2]|0,d|0):0)Ld[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;ci(b+44|0);Rj((c[f>>2]|0)+12|0);Rj((c[f>>2]|0)+100|0);Rj((c[f>>2]|0)+76|0);Ii((c[f>>2]|0)+68|0);Ii((c[f>>2]|0)+40|0);Ii((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;ij(e+(b<<2)|0);b=b+1|0}ci((c[f>>2]|0)+16|0);b=c[a+592>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Ld[g&31](a)|0;ci((c[f>>2]|0)+60|0);aU(a);ci(f)}d=a+856|0;e=a+852|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;ci((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}ci(e);c[d>>2]=0;Ni(a+860|0);Ni(a+880|0);d=a+24|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)Hi(e);Hi(a);ci(d);if(TT(c[b>>2]|0)|0){ci(a+68|0);Rj(a+684|0)}c[b>>2]=0;c[a+696>>2]=0}return 0}function _T(a){a=a|0;return (c[a+28>>2]|0)!=0|0}function $T(a){a=a|0;if(!(c[a+696>>2]&1))cU(a);else bU(a,c[a+688>>2]|0);return}function aU(a){a=a|0;var b=0,d=0;d=c[a+28>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;Gi((c[d>>2]|0)+(a<<2)|0);a=a+1|0}ci(d);c[b>>2]=0;return}function bU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=r;k=a+28|0;n=c[(c[k>>2]|0)+20>>2]|0;p=a+12|0;e=c[p>>2]|0;dU(n,b);f=n+4|0;g=c[f>>2]|0;if((g|0?(d=c[n>>2]|0,(g|0)!=(d|0)):0)?(eU(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){gi(a,16,229159,h);h=c[(c[(c[n>>2]|0)+212>>2]|0)+28>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+28>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+96|0;e=0;while(1){if((e|0)>=(b|0)){d=0;break}g=c[n>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;HZ(d|0)|0;c[g+(e*352|0)+332>>2]=1;vc(g+(e*352|0)+12|0)|0;IZ(d|0)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)zc(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Ld[d&31](i)|0;fU(h);Rj(g+(e*352|0)+288|0);e=e+1|0}while(1){if((d|0)>=(b|0))break;e=c[n>>2]|0;Bc(e+(d*352|0)+156|0)|0;Bc(e+(d*352|0)+184|0)|0;tc(e+(d*352|0)+12|0)|0;tc(e+(d*352|0)+60|0)|0;tc(e+(d*352|0)+108|0)|0;Li(e+(d*352|0)+216|0);ci(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){ci(f+24|0);ci((c[e>>2]|0)+184|0);o=17}}else o=17;if((o|0)==17?(o=0,j=c[e>>2]|0,j|0):0){ci(j+28|0);Ni((c[e>>2]|0)+860|0)}ci(e);d=d+1|0}ci(n);Bc(n+8|0)|0;Bc(n+36|0)|0;Bc(n+64|0)|0;tc(n+92|0)|0;ci((c[k>>2]|0)+20|0);d=c[a+24>>2]|0;if((d|0?(q=c[p>>2]|0,q|0):0)?c[q+44>>2]|0:0)Hi(d);c[p>>2]=0;l=r;return}function cU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+28|0;d=c[(c[b>>2]|0)+20>>2]|0;LT(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;Bc((c[f>>2]|0)+(a*28|0)|0)|0;tc((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}ci(d+28|0);ci(f);ci(g);ci((c[b>>2]|0)+20|0);return}function dU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;gU(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;HZ(g|0)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}IZ(g|0)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}fo(a);return}function eU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;do if((a|0)==(b|0))k=10;else{if((d|0)==0?c[(c[b+780>>2]|0)+16>>2]&1|0:0){k=12;break}e=b+76|0;f=c[e+4>>2]|0;g=a+76|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+760|0;f=c[g+4>>2]|0;e=a+760|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+92>>2]=c[b+92>>2];c[a+96>>2]=c[b+96>>2];c[a+112>>2]=c[b+112>>2];c[a+768>>2]=c[b+768>>2];c[a+100>>2]=c[b+100>>2];c[a+104>>2]=c[b+104>>2];c[a+140>>2]=c[b+140>>2];c[a+668>>2]=c[b+668>>2];c[a+672>>2]=c[b+672>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+188|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+716>>2]=c[b+716>>2];c[a+720>>2]=c[b+720>>2];c[a+676>>2]=c[b+676>>2];c[a+84>>2]=c[b+84>>2];c[a+316>>2]=c[b+316>>2];c[a+320>>2]=c[b+320>>2];c[a+324>>2]=c[b+324>>2];c[a+328>>2]=c[b+328>>2];c[a+332>>2]=c[b+332>>2];c[a+592>>2]=c[b+592>>2];c[a+596>>2]=c[b+596>>2];c[a+348>>2]=c[b+348>>2];c[a+344>>2]=c[b+344>>2];c[a+352>>2]=c[b+352>>2];g=b+376|0;f=c[g+4>>2]|0;e=a+376|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+28>>2]|0)+60>>2]=c[(c[b+28>>2]|0)+60>>2];e=a+860|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+860|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(Ni(e),j=c[h>>2]|0,j|0):0)?(j=Pj(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+884>>2]=c[b+884>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+88>>2]=(c[b+688>>2]|0)+-1;c[a+684>>2]=c[b+684>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+68>>2]|0;if(!e)e=0;else e=Md[e&15](a,b)|0}return e|0}function fU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}HZ(d|0)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*408|0)|0;c[j+(i*408|0)+64>>2]=h;mj(h);IZ(d|0)|0}if((a|0)==4){c[f>>2]=229187;c[f+4>>2]=229276;c[f+8>>2]=371;gi(0,0,229320,f);Tb()}else if((a|0)==6){l=g;return}}function gU(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=a+64|0;HZ(b|0)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=229303;c[e+4>>2]=229276;c[e+8>>2]=155;gi(0,0,229320,e);Tb()}else{c[d>>2]=0;GZ(a+92|0)|0;IZ(b|0)|0;l=f;return}}function hU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;FZ(a|0,0,896)|0;c[a>>2]=169672;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+16>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;FT(a,d,d);c[a+76>>2]=0;c[a+80>>2]=1;c[a+760>>2]=0;c[a+764>>2]=1;c[a+772>>2]=0;c[a+776>>2]=1;c[a+400>>2]=12;c[a+120>>2]=11;c[a+704>>2]=4;c[a+708>>2]=41;c[a+188>>2]=0;c[a+192>>2]=1;c[a+112>>2]=-1;c[a+768>>2]=-1;c[a+352>>2]=-1;f=a+584|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+56>>2]|0;if(e|0){f=a+24|0;d=c[f>>2]|0;if(!d){d=Zi(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;ET(c[f>>2]|0)}}d=c[b+72>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((dT(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=229350;c[h+4>>2]=229359;c[h+8>>2]=142;gi(0,0,229320,h);Tb()}else g=0}else g=0;while(0);l=i;return g|0}function iU(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(N(h,g)|0)|0;i=Md[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function jU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=Od[b&1](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function kU(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=240471;return b|0}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+24>>2]|0,(d|0)!=0):0))d=0;return d|0}function mU(a){a=a|0;var b=0;a:do if(!a)a=0;else{b=0;while(1){b=RT(b)|0;if(!b){a=0;break a}if((c[b+44>>2]|0)==(a|0)){a=b;break}}}while(0);do{a=RT(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function nU(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+92>>2]|0)!=0:0)a=6;else a=5;return a|0}function oU(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483582){e=pS(b,d+64|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function pU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;di(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=24){a=ni(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function qU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(d>>>0<=2147483583?(e=Zi(d+64|0)|0,c[f>>2]=e,(e|0)!=0):0){if((pU(a,b,e,d)|0)<0){ci(f);e=0}}else e=0;l=g;return e|0}function rU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];c[a+40>>2]=0;c[a+44>>2]=0;h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=qU(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}DZ(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){Mi(a);b=-12}return b|0}function sU(a,b){a=a|0;b=b|0;var d=0,e=0;d=rU(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=oU(a,c[e>>2]|0)|0;if((d|0)<0)b=10;else{d=c[e>>2]|0;if(d|0)DZ(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;d=(c[a>>2]|0)+4|0;b=9}}else{e=Pj(d)|0;c[a>>2]=e;if(!e){d=-12;b=10}else{e=b+28|0;d=b+24|0;b=9}}if((b|0)==9){c[a+24>>2]=c[d>>2];c[a+28>>2]=c[e>>2];d=0;break}else if((b|0)==10){Mi(a);break}}while(0);return d|0}function tU(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[169716+(d<<2)>>2]|0;if(!d)c[a>>2]=1;return b|0}function uU(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;do{b=tU(d)|0;if(!b){b=0;break}}while((UV(c[b>>2]|0,a)|0)!=0);l=e;return b|0}function vU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=Zi(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=169724;c[e+4>>2]=a;f=e+16|0;c[f>>2]=xU()|0;k=xU()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=Zi(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=YR()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){ET(g);d=c[a+12>>2]|0;if(d|0){f=Zi(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;ET(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);Gi(h);d=-12}while(0);l=j;return d|0}function wU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;Ki(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+16>>2];c[a+8>>2]=c[b+20>>2];g=b+40|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+672>>2];c[a+36>>2]=c[b+676>>2];c[a+40>>2]=c[b+716>>2];c[a+44>>2]=c[b+720>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+112>>2];c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];c[a+64>>2]=c[b+340>>2];c[a+68>>2]=c[b+328>>2];c[a+72>>2]=c[b+316>>2];c[a+76>>2]=c[b+320>>2];c[a+80>>2]=c[b+324>>2];c[a+84>>2]=c[b+332>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+140>>2];break}case 1:{c[a+20>>2]=c[b+352>>2];e=b+376|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+348>>2];c[a+108>>2]=c[b+344>>2];c[a+112>>2]=c[b+364>>2];c[a+116>>2]=c[b+356>>2];c[a+120>>2]=c[b+756>>2];c[a+124>>2]=c[b+868>>2];c[a+128>>2]=c[b+828>>2];break}case 3:{c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];break}default:{}}e=b+68|0;if(c[e>>2]|0){b=b+72|0;d=Zi((c[b>>2]|0)+64|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;DZ(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function xU(){var a=0;a=Zi(136)|0;if(!a)a=0;else Ki(a);return a|0}function yU(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function zU(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;a:do if(a|0)do{b=tU(d)|0;if(!b)break a}while((c[b+8>>2]|0)!=(a|0));while(0);do{a=tU(d)|0;if(!a){a=0;break}a=c[a+8>>2]|0}while(!(a|0));l=e;return a|0}function AU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+28|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=BU(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=CU(c[e>>2]|0,b)|0;if((d|0)>=0){d=DU(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+108>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}Li(b)}}else d=-541478725;while(0);return d|0}function BU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;h=c[a+28>>2]|0;g=h+36|0;h=h+32|0;f=(c[g>>2]|0)+-1|0;while(1){if((f|0)<=-1){d=-11;break}d=Si(c[(c[h>>2]|0)+(f<<2)>>2]|0,b)|0;if((d|0)==-11){f=f+-1|0;continue}e=(d|0)<0;if(e&(d|0)!=-541478725)break;if((f|0)==((c[g>>2]|0)+-1|0))break;f=f+1|0;d=Ti(c[(c[h>>2]|0)+(f<<2)>>2]|0,e?0:b)|0;if((d|0)<0){j=8;break}}if((j|0)==8){gi(a,16,240694,i);Li(b)}l=k;return d|0}function CU(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;Li(c[d>>2]|0);if(b){a=rU(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function DU(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);o=p+32|0;n=p+24|0;j=p+16|0;h=p+8|0;e=p;k=p+36|0;c[k>>2]=0;g=Ck(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){gi(a,16,240489,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){gi(a,16,240582,h);b=-1094995529;e=a;break b}else{c[a+348>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+376|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){gi(a,16,240604,j);b=-1094995529;e=a;break b}else{c[a+344>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){n=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+92>>2]=j;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;c[a+96>>2]=n;c[k>>2]=b+-8;b=EU(a,j,n)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);gi(a,16,240624,n);b=-1094995529;e=a}while(0);gi(e,16,240659,o);b=(c[a+580>>2]&8|0)==0?0:b}while(0);l=p;return b|0}function EU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+872|0;e=ik(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+100>>2]=b;c[a+104>>2]=f;d=c[a+680>>2]|0;c[a+92>>2]=0-(0-b>>d);c[a+96>>2]=0-(0-f>>d);return e|0}function FU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+28|0;g=c[d>>2]|0;a:do if((_T(a)|0)!=0?(XT(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=GU(a)|0;if((d|0)>=0){f=g+68|0;Li(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=sU(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=Ti(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){Li(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=HU(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function GU(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;h=o+8|0;i=o+4|0;d=c[b+28>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+120>>2]|0;f=(f|0)==0?241264:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=hS(h,241269)|0;c[i>>2]=d;if(!d){d=-12;break}d=uU(d)|0;if(!d){n=8;break}ci(i);e=LP(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=vU(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=wU(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Vi(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=Wi(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((n|0)==8){c[k>>2]=c[i>>2];gi(b,16,241271,k);ci(i);d=-558323010}aU(b)}else d=0;while(0);l=o;return d|0}function HU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;d=i;e=c[a+28>>2]|0;if(c[b+248>>2]|0){c[d>>2]=240741;c[d+4>>2]=194262;c[d+8>>2]=607;gi(0,0,229320,d);Tb()}f=a+12|0;d=c[(c[f>>2]|0)+108>>2]|0;if(!d)d=IU(a,b)|0;else d=Md[d&15](a,b)|0;a:do if((d|0)>=0){switch(d|0){case 0:break;default:{h=16;break a}}d=c[b+400>>2]|0;e=(d|0)==0;if(!(!e?(c[d+8>>2]|0)==20:0))h=10;do if((h|0)==10)if(!(c[(c[f>>2]|0)+16>>2]&2))if(e){d=0;h=16;break a}else break;else{c[g>>2]=240756;c[g+4>>2]=194262;c[g+8>>2]=621;gi(0,0,229320,g);Tb()}while(0);d=c[c[d+4>>2]>>2]|0;if(d){d=Md[d&15](a,b)|0;if((d|0)<0)mj(b);else h=16}else{d=0;h=16}}else{switch(d|0){case -541478725:break;default:{h=16;break a}}c[e+80>>2]=1;d=-541478725;h=16}while(0);if((h|0)==16)Ni(b+400|0);l=i;return d|0}function IU(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=JU(a,b)|0}while((d|0)>=0);return d|0}function JU(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+144|0;if((l|0)>=(m|0))W(144);M=Z+128|0;L=Z+120|0;Y=Z+64|0;S=Z+56|0;J=Z+48|0;H=Z+40|0;E=Z+32|0;A=Z+24|0;t=Z+16|0;q=Z+8|0;j=Z;V=Z+96|0;i=Z+76|0;s=Z+112|0;D=Z+104|0;P=Z+88|0;Q=Z+80|0;R=b+28|0;X=c[R>>2]|0;T=c[X+24>>2]|0;U=T+24|0;if(!(((c[U>>2]|0)==0?(c[X+64>>2]|0)==0:0)?(Li(T),f=AU(b,T)|0,(f|0)<0&(f|0)!=-541478725):0))k=4;do if((k|0)==4){O=X+80|0;if(!(c[O>>2]|0)){if(((c[U>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+696>>2]&1|0)==0:0){f=-541478725;break}c[V>>2]=0;K=b+696|0;if(!(c[K>>2]&1)){h=b+12|0;f=Od[c[(c[h>>2]|0)+92>>2]&1](b,e,V,T)|0;g=c[h>>2]|0;if(!(c[g+116>>2]&4)){w=T+16|0;x=c[w+4>>2]|0;z=e+120|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+8>>2]|0)){if(!(c[b+140>>2]|0)){w=T+56|0;x=c[w+4>>2]|0;z=e+328|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){w=b+188|0;x=c[w+4>>2]|0;z=g;c[z>>2]=c[w>>2];c[z+4>>2]=x}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+92>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+96>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+112>>2];x=h}else x=h}else x=h}else x=h}else{f=KU(b,e,V,T)|0;x=b+12|0}z=c[V>>2]|0;a:do switch(c[(c[x>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[V>>2]=0;break a}if(z|0){H=e+104|0;G=e+120|0;G=LU(b,c[H>>2]|0,c[H+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;H=e+320|0;c[H>>2]=G;c[H+4>>2]=y}break}case 1:{if((f|0)>-1&(z|0)!=0){g=e+104|0;w=e+120|0;w=LU(b,c[g>>2]|0,c[g+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;g=e+320|0;c[g>>2]=w;c[g+4>>2]=y;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+352>>2];g=e+240|0;w=g;if((c[w>>2]|0)==0&(c[w+4>>2]|0)==0){u=b+376|0;v=c[u+4>>2]|0;w=g;c[w>>2]=c[u>>2];c[w+4>>2]=v}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+348>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+344>>2]}g=Ck(c[X+40>>2]|0,11,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){v=c[R>>2]|0;w=N(c[v+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[v+56>>2]=w;v=g+4|0;v=d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24;c[j>>2]=w;c[j+4>>2]=v;gi(b,48,240876,j);w=a[g+8>>0]|0;u=a[g+9>>0]|0}else{v=0;w=0;u=0}g=c[V>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+64>>2]&536870912|0)==0:0){n=(c[R>>2]|0)+56|0;j=(c[n>>2]|0)-(c[e+76>>2]|0)|0;c[n>>2]=(j|0)>0?j:0;c[V>>2]=0}else k=43;do if(((k|0)==43?(o=(c[R>>2]|0)+56|0,p=c[o>>2]|0,(p|0)>0&(g|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){n=e+76|0;g=c[n>>2]|0;if((g|0)<=(p|0)){c[V>>2]=0;A=p-g|0;c[o>>2]=A;c[q>>2]=A;gi(b,48,240923,q);break}q=c[e+64>>2]|0;_j(q,q,0,p,g-p|0,c[b+348>>2]|0,c[e+80>>2]|0)|0;g=b+772|0;if((c[g>>2]|0)!=0?(r=c[b+344>>2]|0,(r|0)!=0):0){j=c[(c[R>>2]|0)+56>>2]|0;c[s>>2]=1;c[s+4>>2]=r;c[L>>2]=c[s>>2];c[L+4>>2]=c[s+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];j=bT(j,((j|0)<0)<<31>>31,L,M)|0;k=y;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=oZ(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=oZ(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=oZ(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(k|0)|(i|0)==(k|0)&h>>>0>>0)){s=pZ(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}}else gi(b,24,240956,t);t=c[n>>2]|0;c[A>>2]=c[(c[R>>2]|0)+56>>2];c[A+4>>2]=t;gi(b,48,241006,A);A=(c[R>>2]|0)+56|0;c[n>>2]=(c[n>>2]|0)-(c[A>>2]|0);c[A>>2]=0}while(0);do if((v|0?(F=e+76|0,B=c[F>>2]|0,B>>>0>=v>>>0&(c[V>>2]|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){if((B|0)==(v|0)){c[V>>2]=0;break}g=b+772|0;if((c[g>>2]|0)!=0?(C=c[b+344>>2]|0,(C|0)!=0):0){c[D>>2]=1;c[D+4>>2]=C;c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];E=bT(B-v|0,0,L,M)|0;g=e+336|0;c[g>>2]=E;c[g+4>>2]=y;g=b}else{gi(b,24,241026,E);g=b}E=c[F>>2]|0;c[H>>2]=v;c[H+4>>2]=E;gi(g,48,241078,H);c[F>>2]=(c[F>>2]|0)-v}while(0);if((c[V>>2]|0?(c[b+64>>2]&536870912|0)!=0:0)?(G=lk(e,9,10)|0,G|0):0){F=c[(c[R>>2]|0)+56>>2]|0;H=G+4|0;G=c[H>>2]|0;a[G>>0]=F;a[G+1>>0]=F>>8;a[G+2>>0]=F>>16;a[G+3>>0]=F>>24;G=(c[H>>2]|0)+4|0;a[G>>0]=v;a[G+1>>0]=v>>8;a[G+2>>0]=v>>16;a[G+3>>0]=v>>24;a[(c[H>>2]|0)+8>>0]=w;a[(c[H>>2]|0)+9>>0]=u;c[(c[R>>2]|0)+56>>2]=0}break}default:{}}while(0);g=c[x>>2]|0;if((((c[g+8>>2]|0)==1?(I=X+104|0,(f|0)>-1&(c[I>>2]|0)==0):0)?(f|0)!=(c[T+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){gi(b,24,241101,J);c[I>>2]=1}if(!(c[V>>2]|0))mj(e);if(((f|0)>-1?(c[(c[x>>2]|0)+8>>2]|0)==0:0)?(c[b+60>>2]&65536|0)==0:0)f=c[T+28>>2]|0;g=b+760|0;if((c[g>>2]|0)>0?(c[b+764>>2]|0)>0:0){c[Q>>2]=c[b+84>>2];c[Q+4>>2]=1;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[M>>2]=c[Q>>2];c[M+4>>2]=c[Q+4>>2];nQ(P,L,M);M=c[P>>2]|0;Q=b+76|0;c[Q>>2]=c[P+4>>2];c[Q+4>>2]=M}do if(!(z|0?1:(c[(c[R>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[O>>2]=1;break}if(!(c[K>>2]&1))g=21;else g=(c[b+688>>2]|0)+20|0;Q=X+112|0;R=c[Q>>2]|0;c[Q>>2]=R+1;if((R|0)>=(g|0)){gi(b,16,241131,S);c[O>>2]=1;f=-558323010}}while(0);g=X+92|0;c[g>>2]=(c[g>>2]|0)+f;g=T+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))Li(T);else{c[U>>2]=(c[U>>2]|0)+f;c[g>>2]=h-f;X=c[X+40>>2]|0;U=X+28|0;c[U>>2]=(c[U>>2]|0)-f;U=T+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=T+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=X+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;X=X+16|0;c[X>>2]=0;c[X+4>>2]=-2147483648}if(c[V>>2]|0?(c[e+248>>2]|0)==0:0){c[Y>>2]=241207;c[Y+4>>2]=194262;c[Y+8>>2]=584;gi(0,0,229320,Y);Tb()}f=i?f:0}else f=-541478725}while(0);l=Z;return f|0}function KU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[(c[a+28>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;gU(p);n=p+144|0;f=MU((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+688|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+16>>2]|0)==33)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;HZ(g|0)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;wc(h|0,g|0)|0}IZ(g|0)|0}nj(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}eU(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);fo(p);return f|0}function LU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(e|0)==0&(f|0)==-2147483648;if(k)if((b|0)==0&(d|0)==-2147483648)g=0;else{l=a+808|0;c[l>>2]=b;c[l+4>>2]=d;l=6}else{l=a+808|0;i=l;h=c[i+4>>2]|0;j=a+792|0;g=j;i=oZ(c[g>>2]|0,c[g+4>>2]|0,((h|0)>(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;c[j>>2]=i;c[j+4>>2]=y;c[l>>2]=e;c[l+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){h=a+800|0;g=0;i=e;j=f;l=7}else l=6}if((l|0)==6){h=a+800|0;i=h;j=c[i+4>>2]|0;g=a+784|0;m=g;i=oZ(c[m>>2]|0,c[m+4>>2]|0,((j|0)>(d|0)|((j|0)==(d|0)?(c[i>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;c[g>>2]=i;c[g+4>>2]=y;g=1;i=b;j=d;l=7}if((l|0)==7){m=h;c[m>>2]=i;c[m+4>>2]=j}l=a+784|0;j=c[l+4>>2]|0;m=a+792|0;a=c[m+4>>2]|0;m=g&(k|((j|0)<(a|0)|((j|0)==(a|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));y=m?d:f;return (m?b:e)|0}function MU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=q;k=c[a>>2]|0;n=k+4|0;g=c[n>>2]|0;o=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[o>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else p=3;do if((p|0)==3){i=a+156|0;HZ(i|0)|0;b=NU(c[o>>2]|0,b)|0;if(b|0){IZ(i|0)|0;break}c[a+344>>2]=(c[(c[o>>2]|0)+576>>2]|0)>>>16&1;fU(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;HZ(e|0)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;wc(f|0,e|0)|0}IZ(e|0)|0}b=eU(c[o>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){IZ(i|0)|0;break}}b=a+216|0;Li(b);b=sU(b,d)|0;if((b|0)<0){IZ(i|0)|0;gi(c[o>>2]|0,16,241221,h);break}j=a+300|0;c[j>>2]=1;vc(a+12|0)|0;IZ(i|0)|0;b=c[o>>2]|0;a:do if(!(c[b+700>>2]|0)){if((c[b+120>>2]|0)==11?(c[b+400>>2]|0)==12:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;HZ(b|0)|0;while(1){if((c[j>>2]|0)!=1)break;wc(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{c[d>>2]=Hp(c[o>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;p=27;break}case 3:{c[i>>2]=aP(c[o>>2]|0,c[h>>2]|0)|0;p=27;break}default:{}}if((p|0)==27){p=0;c[j>>2]=1;vc(e|0)|0}IZ(b|0)|0}}while(0);c[n>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);l=q;return b|0}function NU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+60>>2]=c[b+60>>2];c[a+116>>2]=c[b+116>>2];c[a+400>>2]=c[b+400>>2];c[a+32>>2]=c[b+32>>2];c[a+576>>2]=c[b+576>>2];c[a+832>>2]=c[b+832>>2];c[a+240>>2]=c[b+240>>2];c[a+64>>2]=c[b+64>>2];f=a+724|0;d=b+724|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+360>>2]=c[b+360>>2];f=b+584|0;d=c[f+4>>2]|0;g=a+584|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+700>>2]=c[b+700>>2];g=b+176|0;d=c[g>>2]|0;do if(d){e=b+184|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+184|0;if((c[a+176>>2]|0)<(d|0)){d=UP(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}DZ(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+176>>2]=d;d=0}return d|0}function OU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+28>>2]|0;mj(b);do if((_T(a)|0)!=0?(XT(c[a+12>>2]|0)|0)!=0:0){d=GU(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=HU(a,b)|0;if((d|0)<0)break}else nj(b,d);if((c[a+8>>2]|0)==0?(f=PU(a,b)|0,(f|0)<0):0){mj(b);d=f;break}d=a+360|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function PU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+888>>2]|0))a=0;else a=_S(b,c[a+60>>2]&1)|0;else{p=c[b+68>>2]|0;b=c[b+72>>2]|0;c[n>>2]=g;c[n+4>>2]=i;c[n+8>>2]=k;c[n+12>>2]=e;c[n+16>>2]=p;c[n+20>>2]=b;gi(a,24,241364,n);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}l=o;return a|0}function QU(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){ZT(b)|0;ci(b+68|0);ci(b+736|0);ci(b+248|0);ci(b+252|0);ci(b+436|0);ci(a)}return}function RU(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;d=c[169768+(b<<2)>>2]|0;if((b|0)!=3)c[a>>2]=b+1;return d|0}function SU(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a:do if(!a)a=0;else{do{d=RU(b)|0;if(!d){a=0;break a}if((c[d>>2]|0)==(a|0))break;if((c[d+4>>2]|0)==(a|0))break;if((c[d+8>>2]|0)==(a|0))break;if((c[d+12>>2]|0)==(a|0))break}while((c[d+16>>2]|0)!=(a|0));a=Zi(344)|0;if(a|0){c[a+4>>2]=d;b=Zi(c[d+20>>2]|0)|0;c[a>>2]=b;do if(b|0){c[a+72>>2]=1;c[a+32>>2]=1;b=c[d+24>>2]|0;if(b|0?Ld[b&31](a)|0:0)break;c[a+224>>2]=-1;d=a+232|0;c[d>>2]=0;c[d+4>>2]=0;c[a+240>>2]=-2147483648;c[a+244>>2]=-2147483648;c[a+248>>2]=-2147483648;c[a+336>>2]=-1;break a}while(0);ci(a)}di(a);a=0}while(0);l=e;return a|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=(e|0)!=0;if(u){n=a+48|0;o=a+40|0;p=a+288|0;q=a+184|0}else{o=a+40|0;n=o;c[n>>2]=0;c[n+4>>2]=-2147483648;n=a+48|0;p=n;c[p>>2]=0;c[p+4>>2]=-2147483648;p=a+288|0;q=p;c[q>>2]=-1;c[q+4>>2]=-1;q=a+184|0;t=q;c[t>>2]=0;c[t+4>>2]=0}r=a+16|0;s=((b|0)<0)<<31>>31;t=a+8|0;l=(d|0)==0;m=a+24|0;k=0;a:while(1){if((k|0)>=4)break;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0;i=oZ(d|0,e|0,b|0,s|0)|0;h=y;j=a+80+(k<<3)|0;g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;do if(!((h|0)<(g|0)|(h|0)==(g|0)&i>>>0>>0)){i=t;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(g|0)|(i|0)==(g|0)&h>>>0>>0)){if(!((h|0)==0&(i|0)==0))break;i=m;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0))break}h=a+192+(k<<3)|0;i=h;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0)){g=a+144+(k<<3)|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!(u&((f|0)==0&(g|0)==-2147483648))){i=n;c[i>>2]=f;c[i+4>>2]=g;i=a+112+(k<<3)|0;g=c[i+4>>2]|0;f=o;c[f>>2]=c[i>>2];c[f+4>>2]=g;f=a+256+(k<<3)|0;g=c[f+4>>2]|0;i=p;c[i>>2]=c[f>>2];c[i+4>>2]=g;i=m;g=j;g=pZ(c[i>>2]|0,c[i+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=q;c[i>>2]=g;c[i+4>>2]=y}if(!l){e=j;c[e>>2]=-1;c[e+4>>2]=2147483647;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0}i=oZ(d|0,e|0,b|0,s|0)|0;g=y;j=h;h=c[j+4>>2]|0;if((g|0)<(h|0)|((g|0)==(h|0)?i>>>0<(c[j>>2]|0)>>>0:0))break a}}while(0);k=k+1|0}return}function UU(b,d,e,f,g,h,i,j,k,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0;A=l;l=l+80|0;if((l|0)>=(m|0))W(80);z=A;q=A+16|0;r=b+176|0;s=c[r>>2]|0;if(!(s&4)){v=b+16|0;c[v>>2]=o;c[v+4>>2]=p;v=b+24|0;c[v>>2]=o;c[v+4>>2]=p;c[r>>2]=s|4}if(h){r=b+16|0;q=c[r>>2]|0;r=c[r+4>>2]|0;s=oZ(q|0,r|0,h|0,((h|0)<0)<<31>>31|0)|0;t=y;u=b+76|0;v=c[u>>2]|0;B=b+192+(v<<3)|0;if((s|0)==(c[B>>2]|0)?(t|0)==(c[B+4>>2]|0):0)q=g;else{B=v+1&3;c[u>>2]=B;v=b+80+(B<<3)|0;c[v>>2]=q;c[v+4>>2]=r;q=b+192+(B<<3)|0;c[q>>2]=s;c[q+4>>2]=t;q=b+112+(B<<3)|0;c[q>>2]=i;c[q+4>>2]=j;q=b+144+(B<<3)|0;c[q>>2]=k;c[q+4>>2]=n;q=b+256+(B<<3)|0;c[q>>2]=o;c[q+4>>2]=p;q=g}}else{r=q;s=r+64|0;do{a[r>>0]=0;r=r+1|0}while((r|0)<(s|0))}r=b+72|0;if(c[r>>2]|0){c[r>>2]=0;k=b+40|0;n=c[k+4>>2]|0;B=b+56|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;B=b+48|0;n=c[B+4>>2]|0;k=b+64|0;c[k>>2]=c[B>>2];c[k+4>>2]=n;k=b+288|0;n=c[k+4>>2]|0;B=b+296|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;TU(b,0,0,0)}t=Qd[c[(c[b+4>>2]|0)+28>>2]&7](b,d,e,f,q,h)|0;if((t|0)<=-536870912){c[z>>2]=241480;c[z+4>>2]=186287;c[z+8>>2]=253;gi(0,0,229320,z);Tb()}if(((c[d+8>>2]|0)==0?(w=c[b+308>>2]|0,w|0):0)?(x=d+340|0,(c[x>>2]|0)==0):0)c[x>>2]=w;if(!(c[f>>2]|0)){q=b+16|0;s=q;r=c[s>>2]|0;s=c[s+4>>2]|0}else{z=b+24|0;B=z;s=c[B+4>>2]|0;q=b+8|0;c[q>>2]=c[B>>2];c[q+4>>2]=s;q=b+16|0;s=q;B=c[s>>2]|0;s=c[s+4>>2]|0;f=oZ(B|0,s|0,t|0,((t|0)<0)<<31>>31|0)|0;c[z>>2]=f;c[z+4>>2]=y;c[r>>2]=1;r=B}B=(t|0)>0?t:0;f=oZ(r|0,s|0,B|0,0)|0;z=q;c[z>>2]=f;c[z+4>>2]=y;l=A;return B|0}function VU(a){a=a|0;var b=0;if(a|0){b=c[(c[a+4>>2]|0)+32>>2]|0;if(b|0)Sd[b&63](a);ci(a);di(a)}return}function WU(a){a=a|0;var b=0;XU(a);b=c[a+696>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=ZU(a)|0;else a=YU(a)|0;return a|0}function XU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;f=c[(c[a+12>>2]|0)+16>>2]|0;if((f&4096|0)!=0?(c[a+60>>2]&589824|0)==0:0)e=(c[a+64>>2]&32768|0)==0;else e=0;d=a+688|0;b=c[d>>2]|0;do if((b|0)!=1){if(e?c[a+692>>2]&1|0:0){d=1;h=11;break}if(f&8192|0?c[a+692>>2]&2|0:0){d=2;h=11;break}if(!(f&32768)){c[d>>2]=1;d=0;b=1;h=11}}else{d=0;b=1;h=11}while(0);if((h|0)==11)c[a+696>>2]=d;if((b|0)>16){c[g>>2]=b;c[g+4>>2]=16;gi(a,24,241618,g)}l=i;return}function YU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+688|0;b=c[i>>2]|0;h=a+12|0;if(((TT(c[h>>2]|0)|0)!=0?(c[a+16>>2]|0)==1:0)?(c[a+96>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=ZS()|0;d=c[a+96>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=Zi(48)|0;g=a+28|0;b=c[g>>2]|0;c[b+20>>2]=f;d=c[(c[h>>2]|0)+116>>2]&32|0?32:0;c[63830]=d;do if(f){b=JT(f,a,79,d,e)|0;if((b|0)<2){LT(f);b=c[g>>2]|0;break}else{c[i>>2]=b;c[a+704>>2]=5;c[a+708>>2]=42;break a}}while(0);ci(b+20|0);c[i>>2]=1;c[a+696>>2]=0}}while(0);if((j|0)==10)c[a+696>>2]=0;return 0}function ZU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=v;b=a+688|0;d=c[b>>2]|0;e=c[a+12>>2]|0;if(!d){s=ZS()|0;d=s+1|0;d=(s|0)>1?((d|0)<16?d:16):1;c[b>>2]=d}a:do if((d|0)>=2){s=Zi(156)|0;b=a+28|0;c[(c[b>>2]|0)+20>>2]=s;if(!s)b=-12;else{r=vj(d,352)|0;c[s>>2]=r;if(!r){ci((c[b>>2]|0)+20|0);b=-12;break}Cc(s+8|0,0)|0;Cc(s+36|0,0)|0;Cc(s+64|0,0)|0;uc(s+92|0,0)|0;c[s+140>>2]=1;c[s+152>>2]=1;p=e+80|0;q=e+56|0;n=e+64|0;b=0;r=0;f=a;while(1){if((r|0)>=(d|0)){b=0;break a}c[t>>2]=oi(896)|0;o=c[s>>2]|0;j=o+(r*352|0)|0;Cc(o+(r*352|0)+156|0,0)|0;Cc(o+(r*352|0)+184|0,0)|0;uc(o+(r*352|0)+12|0,0)|0;uc(o+(r*352|0)+60|0,0)|0;uc(o+(r*352|0)+108|0,0)|0;k=Qj()|0;c[o+(r*352|0)+288>>2]=k;if(!k){u=11;break}c[j>>2]=s;e=c[t>>2]|0;c[o+(r*352|0)+212>>2]=e;k=e;if(!e){b=-12;u=23;break}DZ(e|0,f|0,896)|0;e=oi(116)|0;i=k+28|0;c[i>>2]=e;if(!e){u=14;break}g=c[f+28>>2]|0;h=e+116|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=c[i>>2]|0;c[h+20>>2]=j;c[h+40>>2]=o+(r*352|0)+216;if(r){e=oi(c[q>>2]|0)|0;c[k+24>>2]=e;if(!e){b=-12;u=23;break}DZ(e|0,c[f+24>>2]|0,c[q>>2]|0)|0;c[c[i>>2]>>2]=1;e=c[n>>2]|0;if(e)b=Ld[e&31](k)|0}else{e=c[p>>2]|0;if(e)b=Ld[e&31](k)|0;eU(a,k,1)|0;f=k}if(b|0){u=23;break}c[o+(r*352|0)+344>>2]=(c[k+576>>2]|0)>>>16&1;k=xc(o+(r*352|0)+4|0,0,25,j|0)|0;b=0-k|0;k=(k|0)==0;c[o+(r*352|0)+8>>2]=k&1;if(!k)break;r=r+1|0}if((u|0)==11){ci(t);b=-12;u=23}else if((u|0)==14){c[k+24>>2]=0;b=-12;u=23}bU(a,r+1|0)}}else{c[a+696>>2]=0;b=0}while(0);l=v;return b|0}function _U(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+32|0;if((l|0)>=(m|0))W(32);B=D+16|0;A=D;p=c[a+212>>2]|0;j=c[p+12>>2]|0;v=a+156|0;HZ(v|0)|0;w=a+332|0;x=a+300|0;y=a+12|0;z=j+68|0;d=p+700|0;e=p+400|0;f=a+336|0;g=p+592|0;h=a+288|0;i=a+292|0;j=j+92|0;k=a+216|0;n=a+296|0;o=p+28|0;q=a+340|0;r=a+184|0;s=a+60|0;t=a+108|0;a:while(1){while(1){b=(c[w>>2]|0)==0;if(c[x>>2]|0)break;if(!b){C=28;break a}wc(y|0,v|0)|0}if(!b){C=28;break}do if(!(c[z>>2]|0)){if((c[d>>2]|0)==0?(c[e>>2]|0)!=12:0)break;Xk(p)}while(0);if(c[f>>2]|0){C=12;break}if(c[g>>2]|0){HZ((c[a>>2]|0)+36|0)|0;c[f>>2]=1}mj(c[h>>2]|0);c[i>>2]=0;b=Od[c[j>>2]&1](p,c[h>>2]|0,i,k)|0;c[n>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))C=17;if((C|0)==17?(C=0,u=c[h>>2]|0,c[u+248>>2]|0):0){if(!(c[(c[o>>2]|0)+4>>2]|0))b=u;else{gi(p,16,241524,B);b=c[h>>2]|0}mj(b)}if((c[x>>2]|0)==1)Xk(p);if(c[f>>2]|0){c[f>>2]=0;IZ((c[a>>2]|0)+36|0)|0}if(c[q>>2]|0){c[q>>2]=0;gU(c[a>>2]|0)}HZ(r|0)|0;c[x>>2]=0;GZ(s|0)|0;vc(t|0)|0;IZ(r|0)|0}if((C|0)==12){c[A>>2]=241500;c[A+4>>2]=229276;c[A+8>>2]=190;gi(0,0,229320,A);Tb()}else if((C|0)==28){IZ(v|0)|0;l=D;return 0}return 0}function $U(a){a=a|0;Ld[c[(c[(c[a+28>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function aV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+28>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=Od[c[g+8>>2]&1](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(N(c[g+24>>2]|0,b)|0)|0;f=Md[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function bV(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&2|0)!=0?(c[a+688>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;NT(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=iU(a,b,d,e,f,g)|0;return a|0}function cV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+28>>2]|0)+20>>2]|0)+8>>2]=b;return bV(a,0,d,e,f,0)|0}function dV(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)IZ(255324)|0;return}function eV(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=l;l=l+848|0;if((l|0)>=(m|0))W(848);$=ja+336|0;_=ja+328|0;da=ja+288|0;Z=ja+280|0;Y=ja+272|0;X=ja+264|0;V=ja+248|0;S=ja+240|0;R=ja+232|0;Q=ja+224|0;O=ja+208|0;N=ja+192|0;M=ja+184|0;L=ja+176|0;K=ja+168|0;J=ja+152|0;H=ja+144|0;F=ja+136|0;D=ja+128|0;C=ja+120|0;B=ja+112|0;A=ja+104|0;z=ja+96|0;x=ja+88|0;t=ja+80|0;s=ja+72|0;r=ja+64|0;q=ja+48|0;ca=ja+40|0;p=ja+32|0;o=ja+24|0;n=ja+16|0;j=ja+8|0;i=ja;ia=ja+312|0;aa=ja+320|0;ba=ja+304|0;c[ia>>2]=0;do if(!(_T(a)|0)){ha=a+12|0;g=c[ha>>2]|0;h=(g|0)==0;if(!b)if(h){gi(a,16,241714,i);f=-22;break}else fa=g;else if(h|(g|0)==(b|0))fa=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;gi(a,16,241752,j);f=-22;break}if((c[a+72>>2]|0)>>>0<=268435391){ga=(e|0)!=0;if(ga)kk(ia,c[e>>2]|0,0)|0;fV(fa);U=Zi(116)|0;ea=a+28|0;c[ea>>2]=U;a:do if(!U)f=-12;else{U=Zi(88)|0;c[(c[ea>>2]|0)+16>>2]=U;b:do if(((((((U|0)!=0?(U=Qj()|0,c[(c[ea>>2]|0)+12>>2]=U,(U|0)!=0):0)?(U=Qj()|0,c[(c[ea>>2]|0)+100>>2]=U,(U|0)!=0):0)?(U=Qj()|0,c[(c[ea>>2]|0)+76>>2]=U,(U|0)!=0):0)?(U=YR()|0,c[(c[ea>>2]|0)+68>>2]=U,(U|0)!=0):0)?(U=YR()|0,c[(c[ea>>2]|0)+24>>2]=U,(U|0)!=0):0)?(U=YR()|0,k=c[ea>>2]|0,c[k+40>>2]=U,(U|0)!=0):0){c[k+108>>2]=1;T=fa+56|0;b=c[T>>2]|0;U=a+24|0;do if((b|0)>0){if(!(c[U>>2]|0)){g=Zi(b)|0;c[U>>2]=g;if(!g){f=-12;break a}b=fa+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;ET(g)}else b=fa+44|0;if(c[b>>2]|0?(f=HT(c[U>>2]|0,ia)|0,(f|0)<0):0)break b}else c[U>>2]=0;while(0);f=HT(a,ia)|0;if((f|0)>=0){b=a+844|0;g=c[b>>2]|0;if(g|0?(mS(c[fa>>2]|0,g,44)|0)<1:0){f=c[b>>2]|0;c[n>>2]=c[fa>>2];c[n+4>>2]=f;gi(a,16,241828,n);f=-22;break}i=a+100|0;b=c[i>>2]|0;c:do if(!b)P=37;else{g=c[a+104>>2]|0;if(!g){P=37;break}do if(c[a+92>>2]|0){if(!(c[a+96>>2]|0))break;switch(c[a+16>>2]|0){case 189:case 92:case 27:{P=43;break c}default:{}}}while(0);f=EU(a,b,g)|0;P=40}while(0);do if((P|0)==37){g=c[a+92>>2]|0;if(!g){P=42;break}h=c[a+96>>2]|0;if(!h){P=42;break}f=EU(a,g,h)|0;P=40}while(0);if((P|0)==40){if((f|0)<0)break;b=c[i>>2]|0;P=42}do if((P|0)==42){if(b|0){P=43;break}g=c[a+104>>2]|0;if(g|0){b=0;P=47;break}b=a+92|0;if(c[b>>2]|0){b=0;g=0;P=47;break}if(!(c[a+96>>2]|0))u=b;else{b=0;g=0;P=47}}while(0);if((P|0)==43){g=c[a+104>>2]|0;P=47}do if((P|0)==47){h=a+872|0;I=h;i=a+92|0;if((ik(b,g,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0?(I=h,(ik(c[i>>2]|0,c[a+96>>2]|0,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0):0){u=i;break}gi(a,24,241862,o);EU(a,0,0)|0;u=i}while(0);b=c[u>>2]|0;do if((b|0)>0){g=c[a+96>>2]|0;if((g|0)<=0)break;h=a+188|0;c[$>>2]=c[h>>2];c[$+4>>2]=c[h+4>>2];if((Op(b,g,$)|0)>=0)break;I=a+192|0;G=c[I>>2]|0;c[p>>2]=c[h>>2];c[p+4>>2]=G;gi(a,24,241900,p);c[a+188>>2]=0;c[I>>2]=1}while(0);if(XT(fa)|0)ci(a+736|0);G=a+348|0;if((c[G>>2]|0)>>>0>64){f=-22;break}c[ha>>2]=fa;I=a+8|0;h=c[I>>2]|0;do if((h|0)==-1)P=60;else{if((h|0)==(c[fa+8>>2]|0)){P=60;break}g=a+16|0;n=g;g=c[g>>2]|0;b=h}while(0);do if((P|0)==60){b=a+16|0;g=c[b>>2]|0;if(g|0){n=b;b=h;break}E=c[fa+8>>2]|0;c[I>>2]=E;g=c[fa+12>>2]|0;c[b>>2]=g;n=b;b=E}while(0);h=fa+12|0;do if((g|0)==(c[h>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[fa+8>>2]|0)))break;c[a+360>>2]=0;E=a+780|0;c[E>>2]=Xi(g)|0;b=c[ha>>2]|0;do if(c[b+16>>2]&512|0){if((c[a+568>>2]|0)<=-2)break;b=(TT(fa)|0)!=0;b=b?241958:241966;da=c[fa>>2]|0;c[q>>2]=b;c[q+4>>2]=da;c[q+8>>2]=-2;gi(a,16,241974,q);da=(TT(fa)|0)==0;f=c[h>>2]|0;if(da)f=WT(f)|0;else f=ST(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[r>>2]=b;c[r+4>>2]=f;gi(a,16,242084,r);f=-733130664;break b}while(0);do if((c[I>>2]|0)==1){h=a+76|0;g=a+80|0;if(c[h>>2]|0?c[g>>2]|0:0)break;c[h>>2]=1;c[g>>2]=c[a+344>>2]}while(0);if(!((c[(c[ea>>2]|0)+52>>2]|0)!=0?(c[a+696>>2]&1|0)!=0:0)){f=WU(a)|0;if((f|0)<0)break b;b=c[ha>>2]|0}g=d[b+40>>0]|0;h=a+680|0;if((c[h>>2]|0)>>>0>g>>>0){c[s>>2]=g;gi(a,24,242133,s);b=c[ha>>2]|0;c[h>>2]=d[b+40>>0]}d:do if(TT(b)|0){s=Qj()|0;c[a+684>>2]=s;if(!s){f=-12;break b}o=a+76|0;do if((c[o>>2]|0)>=1){p=a+80|0;if((c[p>>2]|0)<1)break;g=c[ha>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+352|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[G>>2]|0)==1){t=IT(i)|0;t=(t|0)==(IT(c[(c[(c[ha>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);v=c[ha>>2]|0;w=c[v+32>>2]|0;if(t){P=94;break}else{g=v;b=w}}j=j+1|0}if((P|0)==94?(w=w+(j<<2)|0,c[k>>2]=c[w>>2],(c[w>>2]|0)!=-1):0){j=v;break}c[x>>2]=c[k>>2];fX($,128,242228,x)|0;c[z>>2]=gV(DT(c[k>>2]|0)|0,$)|0;gi(a,16,242231,z);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+112|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){P=103;break}else b=b+1|0}if((P|0)==103){switch(i|0){case 14:case 32:case 13:case 140:case 12:break;default:break f}c[a+328>>2]=2;break}switch(c[n>>2]|0){case 9:case 7:{if((c[a+568>>2]|0)<0)break f;break}default:{}}c[A>>2]=c[h>>2];fX($,128,242228,A)|0;c[B>>2]=gV(Cj(c[h>>2]|0)|0,$)|0;gi(a,16,242287,B);f=-22;break b}while(0);h=c[j+28>>2]|0;b=c[a+344>>2]|0;g:do if(h){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break;if((b|0)==(i|0))break g;else g=g+1|0}c[C>>2]=b;gi(a,16,242342,C);f=-22;break b}while(0);if((b|0)<0){c[D>>2]=b;gi(a,16,242342,D);f=-22;break b}i=c[j+36>>2]|0;n=a+376|0;h:do if(i|0){k=n;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){gi(a,24,242385,F);break}else b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}vS($,512,-1,j,k);c[H>>2]=$;gi(a,16,242415,H);f=-22;break b}while(0);h=n;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[G>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=gk(g,h)|0;if(!b){c[G>>2]=g;b=g;break}if((g|0)==(c[G>>2]|0)){b=g;break}f=n;vS($,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[G>>2]|0;c[J>>2]=$;c[J+4>>2]=g;c[J+8>>2]=f;gi(a,16,242463,J);f=-22;break b}while(0);if((b|0)<0){c[K>>2]=b;gi(a,16,242548,K);f=-22;break b}b=c[I>>2]|0;i:do if(!b){b=Bj(c[a+112>>2]|0)|0;h=a+676|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)P=129}else{g=b+32|0;b=g;g=c[g>>2]|0;P=129}while(0);if((P|0)==129){c[L>>2]=i;c[L+4>>2]=g;gi(a,24,242598,L);c[h>>2]=c[b>>2]}do if((c[u>>2]|0)>=1){if((c[a+96>>2]|0)<1)break;b=c[I>>2]|0;break i}while(0);gi(a,16,242677,M);f=-22;break b}while(0);do if(b>>>0<2){g=a+40|0;b=c[g>>2]|0;g=c[g+4>>2]|0;M=oZ(b|0,g|0,-1,-1)|0;L=y;if(!(L>>>0<0|(L|0)==0&M>>>0<999))break;M=N;c[M>>2]=b;c[M+4>>2]=g;M=N+8|0;c[M>>2]=b;c[M+4>>2]=g;gi(a,24,242697,N)}while(0);b=a+464|0;if(!(c[b>>2]|0)){N=c[a+428>>2]|0;N=uZ(N|0,((N|0)<0)<<31>>31|0,3,0)|0;N=sZ(N|0,y|0,4,0)|0;c[b>>2]=N}g=c[a+84>>2]|0;do if(g|0){b=c[o>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;da=c[p>>2]|0;c[O>>2]=g;c[O+4>>2]=b;c[O+8>>2]=da;gi(a,16,242750,O);break b}while(0);f=c[a+860>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+112>>2]|0)){gi(a,16,242803,Q);f=-22;break b}h=a+768|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}da=Cj(g)|0;f=Cj(c[b>>2]|0)|0;c[R>>2]=da;c[R+4>>2]=f;gi(a,16,242868,R);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);gi(a,16,242194,t);f=-22;break b}while(0);R=a+784|0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;R=a+808|0;c[R>>2]=0;c[R+4>>2]=-2147483648;R=a+800|0;c[R>>2]=0;c[R+4>>2]=-2147483648;do if(c[a+60>>2]&8192|0){if(c[(c[E>>2]|0)+4>>2]|0)break;gi(a,24,242949,S)}while(0);f=c[ha>>2]|0;b=c[f+80>>2]|0;do if(b){if(c[a+696>>2]&1|0?(c[(c[ea>>2]|0)+52>>2]|0)==0:0)break;f=Ld[b&31](a)|0;if((f|0)<0)break b;f=c[ha>>2]|0}while(0);do if(XT(f)|0){f=a+40|0;S=f;if((c[S>>2]|0)==0&(c[S+4>>2]|0)==0){R=hV(a)|0;S=f;c[S>>2]=R;c[S+4>>2]=y}g=a+376|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)P=166;else{f=gk(f,b)|0;b=c[G>>2]|0;if(!b){c[G>>2]=f;break}if((f|0)==(b|0))break;P=g;vS($,512,-1,c[P>>2]|0,c[P+4>>2]|0);P=c[G>>2]|0;c[V>>2]=$;c[V+4>>2]=f;c[V+8>>2]=P;gi(a,24,243012,V);P=g;c[P>>2]=0;c[P+4>>2]=0;P=166}while(0);if((P|0)==166)f=c[G>>2]|0;if(f>>>0>64){f=-22;break b}b=a+816|0;g=c[b>>2]|0;j:do if(g|0){if((c[I>>2]|0)!=3){gi(a,16,243132,X);f=-22;break b}f=c[E>>2]|0;if(c[f+16>>2]&65536|0){c[Y>>2]=c[f+8>>2];gi(a,24,243192,Y);c[a+820>>2]=-1;break}f=a+820|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}if(($W(243266,g)|0)==(-1|0)){f=0-(c[(zV()|0)>>2]|0)|0;c[Z>>2]=c[b>>2];gi(a,16,243272,Z);break b}else break}while(0);f=a+760|0;if((c[f>>2]|0)<=0)break;if((c[a+764>>2]|0)<=0)break;c[ba>>2]=c[a+84>>2];c[ba+4>>2]=1;c[_>>2]=c[f>>2];c[_+4>>2]=c[f+4>>2];c[$>>2]=c[ba>>2];c[$+4>>2]=c[ba+4>>2];nQ(aa,_,$);$=c[aa>>2]|0;ba=a+76|0;c[ba>>2]=c[aa+4>>2];c[ba+4>>2]=$}while(0);if((c[T>>2]|0)<=0){f=0;break a}f=c[U>>2]|0;if(!f){f=0;break a}b=c[fa+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[da>>2]=243337;c[da+4>>2]=196722;c[da+8>>2]=995;gi(0,0,229320,da);Tb()}while(0);gi(a,16,241929,ca);f=-22}}else f=-12;while(0);b=c[ha>>2]|0;if(b|0?c[b+116>>2]&2|0:0)Ld[c[b+96>>2]&31](a)|0;if(c[fa+44>>2]|0?c[fa+56>>2]|0:0)Hi(c[a+24>>2]|0);Hi(a);Rj(a+684|0);Ri(ia);ci(a+24|0);b=c[ea>>2]|0;if(b|0){Rj(b+12|0);Rj((c[ea>>2]|0)+100|0);Rj((c[ea>>2]|0)+76|0);Ii((c[ea>>2]|0)+68|0);Ii((c[ea>>2]|0)+40|0);Ii((c[ea>>2]|0)+24|0);ci((c[ea>>2]|0)+16|0)}ci(ea);c[ha>>2]=0}while(0);dV(fa);if(ga){Ri(e);c[e>>2]=c[ia>>2]}}else f=-22}else f=0;while(0);l=ja;return f|0}function fV(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)HZ(255324)|0;return}function gV(a,b){a=a|0;b=b|0;return (a|0?a:b)|0}function hV(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=iV(c[a+16>>2]|0)|0;if(!b){b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+344>>2]|0;a=c[a+348>>2]|0;b=uZ(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=uZ(b|0,y|0,a|0,((a|0)<0)<<31>>31|0)|0;a=y;break a}}default:{a=0;b=0}}while(0);y=a;return b|0}function iV(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=jV(a)|0}return a|0}function jV(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86070)switch(a|0){case 86071:case 86070:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function kV(){lV(0);return}function lV(a){a=a|0;xb(52784,243394);mb(52800,243399,1,1,0);tb(52808,243404,1,-128,127);tb(52824,243409,1,-128,127);tb(52816,243421,1,0,255);tb(52832,243435,2,-32768,32767);tb(52840,243441,2,0,65535);tb(52848,243456,4,-2147483648,2147483647);tb(52856,243460,4,0,-1);tb(52864,243473,4,-2147483648,2147483647);tb(52872,243478,4,0,-1);sb(52880,243492,4);sb(52888,243498,8);vb(16,243505);vb(48400,243517);wb(48424,4,243550);rb(40,243563);ub(48448,0,243579);ub(48456,0,243609);ub(48464,1,243646);ub(48472,2,243685);ub(48480,3,243716);ub(48488,4,243756);ub(48496,5,243785);ub(48504,4,243823);ub(48512,5,243853);ub(48456,0,243892);ub(48464,1,243924);ub(48472,2,243957);ub(48480,3,243990);ub(48488,4,244024);ub(48496,5,244057);ub(48520,6,244091);ub(48528,7,244122);ub(48536,7,244154);return}function mV(a){a=a|0;return qX(c[a+4>>2]|0)|0}function nV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=y;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;o=c[63838]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=255392+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[63838]=o&~(1<>2]=a;c[d>>2]=g}x=b<<3;c[e+4>>2]=x|3;x=e+x+4|0;c[x>>2]=c[x>>2]|1;x=f;l=y;return x|0}n=c[63840]|0;if(k>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=255392+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}x=e<<3;h=x-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+x>>2]=h;if(n|0){e=c[63843]|0;b=n>>>3;d=255392+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[63840]=h;c[63843]=f;x=i;l=y;return x|0}g=c[63839]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[255656+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=255656+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[63839]=g&~(1<>2]|0)==(i|0)?x:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){x=j+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(n|0){e=c[63843]|0;b=n>>>3;d=255392+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[63840]=j;c[63843]=h}x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[63839]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;s=a<>>16&4;s=s<>>16&2;j=14-(i|o|j)+(s<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[255656+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;s=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=d;f=0;s=65;break a}else{a=d;f=h}s=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(s|0)==0|(s|0)==(d|0)?g:s;if(!d){d=g;s=61;break}else i=i<<1}}while(0);if((s|0)==61){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>h;g=o>>>5&8;o=o>>>g;i=o>>>2&4;o=o>>>i;j=o>>>1&2;o=o>>>j;d=o>>>1&1;a=0;d=c[255656+((g|h|i|j|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else s=65}if((s|0)==65){g=d;while(1){o=(c[g+4>>2]&-8)-k|0;d=o>>>0>>0;f=d?o:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[63840]|0)-k|0)>>>0:0)?(n=i+k|0,n>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{x=c[i+8>>2]|0;c[x+12>>2]=b;c[b+8>>2]=x}while(0);do if(g){a=c[i+28>>2]|0;d=255656+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<>2]|0)==(i|0)?x:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){x=h+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[n+4>>2]=h|1;c[n+h>>2]=h;b=h>>>3;if(h>>>0<256){d=255392+(b<<1<<2)|0;a=c[63838]|0;b=1<>2]|0}c[a>>2]=n;c[b+12>>2]=n;c[n+8>>2]=b;c[n+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;d=14-(v|w|d)+(x<>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=255656+(d<<2)|0;c[n+28>>2]=d;a=n+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break b}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=n;c[w>>2]=n;c[n+8>>2]=x;c[n+12>>2]=b;c[n+24>>2]=0}while(0);x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=-1;while(0);d=c[63840]|0;if(d>>>0>=o>>>0){b=d-o|0;a=c[63843]|0;if(b>>>0>15){x=a+o|0;c[63843]=x;c[63840]=b;c[x+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=o|3}else{c[63840]=0;c[63843]=0;c[a+4>>2]=d|3;x=a+d+4|0;c[x>>2]=c[x>>2]|1}x=a+8|0;l=y;return x|0}h=c[63841]|0;if(h>>>0>o>>>0){v=h-o|0;c[63841]=v;x=c[63844]|0;w=x+o|0;c[63844]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}if(!(c[63956]|0)){c[63958]=4096;c[63957]=4096;c[63959]=-1;c[63960]=-1;c[63961]=0;c[63949]=0;c[63956]=p&-16^1431655768;a=4096}else a=c[63958]|0;i=o+48|0;j=o+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=o>>>0){x=0;l=y;return x|0}a=c[63948]|0;if(a|0?(n=c[63946]|0,p=n+k|0,p>>>0<=n>>>0|p>>>0>a>>>0):0){x=0;l=y;return x|0}d:do if(!(c[63949]&4)){d=c[63844]|0;e:do if(d){e=255800;while(1){p=c[e>>2]|0;if(p>>>0<=d>>>0?(p+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){s=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=JZ(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;s=145;break d}}else{e=a;s=136}}else b=0}else s=128;while(0);do if((s|0)==128){d=JZ(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[63957]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+k|0,q=c[63946]|0,r=b+q|0,b>>>0>o>>>0&b>>>0<2147483647):0){p=c[63948]|0;if(p|0?r>>>0<=q>>>0|r>>>0>p>>>0:0){b=0;break}a=JZ(b|0)|0;if((a|0)==(d|0)){h=b;g=d;s=145;break d}else{e=a;s=136}}else b=0}while(0);do if((s|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;s=145;break d}a=c[63958]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;s=145;break d}if((JZ(a|0)|0)==(-1|0)){JZ(d|0)|0;b=0;break}else{h=a+b|0;g=e;s=145;break d}}while(0);c[63949]=c[63949]|4;s=143}else{b=0;s=143}while(0);if(((s|0)==143?k>>>0<2147483647:0)?(v=JZ(k|0)|0,r=JZ(0)|0,t=r-v|0,u=t>>>0>(o+40|0)>>>0,!((v|0)==(-1|0)|u^1|v>>>0>>0&((v|0)!=(-1|0)&(r|0)!=(-1|0))^1)):0){h=u?t:b;g=v;s=145}if((s|0)==145){b=(c[63946]|0)+h|0;c[63946]=b;if(b>>>0>(c[63947]|0)>>>0)c[63947]=b;j=c[63844]|0;f:do if(j){b=255800;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){s=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((s|0)==154?(w=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[w>>2]=d+h;x=(c[63841]|0)+h|0;v=j+8|0;v=(v&7|0)==0?0:0-v&7;w=j+v|0;v=x-v|0;c[63844]=w;c[63841]=v;c[w+4>>2]=v|1;c[j+x+4>>2]=40;c[63845]=c[63960];break}if(g>>>0<(c[63842]|0)>>>0)c[63842]=g;d=g+h|0;b=255800;while(1){if((c[b>>2]|0)==(d|0)){s=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((s|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;n=b+4|0;c[n>>2]=(c[n>>2]|0)+h;n=g+8|0;n=g+((n&7|0)==0?0:0-n&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=n+o|0;i=b-n-o|0;c[n+4>>2]=o|3;g:do if((j|0)==(b|0)){x=(c[63841]|0)+i|0;c[63841]=x;c[63844]=k;c[k+4>>2]=x|1}else{if((c[63843]|0)==(b|0)){x=(c[63840]|0)+i|0;c[63840]=x;c[63843]=k;c[k+4>>2]=x|1;c[k+x>>2]=x;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[63838]=c[63838]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{x=c[b+8>>2]|0;c[x+12>>2]=a;c[a+8>>2]=x}while(0);if(!g)break;d=c[b+28>>2]|0;e=255656+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){x=g+16|0;c[((c[x>>2]|0)==(b|0)?x:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[63839]=c[63839]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=255392+(b<<1<<2)|0;a=c[63838]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=255656+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[63839]|0;d=1<>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=k;c[w>>2]=k;c[k+8>>2]=x;c[k+12>>2]=b;c[k+24>>2]=0}while(0);x=n+8|0;l=y;return x|0}b=255800;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(x=a+(c[b+4>>2]|0)|0,x>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=x+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=d-v|0;c[63844]=w;c[63841]=v;c[w+4>>2]=v|1;c[g+d+4>>2]=40;c[63845]=c[63960];d=a+4|0;c[d>>2]=27;c[b>>2]=c[63950];c[b+4>>2]=c[63951];c[b+8>>2]=c[63952];c[b+12>>2]=c[63953];c[63950]=g;c[63951]=h;c[63953]=0;c[63952]=b;b=a+24|0;do{w=b;b=b+4|0;c[b>>2]=7}while((w+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=255392+(b<<1<<2)|0;a=c[63838]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=255656+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[63839]|0;a=1<>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=j;c[w>>2]=j;c[j+8>>2]=x;c[j+12>>2]=b;c[j+24>>2]=0}}else{x=c[63842]|0;if((x|0)==0|g>>>0>>0)c[63842]=g;c[63950]=g;c[63951]=h;c[63953]=0;c[63847]=c[63956];c[63846]=-1;c[63851]=255392;c[63850]=255392;c[63853]=255400;c[63852]=255400;c[63855]=255408;c[63854]=255408;c[63857]=255416;c[63856]=255416;c[63859]=255424;c[63858]=255424;c[63861]=255432;c[63860]=255432;c[63863]=255440;c[63862]=255440;c[63865]=255448;c[63864]=255448;c[63867]=255456;c[63866]=255456;c[63869]=255464;c[63868]=255464;c[63871]=255472;c[63870]=255472;c[63873]=255480;c[63872]=255480;c[63875]=255488;c[63874]=255488;c[63877]=255496;c[63876]=255496;c[63879]=255504;c[63878]=255504;c[63881]=255512;c[63880]=255512;c[63883]=255520;c[63882]=255520;c[63885]=255528;c[63884]=255528;c[63887]=255536;c[63886]=255536;c[63889]=255544;c[63888]=255544;c[63891]=255552;c[63890]=255552;c[63893]=255560;c[63892]=255560;c[63895]=255568;c[63894]=255568;c[63897]=255576;c[63896]=255576;c[63899]=255584;c[63898]=255584;c[63901]=255592;c[63900]=255592;c[63903]=255600;c[63902]=255600;c[63905]=255608;c[63904]=255608;c[63907]=255616;c[63906]=255616;c[63909]=255624;c[63908]=255624;c[63911]=255632;c[63910]=255632;c[63913]=255640;c[63912]=255640;x=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=x-v|0;c[63844]=w;c[63841]=v;c[w+4>>2]=v|1;c[g+x+4>>2]=40;c[63845]=c[63960]}while(0);b=c[63841]|0;if(b>>>0>o>>>0){v=b-o|0;c[63841]=v;x=c[63844]|0;w=x+o|0;c[63844]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}}c[(zV()|0)>>2]=12;x=0;l=y;return x|0}function oV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[63842]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[63843]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[63840]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[63838]=c[63838]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=255656+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[63839]=c[63839]&~(1<>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[63844]|0)==(j|0)){j=(c[63841]|0)+b|0;c[63841]=j;c[63844]=i;c[i+4>>2]=j|1;if((i|0)!=(c[63843]|0))return;c[63843]=0;c[63840]=0;return}if((c[63843]|0)==(j|0)){j=(c[63840]|0)+b|0;c[63840]=j;c[63843]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[63838]=c[63838]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=255656+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[63839]=c[63839]&~(1<>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[63843]|0)){c[63840]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=255392+(a<<1<<2)|0;b=c[63838]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;e=14-(g|h|e)+(j<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=255656+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[63839]|0;d=1<>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[63846]|0)+-1|0;c[63846]=j;if(j|0)return;a=255808;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[63846]=-1;return}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=nV(b)|0;return b|0}if(b>>>0>4294967231){c[(zV()|0)>>2]=12;b=0;return b|0}d=qV(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=nV(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;DZ(d|0,a|0,(e>>>0>>0?e:b)|0)|0;oV(a);b=d;return b|0}function qV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[63958]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;rV(k,d);return a|0}if((c[63844]|0)==(i|0)){k=(c[63841]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[63844]=e;c[63841]=d;return a|0}if((c[63843]|0)==(i|0)){e=(c[63840]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[63840]=d;c[63843]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[63838]=c[63838]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=255656+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[63839]=c[63839]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;rV(i,k);return a|0}return 0}function rV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[63843]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[63840]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[63838]=c[63838]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=255656+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[63839]=c[63839]&~(1<>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[63844]|0)==(i|0)){i=(c[63841]|0)+b|0;c[63841]=i;c[63844]=h;c[h+4>>2]=i|1;if((h|0)!=(c[63843]|0))return;c[63843]=0;c[63840]=0;return}if((c[63843]|0)==(i|0)){i=(c[63840]|0)+b|0;c[63840]=i;c[63843]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[63838]=c[63838]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=255656+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[63839]=c[63839]&~(1<>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[63843]|0)){c[63840]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=255392+(b<<1<<2)|0;a=c[63838]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;e=14-(d|g|e)+(i<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=255656+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[63839]|0;d=1<>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function sV(a,b){a=a|0;b=b|0;if(a>>>0<9){b=nV(b)|0;return b|0}else{b=tV(a,b)|0;return b|0}return 0}function tV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){c[(zV()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=nV(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;rV(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;rV(f,i)}i=b+8|0;return i|0}function uV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{b=tV(b>>>0>16?b:16,d)|0;break}}else b=nV(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function vV(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=AV(c[a+60>>2]|0)|0;a=yV(jb(6,d|0)|0)|0;l=b;return a|0}function wV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=o+16|0;g=o;f=o+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=yV(eb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;q=c[f+4>>2]|0;p=g>>>0>q>>>0;f=p?f+8|0:f;b=b+(p<<31>>31)|0;q=g-(p?q:0)|0;c[f>>2]=(c[f>>2]|0)+q;p=f+4|0;c[p>>2]=(c[p>>2]|0)-q;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=yV(eb(146,k|0)|0)|0;if((e|0)==(g|0)){n=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else n=3;while(0);if((n|0)==3){q=c[a+44>>2]|0;c[a+16>>2]=q+(c[a+48>>2]|0);c[i>>2]=q;c[j>>2]=q}l=o;return d|0}function xV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((yV(db(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function yV(a){a=a|0;if(a>>>0>4294963200){c[(zV()|0)>>2]=0-a;a=-1}return a|0}function zV(){return 255912}function AV(a){a=a|0;return a|0}function BV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,ib(54,f|0)|0):0)a[b+75>>0]=-1;f=wV(b,d,e)|0;l=g;return f|0}function CV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;DV(h,0);d=EV(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function DV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function EV(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(zV()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0}while((GV(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=FV(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0;if((d[244690+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){DV(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[244690+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;DV(b,0);c[(zV()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=FV(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=uZ(i|0,m|0,10,0)|0;k=y;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=oZ(f|0,k|0,e|0,l|0)|0;m=y;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=FV(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[244946+((o*23|0)>>>5&7)>>0]|0;f=a[244690+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=FV(b)|0;f=a[244690+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=yZ(-1,-1,n|0)|0;m=y;if(o>>>0<=k>>>0|(m>>>0>>0|(m|0)==(e|0)&l>>>0>>0)){f=o;n=76;break}while(1){i=zZ(i|0,e|0,n|0)|0;e=y;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=FV(b)|0;f=a[244690+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[244690+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(N(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=FV(b)|0;e=a[244690+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=wZ(-1,-1,o|0,0)|0;n=y;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=uZ(i|0,e|0,o|0,0)|0;l=y;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=oZ(k|0,l|0,f|0,0)|0;e=y;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=FV(b)|0;f=a[244690+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[244690+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0}while(f>>>0>(d[244690+i>>0]|0)>>>0);c[(zV()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(zV()|0)>>2]=34;g=oZ(g|0,h|0,-1,-1)|0;h=y;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(zV()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=pZ(i^j|0,e^g|0,j|0,g|0)|0;h=y}while(0);y=h;return g|0}function FV(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=HV(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function GV(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function HV(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;if((IV(a)|0)==0?(Nd[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function IV(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&15](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;c=CV(a,b,c,0,-2147483648)|0;return c|0}function KV(a,b,c){a=a|0;b=b|0;c=c|0;c=CV(a,b,c,-1,0)|0;return c|0}function LV(a,b,c){a=a|0;b=b|0;c=c|0;c=CV(a,b,c,-2147483648,0)|0;return c|0}function MV(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;o=r+16|0;p=r+8|0;q=r;h[j>>3]=a;u=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0>>0|(g|0)==(f|0)&u>>>0>>0;t=i?e:u;s=i?f:g;e=i?u:e;f=i?g:f;g=yZ(t|0,s|0,52)|0;i=yZ(e|0,f|0,52)|0;c[j>>2]=t;c[j+4>>2]=s;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{u=(i|0)<573;d=u?1.90109156629516e-211:1.0;b=u?a*5260135901548373507240989.0e186:a;a=u?k*5260135901548373507240989.0e186:k}NV(n,o,b);NV(p,q,a);a=d*+B(+(+h[q>>3]+ +h[o>>3]+ +h[p>>3]+ +h[n>>3]))}}else a=k;while(0);l=r;return +a}function NV(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function OV(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function PV(a){a=+a;var b=0;h[j>>3]=a;b=c[j+4>>2]&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+RV(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+K(+a);a=(a+1.0/a)*.5;break}else{a=+SV(a);break}while(0);return +a}function QV(a){a=+a;var b=0.0,d=0,e=0.0;h[j>>3]=a;d=c[j+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=d;b=+h[j>>3];do if(d>>>0<1082535490){b=+RV(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+SV(b);while(0);return +a}function RV(a){a=+a;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0,k=0,l=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;d=yZ(c[j>>2]|0,d|0,63)|0;do if(b>>>0>1078159481){i=TV(a)|0;b=y&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&i>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{g=0.0;i=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){g=e-f;a=g;g=e-g-f;i=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!i){a=a-(a*f-e);break}f=a*(f-g)-g-e;switch(i|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=zZ(i+1023|0,0,52)|0;k=y;c[j>>2]=d;c[j+4>>2]=k;g=+h[j>>3];if(i>>>0>56){a=a-f+1.0;a=((i|0)==1024?a*2.0*8988465674311579538646525.0e283:a*g)+-1.0;break a}b=zZ(1023-i|0,0,52)|0;d=y;if((i|0)<20){c[j>>2]=b;c[j+4>>2]=d;e=1.0-+h[j>>3];a=a-f}else{c[j>>2]=b;c[j+4>>2]=d;e=a-(f+ +h[j>>3]);a=1.0}a=(e+a)*g;break a}}}while(0);return +a}function SV(a){a=+a;return +(+K(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function TV(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function UV(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function VV(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function WV(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function XV(a){a=a|0;return (a+-48|0)>>>0<10|0}function YV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=ZV(a,b,f)|0;l=e;return d|0}function ZV(a,b,c){a=a|0;b=b|0;c=c|0;return _V(a,2147483647,b,c)|0}function _V(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=o+124|0;n=o;h=n;i=170244;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(zV()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[n+48>>2]=k;g=n+20|0;c[g>>2]=b;c[n+44>>2]=b;d=b+k|0;b=n+16|0;c[b>>2]=d;c[n+28>>2]=d;d=$V(n,e,f)|0;if(k){n=c[g>>2]|0;a[n+(((n|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=o;return d|0}function $V(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+224|0;if((l|0)>=(m|0))W(224);o=t+120|0;p=t+80|0;r=t;s=t+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((aW(0,d,o,r,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)q=bW(b)|0;else q=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=s;i=b+28|0;c[i>>2]=s;j=b+20|0;c[j>>2]=s;c[f>>2]=80;k=b+16|0;c[k>>2]=s+80;e=aW(b,d,o,r,p)|0;if(h){Nd[c[b+36>>2]&15](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=aW(b,d,o,r,p)|0;f=c[b>>2]|0;c[b>>2]=f|n;if(q|0)cW(b);e=(f&32|0)==0?e:-1}l=t;return e|0}function aW(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+64|0;if((l|0)>=(m|0))W(64);E=J+16|0;F=J;B=J+24|0;H=J+8|0;I=J+20|0;c[E>>2]=e;x=(d|0)!=0;z=B+40|0;A=z;B=B+39|0;C=H+4|0;j=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(zV()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);t=c[E>>2]|0;j=a[t>>0]|0;if(!(j<<24>>24)){w=94;break a}k=t;b:while(1){switch(j<<24>>24){case 37:{w=10;break b}case 0:{j=k;break b}default:{}}v=k+1|0;c[E>>2]=v;j=a[v>>0]|0;k=v}c:do if((w|0)==10){w=0;j=k;do{if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[E>>2]=k}while((a[k>>0]|0)==37)}while(0);j=j-t|0;if(x)dW(d,t,j)}while((j|0)!=0);v=(XV(a[(c[E>>2]|0)+1>>0]|0)|0)==0;k=c[E>>2]|0;if(!v?(a[k+2>>0]|0)==36:0){r=(a[k+1>>0]|0)+-48|0;p=1;j=3}else{r=-1;p=n;j=1}j=k+j|0;c[E>>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0;if(n>>>0>31|(1<>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0}while(!(n>>>0>31|(1<>24==42){if((XV(a[j+1>>0]|0)|0)!=0?(G=c[E>>2]|0,(a[G+2>>0]|0)==36):0){j=G+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;n=1;k=G+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);j=c[v>>2]|0;c[f>>2]=v+4}else j=0;n=0;k=(c[E>>2]|0)+1|0}c[E>>2]=k;v=(j|0)<0;u=v?0-j|0:j;o=v?o|8192:o;v=n}else{j=eW(E)|0;if((j|0)<0){e=-1;break}u=j;v=p;k=c[E>>2]|0}do if((a[k>>0]|0)==46){j=k+1|0;if((a[j>>0]|0)!=42){c[E>>2]=j;j=eW(E)|0;k=c[E>>2]|0;break}if(XV(a[k+2>>0]|0)|0?(D=c[E>>2]|0,(a[D+3>>0]|0)==36):0){j=D+2|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=D+4|0;c[E>>2]=k;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);j=c[s>>2]|0;c[f>>2]=s+4}else j=0;k=(c[E>>2]|0)+2|0;c[E>>2]=k}else j=-1;while(0);s=0;while(1){if(((a[k>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=k;k=k+1|0;c[E>>2]=k;n=a[(a[n>>0]|0)+-65+(244955+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(r|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(r<<2)>>2]=p;q=g+(r<<3)|0;r=c[q+4>>2]|0;w=F;c[w>>2]=c[q>>2];c[w+4>>2]=r;w=54;break}if(!x){e=0;break a}fW(F,p,f);k=c[E>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else j=0}d:do if((w|0)==55){w=0;k=a[k+-1>>0]|0;k=(s|0)!=0&(k&15|0)==3?k&-33:k;n=o&-65537;r=(o&8192|0)==0?o:n;e:do switch(k|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[F>>2]>>2]=e;j=0;break d}case 1:{c[c[F>>2]>>2]=e;j=0;break d}case 2:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}case 3:{b[c[F>>2]>>1]=e;j=0;break d}case 4:{a[c[F>>2]>>0]=e;j=0;break d}case 6:{c[c[F>>2]>>2]=e;j=0;break d}case 7:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}default:{j=0;break d}}case 112:{k=120;j=j>>>0>8?j:8;n=r|8;w=67;break}case 88:case 120:{n=r;w=67;break}case 111:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;q=hW(k,n,z)|0;w=A-q|0;o=0;p=245419;j=(r&8|0)==0|(j|0)>(w|0)?j:w+1|0;w=73;break}case 105:case 100:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){k=pZ(0,0,k|0,n|0)|0;n=y;o=F;c[o>>2]=k;c[o+4>>2]=n;o=1;p=245419;w=72;break e}else{o=(r&2049|0)!=0&1;p=(r&2048|0)==0?((r&1|0)==0?245419:245421):245420;w=72;break e}}case 117:{n=F;o=0;p=245419;k=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[B>>0]=c[F>>2];s=B;o=0;p=245419;q=1;j=A;break}case 109:{k=jW(c[(zV()|0)>>2]|0)|0;w=77;break}case 115:{k=c[F>>2]|0;k=(k|0)==0?245429:k;w=77;break}case 67:{c[H>>2]=c[F>>2];c[C>>2]=0;c[F>>2]=H;p=-1;w=81;break}case 83:{if(!j){lW(d,32,u,0,r);j=0;w=91}else{p=j;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=nW(d,+h[F>>3],u,j,r,k)|0;break d}default:{s=t;o=0;p=245419;q=j;n=r;j=A}}while(0);f:do if((w|0)==67){t=F;s=c[t>>2]|0;t=c[t+4>>2]|0;q=gW(s,t,z,k&32)|0;p=(n&8|0)==0|(s|0)==0&(t|0)==0;o=p?0:2;p=p?245419:245419+(k>>>4)|0;r=n;k=s;n=t;w=73}else if((w|0)==72){q=iW(k,n,z)|0;w=73}else if((w|0)==77){w=0;t=kW(k,0,j)|0;r=(t|0)==0;s=k;o=0;p=245419;q=r?j:t-k|0;j=r?k+j|0:t}else if((w|0)==81){w=0;o=c[F>>2]|0;j=0;while(1){k=c[o>>2]|0;if(!k)break;k=mW(I,k)|0;n=(k|0)<0;if(n|k>>>0>(p-j|0)>>>0){w=85;break}j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((w|0)==85){w=0;if(n){e=-1;break a}}lW(d,32,u,j,r);if(!j){j=0;w=91}else{n=c[F>>2]|0;o=0;while(1){k=c[n>>2]|0;if(!k){w=91;break f}k=mW(I,k)|0;o=k+o|0;if((o|0)>(j|0)){w=91;break f}dW(d,I,k);if(o>>>0>=j>>>0){w=91;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;n=(k|0)!=0|(n|0)!=0;t=(j|0)!=0|n;n=A-q+((n^1)&1)|0;s=t?q:z;q=t?((j|0)>(n|0)?j:n):0;n=(j|0)>-1?r&-65537:r;j=A}else if((w|0)==91){w=0;lW(d,32,u,j,r^8192);j=(u|0)>(j|0)?u:j;break}r=j-s|0;q=(q|0)<(r|0)?r:q;t=q+o|0;j=(u|0)<(t|0)?t:u;lW(d,32,j,t,n);dW(d,p,o);lW(d,48,j,t,n^65536);lW(d,48,q,r,0);dW(d,s,r);lW(d,32,j,t,n^8192)}while(0);n=v}g:do if((w|0)==94)if(!d)if(!n)e=0;else{e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;fW(g+(e<<3)|0,j,f);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);l=J;return e|0}function bW(a){a=a|0;return 0}function cW(a){a=a|0;return}function dW(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))AW(b,d,a)|0;return}function eW(b){b=b|0;var d=0,e=0;if(!(XV(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((XV(a[e>>0]|0)|0)!=0)}return d|0}function fW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function gW(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[245467+(b&15)>>0]|0|f;b=yZ(b|0,c|0,4)|0;c=y}while(!((b|0)==0&(c|0)==0));return e|0}function hW(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=yZ(b|0,c|0,3)|0;c=y}while(!((b|0)==0&(c|0)==0));return d|0}function iW(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=wZ(b|0,c|0,10,0)|0;f=c;c=y;g=uZ(b|0,c|0,10,0)|0;g=pZ(e|0,f|0,g|0,y|0)|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function jW(a){a=a|0;return vW(a,c[(uW()|0)+188>>2]|0)|0}function kW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=N(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function lW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;if((l|0)>=(m|0))W(256);f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;FZ(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{dW(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}dW(a,f,e)}l=g;return}function mW(a,b){a=a|0;b=b|0;if(!a)a=0;else a=rW(a,b,0)|0;return a|0}function nW(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+560|0;if((l|0)>=(m|0))W(560);n=I+8|0;w=I;H=I+524|0;G=H;o=I+512|0;c[w>>2]=0;F=o+12|0;oW(e)|0;j=y;if((j|0)<0){e=-e;oW(e)|0;E=1;D=245436;j=y}else{E=(h&2049|0)!=0&1;D=(h&2048|0)==0?((h&1|0)==0?245437:245442):245439}do if(0==0&(j&2146435072|0)==2146435072){H=(i&32|0)!=0;j=E+3|0;lW(b,32,f,j,h&-65537);dW(b,D,E);dW(b,e!=e|0.0!=0.0?(H?247386:245463):H?245455:245459,3);lW(b,32,f,j,h^8192)}else{s=+pW(e,w)*2.0;j=s!=0.0;if(j)c[w>>2]=(c[w>>2]|0)+-1;v=i|32;if((v|0)==97){q=i&32;t=(q|0)==0?D:D+9|0;r=E|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[t>>0]|0)==45){e=-(e+(-s-e));break}else{e=s+e-e;break}}else e=s;while(0);k=c[w>>2]|0;j=(k|0)<0?0-k|0:k;j=iW(j,((j|0)<0)<<31>>31,F)|0;if((j|0)==(F|0)){j=o+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;p=j+-2|0;a[p>>0]=i+15;k=(g|0)<1;n=(h&8|0)==0;o=H;do{E=~~e;j=o+1|0;a[o>>0]=q|d[245467+E>>0];e=(e-+(E|0))*16.0;if((j-G|0)==1?!(n&(k&e==0.0)):0){a[j>>0]=46;o=o+2|0}else o=j}while(e!=0.0);if((g|0)!=0?(-2-G+o|0)<(g|0):0){k=F;n=p;j=g+2+k-n|0}else{k=F;n=p;j=k-G-n+o|0}F=j+r|0;lW(b,32,f,F,h);dW(b,t,r);lW(b,48,f,F,h^65536);G=o-G|0;dW(b,H,G);H=k-n|0;lW(b,48,j-(G+H)|0,0,0);dW(b,p,H);lW(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[w>>2]|0)+-28|0;c[w>>2]=j;e=s*268435456.0}else{e=s;j=c[w>>2]|0}C=(j|0)<0?n:n+288|0;n=C;do{A=~~e>>>0;c[n>>2]=A;n=n+4|0;e=(e-+(A>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){q=C;while(1){p=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=q>>>0){o=0;do{x=zZ(c[j>>2]|0,0,p|0)|0;x=oZ(x|0,y|0,o|0,0)|0;z=y;o=wZ(x|0,z|0,1e9,0)|0;A=uZ(o|0,y|0,1e9,0)|0;A=pZ(x|0,z|0,A|0,y|0)|0;c[j>>2]=A;j=j+-4|0}while(j>>>0>=q>>>0);if(o){A=q+-4|0;c[A>>2]=o;o=A}else o=q}else o=q;a:do if(n>>>0>o>>>0){j=n;while(1){n=j+-4|0;if(c[n>>2]|0){n=j;break a}if(n>>>0>o>>>0)j=n;else break}}while(0);j=(c[w>>2]|0)-p|0;c[w>>2]=j;if((j|0)>0)q=o;else break}}else o=C;if((j|0)<0){g=((k+25|0)/9|0)+1|0;u=(v|0)==102;do{t=0-j|0;t=(t|0)<9?t:9;if(o>>>0>>0){p=(1<>>t;r=0;j=o;do{A=c[j>>2]|0;c[j>>2]=(A>>>t)+r;r=N(A&p,q)|0;j=j+4|0}while(j>>>0>>0);o=(c[o>>2]|0)==0?o+4|0:o;if(r){c[n>>2]=r;n=n+4|0}}else o=(c[o>>2]|0)==0?o+4|0:o;j=u?C:o;n=(n-j>>2|0)>(g|0)?j+(g<<2)|0:n;j=(c[w>>2]|0)+t|0;c[w>>2]=j}while((j|0)<0);u=o}else u=o;A=C;if(u>>>0>>0){j=(A-u>>2)*9|0;p=c[u>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else j=0;x=(v|0)==103;z=(k|0)!=0;o=k-((v|0)==102?0:j)+((z&x)<<31>>31)|0;if((o|0)<(((n-A>>2)*9|0)+-9|0)){w=o+9216|0;o=(w|0)/9|0;g=C+4+(o+-1024<<2)|0;o=w-(o*9|0)|0;if((o|0)<8){p=10;while(1){p=p*10|0;if((o|0)<7)o=o+1|0;else break}}else p=10;r=c[g>>2]|0;o=(r>>>0)/(p>>>0)|0;t=r-(N(o,p)|0)|0;q=(g+4|0)==(n|0);if(!(q&(t|0)==0)){s=(o&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;e=t>>>0>>0?.5:q&(t|0)==(w|0)?1.0:1.5;if(E){w=(a[D>>0]|0)==45;e=w?-e:e;s=w?-s:s}o=r-t|0;c[g>>2]=o;if(s+e!=s){w=o+p|0;c[g>>2]=w;if(w>>>0>999999999){p=g;j=u;while(1){o=p+-4|0;c[p>>2]=0;if(o>>>0>>0){j=j+-4|0;c[j>>2]=0}w=(c[o>>2]|0)+1|0;c[o>>2]=w;if(w>>>0>999999999)p=o;else{p=j;break}}}else{o=g;p=u}j=(A-p>>2)*9|0;r=c[p>>2]|0;if(r>>>0>=10){q=10;do{q=q*10|0;j=j+1|0}while(r>>>0>=q>>>0)}}else{o=g;p=u}}else{o=g;p=u}w=o+4|0;n=n>>>0>w>>>0?w:n}else p=u;g=0-j|0;b:do if(n>>>0>p>>>0)while(1){o=n+-4|0;if(c[o>>2]|0){w=n;v=1;break b}if(o>>>0>p>>>0)n=o;else{w=o;v=0;break}}else{w=n;v=0}while(0);do if(x){k=k+((z^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){q=i+-1|0;k=k+-1-j|0}else{q=i+-2|0;k=k+-1|0}if(!(h&8)){if(v?(B=c[w+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){o=0;n=10;do{n=n*10|0;o=o+1|0}while(!((B>>>0)%(n>>>0)|0|0))}else o=0;else o=9;n=((w-A>>2)*9|0)+-9|0;if((q|32|0)==102){i=n-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=n+j-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else q=i;while(0);u=(k|0)!=0;r=u?1:h>>>3&1;t=(q|32|0)==102;if(t){x=0;j=(j|0)>0?j:0}else{n=(j|0)<0?g:j;n=iW(n,((n|0)<0)<<31>>31,F)|0;o=F;if((o-n|0)<2)do{n=n+-1|0;a[n>>0]=48}while((o-n|0)<2);a[n+-1>>0]=(j>>31&2)+43;j=n+-2|0;a[j>>0]=q;x=j;j=o-j|0}j=E+1+k+r+j|0;lW(b,32,f,j,h);dW(b,D,E);lW(b,48,f,j,h^65536);if(t){r=p>>>0>C>>>0?C:p;t=H+9|0;p=t;q=H+8|0;o=r;do{n=iW(c[o>>2]|0,0,t)|0;if((o|0)==(r|0)){if((n|0)==(t|0)){a[q>>0]=48;n=q}}else if(n>>>0>H>>>0){FZ(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}dW(b,n,p-n|0);o=o+4|0}while(o>>>0<=C>>>0);if(!((h&8|0)==0&(u^1)))dW(b,245483,1);if(o>>>0>>0&(k|0)>0)while(1){n=iW(c[o>>2]|0,0,t)|0;if(n>>>0>H>>>0){FZ(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}dW(b,n,(k|0)<9?k:9);o=o+4|0;n=k+-9|0;if(!(o>>>0>>0&(k|0)>9)){k=n;break}else k=n}lW(b,48,k+9|0,9,0)}else{w=v?w:p+4|0;if(p>>>0>>0&(k|0)>-1){g=H+9|0;u=(h&8|0)==0;v=g;r=0-G|0;t=H+8|0;q=p;do{n=iW(c[q>>2]|0,0,g)|0;if((n|0)==(g|0)){a[t>>0]=48;n=t}do if((q|0)==(p|0)){o=n+1|0;dW(b,n,1);if(u&(k|0)<1){n=o;break}dW(b,245483,1);n=o}else{if(n>>>0<=H>>>0)break;FZ(H|0,48,n+r|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}while(0);G=v-n|0;dW(b,n,(k|0)>(G|0)?G:k);k=k-G|0;q=q+4|0}while(q>>>0>>0&(k|0)>-1)}lW(b,48,k+18|0,18,0);dW(b,x,F-x|0)}lW(b,32,f,j,h^8192)}while(0);l=I;return ((j|0)<(f|0)?f:j)|0}function oW(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function pW(a,b){a=+a;b=b|0;return +(+qW(a,b))}function qW(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=yZ(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+qW(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function rW(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(sW()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(zV()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(zV()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function sW(){return tW()|0}function tW(){return 170368}function uW(){return tW()|0}function vW(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[245485+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=245573;else{b=f;g=5}if((g|0)==5){f=245573;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return wW(f,c[e+20>>2]|0)|0}function wW(a,b){a=a|0;b=b|0;return xW(a,b)|0}function xW(a,b){a=a|0;b=b|0;if(!b)b=0;else b=yW(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function yW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=zW(c[b+8>>2]|0,o)|0;f=zW(c[b+12>>2]|0,o)|0;g=zW(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=zW(c[b+(g<<2)>>2]|0,o)|0;g=zW(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=UV(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}l=f?l:k;h=f?j:h-j|0}f=i+m|0;g=zW(c[b+(f<<2)>>2]|0,o)|0;f=zW(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function zW(a,b){a=a|0;b=b|0;var c=0;c=BZ(a|0)|0;return ((b|0)==0?a:c)|0}function AW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(BW(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&15](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=Nd[c[e+36>>2]&15](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);DZ(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function BW(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function CW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;DZ(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function DW(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=AV(a)|0;a=jb(6,d|0)|0;a=yV((a|0)==-4?0:a)|0;l=b;return a|0}function EW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+192|0;if((l|0)>=(m|0))W(192);i=t+152|0;h=t+136|0;s=t+120|0;r=t+104|0;q=t+96|0;n=t+80|0;k=t+64|0;f=t+48|0;o=t+32|0;g=t+16|0;e=t;u=t+176|0;j=t+168|0;c[u>>2]=d;d=(c[u>>2]|0)+(4-1)&~(4-1);p=c[d>>2]|0;c[u>>2]=d+4;p=(b|0)==4?p|32768:p;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=p;d=yV(fb(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=fb(221,g|0)|0;switch(d|0){case -22:{c[o>>2]=a;c[o+4>>2]=9;c[o+8>>2]=p;d=fb(221,o|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=yV(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=p;d=fb(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;fb(221,k|0)|0}d=yV(d)|0;break a}c[n>>2]=a;c[n+4>>2]=1030;c[n+8>>2]=0;d=fb(221,n|0)|0;if((d|0)==-22){c[r>>2]=a;c[r+4>>2]=0;c[r+8>>2]=p;d=fb(221,r|0)|0;if((d|0)>-1){c[s>>2]=d;c[s+4>>2]=2;c[s+8>>2]=1;fb(221,s|0)|0}d=yV(d)|0;break a}else{if((d|0)>-1){c[q>>2]=d;jb(6,q|0)|0}d=yV(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=p;d=yV(fb(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=p;d=yV(fb(221,i|0)|0)|0}}while(0);l=t;return d|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=hb(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;fb(221,g|0)|0}i=yV(e)|0;l=h;return i|0}function GW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+208|0;if((l|0)>=(m|0))W(208);j=o+8|0;k=o;h=N(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){p=g;f=f+1|0;g=b;b=p}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)HW(a,d,e,f,j);else JW(a,d,e,k,f,0,j);if((f|0)==1){KW(k,1);f=0;break}else{KW(k,b);f=1;break}}else{HW(a,d,e,f,j);IW(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}JW(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1)if(!(c[g>>2]|0))break a;else n=19;else if((f|0)<2)n=19;else{KW(k,2);p=f+-2|0;c[k>>2]=c[k>>2]^7;IW(k,1);JW(a+(0-(c[j+(p<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);KW(k,1);b=c[k>>2]|1;c[k>>2]=b;a=a+i|0;JW(a,d,e,k,p,1,j);f=p}if((n|0)==19){n=0;b=LW(k)|0;IW(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}}while(0);l=o;return}function HW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+240|0;if((l|0)>=(m|0))W(240);n=o;c[n>>2]=a;a:do if((e|0)>1){k=0-b|0;i=a;g=e;e=1;h=a;while(1){i=i+k|0;j=g+-2|0;a=i+(0-(c[f+(j<<2)>>2]|0))|0;if((Md[d&15](h,a)|0)>-1?(Md[d&15](h,i)|0)>-1:0)break a;h=n+(e<<2)|0;if((Md[d&15](a,i)|0)>-1){c[h>>2]=a;g=g+-1|0}else{c[h>>2]=i;a=i;g=j}e=e+1|0;if((g|0)<=1)break a;i=a;h=c[n>>2]|0}}else e=1;while(0);NW(b,n,e);l=o;return}function IW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function JW(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+240|0;if((l|0)>=(m|0))W(240);o=q+232|0;p=q;r=c[e>>2]|0;c[o>>2]=r;j=c[e+4>>2]|0;k=o+4|0;c[k>>2]=j;c[p>>2]=a;a:do if((r|0)!=1|(j|0)!=0?(n=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Md[d&15](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+n|0;i=c[h+(f+-2<<2)>>2]|0;if((Md[d&15](g,j)|0)>-1){i=10;break a}if((Md[d&15](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[p+(e<<2)>>2]=j;r=LW(o)|0;IW(o,r);f=r+f|0;if(!((c[o>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Md[d&15](a,c[p>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{r=j;e=g;g=1;j=a;a=r}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){NW(b,p,e);HW(a,b,d,f,h)}l=q;return}function KW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=MW(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function MW(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;while(1){a=a+1|0;if(!(b&2))b=b>>>1;else break}}else a=0;else a=32;return a|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;DZ(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;DZ(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function OW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=FV(b)|0}while((GV(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=FV(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[247377+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=FV(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[247386+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=FV(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=FV(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=FV(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(zV()|0)>>2]=22;DV(b,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=FV(b)|0;if((e|32|0)==120){g=+PW(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+QW(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(zV()|0)>>2]=22;DV(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function PW(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=a+4|0;i=c[z>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=FV(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=FV(a)|0;j=1}if((w|0)==10){i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=FV(a)|0;if((i|0)==48){l=0;j=0;do{i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=FV(a)|0;l=oZ(l|0,j|0,-1,-1)|0;j=y}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=oZ(m|0,u|0,1,0)|0;q=i;r=1;p=y}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=FV(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[z>>2]=(c[z>>2]|0)+-1;if(g){if(!i?(c[z>>2]=(c[z>>2]|0)+-1,!((s|0)==0|i)):0)c[z>>2]=(c[z>>2]|0)+-1}else DV(a,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;w=m;m=oZ(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&w>>>0<7)){m=j;break}else l=y}}else m=v;if((i|32|0)==112){j=RW(a,g)|0;i=y;if((j|0)==0&(i|0)==-2147483648){if(!g){DV(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}l=zZ(p|0,o|0,2)|0;l=oZ(l|0,y|0,-32,-1)|0;l=oZ(l|0,y|0,j|0,i|0)|0;i=y;if(!m){h=+(f|0)*0.0;break}z=0-e|0;g=((z|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>z>>>0){c[(zV()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=e+-106|0;g=((z|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(zV()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(h>=.5);j=j<<1|(z^1)&1;h=h+(z?h:h+-1.0);l=oZ(l|0,i|0,-1,-1)|0;i=y}while((j|0)>-1);n=h;m=j}else n=h;z=((b|0)<0)<<31>>31;e=pZ(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=oZ(e|0,y|0,l|0,i|0)|0;e=y;if((e|0)<(z|0)|(e|0)==(z|0)&i>>>0>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+TW(+SW(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(zV()|0)>>2]=34;h=+VW(h,l)}while(0);return +h}function QW(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;if((l|0)>=(m|0))W(512);G=J;H=f+e|0;I=0-H|0;F=a+4|0;E=a+100|0;j=0;a:while(1){switch(b|0){case 46:{C=7;break a}case 48:break;default:{w=0;r=j;j=0;q=0;break a}}b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=FV(a)|0;j=1}if((C|0)==7){b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=FV(a)|0;if((b|0)==48){j=0;b=0;while(1){j=oZ(j|0,b|0,-1,-1)|0;q=y;b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=FV(a)|0;if((b|0)==48)b=q;else{w=1;r=1;break}}}else{w=1;r=j;j=0;q=0}}c[G>>2]=0;p=b+-48|0;o=(b|0)==46;b:do if(o|p>>>0<10){D=G+496|0;x=0;n=0;u=0;z=w;B=r;C=p;r=0;p=0;c:while(1){do if(o)if(!z){z=1;j=r;q=p}else break c;else{r=oZ(r|0,p|0,1,0)|0;p=y;w=(b|0)!=48;if((n|0)>=125){if(!w)break;c[D>>2]=c[D>>2]|1;break}o=G+(n<<2)|0;if(!x)b=C;else b=b+-48+((c[o>>2]|0)*10|0)|0;c[o>>2]=b;x=x+1|0;B=(x|0)==9;x=B?0:x;n=n+(B&1)|0;u=w?r:u;B=1}while(0);b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=FV(a)|0;C=b+-48|0;o=(b|0)==46;if(!(o|C>>>0<10)){w=z;o=B;C=31;break b}}b=x;o=(B|0)!=0;C=39}else{x=0;n=0;u=0;o=r;r=0;p=0;C=31}while(0);do if((C|0)==31){D=(w|0)==0;j=D?r:j;q=D?p:q;o=(o|0)!=0;if(!(o&(b|32|0)==101))if((b|0)>-1){b=x;C=39;break}else{b=x;C=41;break}o=RW(a,h)|0;b=y;if((o|0)==0&(b|0)==-2147483648){if(!h){DV(a,0);i=0.0;break}if(!(c[E>>2]|0)){o=0;b=0}else{c[F>>2]=(c[F>>2]|0)+-1;o=0;b=0}}j=oZ(o|0,b|0,j|0,q|0)|0;b=x;q=y;C=43}while(0);if((C|0)==39)if(c[E>>2]|0){c[F>>2]=(c[F>>2]|0)+-1;if(o)C=43;else C=42}else C=41;if((C|0)==41)if(o)C=43;else C=42;do if((C|0)==42){c[(zV()|0)>>2]=22;DV(a,0);i=0.0}else if((C|0)==43){o=c[G>>2]|0;if(!o){i=+(g|0)*0.0;break}if(((p|0)<0|(p|0)==0&r>>>0<10)&((j|0)==(r|0)&(q|0)==(p|0))?(e|0)>30|(o>>>e|0)==0:0){i=+(g|0)*+(o>>>0);break}a=(f|0)/-2|0;F=((a|0)<0)<<31>>31;if((q|0)>(F|0)|(q|0)==(F|0)&j>>>0>a>>>0){c[(zV()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;F=((a|0)<0)<<31>>31;if((q|0)<(F|0)|(q|0)==(F|0)&j>>>0>>0){c[(zV()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){p=G+(n<<2)|0;o=c[p>>2]|0;while(1){o=o*10|0;if((b|0)>=8)break;else b=b+1|0}c[p>>2]=o}n=n+1|0}if((u|0)<9?(u|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[170612+(8-j<<2)>>2]|0);break}a=e+27+(N(j,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[170612+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)o=0;else{u=(j|0)>-1?b:b+9|0;q=c[170612+(8-u<<2)>>2]|0;if(n){r=1e9/(q|0)|0;p=0;o=0;b=0;do{E=G+(b<<2)|0;F=c[E>>2]|0;a=(F>>>0)/(q>>>0)|0;F=F-(N(a,q)|0)|0;a=a+p|0;c[E>>2]=a;p=N(r,F)|0;a=(b|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(n|0));if(!p)b=n;else{c[G+(n<<2)>>2]=p;b=n+1|0}}else{o=0;b=0}n=b;j=9-u+j|0}b=0;d:while(1){w=(j|0)<18;x=(j|0)==18;z=G+(o<<2)|0;while(1){if(!w){if(!x)break d;if((c[z>>2]|0)>>>0>=9007199){j=18;break d}}p=0;B=n;n=n+127|0;while(1){r=n&127;q=G+(r<<2)|0;n=zZ(c[q>>2]|0,0,29)|0;n=oZ(n|0,y|0,p|0,0)|0;p=y;if(p>>>0>0|(p|0)==0&n>>>0>1e9){u=wZ(n|0,p|0,1e9,0)|0;a=uZ(u|0,y|0,1e9,0)|0;n=pZ(n|0,p|0,a|0,y|0)|0}else u=0;c[q>>2]=n;a=(r|0)==(o|0);q=(r|0)!=(B+127&127|0)|a?B:(n|0)==0?r:B;if(a)break;else{p=u;B=q;n=r+-1|0}}b=b+-29|0;if(!u)n=B;else break}o=o+127&127;n=q+127&127;p=G+((q+126&127)<<2)|0;if((o|0)==(q|0))c[p>>2]=c[p>>2]|c[G+(n<<2)>>2];else n=B;c[G+(o<<2)>>2]=u;j=j+9|0}e:while(1){x=n+1&127;z=G+((n+127&127)<<2)|0;while(1){r=(j|0)==18;w=(j|0)>27?9:1;B=o;while(1){q=0;while(1){o=q+B&127;if((o|0)==(n|0)){C=92;break}o=c[G+(o<<2)>>2]|0;p=c[170644+(q<<2)>>2]|0;if(o>>>0

>>0){C=92;break}if(o>>>0>p>>>0)break;if((q+1|0)>>>0<2)q=1;else{C=92;break}}if((C|0)==92?(C=0,r):0)break e;b=w+b|0;if((B|0)==(n|0))B=n;else break}r=(1<>>w;q=0;o=B;p=B;do{E=G+(p<<2)|0;F=c[E>>2]|0;a=(F>>>w)+q|0;c[E>>2]=a;q=N(F&r,u)|0;a=(p|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;p=p+1&127}while((p|0)!=(n|0));if(q|0){if((x|0)!=(o|0))break;c[z>>2]=c[z>>2]|1}}c[G+(n<<2)>>2]=q;n=x}i=0.0;j=n;o=0;do{p=o+B&127;n=j+1&127;if((p|0)==(j|0)){c[G+(n+-1<<2)>>2]=0;j=n}i=i*1.0e9+ +((c[G+(p<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);v=+(g|0);k=i*v;p=b+53|0;q=p-f|0;r=(q|0)<(e|0);o=r?((q|0)>0?q:0):e;if((o|0)<53){K=+TW(+SW(1.0,105-o|0),k);s=+UW(k,+SW(1.0,53-o|0));t=K;i=s;s=K+(k-s)}else{t=0.0;i=0.0;s=k}n=B+2&127;if((n|0)!=(j|0)){n=c[G+(n<<2)>>2]|0;do if(n>>>0>=5e8){if((n|0)!=5e8){i=v*.75+i;break}if((B+3&127|0)==(j|0)){i=v*.5+i;break}else{i=v*.75+i;break}}else{if((n|0)==0?(B+3&127|0)==(j|0):0)break;i=v*.25+i}while(0);if((53-o|0)>1?!(+UW(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=s+k-t;do if((p&2147483647|0)>(-2-H|0)){H=!(+A(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(k!=0.0&(r&((o|0)!=(q|0)|H))):0)break;c[(zV()|0)>>2]=34}while(0);i=+VW(i,b)}while(0);l=J;return +i}function RW(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=FV(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=FV(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=FV(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=uZ(f|0,h|0,10,0)|0;b=y;e=oZ(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=oZ(e|0,y|0,l|0,b|0)|0;h=y;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=FV(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=FV(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;l=(g|0)==0;j=pZ(0,0,f|0,e|0)|0;f=l?f:j;e=l?e:y}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}y=e;return f|0}function SW(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=zZ(b+1023|0,0,52)|0;e=y;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function TW(a,b){a=+a;b=+b;return +(+OV(a,b))}function UW(a,b){a=+a;b=+b;return +(+WW(a,b))}function VW(a,b){a=+a;b=b|0;return +(+SW(a,b))}function WW(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=yZ(i|0,l|0,52)|0;e=e&2047;m=yZ(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=zZ(n|0,o|0,1)|0;k=y;a:do if(!((g|0)==0&(k|0)==0)?(f=XW(b)|0,d=y&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=zZ(i|0,l|0,1)|0;f=y;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=zZ(i|0,l|0,12)|0;f=y;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=zZ(d|0,f|0,1)|0;f=y}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=zZ(i|0,l|0,1-e|0)|0;g=y}else g=l&1048575|1048576;if(!m){f=zZ(n|0,o|0,12)|0;k=y;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=zZ(f|0,k|0,1)|0;k=y}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=zZ(n|0,o|0,1-d|0)|0;m=d;l=y}else l=o&1048575|1048576;f=pZ(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=zZ(f|0,d|0,1)|0;g=y;e=e+-1|0;f=pZ(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=zZ(f|0,d|0,1)|0;d=y;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=oZ(f|0,d|0,0,-1048576)|0;d=y;e=zZ(e|0,0,52)|0;d=d|y;e=o|e}else{e=yZ(f|0,d|0,1-e|0)|0;d=y}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function XW(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function YW(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function ZW(b,c){b=b|0;c=c|0;b=_W(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function _W(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(YW(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=N(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function $W(a,b){a=a|0;b=b|0;var e=0;a=aX(a)|0;if(((a|0)!=-1?(e=aX(b)|0,(e|0)!=-1):0)?(d[247390+a>>0]|0)<=207:0)a=e<<16|a;else{c[(zV()|0)>>2]=22;a=-1}return a|0}function aX(b){b=b|0;var c=0,d=0,e=0;d=(a[b>>0]|0)==0?247390:b;b=247390;while(1){if(!(bX(d,b)|0)){e=3;break}b=b+((YW(b)|0)+1)|0;c=a[b>>0]|0;if(!(c<<24>>24)){c=a[b+1>>0]|0;if((c&255)>128)c=2;else c=(((128-(c&255)|0)>>>2)*5|0)+2|0;c=b+c|0;b=c;c=a[c>>0]|0}if(!(c<<24>>24)){b=-1;break}}if((e|0)==3){if(a[b>>0]|0)do b=b+((YW(b)|0)+1)|0;while((a[b>>0]|0)!=0);b=b+1-247390|0}return b|0}function bX(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;a:do if(!(d<<24>>24)){d=0;g=9}else while(1){f=a[c>>0]|0;if(!(f<<24>>24)){g=9;break a}e=d;d=d&255;while(1){if(!((d+-48|0)>>>0>10&((d|32)+-97|0)>>>0>26)){d=e;break}b=b+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;break}else{e=d;d=d&255}}if((d|32)<<24>>24!=f<<24>>24){d=1;break a}b=b+1|0;c=c+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;g=9;break}}while(0);if((g|0)==9)d=d<<24>>24!=(a[c>>0]|0)&1;return d|0}function cX(a){a=a|0;return 0}function dX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=n;j=(g|0)==0?255916:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(c[c[(eX()|0)+188>>2]>>2]|0)==0;g=a[e>>0]|0;if(h){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[169784+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;o=b>>>3;if((o+-16|o+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[(zV()|0)>>2]=84;g=-1}l=n;return g|0}function eX(){return tW()|0}function fX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=e;e=_V(a,b,d,g)|0;l=f;return e|0}function gX(a,b){a=a|0;b=b|0;hX(a,b)|0;return a|0}function hX(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function iX(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(c[j>>2]|0)>>>0>4294967295;if(b&d>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|b){e=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(d>>>0<1016070144)a=a+1.0;else e=9;while(0);if((e|0)==9){g=a+26388279066624.0;h[j>>3]=g;e=(c[j>>2]|0)+128|0;d=e<<1&510;f=+h[48544+(d<<3)>>3];a=a-(g+-26388279066624.0)-+h[48544+((d|1)<<3)>>3];a=+SW(f+f*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(e&-256|0)/256|0)}return +a}function jX(a){a=+a;a=+kX(a);y=+A(a)>=1.0?(a>0.0?~~+O(+z(a/4294967296.0),4294967295.0)>>>0:~~+M((a-+(~~a>>>0))/4294967296.0)>>>0):0;return ~~a>>>0|0}function kX(a){a=+a;var b=0,d=0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function lX(a){a=+a;var b=0,d=0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+RV(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+RV(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+RV(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function mX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=yV(gb(3,f|0)|0)|0;l=e;return d|0}function nX(a,b){a=a|0;b=b|0;var c=0;c=YW(a)|0;return ((oX(a,1,c,b)|0)!=(c|0))<<31>>31|0}function oX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=N(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(bW(e)|0)==0;a=AW(a,f,e)|0;if(!g)cW(e)}else a=AW(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function pX(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(BW(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=n;return f|0}function qX(a){a=a|0;var b=0,c=0;b=(YW(a)|0)+1|0;c=nV(b)|0;if(!c)a=0;else a=DZ(c|0,a|0,b|0)|0;return a|0}function rX(){ab(255920);return 255928}function sX(){kb(255920);return}function tX(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=uX(a)|0;break}d=(bW(a)|0)==0;b=uX(a)|0;if(!d)cW(a)}else{if(!(c[42560]|0))b=0;else b=tX(c[42560]|0)|0;a=c[(rX()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=bW(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=uX(a)|0|b;if(d|0)cW(a);a=c[a+56>>2]|0}while((a|0)!=0);sX()}while(0);return b|0}function uX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&15](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&15](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function vX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=wX(a,b,f)|0;l=e;return d|0}function wX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=13;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=yX(e,b,d)|0;l=g;return h|0}function xX(a,b,c){a=a|0;b=b|0;c=c|0;return CX(a,b,c)|0}function yX(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=l;l=l+288|0;if((l|0)>=(m|0))W(288);I=O+8|0;J=O+17|0;K=O;L=O+16|0;if((c[b+76>>2]|0)>-1)N=bW(b)|0;else N=0;i=a[e>>0]|0;a:do if(i<<24>>24){A=b+4|0;B=b+100|0;C=b+108|0;D=b+8|0;E=J+10|0;F=J+33|0;G=J+46|0;H=J+94|0;z=I+4|0;n=e;v=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(GV(k&255)|0)){o=(a[n>>0]|0)==37;d:do if(o){k=n+1|0;p=a[k>>0]|0;e:do switch(p<<24>>24){case 37:break d;case 42:{x=0;k=n+2|0;break}default:{if(XV(p&255)|0?(a[n+2>>0]|0)==36:0){x=zX(f,(d[k>>0]|0)+-48|0)|0;k=n+3|0;break e}w=(c[f>>2]|0)+(4-1)&~(4-1);x=c[w>>2]|0;c[f>>2]=w+4}}while(0);if(!(XV(d[k>>0]|0)|0)){t=0;p=k}else{n=0;do{n=(n*10|0)+-48+(d[k>>0]|0)|0;k=k+1|0}while((XV(d[k>>0]|0)|0)!=0);t=n;p=k}o=a[p>>0]|0;r=p+1|0;if(o<<24>>24==109){k=(x|0)!=0&1;j=0;n=r;p=p+2|0;o=a[r>>0]|0;i=0}else{k=0;n=p;p=r}switch(o<<24>>24){case 104:{w=(a[p>>0]|0)==104;o=w?-2:-1;n=w?n+2|0:p;break}case 108:{w=(a[p>>0]|0)==108;o=w?3:1;n=w?n+2|0:p;break}case 106:{o=3;n=p;break}case 116:case 122:{o=1;n=p;break}case 76:{o=2;n=p;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:{o=0;break}default:{M=143;break b}}s=d[n>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:o;r=s&255;switch(r<<24>>24){case 99:{t=(t|0)>1?t:1;break}case 91:break;case 110:{AX(x,u,v,((v|0)<0)<<31>>31);o=v;break c}default:{DV(b,0);do{o=c[A>>2]|0;if(o>>>0<(c[B>>2]|0)>>>0){c[A>>2]=o+1;o=d[o>>0]|0}else o=FV(b)|0}while((GV(o)|0)!=0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}v=(c[C>>2]|0)+v+o-(c[D>>2]|0)|0}}DV(b,t);p=c[A>>2]|0;o=c[B>>2]|0;if(p>>>0>>0)c[A>>2]=p+1;else{if((FV(b)|0)<0){M=143;break b}o=c[B>>2]|0}if(o|0)c[A>>2]=(c[A>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){FZ(J|0,-1,257)|0;a[J>>0]=0;if((s|0)==115){a[F>>0]=0;a[E>>0]=0;a[E+1>>0]=0;a[E+2>>0]=0;a[E+3>>0]=0;a[E+4>>0]=0}}else{s=n+1|0;r=(a[s>>0]|0)==94;o=r&1;n=r?n+2|0:s;FZ(J|0,o|0,257)|0;a[J>>0]=0;switch(a[n>>0]|0){case 45:{r=(o^1)&255;a[G>>0]=r;n=n+1|0;break}case 93:{r=(o^1)&255;a[H>>0]=r;n=n+1|0;break}default:r=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{M=143;break b}case 93:break g;case 45:{p=n+1|0;o=a[p>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[J+n>>0]=r;o=a[p>>0]|0}while(n>>>0<(o&255)>>>0);n=p}else n=p;break}default:{}}while(0);a[J+((o&255)+1)>>0]=r;n=n+1|0}}while(0);o=w?t+1|0:31;s=(u|0)==1;u=(k|0)!=0;i:do if(s){if(u){i=nV(o<<2)|0;if(!i){j=0;i=0;M=143;break b}}else i=x;c[I>>2]=0;c[z>>2]=0;j=0;j:while(1){r=(i|0)==0;do{k:while(1){p=c[A>>2]|0;if(p>>>0<(c[B>>2]|0)>>>0){c[A>>2]=p+1;p=d[p>>0]|0}else p=FV(b)|0;if(!(a[J+(p+1)>>0]|0))break j;a[L>>0]=p;switch(dX(K,L,1,I)|0){case -1:{j=0;M=143;break b}case -2:break;default:break k}}if(!r){c[i+(j<<2)>>2]=c[K>>2];j=j+1|0}}while(!(u&(j|0)==(o|0)));o=o<<1|1;p=pV(i,o<<2)|0;if(!p){j=0;M=143;break b}else i=p}if(!(BX(I)|0)){j=0;M=143;break b}else{r=j;j=0;p=i}}else{if(u){j=nV(o)|0;if(!j){j=0;i=0;M=143;break b}i=0;while(1){r=i;do{i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0;if(!(a[J+(i+1)>>0]|0)){p=0;i=0;break i}p=r;r=r+1|0;a[j+p>>0]=i}while((r|0)!=(o|0));o=o<<1|1;p=pV(j,o)|0;if(!p){i=0;M=143;break b}else{i=r;j=p}}}if(!x)while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0;if(!(a[J+(i+1)>>0]|0)){r=0;j=0;p=0;i=0;break i}}j=0;while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=FV(b)|0;if(!(a[J+(i+1)>>0]|0)){r=j;j=x;p=0;i=0;break i}a[x+j>>0]=i;j=j+1|0}}while(0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}o=o-(c[D>>2]|0)+(c[C>>2]|0)|0;if(!o)break b;if(!((o|0)==(t|0)|w^1))break b;do if(u)if(s){c[x>>2]=p;break}else{c[x>>2]=j;break}while(0);if(!w){if(p|0)c[p+(r<<2)>>2]=0;if(!j){j=0;break f}a[j+r>>0]=0}break}case 120:case 88:case 112:{o=16;M=131;break}case 111:{o=8;M=131;break}case 117:case 100:{o=10;M=131;break}case 105:{o=0;M=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{q=+OW(b,u,0);if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if(x)switch(u|0){case 0:{g[x>>2]=q;break f}case 1:{h[x>>3]=q;break f}case 2:{h[x>>3]=q;break f}default:break f}break}default:{}}while(0);do if((M|0)==131){M=0;o=EV(b,o,0,-1,-1)|0;if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){c[x>>2]=o;break}else{AX(x,u,o,y);break}}while(0);e=e+((x|0)!=0&1)|0;o=(c[C>>2]|0)+v+(c[A>>2]|0)-(c[D>>2]|0)|0;break c}while(0);n=n+(o&1)|0;DV(b,0);k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=FV(b)|0;if((k|0)!=(d[n>>0]|0)){M=23;break b}o=v+1|0}else{while(1){k=n+1|0;if(!(GV(d[k>>0]|0)|0))break;else n=k}DV(b,0);do{k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=FV(b)|0}while((GV(k)|0)!=0);if(!(c[B>>2]|0))k=c[A>>2]|0;else{k=(c[A>>2]|0)+-1|0;c[A>>2]=k}o=(c[C>>2]|0)+v+k-(c[D>>2]|0)|0}while(0);n=n+1|0;k=a[n>>0]|0;if(!(k<<24>>24))break a;else v=o}if((M|0)==23){if(c[B>>2]|0)c[A>>2]=(c[A>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{k=0;e=j;M=144}}else if((M|0)==143)if(!e){e=j;M=144}if((M|0)==144){j=e;e=-1}if(k){oV(j);oV(i)}}else e=0;while(0);if(N|0)cW(b);l=O;return e|0}function zX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function AX(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function BX(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function CX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=kW(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;DZ(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function DX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=$V(a,b,f)|0;l=e;return d|0}function EX(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=ZW(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=FX(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=GX(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=HX(b,c)|0;break}else{b=IX(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function FX(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function GX(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function HX(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function IX(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+1056|0;if((l|0)>=(m|0))W(1056);w=y+1024|0;x=y;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){r=0;do{if(!(a[b+r>>0]|0)){f=0;break a}v=f&255;u=w+(v>>>5<<2)|0;c[u>>2]=c[u>>2]|1<<(v&31);r=r+1|0;c[x+(v<<2)>>2]=r;f=a[e+r>>0]|0}while(f<<24>>24!=0);o=r>>>0>1;if(o){k=1;j=1;n=0;i=-1;p=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+p>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+n|0;break}else{h=k;f=j+1|0;g=n;break}else if((f&255)>(g&255)){h=p-i|0;f=1;g=p;break}else{h=1;f=1;g=n+1|0;i=n;break}while(0);p=f+g|0;if(p>>>0>=r>>>0)break;else{k=h;j=f;n=g}}if(o){o=1;n=1;p=0;g=-1;q=1;while(1){f=a[e+(n+g)>>0]|0;j=a[e+q>>0]|0;do if(f<<24>>24==j<<24>>24)if((n|0)==(o|0)){f=o;j=1;k=o+p|0;break}else{f=o;j=n+1|0;k=p;break}else if((f&255)<(j&255)){f=q-g|0;j=1;k=q;break}else{f=1;j=1;k=p+1|0;g=p;break}while(0);q=j+k|0;if(q>>>0>=r>>>0){v=r;j=25;break}else{o=f;n=j;p=k}}}else{v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){t=(g+1|0)>>>0>(i+1|0)>>>0;f=t?f:h;t=t?g:i;u=t+1|0;if(!(VV(e,e+f|0,u)|0)){o=v-f|0;s=o;n=f}else{o=v-t+-1|0;o=(t>>>0>o>>>0?t:o)+1|0;s=0;n=o;o=v-o|0}p=v|63;q=v+-1|0;r=(s|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0>>0){i=kW(g,0,p)|0;if(i)if((i-h|0)>>>0>>0){f=0;break b}else break;else{i=g+p|0;break}}else i=g;while(0);g=d[f+q>>0]|0;c:do if(!(1<<(g&31)&c[w+(g>>>5<<2)>>2])){h=0;g=v}else{g=v-(c[x+(g<<2)>>2]|0)|0;if(g|0){h=0;g=r&(k|0)!=0&g>>>0>>0?o:g;break}j=u>>>0>k>>>0;g=j?u:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-t|0;break c}while(0);if(!j)break b;g=u;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=s;g=n;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);l=y;return f|0}function JX(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function KX(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(bW(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=pX(d,b)|0;cW(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=pX(d,b)|0}while(0);return e|0}function LX(a,b){a=a|0;b=b|0;return +(+MX(a,b,1))}function MX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;DV(h,0);e=+OW(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=(d|0)==0?a:a+d|0;l=i;return +e}function NX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(N(g,d)|0)|0;f=Md[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function OX(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(yV(ib(54,d|0)|0)|0)==0&1;l=b;return a|0}function PX(){Va(255948);return}function QX(){return 255932}function RX(){return 255940}function SX(){return 255944}function TX(){return 255948}function UX(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=nV(b)|0;if(a|0)break;a=kZ()|0;if(!a){a=0;break}Rd[a&7]()}return a|0}function VX(a){a=a|0;oV(a);return}function WX(a,b){a=a|0;b=b|0;var d=0,e=0;e=YW(b)|0;d=UX(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=XX(d)|0;DZ(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function XX(a){a=a|0;return a+12|0}function YX(a,b){a=a|0;b=b|0;c[a>>2]=170744;WX(a+4|0,b);return}function ZX(a){a=a|0;return 1}function _X(a){a=a|0;Tb()}function $X(a){a=a|0;Tb()}function aY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(e>>>0>4294967279)_X(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=UX(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}bY(b,d,e)|0;a[f>>0]=0;cY(b+e|0,f);l=g;return}function bY(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)DZ(a|0,b|0,c|0)|0;return a|0}function cY(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function dY(a){a=a|0;return YW(a)|0}function eY(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)FZ(a|0,(fY(c)|0)&255|0,b|0)|0;return a|0}function fY(a){a=a|0;return a&255|0} -function $d(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))W(a|0);return b|0}function ae(){return l|0}function be(a){a=a|0;l=a}function ce(a,b){a=a|0;b=b|0;l=a;m=b}function de(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function ee(a){a=a|0;y=a}function fe(){return y|0}function ge(){hc();return 0}function he(a){a=a|0;var b=0;nb(48,56,72,0,173305,13,173308,0,173308,0,172616,239248,27);a=UX(8)|0;c[a>>2]=3;c[a+4>>2]=0;pb(48,172625,3,52972,173310,4,a|0,0);a=UX(8)|0;c[a>>2]=4;c[a+4>>2]=0;pb(48,172631,3,52984,173310,5,a|0,0);a=UX(8)|0;c[a>>2]=28;c[a+4>>2]=0;pb(48,172638,2,52996,173315,5,a|0,0);a=UX(8)|0;c[a>>2]=29;c[a+4>>2]=0;pb(48,172645,2,52996,173315,5,a|0,0);a=UX(8)|0;c[a>>2]=6;c[a+4>>2]=0;b=UX(8)|0;c[b>>2]=7;c[b+4>>2]=0;qb(48,172663,40,173319,5,a|0,40,173310,6,b|0);b=UX(8)|0;c[b>>2]=8;c[b+4>>2]=0;a=UX(8)|0;c[a>>2]=9;c[a+4>>2]=0;qb(48,172673,40,173319,5,b|0,40,173310,6,a|0);a=UX(8)|0;c[a>>2]=10;c[a+4>>2]=0;b=UX(8)|0;c[b>>2]=11;c[b+4>>2]=0;qb(48,172681,40,173319,5,a|0,40,173310,6,b|0);b=UX(8)|0;c[b>>2]=12;c[b+4>>2]=0;a=UX(8)|0;c[a>>2]=13;c[a+4>>2]=0;qb(48,172693,40,173319,5,b|0,40,173310,6,a|0);nb(128,144,160,48,173305,14,173305,15,173305,16,172705,239248,30);a=UX(4)|0;c[a>>2]=31;pb(128,173323,2,53004,173315,14,a|0,0);ob(48,173343,3,53012,173479,10,6);ob(48,173353,3,53160,173479,11,7);return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);o=p+8|0;k=p;n=p+16|0;e=b+69|0;j=b+4|0;if(a[e>>0]|0){f=c[j>>2]|0;if((a[252432]|0)==0?hZ(252432)|0:0)c[63126]=Hb(1,52912)|0;Eb(c[63126]|0,f|0,172718,k|0)}a[e>>0]=1;h=c[j>>2]|0;g=Mb(172724)|0;h=Ib(h|0,g|0)|0;Fb(g|0);g=xe(h,172736)|0;Fb(h|0);c[o>>2]=172744;c[o+4>>2]=g?172753:172758;$b(0,o|0);a[(c[b+32>>2]|0)+36>>0]=g&1;g=a[d+11>>0]|0;h=g<<24>>24<0;f=h?c[d>>2]|0:d;g=h?c[d+4>>2]|0:g&255;h=f+g|0;e=h;i=f;a:do if((g|0)<4)g=h;else{while(1){g=g+-3|0;if(!g){g=h;break a}f=kW(f,46,g)|0;if(!f){g=h;break a}if(!(VV(f,172764,4)|0))break;f=f+1|0;g=e-f|0;if((g|0)<4){g=h;break a}}g=f;e=f}while(0);a[b+70>>0]=(e-i|0)!=-1&(g|0)!=(h|0)&1;i=Gb(172769)|0;oY(n,332204,d);h=n+11|0;e=a[h>>0]|0;if(e<<24>>24<0){g=c[n+4>>2]|0;e=nV(g+4|0)|0;c[e>>2]=g;f=c[n>>2]|0}else{g=e&255;e=nV(g+4|0)|0;c[e>>2]=g;f=n}DZ(e+4|0,f|0,g|0)|0;c[o>>2]=e;c[k>>2]=Lb(i|0,1,52920,o|0)|0;if((a[h>>0]|0)<0)VX(c[n>>2]|0);Fb(i|0);ve(k,172779,172790);we(o,b,172631);d=c[k>>2]|0;n=Mb(172802)|0;Pb(d|0,n|0,c[o>>2]|0);Fb(n|0);Fb(c[o>>2]|0);we(o,b,172820);b=c[k>>2]|0;n=Mb(172812)|0;Pb(b|0,n|0,c[o>>2]|0);Fb(n|0);Fb(c[o>>2]|0);n=c[j>>2]|0;o=Mb(172828)|0;Pb(n|0,o|0,c[k>>2]|0);Fb(o|0);Fb(c[k>>2]|0);l=p;return}function je(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=z;y=z+40|0;u=z+24|0;v=z+8|0;t=c[e>>2]|0;x=Mb(172956)|0;c[u>>2]=Ib(t|0,x|0)|0;Fb(x|0);Ae(y,u);Fb(c[u>>2]|0);a:do if(!(a[b+70>>0]|0))switch(a[(lY(y,0)|0)>>0]|0){case 1:{gY(v,y,1,-1,y);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];r=u+12|0;c[r>>2]=0;x=u+11|0;w=(a[x>>0]|0)<0?c[u>>2]|0:u;t=a[w+3>>0]|0;s=a[w+2>>0]|0;v=a[w+1>>0]|0;w=a[w>>0]|0;c[r>>2]=4;Be(b,(s&255)<<8|t&255|(v&255)<<16|(w&255)<<24,u);if((a[x>>0]|0)<0)VX(c[u>>2]|0);break a}case 2:{gY(v,y,1,-1,y);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];r=u+12|0;c[r>>2]=0;x=u+11|0;w=(a[x>>0]|0)<0?c[u>>2]|0:u;t=a[w+3>>0]|0;s=a[w+2>>0]|0;v=a[w+1>>0]|0;w=a[w>>0]|0;c[r>>2]=4;Ce(b,(s&255)<<8|t&255|(v&255)<<16|(w&255)<<24,u);if((a[x>>0]|0)<0)VX(c[u>>2]|0);break a}default:{x=a[(lY(y,0)|0)>>0]|0;c[f>>2]=172961;c[f+4>>2]=x;$b(1,f|0);break a}}else{i=b+8|0;t=(a[i>>0]|0)==0;x=b+12|0;r=a[y+11>>0]|0;s=r<<24>>24<0;mY(x,s?c[y>>2]|0:y,s?c[y+4>>2]|0:r&255)|0;r=x+11|0;if(t){e=a[r>>0]|0;f=e<<24>>24<0;if(f)g=c[b+16>>2]|0;else g=e&255;h=b+24|0;if((g-(c[h>>2]|0)|0)<=12)break;a[i>>0]=1;c[h>>2]=13;if(f){e=c[b+16>>2]|0;f=c[x>>2]|0}else{e=e&255;f=x}b=e+-13|0;EZ(f|0,f+13|0,b|0)|0;iY(x,b,0);c[h>>2]=0;break}k=b+16|0;s=b+24|0;n=v+11|0;o=v+4|0;p=u+12|0;q=u+11|0;while(1){h=a[r>>0]|0;i=h<<24>>24<0;if(i)e=c[k>>2]|0;else e=h&255;t=c[s>>2]|0;if((e-t|0)<=3)break;if(i)e=c[x>>2]|0;else e=x;g=t+1|0;j=a[e+t>>0]|0;c[s>>2]=g;g=e+g+3+-1|0;e=a[g>>0]|0;A=a[g+-1>>0]|0;g=a[g+-2>>0]|0;f=t+4|0;c[s>>2]=f;g=(A&255)<<8|e&255|(g&255)<<16;if(i)e=c[k>>2]|0;else e=h&255;if((e-f|0)>>>0<(g+11|0)>>>0){w=22;break}if(i)e=c[x>>2]|0;else e=x;e=e+f+3+-1|0;e=d[e+-1>>0]<<8|d[e>>0]|d[e+-2>>0]<<16;A=t+11|0;c[s>>2]=A;gY(v,x,A,g,x);A=a[n>>0]|0;c[s>>2]=(c[s>>2]|0)+(A<<24>>24<0?c[o>>2]|0:A&255);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[p>>2]=0;switch(j<<24>>24){case 8:{Be(b,e,u);break}case 9:{Ce(b,e,u);break}default:{}}c[s>>2]=(c[s>>2]|0)+4;if((a[q>>0]|0)<0)VX(c[u>>2]|0)}if((w|0)==22)c[s>>2]=t;if(i){e=c[k>>2]|0;f=c[x>>2]|0}else{e=h&255;f=x}A=e-t|0;EZ(f|0,f+t|0,A|0)|0;iY(x,A,0);c[s>>2]=0}while(0);if((a[y+11>>0]|0)>=0){l=z;return}VX(c[y>>2]|0);l=z;return}function ke(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=k;h=Gb(173259)|0;j=b+64|0;c[e>>2]=c[j>>2];Fb(Cb(h|0,1,52968,e|0)|0);Fb(h|0);h=b+56|0;e=c[h>>2]|0;if(e|0){i=b+40|0;g=b+52|0;d=c[g>>2]|0;do{f=(d>>>0)/204|0;f=(c[(c[i>>2]|0)+(f<<2)>>2]|0)+((d-(f*204|0)|0)*20|0)+4|0;if((a[f+11>>0]|0)<0){VX(c[f>>2]|0);e=c[h>>2]|0;d=c[g>>2]|0}e=e+-1|0;c[h>>2]=e;d=d+1|0;c[g>>2]=d;if(d>>>0>407){VX(c[c[i>>2]>>2]|0);c[i>>2]=(c[i>>2]|0)+4;d=(c[g>>2]|0)+-204|0;c[g>>2]=d;e=c[h>>2]|0}}while((e|0)!=0)}d=c[b+32>>2]|0;if(d|0)Sd[c[(c[d>>2]|0)+8>>2]&63](d);c[j>>2]=0;a[b+68>>0]=1;a[b+60>>0]=0;iY(b+12|0,0,0);c[b+24>>2]=0;a[b+8>>0]=0;l=k;return}function le(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=q+4|0;o=q;i=b+56|0;a:do if(c[i>>2]|0){j=b+40|0;k=b+52|0;p=b+4|0;n=b+76|0;h=b+32|0;f=0;d=c[k>>2]|0;while(1){r=(d>>>0)/204|0;e=c[(c[j>>2]|0)+(r<<2)>>2]|0;d=d-(r*204|0)|0;if(f?(c[g>>2]=c[e+(d*20|0)>>2],r=Ge(c[p>>2]|0,173250,g)|0,r=((c[n>>2]|0)*1e3|0)+r|0,c[o>>2]=r,(r|0)>0):0)break;r=c[h>>2]|0;Td[c[(c[r>>2]|0)+16>>2]&255](r,e+(d*20|0)+4|0);d=c[k>>2]|0;e=(d>>>0)/204|0;e=(c[(c[j>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)+4|0;if((a[e+11>>0]|0)<0){VX(c[e>>2]|0);d=c[k>>2]|0}e=(c[i>>2]|0)+-1|0;c[i>>2]=e;d=d+1|0;c[k>>2]=d;if(d>>>0>407){VX(c[c[j>>2]>>2]|0);c[j>>2]=(c[j>>2]|0)+4;d=(c[k>>2]|0)+-204|0;c[k>>2]=d;e=c[i>>2]|0}if(!e)break a;else f=1}d=b+60|0;if(!(a[d>>0]|0)){a[d>>0]=1;c[b+64>>2]=He(c[p>>2]|0,173234,o)|0}l=q;return}while(0);a[b+60>>0]=0;l=q;return}function me(a,b){a=a|0;b=b|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d[b+69>>0];c[a>>2]=Qb(52800,f|0)|0;l=e;return}function ne(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=e;f=+Bb(c[d>>2]|0,52800,g|0);Ob(c[g>>2]|0);a[b+69>>0]=f!=0.0&1;l=e;return}function oe(a,b){a=a|0;b=b|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d[b+70>>0];c[a>>2]=Qb(52800,f|0)|0;l=e;return}function pe(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=e;f=+Bb(c[d>>2]|0,52800,g|0);Ob(c[g>>2]|0);a[b+70>>0]=f!=0.0&1;l=e;return}function qe(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+72>>2];c[a>>2]=Qb(52848,e|0)|0;l=d;return}function re(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Bb(c[b>>2]|0,52848,f|0);Ob(c[f>>2]|0);c[a+72>>2]=~~e;l=d;return}function se(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+76>>2];c[a>>2]=Qb(52848,e|0)|0;l=d;return}function te(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Bb(c[b>>2]|0,52848,f|0);Ob(c[f>>2]|0);c[a+76>>2]=~~e;l=d;return}function ue(a){a=a|0;Fb(c[a>>2]|0);return}function ve(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Pb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function we(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;b=b+4|0;f=c[b>>2]|0;e=Mb(d|0)|0;d=Ib(f|0,e|0)|0;Fb(e|0);ze(a,d,172932,b);Fb(d|0);return}function xe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0.0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;f=g+8|0;if((a[252440]|0)==0?hZ(252440)|0:0)c[63127]=Hb(1,52916)|0;h=+Db(c[63127]|0,b|0,d|0,f|0,e|0);Ob(c[f>>2]|0);l=g;return h!=0.0|0}function ye(a){a=a|0;Xa(a|0)|0;MY()}function ze(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0.0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;h=i+8|0;if((a[252448]|0)==0?hZ(252448)|0:0)c[63128]=Hb(2,52924)|0;k=c[63128]|0;Jb(c[f>>2]|0);c[g>>2]=c[f>>2];j=+Db(k|0,d|0,e|0,h|0,g|0);h=c[h>>2]|0;c[b>>2]=~~j>>>0;Ob(h|0);l=i;return}function Ae(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;i=+Bb(c[d>>2]|0,16,e|0);e=c[e>>2]|0;g=~~i>>>0;f=g+4|0;g=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)_X(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Ob(e|0);l=h;return}else d=b}else{j=g+16&-16;d=UX(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}DZ(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Ob(e|0);l=h;return}function Be(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=e+12|0;h=c[i>>2]|0;f=a[((a[e+11>>0]|0)<0?c[e>>2]|0:e)+h+1+-1>>0]|0;c[i>>2]=h+1;f=f&255;i=f>>>4;h=b+28|0;d=c[h>>2]|0;if(!d){g=(f&1)+1|0;d=f>>>2;switch(d&3){case 1:{d=11025;break}case 2:{d=22050;break}case 3:{d=44100;break}default:d=d&3}switch(i&15){case 10:{Ee(b,c[b+72>>2]<<10,d,g);break}case 11:{Ee(b,16e3,16e3,g);break}case 2:{Ee(b,(c[b+72>>2]|0)*576|0,d,g);break}default:{}}d=c[h>>2]|0;if(!d){l=k;return}}if((i|0)!=10){l=k;return}g=d+4|0;f=Fe(d,e,(c[d+8>>2]|0)+(c[g>>2]|0)|0)|0;if(!f){l=k;return}i=(c[g>>2]|0)+f|0;e=(i|0)==(c[d>>2]|0);c[g>>2]=e?0:i;if(!e){l=k;return}d=c[b+4>>2]|0;if((a[252432]|0)==0?hZ(252432)|0:0)c[63126]=Hb(1,52912)|0;Eb(c[63126]|0,d|0,173044,j|0);l=k;return}function Ce(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);q=s+24|0;p=s+16|0;o=s+8|0;n=s;i=s+32|0;j=s+28|0;r=b+32|0;f=c[r>>2]|0;if(!f){l=s;return}k=b+68|0;if(a[k>>0]|0){f=e+11|0;g=e+12|0;i=a[((a[f>>0]|0)<0?c[e>>2]|0:e)+(c[g>>2]|0)>>0]|0;h=i&15;switch(i&15){case 7:{c[n>>2]=173128;$b(0,n|0);break}case 12:{c[o>>2]=173143;$b(0,o|0);break}default:{c[p>>2]=173158;c[p+4>>2]=h;$b(0,p|0);l=s;return}}if(!((i&-16)<<24>>24==16?(a[((a[f>>0]|0)<0?c[e>>2]|0:e)+(c[g>>2]|0)+1>>0]|0)==0:0)){l=s;return}d=c[r>>2]|0;Ud[c[(c[d>>2]|0)+12>>2]&1023](d,e,h);a[k>>0]=0;c[q>>2]=173218;$b(0,q|0);l=s;return}o=e+12|0;c[o>>2]=(c[o>>2]|0)+5;g=b+76|0;do if(c[g>>2]|0){c[i>>2]=d;h=b+4|0;q=Ge(c[h>>2]|0,173250,i)|0;q=((c[g>>2]|0)*1e3|0)+q|0;c[j>>2]=q;if((q|0)<=0){f=c[r>>2]|0;break}f=b+60|0;if(!(a[f>>0]|0)){a[f>>0]=1;c[b+64>>2]=He(c[h>>2]|0,173234,j)|0}j=b+44|0;g=c[j>>2]|0;k=b+40|0;f=c[k>>2]|0;r=g-f|0;i=b+52|0;n=b+56|0;h=(c[n>>2]|0)+(c[i>>2]|0)|0;if((((r|0)==0?0:((r>>2)*204|0)+-1|0)|0)==(h|0)){Ie(b+36|0);h=(c[i>>2]|0)+(c[n>>2]|0)|0;g=c[j>>2]|0;f=c[k>>2]|0}if((g|0)==(f|0))f=0;else{b=(h>>>0)/204|0;f=(c[f+(b<<2)>>2]|0)+((h-(b*204|0)|0)*20|0)|0}c[f>>2]=d;d=f+4|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[f+16>>2]=c[o>>2];c[n>>2]=(c[n>>2]|0)+1;l=s;return}while(0);Td[c[(c[f>>2]|0)+16>>2]&255](f,e);l=s;return}function De(b){b=b|0;if((a[b+11>>0]|0)>=0)return;VX(c[b>>2]|0);return}function Ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=n+40|0;i=n+32|0;k=n;h=b+28|0;g=c[h>>2]|0;if(!g){g=UX(16)|0;o=N(d<<1,f)|0;c[g>>2]=o;c[g+4>>2]=0;c[g+8>>2]=nV(o)|0;o=bg()|0;c[g+12>>2]=o;c[i>>2]=173064;c[i+4>>2]=o;$b(0,i|0);c[j>>2]=173077;c[j+4>>2]=g;$b(0,j|0);c[h>>2]=g}h=c[g+8>>2]>>1;g=c[b+4>>2]|0;if((a[252456]|0)==0?hZ(252456)|0:0)c[63129]=Hb(5,52932)|0;o=c[63129]|0;c[k>>2]=d;c[k+8>>2]=e;c[k+16>>2]=f;c[k+24>>2]=h;Eb(o|0,g|0,173054,k|0);l=n;return}function Fe(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+128|0;if((l|0)>=(m|0))W(128);p=s+8|0;r=s;q=s+24|0;i=s+112|0;j=e+11|0;k=a[j>>0]|0;n=k<<24>>24<0;o=c[e>>2]|0;g=e+12|0;h=c[g>>2]|0;t=a[(n?o:e)+h+1+-1>>0]|0;h=h+1|0;c[g>>2]=h;if(!(t<<24>>24)){r=b+12|0;t=dg(c[r>>2]|0)|0;a[t>>0]=4;eg(c[r>>2]|0,t)|0;jg(c[r>>2]|0,((a[j>>0]|0)<0?c[e>>2]|0:e)+(c[g>>2]|0)|0,4,q,i)|0;r=c[q>>2]|0;t=d[i>>0]|0;c[p>>2]=173098;c[p+4>>2]=r;c[p+8>>2]=t;$b(0,p|0);t=0;l=s;return t|0}b=vg(c[b+12>>2]|0,q,n?o+h|0:e+h|0,(n?c[e+4>>2]|0:k&255)-h|0)|0;e=a[q+9>>0]|0;if(!(e<<24>>24)){t=c[q+4>>2]<<1;DZ(f|0,b|0,t|0)|0;l=s;return t|0}else{t=ag(e)|0;c[r>>2]=173092;c[r+4>>2]=t;$b(1,r|0);t=0;l=s;return t|0}return 0}function Ge(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[252464]|0)==0?hZ(252464)|0:0)c[63130]=Hb(2,52952)|0;j=c[63130]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Ob(c[g>>2]|0);l=h;return ~~i|0}function He(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[252472]|0)==0?hZ(252472)|0:0)c[63131]=Hb(2,52960)|0;j=c[63131]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Ob(c[g>>2]|0);l=h;return ~~i|0}function Ie(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=t+4|0;g=t;b=a+16|0;d=c[b>>2]|0;if(d>>>0>203){c[b>>2]=d+-204;q=a+4|0;o=c[q>>2]|0;s=c[o>>2]|0;o=o+4|0;c[q>>2]=o;r=a+8|0;b=c[r>>2]|0;p=a+12|0;n=c[p>>2]|0;e=n;do if((b|0)==(n|0)){i=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-i|0;if(!d)b=f;else{EZ(f|0,o|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Wa(8)|0;YX(t,172976);c[t>>2]=170764;_a(t|0,52720,21)}else{h=UX(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;j=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-i|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[q>>2]=n;c[r>>2]=b;c[p>>2]=j;if(d){VX(d);b=c[r>>2]|0}}while(0);c[b>>2]=s;c[r>>2]=(c[r>>2]|0)+4;l=t;return}s=a+8|0;b=c[s>>2]|0;r=a+4|0;f=b-(c[r>>2]|0)>>2;q=a+12|0;d=c[q>>2]|0;e=d-(c[a>>2]|0)|0;if(f>>>0>=e>>2>>>0){b=(e|0)==0?1:e>>1;i=k+12|0;c[i>>2]=0;c[k+16>>2]=a+12;do if(b)if(b>>>0>1073741823){t=Wa(8)|0;YX(t,172976);c[t>>2]=170764;_a(t|0,52720,21)}else{d=UX(b<<2)|0;break}else d=0;while(0);c[k>>2]=d;p=d+(f<<2)|0;j=k+8|0;c[j>>2]=p;h=k+4|0;c[h>>2]=p;c[i>>2]=d+(b<<2);c[g>>2]=UX(4080)|0;Le(k,g);b=c[s>>2]|0;d=c[r>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;Me(k,b);d=c[r>>2]|0}while((b|0)!=(d|0));b=c[s>>2]|0}e=d;f=c[a>>2]|0;c[a>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=c[h>>2];c[h>>2]=e;c[s>>2]=c[j>>2];c[j>>2]=b;a=c[q>>2]|0;c[q>>2]=c[i>>2];c[i>>2]=a;if((d|0)!=(b|0))c[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(f|0)VX(f);l=t;return}if((d|0)!=(b|0)){c[k>>2]=UX(4080)|0;Je(a,k);l=t;return}c[k>>2]=UX(4080)|0;Ke(a,k);o=c[r>>2]|0;p=c[o>>2]|0;o=o+4|0;c[r>>2]=o;b=c[s>>2]|0;n=c[q>>2]|0;e=n;do if((b|0)==(n|0)){j=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((j-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-j|0;if(!d)b=f;else{EZ(f|0,o|0,d|0)|0;b=(c[r>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[s>>2]=a;c[r>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Wa(8)|0;YX(t,172976);c[t>>2]=170764;_a(t|0,52720,21)}else{h=UX(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;i=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-j|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[r>>2]=n;c[s>>2]=b;c[q>>2]=i;if(d){VX(d);b=c[s>>2]|0}}while(0);c[b>>2]=p;c[s>>2]=(c[s>>2]|0)+4;l=t;return}function Je(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{EZ(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Wa(8)|0;YX(q,172976);c[q>>2]=170764;_a(q|0,52720,21)}else{i=UX(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){VX(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Ke(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{EZ(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Wa(8)|0;YX(q,172976);c[q>>2]=170764;_a(q|0,52720,21)}else{h=UX(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){VX(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Le(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{EZ(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Wa(8)|0;YX(q,172976);c[q>>2]=170764;_a(q|0,52720,21)}else{i=UX(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){VX(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{EZ(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Wa(8)|0;YX(q,172976);c[q>>2]=170764;_a(q|0,52720,21)}else{h=UX(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){VX(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Ne(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function Oe(a){a=a|0;if(!a)return;Sd[c[(c[a>>2]|0)+4>>2]&63](a);return}function Pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=c[b>>2]|0;b=c[b+4>>2]|0;g=d+(b>>1)|0;if(b&1)f=c[(c[g>>2]|0)+f>>2]|0;d=e+4|0;e=c[e>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;if(e>>>0>4294967279)_X(h);if(e>>>0<11){a[h+11>>0]=e;if(!e)b=h;else{b=h;i=9}}else{i=e+16&-16;b=UX(i)|0;c[h>>2]=b;c[h+8>>2]=i|-2147483648;c[h+4>>2]=e;i=9}if((i|0)==9)DZ(b|0,d|0,e|0)|0;a[b+e>>0]=0;Td[f&255](g,h);if((a[h+11>>0]|0)>=0){l=j;return}VX(c[h>>2]|0);l=j;return}function Qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Td[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function Re(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;a=b+(e>>1)|0;if(!(e&1)){e=d;Sd[e&63](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;Sd[e&63](a);return}}function Se(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)d=c[(c[a>>2]|0)+d>>2]|0;Td[d&255](e,a);Jb(c[e>>2]|0);g=c[e>>2]|0;Fb(g|0);l=f;return g|0}function Te(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Td[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function Ue(b,d){b=b|0;d=d|0;var e=0;e=UX(88)|0;df(e,d);a[e+80>>0]=0;c[e+84>>2]=c[b>>2];c[b>>2]=0;c[e>>2]=53032;return e|0}function Ve(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=lb(((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0,128,c[e>>2]|0)|0;return}function We(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function Xe(a){a=a|0;if(!a)return;Sd[c[(c[a>>2]|0)+4>>2]&63](a);return}function Ye(a){a=a|0;return a|0}function Ze(a){a=a|0;return a|0}function _e(a,b){a=a|0;b=b|0;Sd[c[a>>2]&63](b);return}function $e(b){b=b|0;a[b+80>>0]=1;return}function af(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=Md[a&15](f,g)|0;Fb(c[g>>2]|0);Fb(c[f>>2]|0);l=e;return d|0}function bf(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;c[b>>2]=53048;d=b+84|0;if(!(a[b+80>>0]|0)){f=c[d>>2]|0;Fb(f|0);hf(b);l=g;return}f=c[d>>2]|0;if((a[252432]|0)==0?hZ(252432)|0:0)c[63126]=Hb(1,52912)|0;Eb(c[63126]|0,f|0,173740,e|0);f=c[d>>2]|0;Fb(f|0);hf(b);l=g;return}function cf(a){a=a|0;bf(a);VX(a);return}function df(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b>>2]=53064;i=b+4|0;c[i>>2]=c[d>>2];c[d>>2]=0;a[b+8>>0]=0;d=b+12|0;e=b+32|0;c[b+64>>2]=0;f=b+68|0;g=d;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));a[d+48>>0]=0;a[f>>0]=1;a[b+69>>0]=0;a[b+70>>0]=0;c[b+72>>2]=12;b=UX(76)|0;ff(b);c[e>>2]=b;c[b+4>>2]=i;return}function ef(a){a=a|0;bf(a);VX(a);return}function ff(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=53080;c[b+48>>2]=0;c[b+52>>2]=Qj()|0;c[b+56>>2]=YR()|0;b=b+60|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[e>>2]=173484;$b(0,e|0);l=d;return}function gf(a){a=a|0;var b=0,d=0,e=0,f=0;zf(a);d=a+4|0;b=c[d>>2]|0;f=a+8|0;e=c[f>>2]|0;if((b|0)!=(e|0)){do{VX(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[d>>2]|0;d=c[f>>2]|0;if((d|0)!=(b|0))c[f>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;VX(b);return}function hf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=i+24|0;e=i+16|0;d=i+8|0;g=i;c[b>>2]=53064;h=Gb(173259)|0;c[g>>2]=c[b+64>>2];Fb(Cb(h|0,1,52968,g|0)|0);Fb(h|0);c[d>>2]=173672;$b(0,d|0);d=c[b+32>>2]|0;if(d|0)Sd[c[(c[d>>2]|0)+4>>2]&63](d);d=c[b+28>>2]|0;if(d|0){c[e>>2]=173693;$b(0,e|0);ng(c[d+12>>2]|0);oV(c[d+8>>2]|0);c[f>>2]=173716;$b(0,f|0);VX(d)}g=b+36|0;zf(g);e=b+40|0;d=c[e>>2]|0;h=b+44|0;f=c[h>>2]|0;if((d|0)!=(f|0)){do{VX(c[d>>2]|0);d=d+4|0}while((d|0)!=(f|0));d=c[e>>2]|0;e=c[h>>2]|0;if((e|0)!=(d|0))c[h>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[g>>2]|0;if(d|0)VX(d);d=b+12|0;if((a[d+11>>0]|0)>=0){b=b+4|0;b=c[b>>2]|0;Fb(b|0);l=i;return}VX(c[d>>2]|0);b=b+4|0;b=c[b>>2]|0;Fb(b|0);l=i;return}function jf(a){a=a|0;hf(a);VX(a);return}function kf(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+8|0;e=g;c[b>>2]=53080;c[e>>2]=173554;$b(0,e|0);VU(c[b+44>>2]|0);QU(b+48|0);Rj(b+52|0);Ii(b+56|0);e=b+60|0;if((a[e+11>>0]|0)<0)VX(c[e>>2]|0);c[b>>2]=53112;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)oV(d);c[f>>2]=173530;$b(0,f|0);l=g;return}function lf(a){a=a|0;kf(a);VX(a);return}function mf(b){b=b|0;var d=0;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)oV(d);iY(b+60|0,0,0);c[b+72>>2]=0;VU(c[b+44>>2]|0);QU(b+48|0);return}function nf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=j+16|0;f=j;g=(e|0)==7;k=WT(g?27:173)|0;h=b+40|0;c[h>>2]=k;c[f>>2]=173569;c[f+4>>2]=e;c[f+8>>2]=k;$b(0,f|0);c[b+44>>2]=SU(c[(c[h>>2]|0)+12>>2]|0)|0;f=b+48|0;c[f>>2]=YT(c[h>>2]|0)|0;if(!g){l=j;return}k=d+11|0;g=d+12|0;e=c[g>>2]|0;c[b+32>>2]=a[((a[k>>0]|0)<0?c[d>>2]|0:d)+e+9>>0]&3;c[g>>2]=e+5;e=b+60|0;k=a[k>>0]|0;n=k<<24>>24<0;mY(e,n?c[d>>2]|0:d,n?c[d+4>>2]|0:k&255)|0;vf(e);g=c[g>>2]|0;c[b+72>>2]=g;d=e+11|0;if((a[d>>0]|0)<0)e=c[e>>2]|0;f=c[f>>2]|0;c[f+68>>2]=e+g;e=a[d>>0]|0;if(e<<24>>24<0)e=c[b+64>>2]|0;else e=e&255;c[f+72>>2]=e-g;n=eV(f,c[h>>2]|0,0)|0;c[i>>2]=173589;c[i+4>>2]=n;$b(0,i|0);l=j;return}function of(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[(c[b>>2]|0)+20>>2]|0;f=a[d+11>>0]|0;if(f<<24>>24<0){h=c[d+12>>2]|0;g=c[d+4>>2]|0;f=h;d=(c[d>>2]|0)+h|0;f=g-f|0;Ud[e&1023](b,d,f);return}else{g=c[d+12>>2]|0;f=f&255;h=g;g=d+g|0;h=f-h|0;Ud[e&1023](b,g,h);return}}function pf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=v+8|0;s=v;t=b+48|0;g=b+56|0;r=c[g>>2]|0;d=UU(c[b+44>>2]|0,c[t>>2]|0,r+24|0,r+28|0,d,e,0,-2147483648,0,-2147483648,0,0)|0;if((d|0)>-1?(f=c[g>>2]|0,c[f+28>>2]|0):0){if((FU(c[t>>2]|0,f)|0)<=-1){l=v;return}f=b+52|0;g=b+20|0;h=b+24|0;i=b+28|0;j=b+12|0;k=b+16|0;n=b+36|0;o=b+20|0;p=b+8|0;q=b+4|0;a:while(1){r=OU(c[t>>2]|0,c[f>>2]|0)|0;if((r|0)<-11)switch(r|0){case -541478725:{u=17;break a}default:{}}else switch(r|0){case -11:{u=17;break a}default:{}}d=c[f>>2]|0;c[g>>2]=c[d>>2];c[h>>2]=c[d+4>>2];c[i>>2]=c[d+8>>2];e=c[d+68>>2]|0;if((c[j>>2]|0)==(e|0)){d=c[d+72>>2]|0;if((c[k>>2]|0)!=(d|0))u=9}else{d=c[d+72>>2]|0;u=9}if((u|0)==9){u=0;xf(b,e,d)}if(!(a[n>>0]|0))yf(c[o>>2]|0,c[h>>2]|0,c[i>>2]|0,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);d=c[c[q>>2]>>2]|0;if((a[252432]|0)==0?hZ(252432)|0:0)c[63126]=Hb(1,52912)|0;Eb(c[63126]|0,d|0,173667,s|0);if((r|0)<=-1){u=17;break}}if((u|0)==17){l=v;return}}c[h>>2]=173620;c[h+4>>2]=d;$b(0,h|0);l=v;return}function qf(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[b>>2]=53112;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)oV(d);c[e>>2]=173530;$b(0,e|0);l=f;return}function rf(a){a=a|0;oc()}function sf(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;oV(b);return}function tf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=d+12|0;g=c[k>>2]|0;c[j>>2]=173519;c[j+4>>2]=e;$b(0,j|0);switch(e|0){case 7:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+9>>0]&3;p=g+11|0;c[k>>2]=p;f=a[j>>0]|0;e=c[d>>2]|0;i=f<<24>>24<0?e:d;p=i+p+2+-1|0;o=a[p>>0]|0;p=a[p+-1>>0]|0;h=g+13|0;c[k>>2]=h;g=(p&255)<<8|o&255;if(g){Ud[c[(c[b>>2]|0)+20>>2]&1023](b,i+h|0,g);h=(c[k>>2]|0)+g|0;c[k>>2]=h;f=a[j>>0]|0;e=c[d>>2]|0}p=h+1|0;c[k>>2]=p;g=f<<24>>24<0?e:d;p=g+p+2+-1|0;e=a[p>>0]|0;p=a[p+-1>>0]|0;f=h+3|0;c[k>>2]=f;e=(p&255)<<8|e&255;if(!e){l=n;return}Ud[c[(c[b>>2]|0)+20>>2]&1023](b,g+f|0,e);l=n;return}case 12:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+27>>0]&3;i=g+31|0;c[k>>2]=i;p=(a[j>>0]|0)<0?c[d>>2]|0:d;i=p+i+2+-1|0;o=a[i>>0]|0;i=a[i+-1>>0]|0;h=g+33|0;c[k>>2]=h;o=(i&255)<<8|o&255;Ud[c[(c[b>>2]|0)+20>>2]&1023](b,p+h|0,o);o=(c[k>>2]|0)+o|0;h=o+3|0;c[k>>2]=h;p=(a[j>>0]|0)<0?c[d>>2]|0:d;h=p+h+2+-1|0;i=a[h>>0]|0;h=a[h+-1>>0]|0;o=o+5|0;c[k>>2]=o;i=(h&255)<<8|i&255;Ud[c[(c[b>>2]|0)+20>>2]&1023](b,p+o|0,i);i=(c[k>>2]|0)+i|0;o=i+3|0;c[k>>2]=o;j=(a[j>>0]|0)<0?c[d>>2]|0:d;o=j+o+2+-1|0;p=a[o>>0]|0;o=a[o+-1>>0]|0;d=i+5|0;c[k>>2]=d;Ud[c[(c[b>>2]|0)+20>>2]&1023](b,j+d|0,(o&255)<<8|p&255);l=n;return}default:{l=n;return}}}function uf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=d+11|0;l=a[m>>0]|0;e=l<<24>>24<0;n=d+4|0;o=d+12|0;f=c[o>>2]|0;if(((e?c[n>>2]|0:l&255)-f|0)<=4)return;l=b+32|0;i=0;j=0;k=0;do{switch(c[l>>2]|0){case 3:{e=e?c[d>>2]|0:d;k=e+f+4+-1|0;g=4;h=k;i=a[k+-2>>0]|0;j=a[k+-3>>0]|0;k=a[k+-1>>0]|0;break}case 2:{e=e?c[d>>2]|0:d;k=e+f+3+-1|0;g=3;h=k;i=a[k+-2>>0]|0;k=a[k+-1>>0]|0;break}case 1:{e=e?c[d>>2]|0:d;k=e+f+2+-1|0;g=2;h=k;k=a[k+-1>>0]|0;break}default:{h=e?c[d>>2]|0:d;e=h;g=1;h=h+f+1+-1|0}}h=a[h>>0]|0;g=f+g|0;c[o>>2]=g;h=(i&255)<<16|(j&255)<<24|(k&255)<<8|h&255;Ud[c[(c[b>>2]|0)+20>>2]&1023](b,e+g|0,h);f=(c[o>>2]|0)+h|0;c[o>>2]=f;h=a[m>>0]|0;e=h<<24>>24<0}while(((e?c[n>>2]|0:h&255)-f|0)>4);return}function vf(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);q=r;o=r+4|0;p=b+11|0;e=a[p>>0]|0;if(e<<24>>24<0)e=c[b+4>>2]|0;else e=e&255;e=e*3|0;g=e+1|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;if(g>>>0>4294967279)_X(o);if(g>>>0<11){f=o+11|0;a[f>>0]=g;if(!g)e=o;else{e=o;h=9}}else{f=e+17&-16;e=UX(f)|0;c[o>>2]=e;c[o+8>>2]=f|-2147483648;c[o+4>>2]=g;f=o+11|0;h=9}if((h|0)==9)FZ(e|0,0,g|0)|0;a[e+g>>0]=0;j=(a[f>>0]|0)<0?c[o>>2]|0:o;k=b+4|0;n=b+12|0;e=0;i=0;while(1){g=a[p>>0]|0;h=g<<24>>24<0;if(h)g=c[k>>2]|0;else g=g&255;if((i|0)>=(g|0))break;if(h)g=c[b>>2]|0;else g=b;g=d[g+i>>0]|0;if(!e)if((c[n>>2]|0)==(i|0)){a[j+(i*3|0)>>0]=35;e=1}else e=0;else e=1;c[q>>2]=g;YV(j+(i*3|0)+(e&1)|0,173606,q)|0;i=i+1|0}q=Gb(173612)|0;wf(q,238550,o);Fb(q|0);if((a[f>>0]|0)>=0){l=r;return}VX(c[o>>2]|0);l=r;return}function wf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;if((a[252480]|0)==0?hZ(252480)|0:0)c[63132]=Hb(2,53136)|0;i=c[63132]|0;f=a[e+11>>0]|0;if(f<<24>>24<0){f=c[e+4>>2]|0;g=nV(f+4|0)|0;c[g>>2]=f;e=c[e>>2]|0}else{f=f&255;g=nV(f+4|0)|0;c[g>>2]=f}DZ(g+4|0,e|0,f|0)|0;c[h>>2]=g;Eb(i|0,b|0,d|0,h|0);l=j;return}function xf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=173641;c[h+4>>2]=d;c[h+8>>2]=e;$b(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(N(e<<2,e)|0)+33554432|0;e=nV((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[252488]|0)==0?hZ(252488)|0:0)c[63133]=Hb(4,53144)|0;b=c[63133]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,173654,h|0);l=i;return}else{e=b+20|0;c[b+8>>2]=e;e=e>>2;d=c[c[b+4>>2]>>2]|0;if((a[252488]|0)==0?hZ(252488)|0:0)c[63133]=Hb(4,53144)|0;b=c[63133]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,173654,h|0);l=i;return}}function yf(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;E=g<<2;F=f+(N(E,h)|0)|0;if(!h)return;A=(g|0)==0;D=(g+-1|0)>>>1;B=(D<<3)+8|0;C=g+1&-2;D=D+1|0;j=0;z=0;k=0;i=0;l=0;while(1){if(!A){x=B+j|0;y=D+i|0;w=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){I=(n*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;q=(G*1634|0)+I>>10;G=(N(m,-400)|0)+I+(N(G,-832)|0)>>10;I=(m*2066|0)+I>>10;m=(q|0)>0?q:0;n=(G|0)>0?G:0;H=(I|0)>0?I:0;m=((((I&255|0)==(I|0)?I:(H|0)<255?H:255)<<8)+16711680+((G&255|0)==(G|0)?G:(n|0)<255?n:255)<<8)+((q&255|0)==(q|0)?q:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+j>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;I=(G*1634|0)+p>>10;G=(N(m,-400)|0)+p+(N(G,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(j+E)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;G=t+-128|0;J=s+-128|0;I=m+(G*1634|0)>>10;G=(N(G,-832)|0)+(N(J,-400)|0)+m>>10;J=m+(J*2066|0)>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;n=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(n|0)<255?n:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+q>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){m=(p*1192|0)+-19072|0;H=t+-128|0;t=s+-128|0;J=m+(H*1634|0)>>10;H=(N(H,-832)|0)+(N(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;G=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(G|0)<255?G:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(q+E)>>2]=m;w=w+2|0;if(w>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=C+l|0;j=x;k=D+k|0;i=y}z=z+2|0;if(z>>>0>=h>>>0)break;else{j=j+E|0;l=l+g|0}}return}function zf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;e=c[l>>2]|0;m=b+16|0;g=c[m>>2]|0;d=(g>>>0)/204|0;h=e+(d<<2)|0;j=b+8|0;n=c[j>>2]|0;f=n;i=e;if((n|0)!=(e|0)){d=(c[h>>2]|0)+((g-(d*204|0)|0)*20|0)|0;b=b+20|0;n=(c[b>>2]|0)+g|0;g=(n>>>0)/204|0;g=(c[e+(g<<2)>>2]|0)+((n-(g*204|0)|0)*20|0)|0;if((g|0)==(d|0)){d=b;k=5}else{f=h;while(1){e=d+4|0;if((a[e+11>>0]|0)<0)VX(c[e>>2]|0);d=d+20|0;if((d-(c[f>>2]|0)|0)==4080){d=f+4|0;e=d;d=c[d>>2]|0}else e=f;if((g|0)==(d|0))break;else f=e}e=c[l>>2]|0;g=j;f=c[j>>2]|0;d=e}}else{d=b+20|0;k=5}if((k|0)==5){g=j;b=d;d=i}c[b>>2]=0;d=f-d>>2;if(d>>>0>2)do{VX(c[e>>2]|0);e=(c[l>>2]|0)+4|0;c[l>>2]=e;d=(c[g>>2]|0)-e>>2}while(d>>>0>2);switch(d|0){case 1:{d=102;break}case 2:{d=204;break}default:return}c[m>>2]=d;return}function Af(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+16|0;j=n+4|0;k=n;f=d+4|0;g=c[d>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(g>>>0>4294967279)_X(j);if(g>>>0<11){a[j+11>>0]=g;if(!g)d=j;else{d=j;i=6}}else{i=g+16&-16;d=UX(i)|0;c[j>>2]=d;c[j+8>>2]=i|-2147483648;c[j+4>>2]=g;i=6}if((i|0)==6)DZ(d|0,f|0,g|0)|0;a[d+g>>0]=0;c[k>>2]=e;Ud[b&1023](h,j,k);Jb(c[h>>2]|0);d=c[h>>2]|0;Fb(d|0);Fb(c[k>>2]|0);if((a[j+11>>0]|0)>=0){l=n;return d|0}VX(c[j>>2]|0);l=n;return d|0}function Bf(){he(0);return}function Cf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;if(!b)return;if((e|0)==0|(f|0)==0)f=1;else{c[b+32>>2]=e;c[b+12>>2]=f;k=b+16|0;c[k>>2]=f;j=e;a:do if(f>>>0>3){i=(d[e+2>>0]|0)<<8|(d[e+3>>0]|0)|(d[e+1>>0]|0)<<16|(d[e>>0]|0)<<24;h=f+-4|0;c[k>>2]=h;c[b>>2]=i;i=e+4|0;if(h>>>0>3){g=(d[e+6>>0]|0)<<8|(d[e+7>>0]|0)|(d[e+5>>0]|0)<<16|(d[i>>0]|0)<<24;f=f+-8|0;break}switch(f|0){case 7:{f=a[e+6>>0]|0;l=13;break}case 6:{f=0;l=13;break}case 5:{f=0;g=0;break}default:{f=0;h=0;g=0;l=15;break a}}if((l|0)==13)g=a[e+5>>0]|0;h=g;g=a[i>>0]|0;l=15}else{switch(f|0){case 3:{f=a[e+2>>0]|0;l=6;break}case 2:{f=0;l=6;break}case 1:{f=0;g=0;l=7;break}default:{f=0;g=0;h=0}}if((l|0)==6){g=a[e+1>>0]|0;l=7}if((l|0)==7)h=a[e>>0]|0;c[k>>2]=0;c[b>>2]=(g&255)<<16|(h&255)<<24|(f&255)<<8;f=0;h=0;g=0;l=15}while(0);if((l|0)==15){g=(h&255)<<16|(g&255)<<24|(f&255)<<8;f=0}c[k>>2]=f;c[b+4>>2]=g;c[b+28>>2]=j;c[b+24>>2]=e+8;c[b+8>>2]=32;f=0}a[b+20>>0]=f;return}function Df(a){a=a|0;return}function Ef(a){a=a|0;return -32-(c[a+8>>2]|0)+((c[a+24>>2]|0)-(c[a+28>>2]|0)<<3)|0}function Ff(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=b+8|0;e=c[n>>2]|0;f=0-e&7;if(!f){n=0;return n|0}m=8-f|0;if(!(a[b+20>>0]|0)){if(e>>>0<=m>>>0){k=b+4|0;c[b>>2]=c[k>>2];l=b+16|0;f=c[l>>2]|0;h=b+24|0;i=c[h>>2]|0;if(f>>>0>3){b=d[i+2>>0]<<8|d[i+3>>0]|d[i+1>>0]<<16|d[i>>0]<<24;f=f+-4|0}else{switch(f|0){case 3:{f=a[i+2>>0]|0;j=8;break}case 2:{f=0;j=8;break}case 1:{f=0;b=0;j=9;break}default:{f=0;b=0;g=0}}if((j|0)==8){b=a[i+1>>0]|0;j=9}if((j|0)==9)g=a[i>>0]|0;b=(b&255)<<16|(g&255)<<24|(f&255)<<8;f=0}c[l>>2]=f;c[k>>2]=b;c[h>>2]=i+4;e=e+32|0}c[n>>2]=e-m}n=m&255;return n|0}function Gf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=b+4|0;c[b>>2]=c[i>>2];j=b+16|0;f=c[j>>2]|0;k=b+24|0;l=c[k>>2]|0;if(f>>>0>3){m=(d[l+2>>0]|0)<<8|(d[l+3>>0]|0)|(d[l+1>>0]|0)<<16|(d[l>>0]|0)<<24;h=f+-4|0;c[j>>2]=h;c[i>>2]=m;m=l+4|0;c[k>>2]=m;k=32-e|0;m=b+8|0;l=c[m>>2]|0;l=k+l|0;c[m>>2]=l;return}switch(f|0){case 3:{f=a[l+2>>0]|0;m=5;break}case 2:{f=0;m=5;break}case 1:{f=0;g=0;m=6;break}default:{f=0;g=0;h=0}}if((m|0)==5){g=a[l+1>>0]|0;m=6}if((m|0)==6)h=a[l>>0]|0;m=(g&255)<<16|(h&255)<<24|(f&255)<<8;h=0;c[j>>2]=h;c[i>>2]=m;m=l+4|0;c[k>>2]=m;k=32-e|0;m=b+8|0;l=c[m>>2]|0;l=k+l|0;c[m>>2]=l;return}function Hf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e>>5;k=e&31;e=(c[b+12>>2]|0)-(m<<2)|0;l=b+16|0;c[l>>2]=e;j=c[b+28>>2]|0;h=j+(m<<2)|0;a:do if(e>>>0>3){f=(d[h+2>>0]|0)<<8|(d[h+3>>0]|0)|(d[h+1>>0]|0)<<16|(d[h>>0]|0)<<24;h=e+-4|0;c[l>>2]=h;c[b>>2]=f;f=j+(m+1<<2)|0;if(h>>>0>3){i=(d[f+2>>0]|0)<<8|(d[f+3>>0]|0)|(d[f+1>>0]|0)<<16|(d[f>>0]|0)<<24;h=e+-8|0;c[l>>2]=h;l=b+4|0;c[l>>2]=i;k=32-k|0;l=b+8|0;c[l>>2]=k;l=m+2|0;l=j+(l<<2)|0;m=b+24|0;c[m>>2]=l;m=b+20|0;a[m>>0]=0;return}switch(e|0){case 7:{e=a[f+2>>0]|0;i=11;break}case 6:{e=0;i=11;break}case 5:{e=0;g=0;break}default:{e=0;g=0;f=0;break a}}if((i|0)==11)g=a[f+1>>0]|0;f=a[f>>0]|0}else{switch(e|0){case 3:{e=a[h+2>>0]|0;i=4;break}case 2:{e=0;i=4;break}case 1:{e=0;f=0;i=5;break}default:{e=0;g=0;f=0}}if((i|0)==4){f=a[h+1>>0]|0;i=5}if((i|0)==5){g=f;f=a[h>>0]|0}c[l>>2]=0;c[b>>2]=(g&255)<<16|(f&255)<<24|(e&255)<<8;e=0;g=0;f=0}while(0);i=(g&255)<<16|(f&255)<<24|(e&255)<<8;h=0;c[l>>2]=h;l=b+4|0;c[l>>2]=i;k=32-k|0;l=b+8|0;c[l>>2]=k;l=m+2|0;l=j+(l<<2)|0;m=b+24|0;c[m>>2]=l;m=b+20|0;a[m>>0]=0;return}function If(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=c>>>3;d=c&7;e=Jf(f+1|0)|0;if(f|0){c=0;do{a[e+c>>0]=Kf(b,8)|0;c=c+1|0}while((c|0)!=(f|0))}if(!d)return e|0;a[e+f>>0]=(Kf(b,d)|0)<<8-d;return e|0}function Jf(a){a=a|0;return nV(a)|0}function Kf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!e){o=0;return o|0}o=b+8|0;m=c[o>>2]|0;if(m>>>0>>0){n=e-m|0;n=(c[b>>2]&(1<>2]|0)>>>(32-n|0)}else n=c[b>>2]<<32-m>>>(32-e|0);if(a[b+20>>0]|0){o=n;return o|0}if(m>>>0>e>>>0)b=m-e|0;else{k=b+4|0;c[b>>2]=c[k>>2];l=b+16|0;g=c[l>>2]|0;i=b+24|0;j=c[i>>2]|0;if(g>>>0>3){f=d[j+2>>0]<<8|d[j+3>>0]|d[j+1>>0]<<16|d[j>>0]<<24;b=g+-4|0}else{switch(g|0){case 3:{b=a[j+2>>0]|0;h=12;break}case 2:{b=0;h=12;break}case 1:{b=0;f=0;h=13;break}default:{b=0;f=0;g=0}}if((h|0)==12){f=a[j+1>>0]|0;h=13}if((h|0)==13)g=a[j>>0]|0;f=(f&255)<<16|(g&255)<<24|(b&255)<<8;b=0}c[l>>2]=b;c[k>>2]=f;c[i>>2]=j+4;b=32-e+m|0}c[o>>2]=b;o=n;return o|0}function Lf(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=b[a>>1]|0;v=c[a+32>>2]|0;t=c[a+36>>2]|0;r=(e[a+4>>1]|0)+1|0;if(r>>>0<2)return;u=s&65535;p=2;q=1;g=0;l=0;f=2;while(1){j=b[a+2+(f<<1)>>1]|0;m=j&65535;n=N(m,q&65535)|0;o=(u>>>0)/((n&65535)>>>0)|0;k=o&65535;switch(j<<16>>16){case 4:{f=g&65535;i=o+f|0;g=t+(f<<3)|0;h=t+((i&65535)<<3)|0;i=t+((i+o&65535)<<3)|0;if(!(l<<16>>16))Mf(k,q,d,v,g,h,i);else Mf(k,q,v,d,g,h,i);h=1-(l&65535)&65535;break}case 2:{f=g&65535;g=t+(f<<3)|0;if(!(l<<16>>16))Nf(k,q,d,v,g);else Nf(k,q,v,d,g);h=1-(l&65535)&65535;break}case 3:{f=g&65535;g=t+(f<<3)|0;h=t+((o+f&65535)<<3)|0;if(!(l<<16>>16))Of(k,q,d,v,g,h,-1);else Of(k,q,v,d,g,h,-1);h=1-(l&65535)&65535;break}case 5:{f=g&65535;h=o+f|0;j=h+o|0;g=t+(f<<3)|0;h=t+((h&65535)<<3)|0;i=t+((j&65535)<<3)|0;j=t+((j+o&65535)<<3)|0;if(!(l<<16>>16))Pf(k,q,d,v,g,h,i,j,-1);else Pf(k,q,v,d,g,h,i,j,-1);h=1-(l&65535)&65535;break}default:{h=l;f=g&65535}}q=n&65535;g=f+(N(m+-1|0,o)|0)&65535;p=p+1<<16>>16;f=p&65535;if(r>>>0>>0)break;else l=h}if(s<<16>>16!=0&h<<16>>16!=0)f=0;else return;do{c[d+(f<<3)>>2]=c[v+(f<<3)>>2];c[d+(f<<3)+4>>2]=c[v+(f<<3)+4>>2];f=f+1|0}while((f|0)!=(u|0));return}function Mf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0;r=a&65535;s=b&65535;b=b<<16>>16!=0;if(a<<16>>16==1){if(!b)return;b=s<<1;a=s*3|0;i=0;do{r=i<<2&65532;B=+g[c+(r<<3)>>2];h=r|2;w=+g[c+(h<<3)>>2];A=B+w;w=B-w;B=+g[c+(r<<3)+4>>2];u=+g[c+(h<<3)+4>>2];y=B+u;u=B-u;h=r|1;B=+g[c+(h<<3)>>2];r=r|3;t=+g[c+(r<<3)>>2];z=B+t;t=B-t;B=+g[c+(r<<3)+4>>2];v=+g[c+(h<<3)+4>>2];x=B+v;v=B-v;g[d+(i<<3)>>2]=A+z;h=i+b|0;g[d+(h<<3)>>2]=A-z;g[d+(i<<3)+4>>2]=y+x;g[d+(h<<3)+4>>2]=y-x;h=i+s|0;g[d+(h<<3)>>2]=w-v;r=i+a|0;g[d+(r<<3)>>2]=w+v;g[d+(h<<3)+4>>2]=u-t;g[d+(r<<3)+4>>2]=u+t;i=i+1|0}while((i|0)!=(s|0));return}if(!b)return;q=r<<2;b=a<<16>>16==0;a=r<<1;i=r*3|0;j=N(s,r)|0;k=N(a,s)|0;l=N(i,s)|0;p=0;do{if(!b){m=(N(q,p)|0)&65532;n=(N(p,r)|0)&65535;o=0;do{D=o+m|0;z=+g[c+(D<<3)>>2];C=D+a|0;u=+g[c+(C<<3)>>2];x=z+u;u=z-u;z=+g[c+(D<<3)+4>>2];t=+g[c+(C<<3)+4>>2];v=z+t;t=z-t;C=D+r|0;z=+g[c+(C<<3)>>2];D=D+i|0;y=+g[c+(D<<3)>>2];B=z+y;y=z-y;z=+g[c+(D<<3)+4>>2];A=+g[c+(C<<3)+4>>2];w=z+A;A=z-A;z=u-A;A=u+A;u=t-y;y=t+y;C=o+n|0;g[d+(C<<3)>>2]=x+B;B=x-B;g[d+(C<<3)+4>>2]=v+w;w=v-w;D=C+j|0;v=+g[e+(o<<3)>>2];x=+g[e+(o<<3)+4>>2];g[d+(D<<3)>>2]=z*v+u*x;g[d+(D<<3)+4>>2]=u*v-z*x;D=C+k|0;x=+g[f+(o<<3)>>2];z=+g[f+(o<<3)+4>>2];g[d+(D<<3)>>2]=B*x+w*z;g[d+(D<<3)+4>>2]=w*x-B*z;C=C+l|0;z=+g[h+(o<<3)>>2];B=+g[h+(o<<3)+4>>2];g[d+(C<<3)>>2]=A*z+y*B;g[d+(C<<3)+4>>2]=y*z-A*B;o=o+1|0}while((o|0)!=(r|0))}p=p+1|0}while((p|0)!=(s|0));return}function Nf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;l=a&65535;f=b<<16>>16==0;if(a<<16>>16==1){if(f)return;b=b&65535;f=0;do{k=f<<2&65532;h=c+(k<<3)|0;e=k|1;i=c+(e<<3)|0;j=f<<1&65534;g[d+(j<<3)>>2]=+g[h>>2]+ +g[i>>2];l=j+b|0;g[d+(l<<3)>>2]=+g[h>>2]-+g[i>>2];k=c+(k<<3)+4|0;e=c+(e<<3)+4|0;g[d+(j<<3)+4>>2]=+g[k>>2]+ +g[e>>2];g[d+(l<<3)+4>>2]=+g[k>>2]-+g[e>>2];f=f+1|0}while((f|0)!=(b|0));return}if(f)return;j=b&65535;k=l<<1;i=N(j,l)|0;if(!(a<<16>>16))return;else h=0;do{b=(N(k,h)|0)&65534;f=(N(h,l)|0)&65535;a=0;do{s=a+b|0;u=c+(s<<3)|0;r=s+l|0;t=c+(r<<3)|0;m=a+f|0;g[d+(m<<3)>>2]=+g[u>>2]+ +g[t>>2];o=+g[u>>2]-+g[t>>2];s=c+(s<<3)+4|0;r=c+(r<<3)+4|0;g[d+(m<<3)+4>>2]=+g[s>>2]+ +g[r>>2];q=+g[s>>2]-+g[r>>2];m=m+i|0;p=+g[e+(a<<3)>>2];n=+g[e+(a<<3)+4>>2];g[d+(m<<3)>>2]=o*p+q*n;g[d+(m<<3)+4>>2]=q*p-o*n;a=a+1|0}while((a|0)!=(l|0));h=h+1|0}while((h|0)!=(j|0));return}function Of(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0;l=a&65535;i=h<<24>>24==1;m=b&65535;h=b<<16>>16!=0;if(a<<16>>16==1)if(i){if(!h)return;h=m<<1;b=0;do{j=(b*3|0)+1&65535;k=c+(j<<3)|0;l=j+1|0;e=c+(l<<3)|0;r=+g[k>>2]+ +g[e>>2];f=c+(j<<3)+4|0;l=c+(l<<3)+4|0;n=+g[f>>2]+ +g[l>>2];j=j+-1|0;p=+g[c+(j<<3)>>2];q=p-r*.5;j=c+(j<<3)+4|0;o=+g[j>>2]-n*.5;g[d+(b<<3)>>2]=r+p;g[d+(b<<3)+4>>2]=n+ +g[j>>2];n=(+g[k>>2]-+g[e>>2])*.8660253882408142;p=(+g[f>>2]-+g[l>>2])*.8660253882408142;l=b+m|0;g[d+(l<<3)>>2]=q-p;g[d+(l<<3)+4>>2]=o+n;l=b+h|0;g[d+(l<<3)>>2]=q+p;g[d+(l<<3)+4>>2]=o-n;b=b+1|0}while((b|0)!=(m|0));return}else{if(!h)return;h=m<<1;b=0;do{j=(b*3|0)+1&65535;k=c+(j<<3)|0;l=j+1|0;e=c+(l<<3)|0;n=+g[k>>2]+ +g[e>>2];f=c+(j<<3)+4|0;l=c+(l<<3)+4|0;r=+g[f>>2]+ +g[l>>2];j=j+-1|0;p=+g[c+(j<<3)>>2];o=p-n*.5;j=c+(j<<3)+4|0;q=+g[j>>2]-r*.5;g[d+(b<<3)>>2]=n+p;g[d+(b<<3)+4>>2]=r+ +g[j>>2];r=(+g[k>>2]-+g[e>>2])*.8660253882408142;p=(+g[f>>2]-+g[l>>2])*.8660253882408142;l=b+m|0;g[d+(l<<3)>>2]=o+p;g[d+(l<<3)+4>>2]=q-r;l=b+h|0;g[d+(l<<3)>>2]=o-p;g[d+(l<<3)+4>>2]=q+r;b=b+1|0}while((b|0)!=(m|0));return}if(i){if(!h)return;j=N(m,l)|0;k=N(l<<1,m)|0;if(!(a<<16>>16))return;else a=0;do{h=N((a*3|0)+1|0,l)|0;b=N(a,l)|0;i=0;do{v=i+h&65535;x=c+(v<<3)|0;t=v+l|0;w=c+(t<<3)|0;o=+g[x>>2]+ +g[w>>2];y=v-l|0;n=+g[c+(y<<3)>>2];p=n-o*.5;v=c+(v<<3)+4|0;t=c+(t<<3)+4|0;r=+g[v>>2]+ +g[t>>2];y=c+(y<<3)+4|0;u=+g[y>>2]-r*.5;s=i+b&65535;g[d+(s<<3)>>2]=n+o;g[d+(s<<3)+4>>2]=r+ +g[y>>2];r=(+g[x>>2]-+g[w>>2])*.8660253882408142;o=(+g[v>>2]-+g[t>>2])*.8660253882408142;n=p-o;q=u-r;o=p+o;r=u+r;t=s+j|0;u=+g[e+(i<<3)>>2];p=+g[e+(i<<3)+4>>2];g[d+(t<<3)+4>>2]=r*u+p*n;g[d+(t<<3)>>2]=u*n-r*p;s=s+k|0;p=+g[f+(i<<3)>>2];r=+g[f+(i<<3)+4>>2];g[d+(s<<3)+4>>2]=q*p+o*r;g[d+(s<<3)>>2]=o*p-q*r;i=i+1|0}while((i|0)!=(l|0));a=a+1|0}while((a|0)!=(m|0));return}else{if(!h)return;j=N(m,l)|0;k=N(l<<1,m)|0;if(!(a<<16>>16))return;else a=0;do{h=N((a*3|0)+1|0,l)|0;b=N(a,l)|0;i=0;do{w=i+h&65535;t=c+(w<<3)|0;x=w+l|0;v=c+(x<<3)|0;r=+g[t>>2]+ +g[v>>2];s=w-l|0;q=+g[c+(s<<3)>>2];u=q-r*.5;w=c+(w<<3)+4|0;x=c+(x<<3)+4|0;n=+g[w>>2]+ +g[x>>2];s=c+(s<<3)+4|0;o=+g[s>>2]-n*.5;y=i+b&65535;g[d+(y<<3)>>2]=q+r;g[d+(y<<3)+4>>2]=n+ +g[s>>2];n=(+g[t>>2]-+g[v>>2])*.8660253882408142;r=(+g[w>>2]-+g[x>>2])*.8660253882408142;q=u+r;p=o+n;r=u-r;n=o-n;x=y+j|0;o=+g[e+(i<<3)>>2];u=+g[e+(i<<3)+4>>2];g[d+(x<<3)>>2]=n*u+o*q;g[d+(x<<3)+4>>2]=n*o-u*q;y=y+k|0;q=+g[f+(i<<3)>>2];u=+g[f+(i<<3)+4>>2];g[d+(y<<3)>>2]=r*q+p*u;g[d+(y<<3)+4>>2]=p*q-r*u;i=i+1|0}while((i|0)!=(l|0));a=a+1|0}while((a|0)!=(m|0));return}}function Pf(a,b,c,d,e,f,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0,H=0,I=0;s=a&65535;k=j<<24>>24==1;t=b&65535;j=b<<16>>16!=0;if(a<<16>>16==1)if(k){if(!j)return;j=t<<1;b=t*3|0;k=t<<2;a=0;do{s=(a*5|0)+1&65535;w=+g[c+(s<<3)>>2];h=s+3|0;x=+g[c+(h<<3)>>2];A=w+x;E=+g[c+(s<<3)+4>>2];C=+g[c+(h<<3)+4>>2];z=E+C;h=s+1|0;v=+g[c+(h<<3)>>2];i=s+2|0;y=+g[c+(i<<3)>>2];F=v+y;u=+g[c+(h<<3)+4>>2];B=+g[c+(i<<3)+4>>2];D=u+B;y=v-y;B=u-B;x=w-x;C=E-C;s=s+-1|0;i=c+(s<<3)|0;g[d+(a<<3)>>2]=F+(A+ +g[i>>2]);s=c+(s<<3)+4|0;g[d+(a<<3)+4>>2]=D+(z+ +g[s>>2]);E=+g[i>>2];w=A*.30901700258255005+E-F*.80901700258255;u=+g[s>>2];v=z*.30901700258255005+u-D*.80901700258255;A=F*.30901700258255005+(E-A*.80901700258255);z=D*.30901700258255005+(u-z*.80901700258255);u=x*.9510565400123596+y*.5877852439880371;y=x*.5877852439880371-y*.9510565400123596;x=C*.9510565400123596+B*.5877852439880371;B=C*.5877852439880371-B*.9510565400123596;s=a+t|0;g[d+(s<<3)>>2]=w-x;g[d+(s<<3)+4>>2]=u+v;s=a+j|0;g[d+(s<<3)>>2]=A-B;g[d+(s<<3)+4>>2]=y+z;s=a+b|0;g[d+(s<<3)>>2]=B+A;g[d+(s<<3)+4>>2]=z-y;s=a+k|0;g[d+(s<<3)>>2]=x+w;g[d+(s<<3)+4>>2]=v-u;a=a+1|0}while((a|0)!=(t|0));return}else{if(!j)return;j=t<<1;b=t*3|0;k=t<<2;a=0;do{s=(a*5|0)+1&65535;C=+g[c+(s<<3)>>2];h=s+3|0;z=+g[c+(h<<3)>>2];y=C+z;v=+g[c+(s<<3)+4>>2];x=+g[c+(h<<3)+4>>2];B=v+x;h=s+1|0;F=+g[c+(h<<3)>>2];i=s+2|0;E=+g[c+(i<<3)>>2];u=F+E;A=+g[c+(h<<3)+4>>2];D=+g[c+(i<<3)+4>>2];w=A+D;E=F-E;D=A-D;z=C-z;x=v-x;s=s+-1|0;i=c+(s<<3)|0;g[d+(a<<3)>>2]=u+(y+ +g[i>>2]);s=c+(s<<3)+4|0;g[d+(a<<3)+4>>2]=w+(B+ +g[s>>2]);v=+g[i>>2];C=y*.30901700258255005+v-u*.80901700258255;A=+g[s>>2];F=B*.30901700258255005+A-w*.80901700258255;y=u*.30901700258255005+(v-y*.80901700258255);B=w*.30901700258255005+(A-B*.80901700258255);A=z*.5877852439880371+E*.9510565400123596;E=z*.9510565400123596-E*.5877852439880371;z=x*.5877852439880371+D*.9510565400123596;D=x*.9510565400123596-D*.5877852439880371;s=a+t|0;g[d+(s<<3)>>2]=D+C;g[d+(s<<3)+4>>2]=F-E;s=a+j|0;g[d+(s<<3)>>2]=z+y;g[d+(s<<3)+4>>2]=B-A;s=a+b|0;g[d+(s<<3)>>2]=y-z;g[d+(s<<3)+4>>2]=A+B;s=a+k|0;g[d+(s<<3)>>2]=C-D;g[d+(s<<3)+4>>2]=E+F;a=a+1|0}while((a|0)!=(t|0));return}if(k){if(!j)return;j=a<<16>>16==0;b=s*3|0;k=s<<1;a=N(t,s)|0;l=N(k,t)|0;m=N(b,t)|0;n=N(s<<2,t)|0;r=0;do{if(!j){o=N((r*5|0)+1|0,s)|0;p=N(r,s)|0;q=0;do{H=q+o&65535;u=+g[c+(H<<3)>>2];G=H+b|0;x=+g[c+(G<<3)>>2];B=u+x;A=+g[c+(H<<3)+4>>2];z=+g[c+(G<<3)+4>>2];w=A+z;G=H+s|0;v=+g[c+(G<<3)>>2];I=H+k|0;F=+g[c+(I<<3)>>2];C=v+F;E=+g[c+(G<<3)+4>>2];y=+g[c+(I<<3)+4>>2];D=E+y;F=v-F;y=E-y;x=u-x;z=A-z;H=H-s|0;I=c+(H<<3)|0;G=q+p&65535;g[d+(G<<3)>>2]=C+(B+ +g[I>>2]);H=c+(H<<3)+4|0;g[d+(G<<3)+4>>2]=D+(w+ +g[H>>2]);A=+g[I>>2];u=B*.30901700258255005+A-C*.80901700258255;E=+g[H>>2];v=w*.30901700258255005+E-D*.80901700258255;B=C*.30901700258255005+(A-B*.80901700258255);w=D*.30901700258255005+(E-w*.80901700258255);E=x*.9510565400123596+F*.5877852439880371;F=x*.5877852439880371-F*.9510565400123596;x=z*.9510565400123596+y*.5877852439880371;y=z*.5877852439880371-y*.9510565400123596;z=E+v;D=F+w;A=y+B;C=x+u;x=u-x;E=v-E;y=B-y;F=w-F;H=G+a|0;w=+g[e+(q<<3)>>2];B=+g[e+(q<<3)+4>>2];g[d+(H<<3)+4>>2]=x*B+w*z;g[d+(H<<3)>>2]=w*x-B*z;H=G+l|0;z=+g[f+(q<<3)>>2];B=+g[f+(q<<3)+4>>2];g[d+(H<<3)+4>>2]=D*z+y*B;g[d+(H<<3)>>2]=y*z-D*B;H=G+m|0;B=+g[h+(q<<3)>>2];D=+g[h+(q<<3)+4>>2];g[d+(H<<3)+4>>2]=F*B+A*D;g[d+(H<<3)>>2]=A*B-F*D;G=G+n|0;D=+g[i+(q<<3)>>2];F=+g[i+(q<<3)+4>>2];g[d+(G<<3)+4>>2]=E*D+C*F;g[d+(G<<3)>>2]=C*D-E*F;q=q+1|0}while((q|0)!=(s|0))}r=r+1|0}while((r|0)!=(t|0));return}else{if(!j)return;j=a<<16>>16==0;b=s*3|0;k=s<<1;a=N(t,s)|0;l=N(k,t)|0;m=N(b,t)|0;n=N(s<<2,t)|0;r=0;do{if(!j){o=N((r*5|0)+1|0,s)|0;p=N(r,s)|0;q=0;do{H=q+o&65535;B=+g[c+(H<<3)>>2];I=H+b|0;z=+g[c+(I<<3)>>2];D=B+z;F=+g[c+(H<<3)+4>>2];x=+g[c+(I<<3)+4>>2];A=F+x;I=H+s|0;C=+g[c+(I<<3)>>2];G=H+k|0;v=+g[c+(G<<3)>>2];E=C+v;w=+g[c+(I<<3)+4>>2];u=+g[c+(G<<3)+4>>2];y=w+u;v=C-v;u=w-u;z=B-z;x=F-x;H=H-s|0;G=c+(H<<3)|0;I=q+p&65535;g[d+(I<<3)>>2]=E+(D+ +g[G>>2]);H=c+(H<<3)+4|0;g[d+(I<<3)+4>>2]=y+(A+ +g[H>>2]);F=+g[G>>2];B=D*.30901700258255005+F-E*.80901700258255;w=+g[H>>2];C=A*.30901700258255005+w-y*.80901700258255;D=E*.30901700258255005+(F-D*.80901700258255);A=y*.30901700258255005+(w-A*.80901700258255);w=z*.5877852439880371+v*.9510565400123596;v=z*.9510565400123596-v*.5877852439880371;z=x*.5877852439880371+u*.9510565400123596;u=x*.9510565400123596-u*.5877852439880371;x=C-v;y=A-w;F=D-z;E=B-u;B=u+B;C=v+C;D=z+D;A=w+A;H=I+a|0;w=+g[e+(q<<3)>>2];z=+g[e+(q<<3)+4>>2];g[d+(H<<3)>>2]=w*B+z*x;g[d+(H<<3)+4>>2]=w*x-B*z;H=I+l|0;z=+g[f+(q<<3)>>2];B=+g[f+(q<<3)+4>>2];g[d+(H<<3)>>2]=D*z+y*B;g[d+(H<<3)+4>>2]=y*z-D*B;H=I+m|0;B=+g[h+(q<<3)>>2];D=+g[h+(q<<3)+4>>2];g[d+(H<<3)>>2]=F*B+A*D;g[d+(H<<3)+4>>2]=A*B-F*D;I=I+n|0;D=+g[i+(q<<3)>>2];F=+g[i+(q<<3)+4>>2];g[d+(I<<3)>>2]=E*D+C*F;g[d+(I<<3)+4>>2]=C*D-E*F;q=q+1|0}while((q|0)!=(s|0))}r=r+1|0}while((r|0)!=(t|0));return}}function Qf(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=b[a>>1]|0;v=c[a+32>>2]|0;t=c[a+36>>2]|0;r=(e[a+4>>1]|0)+1|0;if(r>>>0<2)return;u=s&65535;p=2;q=1;g=0;l=0;f=2;while(1){j=b[a+2+(f<<1)>>1]|0;m=j&65535;n=N(m,q&65535)|0;o=(u>>>0)/((n&65535)>>>0)|0;k=o&65535;switch(j<<16>>16){case 4:{f=g&65535;i=o+f|0;g=t+(f<<3)|0;h=t+((i&65535)<<3)|0;i=t+((i+o&65535)<<3)|0;if(!(l<<16>>16))Rf(k,q,d,v,g,h,i);else Rf(k,q,v,d,g,h,i);h=1-(l&65535)&65535;break}case 2:{f=g&65535;g=t+(f<<3)|0;if(!(l<<16>>16))Sf(k,q,d,v,g);else Sf(k,q,v,d,g);h=1-(l&65535)&65535;break}case 3:{f=g&65535;g=t+(f<<3)|0;h=t+((o+f&65535)<<3)|0;if(!(l<<16>>16))Of(k,q,d,v,g,h,1);else Of(k,q,v,d,g,h,1);h=1-(l&65535)&65535;break}case 5:{f=g&65535;h=o+f|0;j=h+o|0;g=t+(f<<3)|0;h=t+((h&65535)<<3)|0;i=t+((j&65535)<<3)|0;j=t+((j+o&65535)<<3)|0;if(!(l<<16>>16))Pf(k,q,d,v,g,h,i,j,1);else Pf(k,q,v,d,g,h,i,j,1);h=1-(l&65535)&65535;break}default:{h=l;f=g&65535}}q=n&65535;g=f+(N(m+-1|0,o)|0)&65535;p=p+1<<16>>16;f=p&65535;if(r>>>0>>0)break;else l=h}if(s<<16>>16!=0&h<<16>>16!=0)f=0;else return;do{c[d+(f<<3)>>2]=c[v+(f<<3)>>2];c[d+(f<<3)+4>>2]=c[v+(f<<3)+4>>2];f=f+1|0}while((f|0)!=(u|0));return}function Rf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0;r=a&65535;s=b&65535;b=b<<16>>16!=0;if(a<<16>>16==1){if(!b)return;b=s<<1;a=s*3|0;i=0;do{r=i<<2&65532;B=+g[c+(r<<3)>>2];h=r|2;w=+g[c+(h<<3)>>2];A=B+w;w=B-w;B=+g[c+(r<<3)+4>>2];u=+g[c+(h<<3)+4>>2];y=B+u;u=B-u;h=r|1;B=+g[c+(h<<3)>>2];r=r|3;t=+g[c+(r<<3)>>2];z=B+t;t=B-t;B=+g[c+(r<<3)+4>>2];v=+g[c+(h<<3)+4>>2];x=B+v;v=B-v;g[d+(i<<3)>>2]=A+z;h=i+b|0;g[d+(h<<3)>>2]=A-z;g[d+(i<<3)+4>>2]=y+x;g[d+(h<<3)+4>>2]=y-x;h=i+s|0;g[d+(h<<3)>>2]=w+v;r=i+a|0;g[d+(r<<3)>>2]=w-v;g[d+(h<<3)+4>>2]=u+t;g[d+(r<<3)+4>>2]=u-t;i=i+1|0}while((i|0)!=(s|0));return}if(!b)return;q=r<<2;b=a<<16>>16==0;a=r<<1;i=r*3|0;j=N(s,r)|0;k=N(a,s)|0;l=N(i,s)|0;p=0;do{if(!b){m=(N(q,p)|0)&65532;n=(N(p,r)|0)&65535;o=0;do{D=o+m|0;u=+g[c+(D<<3)>>2];C=D+a|0;z=+g[c+(C<<3)>>2];x=u+z;z=u-z;u=+g[c+(D<<3)+4>>2];t=+g[c+(C<<3)+4>>2];v=u+t;t=u-t;C=D+r|0;u=+g[c+(C<<3)>>2];D=D+i|0;A=+g[c+(D<<3)>>2];w=u+A;A=u-A;u=+g[c+(D<<3)+4>>2];y=+g[c+(C<<3)+4>>2];B=u+y;y=u-y;u=z+y;y=z-y;z=t+A;A=t-A;C=o+n|0;g[d+(C<<3)>>2]=x+w;w=x-w;g[d+(C<<3)+4>>2]=v+B;B=v-B;D=C+j|0;v=+g[e+(o<<3)>>2];x=+g[e+(o<<3)+4>>2];g[d+(D<<3)+4>>2]=z*v+u*x;g[d+(D<<3)>>2]=u*v-z*x;D=C+k|0;x=+g[f+(o<<3)>>2];z=+g[f+(o<<3)+4>>2];g[d+(D<<3)+4>>2]=B*x+w*z;g[d+(D<<3)>>2]=w*x-B*z;C=C+l|0;z=+g[h+(o<<3)>>2];B=+g[h+(o<<3)+4>>2];g[d+(C<<3)+4>>2]=A*z+y*B;g[d+(C<<3)>>2]=y*z-A*B;o=o+1|0}while((o|0)!=(r|0))}p=p+1|0}while((p|0)!=(s|0));return}function Sf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;l=a&65535;f=b<<16>>16==0;if(a<<16>>16==1){if(f)return;b=b&65535;f=0;do{k=f<<2&65532;h=c+(k<<3)|0;e=k|1;i=c+(e<<3)|0;j=f<<1&65534;g[d+(j<<3)>>2]=+g[h>>2]+ +g[i>>2];l=j+b|0;g[d+(l<<3)>>2]=+g[h>>2]-+g[i>>2];k=c+(k<<3)+4|0;e=c+(e<<3)+4|0;g[d+(j<<3)+4>>2]=+g[k>>2]+ +g[e>>2];g[d+(l<<3)+4>>2]=+g[k>>2]-+g[e>>2];f=f+1|0}while((f|0)!=(b|0));return}if(f)return;j=b&65535;k=l<<1;i=N(j,l)|0;if(!(a<<16>>16))return;else h=0;do{b=(N(k,h)|0)&65534;f=(N(h,l)|0)&65535;a=0;do{s=a+b|0;u=c+(s<<3)|0;r=s+l|0;t=c+(r<<3)|0;m=a+f|0;g[d+(m<<3)>>2]=+g[u>>2]+ +g[t>>2];q=+g[u>>2]-+g[t>>2];s=c+(s<<3)+4|0;r=c+(r<<3)+4|0;g[d+(m<<3)+4>>2]=+g[s>>2]+ +g[r>>2];o=+g[s>>2]-+g[r>>2];m=m+i|0;p=+g[e+(a<<3)>>2];n=+g[e+(a<<3)+4>>2];g[d+(m<<3)+4>>2]=o*p+q*n;g[d+(m<<3)>>2]=q*p-o*n;a=a+1|0}while((a|0)!=(l|0));h=h+1|0}while((h|0)!=(j|0));return}function Tf(a){a=a|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0;u=Jf(40)|0;b[u>>1]=a;v=a&65535;w=v<<3;c[u+32>>2]=Jf(w)|0;w=Jf(w)|0;c[u+36>>2]=w;x=u+2|0;p=u+6|0;h=a;f=0;d=0;e=0;a:while(1){d=d+1<<16>>16;if((d&65535)<5)e=b[170872+((d&65535)+-1<<1)>>1]|0;else e=(e&65535)+2&65535;n=e&65535;if(e<<16>>16==2)j=h;else while(1){i=h;h=(h&65535)/(e&65535)|0;if((i&65535)-(N(h&65535,n)|0)&65535|0){h=i;continue a}f=f+1<<16>>16;b[x+((f&65535)+1<<1)>>1]=e;if(h<<16>>16==1)break a}while(1){h=j;j=(j&65535)>>>1;if((h&65535)-(N(j&65535,n)|0)&65535|0)continue a;i=f+1<<16>>16;h=i&65535;b[x+(h+1<<1)>>1]=2;if(f<<16>>16){if((i&65535)>=2){h=h+2|0;f=2;do{s=h-(f&65535)&65535;b[x+(s+1<<1)>>1]=b[x+(s<<1)>>1]|0;f=f+1<<16>>16}while((i&65535)>=(f&65535))}b[p>>1]=2}if(j<<16>>16==1){f=i;break a}else f=i}}b[x>>1]=a;b[u+4>>1]=f;t=6.2831854820251465/+(a&65535);if(!(f<<16>>16))return u|0;else{r=1;s=1;d=0}do{e=b[x+((r&65535)+1<<1)>>1]|0;p=s&65535;s=N(p,e&65535)|0;h=s&65535;a=(v>>>0)/(h>>>0)|0;q=e+-1<<16>>16;do if(q<<16>>16){i=(e&65535)>5;if(h>>>0>v>>>0){h=d&65535;e=w+(h<<3)|0;h=w+(h<<3)+4|0;if(i){c[e>>2]=1065353216;c[h>>2]=0;break}else{g[e>>2]=1.0;g[h>>2]=0.0;break}}if(i){j=0;n=0;do{i=d&65535;h=w+(i<<3)|0;g[h>>2]=1.0;i=w+(i<<3)+4|0;g[i>>2]=0.0;j=(j&65535)+p|0;o=t*+(j&65535|0);e=0;m=0.0;do{d=d+1<<16>>16;m=m+1.0;l=o*m;k=+D(+l);y=d&65535;g[w+(y<<3)>>2]=k;l=+E(+l);g[w+(y<<3)+4>>2]=l;e=e+1<<16>>16}while(a>>>0>(e&65535)>>>0);g[h>>2]=k;g[i>>2]=l;n=n+1<<16>>16}while((n&65535)<(q&65535))}else{h=0;i=0;do{e=d&65535;g[w+(e<<3)>>2]=1.0;g[w+(e<<3)+4>>2]=0.0;h=(h&65535)+p|0;l=t*+(h&65535|0);e=0;k=0.0;do{d=d+1<<16>>16;k=k+1.0;o=l*k;y=d&65535;g[w+(y<<3)>>2]=+D(+o);g[w+(y<<3)+4>>2]=+E(+o);e=e+1<<16>>16}while(a>>>0>(e&65535)>>>0);i=i+1<<16>>16}while((i&65535)<(q&65535))}}while(0);r=r+1<<16>>16}while((r&65535)<=(f&65535));return u|0}function Uf(a){a=a|0;var b=0;b=c[a+32>>2]|0;if(b|0)Vf(b);b=c[a+36>>2]|0;if(!b){Vf(a);return}Vf(b);Vf(a);return}function Vf(a){a=a|0;oV(a);return}function Wf(a){a=a|0;if(a>>>0<=92016)if(a>>>0<=75131)if(a>>>0<=55425)if(a>>>0<=46008)if(a>>>0<=37565)if(a>>>0<=27712)if(a>>>0<=23003)if(a>>>0<=18782)if(a>>>0>13855)a=8;else return (a>>>0>11501?9:a>>>0>9390?10:11)|0;else a=7;else a=6;else a=5;else a=4;else a=3;else a=2;else a=1;else a=0;return a|0}function Xf(a){a=a|0;if((a&255)>=12){a=0;return a|0}a=c[53644+((a&255)<<2)>>2]|0;return a|0}function Yf(b){b=b|0;if((b&255)>=12){b=0;return b|0}b=a[181723+(b&255)>>0]|0;return b|0}function Zf(b,c,d){b=b|0;c=c|0;d=d|0;d=d<<24>>24!=0&1;return a[((c<<24>>24==3?d|2:d)&255)+(181735+((b&255)<<2))>>0]|0}function _f(a){a=a|0;switch(a<<24>>24){case 23:case 19:case 17:case 4:case 1:case 2:{a=0;break}case 3:{a=-1;break}default:a=-1}return a|0}function $f(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=c[a>>2]|0;g=c[b>>2]|0;f=d[181799+(g>>>25&99)>>0]|0;e=(d[181799+(e&245)>>0]|0)<<31|e>>>1;c[a>>2]=e;a=g<<1|f;c[b>>2]=a;return e^a|0}function ag(a){a=a|0;if((a&255)>33){a=0;return a|0}a=c[53172+((a&255)<<2)>>2]|0;return a|0}function bg(){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Jf(2388)|0;if(!d){k=0;return k|0}FZ(d|0,0,2384)|0;c[d+2384>>2]=173751;a[d+2264>>0]=1;a[d+2256>>0]=1;c[d+2260>>2]=44100;a[d+2265>>0]=0;a[d>>0]=0;a[d+1>>0]=0;a[d+2>>0]=0;a[d+6>>0]=0;a[d+7>>0]=0;a[d+8>>0]=0;b[d+10>>1]=1024;c[d+16>>2]=0;c[d+124>>2]=0;c[d+1648>>2]=1;c[d+1652>>2]=1;e=d+128|0;f=d+328|0;g=d+584|0;h=d+1136|0;i=d+192|0;j=d+1392|0;k=0;do{a[e+k>>0]=0;c[f+(k<<2)>>2]=0;c[g+(k<<2)>>2]=0;c[h+(k<<2)>>2]=0;b[i+(k<<1)>>1]=0;c[j+(k<<2)>>2]=0;k=k+1|0}while((k|0)!=64);FZ(d+892|0,0,192)|0;c[d+324>>2]=cg(1.0,1.0)|0;k=d;return k|0}function cg(b,c){b=+b;c=+c;var d=0;d=Jf(192)|0;FZ(d|0,0,184)|0;g[d+184>>2]=b;g[d+188>>2]=c;a[d+1>>0]=1;a[d+4>>0]=-1;a[d+22>>0]=1;a[d+39>>0]=0;return d|0}function dg(a){a=a|0;return ((a|0)==0?0:a+2256|0)|0}function eg(b,d){b=b|0;d=d|0;var e=0;if(!((b|0)!=0&(d|0)!=0)){b=0;return b|0}if((_f(a[d>>0]|0)|0)<<24>>24<0){b=0;return b|0}a[b+2256>>0]=a[d>>0]|0;e=c[d+4>>2]|0;if(!e){b=0;return b|0}c[b+2260>>2]=e;e=a[d+8>>0]|0;if((e+-1&255)>4){b=0;return b|0}a[b+2264>>0]=e;e=a[d+9>>0]|0;if((e&255)>1){b=0;return b|0}a[b+2265>>0]=e;b=1;return b|0}function fg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=e+8|0;m=e+4|0;o=e+20|0;i=0;while(1){f=c[n>>2]|0;if(f>>>0<12){h=12-f|0;g=c[e>>2]|0;h=(g&(1<>2]|0)>>>(32-h|0)}else{g=c[e>>2]|0;h=g<<32-f>>>20}b[d>>1]=h;j=(a[o>>0]|0)==0;if((h&65535|0)==4095)break;do if(j)if(f>>>0>8){c[n>>2]=f+-8;break}else{Gf(e,8);break}while(0);i=i+1<<16>>16;if((i&65535)>=768){f=5;l=125;break}}if((l|0)==125)return f|0;do if(j)if(f>>>0>12){f=f+-12|0;c[n>>2]=f;l=17;break}else{Gf(e,12);f=c[n>>2]|0;l=15;break}else l=15;while(0);do if((l|0)==15){if(f|0){g=c[e>>2]|0;l=17;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){Gf(e,1);i=c[n>>2]|0;l=21;break}else{h=d+2|0;a[h>>0]=f;f=0;l=24;break}}while(0);if((l|0)==17){i=f+-1|0;c[n>>2]=i;f=g>>>i&1;l=21}do if((l|0)==21){g=d+2|0;a[g>>0]=f;if(i>>>0<2){h=g;f=i;g=c[m>>2]|0;l=24;break}else{f=c[e>>2]|0;j=f<<32-i>>>30;k=g;g=f;f=i;break}}while(0);if((l|0)==24){j=2-f|0;l=c[e>>2]|0;j=((1<>>(32-j|0);k=h;g=l}do if(!(a[o>>0]|0))if(f>>>0>2){f=f+-2|0;c[n>>2]=f;a[d+3>>0]=j;l=31;break}else{Gf(e,2);f=c[n>>2]|0;l=29;break}else l=29;while(0);do if((l|0)==29){a[d+3>>0]=j;if(f|0){g=c[e>>2]|0;l=31;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){Gf(e,1);g=c[n>>2]|0;l=35;break}else{a[d+4>>0]=f;f=0;l=38;break}}while(0);if((l|0)==31){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=35}do if((l|0)==35){a[d+4>>0]=f;if(g>>>0<2){f=g;g=c[m>>2]|0;l=38;break}else{h=c[e>>2]<<32-g>>>30;f=g;break}}while(0);if((l|0)==38){h=2-f|0;h=((1<>2])<>>(32-h|0)}do if(!(a[o>>0]|0))if(f>>>0>2){f=f+-2|0;c[n>>2]=f;break}else{Gf(e,2);f=c[n>>2]|0;break}while(0);a[d+5>>0]=h;if(f>>>0<4){h=4-f|0;g=c[e>>2]|0;h=(g&(1<>2]|0)>>>(32-h|0)}else{g=c[e>>2]|0;h=g<<32-f>>>28}do if(!(a[o>>0]|0))if(f>>>0>4){f=f+-4|0;c[n>>2]=f;a[d+6>>0]=h;l=52;break}else{Gf(e,4);f=c[n>>2]|0;l=50;break}else l=50;while(0);do if((l|0)==50){a[d+6>>0]=h;if(f|0){g=c[e>>2]|0;l=52;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){Gf(e,1);g=c[n>>2]|0;l=56;break}else{a[d+7>>0]=f;f=0;l=59;break}}while(0);if((l|0)==52){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=56}do if((l|0)==56){a[d+7>>0]=f;if(g>>>0<3){f=g;g=c[m>>2]|0;l=59;break}else{j=c[e>>2]|0;h=j<<32-g>>>29;f=g;g=j;break}}while(0);if((l|0)==59){h=3-f|0;l=c[e>>2]|0;h=((1<>>(32-h|0);g=l}do if(!(a[o>>0]|0))if(f>>>0>3){f=f+-3|0;c[n>>2]=f;a[d+8>>0]=h;l=66;break}else{Gf(e,3);f=c[n>>2]|0;l=64;break}else l=64;while(0);do if((l|0)==64){a[d+8>>0]=h;if(f|0){g=c[e>>2]|0;l=66;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){Gf(e,1);g=c[n>>2]|0;l=70;break}else{a[d+9>>0]=f;f=g>>>31;break}}while(0);if((l|0)==66){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=70}do if((l|0)==70){a[d+9>>0]=f;if(g|0){f=g+-1|0;c[n>>2]=f;f=(c[e>>2]|0)>>>f&1;break}f=(c[m>>2]|0)>>>31;if(!(a[o>>0]|0))Gf(e,1)}while(0);a[d+10>>0]=f;if((a[d+22>>0]|0)==1?(a[k>>0]|0)==0:0){g=c[n>>2]|0;if(g>>>0<2){f=2-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>30;do if(!(a[o>>0]|0))if(g>>>0>2){c[n>>2]=g+-2;break}else{Gf(e,2);break}while(0);a[d+11>>0]=f}f=c[n>>2]|0;do if(!f){g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){Gf(e,1);g=c[n>>2]|0;l=89;break}else{a[d+12>>0]=f;f=g>>>31;l=92;break}}else{g=f+-1|0;c[n>>2]=g;f=(c[e>>2]|0)>>>g&1;l=89}while(0);do if((l|0)==89){a[d+12>>0]=f;if(!g){g=c[m>>2]|0;f=g>>>31;if(a[o>>0]|0){l=92;break}Gf(e,1);g=c[n>>2]|0}else{g=g+-1|0;c[n>>2]=g;f=(c[e>>2]|0)>>>g&1}a[d+13>>0]=f;if(g>>>0<13){f=g;g=c[m>>2]|0;l=97;break}else{h=c[e>>2]<<32-g>>>19;f=g;break}}while(0);if((l|0)==92){a[d+13>>0]=f;f=0;l=97}if((l|0)==97){h=13-f|0;h=((1<>2])<>>(32-h|0)}do if(!(a[o>>0]|0))if(f>>>0>13){g=f+-13|0;c[n>>2]=g;break}else{Gf(e,13);g=c[n>>2]|0;break}else g=f;while(0);b[d+14>>1]=h;if(g>>>0<11){f=11-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>21;do if(!(a[o>>0]|0))if(g>>>0>11){g=g+-11|0;c[n>>2]=g;break}else{Gf(e,11);g=c[n>>2]|0;break}while(0);b[d+16>>1]=f;if(g>>>0<2){f=2-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>30;do if(!(a[o>>0]|0))if(g>>>0>2){c[n>>2]=g+-2;break}else{Gf(e,2);break}while(0);a[d+18>>0]=f;if(a[d+4>>0]|0){o=0;return o|0}g=c[n>>2]|0;if(g>>>0<16){f=16-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>16;do if(!(a[o>>0]|0))if(g>>>0>16){c[n>>2]=g+-16;break}else{Gf(e,16);break}while(0);b[d+20>>1]=f;o=0;return o|0}function gg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a&65535;d=(a&65535)>>>3;e=a&-2;h=Jf(36)|0;f=h;g=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[h+24>>2]=hg(d<<1&65535)|0;c[h+32>>2]=hg(b<<1&65535)|0;c[h+28>>2]=hg(e)|0;if(a<<16>>16==1024){a=75516;b=71548;d=70556;e=62620;f=61628;g=53692}else{a=77564;b=73596;d=71068;e=66716;f=62140;g=57788}c[h>>2]=g;c[h+8>>2]=f;c[h+4>>2]=e;c[h+12>>2]=d;c[h+16>>2]=b;c[h+20>>2]=a;return h|0}function hg(a){a=a|0;var d=0,e=0,f=0;e=Jf(12)|0;if(a&7)Ua(182055,182066,66,182073);b[e>>1]=a;switch(a<<16>>16){case 2048:{d=88284;f=9;break}case 256:{d=87772;f=9;break}case 1024:{d=85724;f=9;break}case 1920:{d=81884;f=9;break}case 240:{d=81404;f=9;break}case 960:{d=79484;f=9;break}default:{}}if((f|0)==9)c[e+8>>2]=d;c[e+4>>2]=Tf((a&65535)>>>2)|0;return e|0}function ig(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=b+176|0;t=e+8|0;FZ(b|0,0,471)|0;f=c[t>>2]|0;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;s=e+20|0;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{Gf(e,4);f=c[t>>2]|0;break}while(0);a[b>>0]=g;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;break}else{Gf(e,2);f=c[t>>2]|0;break}while(0);a[b+1>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{Gf(e,4);f=c[t>>2]|0;break}while(0);a[b+2>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{Gf(e,4);f=c[t>>2]|0;break}while(0);m=b+3|0;a[m>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{Gf(e,4);f=c[t>>2]|0;break}while(0);n=b+4|0;a[n>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{Gf(e,4);f=c[t>>2]|0;break}while(0);o=b+5|0;a[o>>0]=g;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;break}else{Gf(e,2);f=c[t>>2]|0;break}while(0);p=b+6|0;a[p>>0]=g;if(f>>>0<3){g=3-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>29;do if(!(a[s>>0]|0))if(f>>>0>3){f=f+-3|0;c[t>>2]=f;break}else{Gf(e,3);f=c[t>>2]|0;break}while(0);q=b+7|0;a[q>>0]=g;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;g=b+8|0;a[g>>0]=h;i=65;break}else{Gf(e,4);f=c[t>>2]|0;i=64;break}else i=64;while(0);do if((i|0)==64){g=b+8|0;a[g>>0]=h;if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0){r=g;break}Gf(e,1);r=g}else i=65}while(0);if((i|0)==65){f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1;r=g}l=f&255;a[b+9>>0]=l;if(l<<24>>24==1){g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{Gf(e,4);break}while(0);a[b+10>>0]=f}f=c[t>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);l=f&255;a[b+11>>0]=l;if(l<<24>>24==1){g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{Gf(e,4);break}while(0);a[b+12>>0]=f}f=c[t>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);l=f&255;a[b+13>>0]=l;if(l<<24>>24==1){f=c[t>>2]|0;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;a[b+15>>0]=g;i=103;break}else{Gf(e,2);f=c[t>>2]|0;i=102;break}else i=102;while(0);do if((i|0)==102){a[b+15>>0]=g;if(f|0){i=103;break}f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}while(0);if((i|0)==103){f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}a[b+14>>0]=f}if(a[m>>0]|0){k=e+4|0;l=b+435|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+16+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{Gf(e,4);break}while(0);a[b+32+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;f=g+1<<24>>24}else{a[b+455+f>>0]=g;a[l>>0]=(d[l>>0]|0)+2;f=(g&255)+2&255}a[u>>0]=f;f=j+1<<24>>24;if((f&255)<(d[m>>0]|0)){j=f;g=f&255}else break}}if(a[n>>0]|0){k=e+4|0;l=b+436|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+48+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{Gf(e,4);break}while(0);a[b+64+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;f=g+1<<24>>24}else{a[b+455+f>>0]=g;a[l>>0]=(d[l>>0]|0)+2;f=(g&255)+2&255}a[u>>0]=f;f=j+1<<24>>24;if((f&255)<(d[n>>0]|0)){j=f;g=f&255}else break}}if(a[o>>0]|0){k=e+4|0;l=b+437|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+80+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{Gf(e,4);break}while(0);a[b+96+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;a[u>>0]=g+1<<24>>24}else{a[b+455+f>>0]=g;a[u>>0]=(g&255)+2;a[l>>0]=(d[l>>0]|0)+2}f=j+1<<24>>24;if((f&255)<(d[o>>0]|0)){j=f;g=f&255}else break}}f=a[p>>0]|0;if(f<<24>>24){k=e+4|0;l=b+438|0;j=0;do{i=j&255;g=c[t>>2]|0;if(g>>>0<4){h=4-g|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{Gf(e,4);f=a[p>>0]|0;break}while(0);a[b+112+i>>0]=h;o=a[u>>0]|0;a[(h&255)+(b+439)>>0]=o;a[l>>0]=(a[l>>0]|0)+1<<24>>24;a[u>>0]=o+1<<24>>24;j=j+1<<24>>24}while((j&255)<(f&255))}f=a[q>>0]|0;if(f<<24>>24){k=e+4|0;j=0;do{i=j&255;g=c[t>>2]|0;if(g>>>0<4){h=4-g|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{Gf(e,4);f=a[q>>0]|0;break}while(0);a[b+128+i>>0]=h;j=j+1<<24>>24}while((j&255)<(f&255))}if(a[r>>0]|0){j=e+4|0;i=0;h=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[j>>2]|0)>>>31;if(a[s>>0]|0)break;Gf(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);a[b+144+h>>0]=f;g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{Gf(e,4);break}while(0);a[b+160+h>>0]=f;f=i+1<<24>>24;if((f&255)<(d[r>>0]|0)){i=f;h=f&255}else break}}Ff(e)|0;g=c[t>>2]|0;if(g>>>0<8){f=8-g|0;f=(c[e>>2]&(1<>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>24;do if(!(a[s>>0]|0))if(g>>>0>8){c[t>>2]=g+-8;break}else{Gf(e,8);break}while(0);g=f&255;k=b+177|0;a[k>>0]=g;if(!(g<<24>>24)){t=0;b=b+178+t|0;a[b>>0]=0;u=a[u>>0]|0;u=(u&255)>64;u=u?22:0;return u|0}l=e+4|0;j=0;f=0;do{h=c[t>>2]|0;if(h>>>0<8){i=8-h|0;i=(c[e>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[e>>2]<<32-h>>>24;do if(!(a[s>>0]|0))if(h>>>0>8){c[t>>2]=h+-8;break}else{Gf(e,8);g=a[k>>0]|0;break}while(0);a[b+178+f>>0]=i;j=j+1<<24>>24;f=j&255}while((j&255)<(g&255));b=b+178+f|0;a[b>>0]=0;u=a[u>>0]|0;u=(u&255)>64;u=u?22:0;return u|0}function jg(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;if((d|0)==0|(f|0)==0|g>>>0<2|(h|0)==0|(i|0)==0){d=-1;l=o;return d|0}a[d+1>>0]=0;a[d>>0]=0;j=kg(f,g,n,d+1657|0,a[d+2>>0]|0)|0;k=c[n+4>>2]|0;c[h>>2]=k;g=n+8|0;f=a[g>>0]|0;if(!(f<<24>>24)){a[i>>0]=a[d+1833>>0]|0;a[d+1656>>0]=1;f=a[i>>0]|0}else a[i>>0]=f;if(f<<24>>24==1)a[i>>0]=2;f=d+3|0;a[f>>0]=a[n+1>>0]|0;h=d+4|0;a[h>>0]=a[n>>0]|0;a[d+6>>0]=a[n+15>>0]|0;a[d+7>>0]=a[n+16>>0]|0;a[d+8>>0]=a[n+17>>0]|0;q=a[n+19>>0]|0;a[d+840>>0]=q;p=a[n+21>>0]|0;a[d+842>>0]=p;i=(a[d+2267>>0]|0)==0?a[n+20>>0]|0:0;a[d+841>>0]=i;if(q<<24>>24==1&p<<24>>24==0|i<<24>>24==1)a[f>>0]=Wf(k>>>1)|0;if(j<<24>>24){q=j;l=o;return q|0}a[d+5>>0]=a[g>>0]|0;g=d+10|0;if(!(a[n+9>>0]|0))f=b[g>>1]|0;else{b[g>>1]=960;f=960}c[d+320>>2]=gg(f)|0;if((a[h>>0]|0)!=23){q=0;l=o;return q|0}b[g>>1]=(e[g>>1]|0)>>>1;q=0;l=o;return q|0}function kg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=f;Cf(g,a,b);Ff(g)|0;e=lg(g,c,d,b,e)|0;l=f;return e|0}function lg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=Ef(b)|0;if(!d){d=-8;return d|0};c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;q=b+8|0;h=c[q>>2]|0;if(h>>>0<5){i=5-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>27;p=b+20|0;do if(!(a[p>>0]|0))if(h>>>0>5){h=h+-5|0;c[q>>2]=h;break}else{Gf(b,5);h=c[q>>2]|0;break}while(0);a[d>>0]=i;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{Gf(b,4);break}while(0);m=d+1|0;a[m>>0]=i;do if((i&255|0)==15?(j=c[q>>2]|0,(a[p>>0]|0)==0):0)if(j>>>0>24){h=j+-24|0;c[q>>2]=h;break}else{Gf(b,24);o=21;break}else o=21;while(0);if((o|0)==21)h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{Gf(b,4);break}while(0);j=d+8|0;a[j>>0]=i;i=Xf(a[m>>0]|0)|0;n=d+4|0;c[n>>2]=i;h=a[d>>0]|0;if(-9044023>>>(h&255)&1|0){d=-1;return d|0}if(!i){d=-2;return d|0}i=a[j>>0]|0;if((i&255)>7){d=-3;return d|0}if(i<<24>>24==1)a[j>>0]=2;l=d+19|0;a[l>>0]=-1;if(h<<24>>24==5){a[l>>0]=1;h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{Gf(b,4);break}while(0);h=i&255;if((a[m>>0]|0)==h<<24>>24)a[d+21>>0]=1;a[m>>0]=h;do if((i&255|0)==15){i=c[q>>2]|0;if(i>>>0<24){h=24-i|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>8;if(a[p>>0]|0)break;if(i>>>0>24){c[q>>2]=i+-24;break}else{Gf(b,24);break}}else h=Xf(h)|0;while(0);c[n>>2]=h;i=c[q>>2]|0;if(i>>>0<5){h=5-i|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>27;do if(!(a[p>>0]|0))if(i>>>0>5){c[q>>2]=i+-5;break}else{Gf(b,5);break}while(0);h=h&255;a[d>>0]=h}switch(h<<24>>24){case 7:case 6:case 4:case 3:case 2:case 1:{e=mg(b,d,e)|0;break}default:if((h&255)>16){i=mg(b,d,e)|0;j=c[q>>2]|0;if(j>>>0<2){h=2-j|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-j>>>30;do if(!(a[p>>0]|0))if(j>>>0>2){c[q>>2]=j+-2;break}else{Gf(b,2);break}while(0);a[d+18>>0]=h;e=(h&255|0)==0?i:-5}else e=-4}do if(g<<24>>24==0?(k=(f<<3)-k+(Ef(b)|0)<<24,(a[d>>0]|0)!=5&(k|0)>251658240):0){i=c[q>>2]|0;if(i>>>0<11){h=11-i|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>21;do if(!(a[p>>0]|0))if(i>>>0>11){c[q>>2]=i+-11;break}else{Gf(b,11);break}while(0);if((h&65535|0)==695){h=c[q>>2]|0;if(h>>>0<5){i=5-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>27;do if(!(a[p>>0]|0))if(h>>>0>5){c[q>>2]=h+-5;break}else{Gf(b,5);break}while(0);j=i&255;if((i&255|0)!=5){o=114;break}h=c[q>>2]|0;do if(!h){h=(c[b+4>>2]|0)>>>31;if(a[p>>0]|0)break;Gf(b,1)}else{h=h+-1|0;c[q>>2]=h;h=(c[b>>2]|0)>>>h&1}while(0);k=h&255;a[l>>0]=k;if(!(k<<24>>24))break;a[d>>0]=j;h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{Gf(b,4);break}while(0);h=i&255;if((a[m>>0]|0)==h<<24>>24)a[d+21>>0]=1;a[m>>0]=h;do if((i&255|0)==15){i=c[q>>2]|0;if(i>>>0<24){h=24-i|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>8;if(a[p>>0]|0)break;if(i>>>0>24){c[q>>2]=i+-24;break}else{Gf(b,24);break}}else h=Xf(h)|0;while(0);c[n>>2]=h;o=114}else o=114}else o=114;while(0);do if((o|0)==114?(a[l>>0]|0)==-1:0){h=c[n>>2]|0;if(h>>>0<24001){c[n>>2]=h<<1;a[d+20>>0]=1;break}else{a[d+21>>0]=1;break}}while(0);d=e;return d|0}function mg(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+480|0;if((l|0)>=(m|0))W(480);k=o;n=e+8|0;h=c[n>>2]|0;do if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){Gf(e,1);i=c[n>>2]|0;j=6;break}else{a[f+9>>0]=h;j=8;break}}else{i=h+-1|0;c[n>>2]=i;h=(c[e>>2]|0)>>>i&1;j=6}while(0);if((j|0)==6){a[f+9>>0]=h;if(!i)j=8;else{h=i+-1|0;c[n>>2]=h;h=(c[e>>2]|0)>>>h&1}}if((j|0)==8){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}j=h&255;a[f+10>>0]=j;if(j<<24>>24==1){i=c[n>>2]|0;if(i>>>0<14){h=14-i|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-i>>>18;do if(!(a[e+20>>0]|0))if(i>>>0>14){c[n>>2]=i+-14;break}else{Gf(e,14);break}while(0);b[f+12>>1]=h}h=c[n>>2]|0;if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}else{h=h+-1|0;c[n>>2]=h;h=(c[e>>2]|0)>>>h&1}h=h&255;i=f+14|0;a[i>>0]=h;if(!(a[f+8>>0]|0)){if((ig(k,e)|0)<<24>>24){n=-3;l=o;return n|0}if(g|0)DZ(g|0,k|0,471)|0;h=a[i>>0]|0}if(h<<24>>24!=1){n=0;l=o;return n|0}if((d[f>>0]|0)>16){h=c[n>>2]|0;do if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){Gf(e,1);i=c[n>>2]|0;j=35;break}else{a[f+15>>0]=h;j=37;break}}else{i=h+-1|0;c[n>>2]=i;h=(c[e>>2]|0)>>>i&1;j=35}while(0);if((j|0)==35){a[f+15>>0]=h;if(!i)j=37;else{i=i+-1|0;c[n>>2]=i;h=(c[e>>2]|0)>>>i&1;j=40}}do if((j|0)==37){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){Gf(e,1);i=c[n>>2]|0;j=40;break}else{a[f+16>>0]=h;j=42;break}}while(0);if((j|0)==40){a[f+16>>0]=h;if(!i)j=42;else{h=i+-1|0;c[n>>2]=h;h=(c[e>>2]|0)>>>h&1}}if((j|0)==42){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))Gf(e,1)}a[f+17>>0]=h}h=c[n>>2]|0;if(a[e+20>>0]|0){n=0;l=o;return n|0}if(h>>>0>1){c[n>>2]=h+-1;n=0;l=o;return n|0}else{Gf(e,1);n=0;l=o;return n|0}return 0}function ng(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;d=a+328|0;e=a+584|0;f=a+1136|0;g=a+1392|0;h=0;do{b=c[d+(h<<2)>>2]|0;if(b|0)Vf(b);b=c[e+(h<<2)>>2]|0;if(b|0)Vf(b);b=c[f+(h<<2)>>2]|0;if(b|0)Vf(b);b=c[g+(h<<2)>>2]|0;if(b|0)Vf(b);h=h+1|0}while((h|0)!=64);og(c[a+320>>2]|0);pg(c[a+324>>2]|0);b=c[a+124>>2]|0;if(b|0)Vf(b);b=a+892|0;e=0;do{d=c[b+(e<<2)>>2]|0;if(d|0)qg(d);e=e+1|0}while((e|0)!=48);Vf(a);return}function og(a){a=a|0;if(!a)return;ug(c[a+24>>2]|0);ug(c[a+32>>2]|0);ug(c[a+28>>2]|0);Vf(a);return}function pg(a){a=a|0;if(!a)return;Vf(a);return}function qg(a){a=a|0;var b=0;if(!a)return;rg(c[a+12440>>2]|0);sg(c[a+12448>>2]|0);b=a+12452|0;if(c[b>>2]|0){rg(c[a+12444>>2]|0);sg(c[b>>2]|0)}b=c[a+648>>2]|0;if(b|0)Vf(b);b=c[a+688>>2]|0;if(b|0)Vf(b);b=c[a+668>>2]|0;if(b|0)Vf(b);b=c[a+708>>2]|0;if(b|0)Vf(b);b=c[a+652>>2]|0;if(b|0)Vf(b);b=c[a+692>>2]|0;if(b|0)Vf(b);b=c[a+672>>2]|0;if(b|0)Vf(b);b=c[a+712>>2]|0;if(b|0)Vf(b);b=c[a+656>>2]|0;if(b|0)Vf(b);b=c[a+696>>2]|0;if(b|0)Vf(b);b=c[a+676>>2]|0;if(b|0)Vf(b);b=c[a+716>>2]|0;if(b|0)Vf(b);b=c[a+660>>2]|0;if(b|0)Vf(b);b=c[a+700>>2]|0;if(b|0)Vf(b);b=c[a+680>>2]|0;if(b|0)Vf(b);b=c[a+720>>2]|0;if(b|0)Vf(b);b=c[a+664>>2]|0;if(b|0)Vf(b);b=c[a+704>>2]|0;if(b|0)Vf(b);b=c[a+684>>2]|0;if(b|0)Vf(b);b=c[a+724>>2]|0;if(b|0)Vf(b);b=c[a+53420>>2]|0;if(b|0)tg(b);Vf(a);return}function rg(a){a=a|0;var b=0;if(!a)return;b=c[a>>2]|0;if(b|0)Vf(b);Vf(a);return}function sg(a){a=a|0;var b=0;if(!a)return;b=c[a>>2]|0;if(b|0)Vf(b);Vf(a);return}function tg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=c[b+720>>2]|0;if(!i){Vf(b);return}d=c[i+12>>2]|0;if(d|0)Vf(d);f=i+16|0;d=c[f>>2]|0;e=c[d>>2]|0;if(e){Vf(e);d=c[f>>2]|0}e=c[d+4>>2]|0;if(e){Vf(e);d=c[f>>2]|0}e=c[d+8>>2]|0;if(e){Vf(e);d=c[f>>2]|0}e=c[d+12>>2]|0;if(e){Vf(e);d=c[f>>2]|0}e=c[d+16>>2]|0;if(e){Vf(e);d=c[f>>2]|0}if(d|0)Vf(d);e=a[i>>0]|0;h=i+20|0;d=c[h>>2]|0;if(e<<24>>24){g=0;do{f=c[d+((g&255)<<2)>>2]|0;if(f){Vf(f);e=a[i>>0]|0;d=c[h>>2]|0}g=g+1<<24>>24}while((g&255)<(e&255))}if(d|0)Vf(d);Vf(i);Vf(b);return}function ug(a){a=a|0;if(!a)return;Uf(c[a+4>>2]|0);Vf(a);return}function vg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wg(a,b,c,d,0,0)|0}function wg(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+64|0;if((l|0)>=(m|0))W(64);p=C;o=C+40|0;q=p;r=q+36|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));if((f|0)==0|(g|0)==0|(h|0)==0){f=0;l=C;return f|0}B=f+10|0;n=b[B>>1]|0;q=g;r=q+88|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));q=f+2192|0;r=q+64|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));if(i>>>0>127?(VV(h,182088,3)|0)==0:0){c[g>>2]=128;f=0;l=C;return f|0}Cf(p,h,i);if(a[f>>0]|0){a[o+22>>0]=a[f+2266>>0]|0;z=fg(o,p)|0;h=g+9|0;a[h>>0]=z;if(!(z<<24>>24))A=8;else h=0}else{h=g+9|0;A=8}a:do if((A|0)==8){xg(f,g,p,f+1657|0,c[f+324>>2]|0);w=f+24|0;i=a[w>>0]|0;if(!(a[h>>0]|0)){if((i+-1&255)>63){a[h>>0]=12;h=0;break}c[g>>2]=((Ef(p)|0)+7|0)>>>3;if(a[p+20>>0]|0){a[h>>0]=14;h=0;break}b:do if((a[f>>0]|0)==0?(a[f+1>>0]|0)==0:0){o=f+5|0;p=i<<24>>24==8;if(p|(a[o>>0]|0)==0)a[o>>0]=p?7:i;switch(i<<24>>24){case 6:case 5:{A=20;break b}case 7:break;default:break b}a[o>>0]=0;i=7}else A=19;while(0);if((A|0)==19)if((i+-5&255)<2)A=20;if((A|0)==20)if(a[f+2265>>0]|0){a[f+20>>0]=1;i=2}s=i<<24>>24==1;z=s?2:i;a[f+21>>0]=s&1;s=g+19|0;p=g+20|0;u=g+21|0;x=g+22|0;v=g+23|0;i=f+20|0;q=s;r=q+68|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(r|0));c:do if(!(a[i>>0]|0)){if(a[f+1656>>0]|0){o=a[f+2092>>0]|0;a[s>>0]=o;r=a[f+2093>>0]|0;a[p>>0]=r;t=a[f+2094>>0]|0;a[u>>0]=t;a[x>>0]=a[f+2095>>0]|0;q=o&255;if(!(q&1))i=0;else{a[v>>0]=2;a[g+24>>0]=3;i=2}if(o<<24>>24){p=0;while(1){a[(i&255)+(g+23)>>0]=2;o=i+2<<24>>24;a[((i|1)&255)+(g+23)>>0]=3;p=p+2&255;if(p>>>0>=q>>>0){i=o;break}else i=o}}if(r<<24>>24){q=r&255;o=0;while(1){a[(i&255)+(g+23)>>0]=4;p=i+2<<24>>24;a[((i|1)&255)+(g+23)>>0]=5;o=o+2&255;if(o>>>0>=q>>>0){i=p;break}else i=p}}s=(t&1)==0;y=t+((s^1)<<31>>31)<<24>>24;r=y&255;o=i|1;p=(i&255)+(g+23)|0;if(y<<24>>24){q=0;do{a[p>>0]=6;i=i+2<<24>>24;a[(o&255)+(g+23)>>0]=7;q=q+2&255;o=i|1;p=(i&255)+(g+23)|0}while(q>>>0>>0)}if(!s){a[p>>0]=8;i=o}p=a[x>>0]|0;if(!(p<<24>>24))break;else o=0;while(1){a[(i&255)+(g+23)>>0]=9;o=o+1<<24>>24;if((o&255)>=(p&255))break c;else i=i+1<<24>>24}}switch(a[f+5>>0]|0){case 1:{a[s>>0]=2;a[v>>0]=2;a[g+24>>0]=3;break c}case 2:{a[s>>0]=2;a[v>>0]=2;a[g+24>>0]=3;break c}case 3:{a[s>>0]=3;a[v>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;break c}case 4:{a[s>>0]=3;a[u>>0]=1;a[v>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=8;break c}case 5:{a[s>>0]=3;a[u>>0]=2;a[v>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=6;a[g+27>>0]=7;break c}case 6:{a[s>>0]=3;a[u>>0]=2;a[x>>0]=1;a[v>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=6;a[g+27>>0]=7;a[g+28>>0]=9;break c}case 7:{a[s>>0]=3;a[p>>0]=2;a[u>>0]=2;a[x>>0]=1;a[v>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=4;a[g+27>>0]=5;a[g+28>>0]=6;a[g+29>>0]=7;a[g+30>>0]=9;break c}default:{t=f+23|0;y=(d[w>>0]|0)-(d[t>>0]|0)|0;i=y&255;r=y&255;d:do if(!(y&1)){o=r>>>1;y=o&255;a[s>>0]=y;a[u>>0]=y;if(!(o&1)){if(o|0){p=0;do{a[g+23+p>>0]=2;a[p+1+(g+23)>>0]=3;p=p+2&255}while(p>>>0>>0)}if(o>>>0>=r>>>0)break;while(1){a[g+23+o>>0]=6;a[o+1+(g+23)>>0]=7;o=o+2&255;if(o>>>0>=r>>>0)break d}}a[v>>0]=1;if(o|0){p=1;do{a[g+23+p>>0]=2;a[p+1+(g+23)>>0]=3;p=p+2&255}while(p>>>0<=o>>>0)}o=o+1|0;p=r+-1|0;if((o|0)<(p|0))do{a[g+23+o>>0]=6;a[o+1+(g+23)>>0]=7;o=o+2&255}while((o|0)<(p|0));a[g+23+p>>0]=8}else{q=r+-1|0;p=(q|0)/2|0;o=p&255;if(!(a[f+22>>0]|0)){q=p&255;p=p+1|0;a[s>>0]=p;a[u>>0]=o;a[v>>0]=1;if(q|0){o=1;do{a[g+23+o>>0]=2;a[o+1+(g+23)>>0]=3;o=o+2&255}while(o>>>0<=q>>>0)}o=p&255;if(o>>>0>=r>>>0)break;while(1){a[g+23+o>>0]=6;a[o+1+(g+23)>>0]=7;o=o+2&255;if(o>>>0>=r>>>0)break d}}a[s>>0]=o;o=p&255;a[u>>0]=p+1;if(o|0){p=0;do{a[g+23+p>>0]=2;a[p+1+(g+23)>>0]=3;p=p+2&255}while(p>>>0>>0)}if((o|0)<(q|0))do{a[g+23+o>>0]=6;a[o+1+(g+23)>>0]=7;o=o+2&255}while((o|0)<(q|0));a[g+23+q>>0]=8}while(0);a[x>>0]=a[t>>0]|0;if((d[w>>0]|0)<=(i&255))break c;do{a[(i&255)+(g+23)>>0]=9;i=i+1<<24>>24}while((i&255)<(d[w>>0]|0))}}}else{a[s>>0]=2;a[v>>0]=2;a[g+24>>0]=3}while(0);t=n&65535;r=N(z&255,t)|0;x=g+4|0;c[x>>2]=r;a[g+8>>0]=z;u=g+12|0;c[u>>2]=Xf(a[f+3>>0]|0)|0;y=f+4|0;v=g+17|0;a[v>>0]=a[y>>0]|0;w=g+16|0;a[w>>0]=0;s=g+18|0;a[s>>0]=0;p=(a[f+1>>0]|0)!=0&1;a[s>>0]=p;a[s>>0]=(a[f>>0]|0)==0?p:2;a[g+87>>0]=a[f+1132>>0]|0;s=f+124|0;p=c[s>>2]|0;q=(p|0)==0;if(!q?(a[f+122>>0]|0)==z<<24>>24:0)i=f+840|0;else{o=a[182092+((d[f+2264>>0]|0)+-1)>>0]|0;i=f+840|0;if((a[i>>0]|0)==1?(a[f+842>>0]|0)==0:0)A=75;else if((a[f+841>>0]|0)==1)A=75;if((A|0)==75)o=(o&255)<<1&255;if(k){if((N(r,o&255)|0)>>>0>k>>>0){a[h>>0]=27;f=0;l=C;return f|0}}else{if(!q)Vf(p);c[s>>2]=0;c[s>>2]=Jf(N(r,o&255)|0)|0}a[f+122>>0]=z}r=c[((k|0)==0?s:j)>>2]|0;p=(a[i>>0]|0)==1;if(!(!p?(a[f+841>>0]|0)!=1:0)){q=(a[f+842>>0]|0)==0;if(q){c[x>>2]=c[x>>2]<<1;c[u>>2]=c[u>>2]<<1;n=t<<1&65535}o=a[f+25>>0]|0;e:do if(o<<24>>24){i=0;while(1){if(!(c[f+892+((i&255)<<2)>>2]|0))break;i=i+1<<24>>24;if((i&255)>=(o&255))break e}a[h>>0]=25;h=0;break a}while(0);if(p){a[v>>0]=5;h=1}else h=3;a[w>>0]=q?h:2}yg(f,f+328|0,r,z,n,a[f+2264>>0]|0)|0;a[f+12>>0]=0;f=f+16|0;n=(c[f>>2]|0)+1|0;c[f>>2]=n;if((a[y>>0]|0)==23){if(n|0){f=r;l=C;return f|0}c[x>>2]=0;f=r;l=C;return f|0}else{if(n>>>0>=2){f=r;l=C;return f|0}c[x>>2]=0;f=r;l=C;return f|0}}else h=0}while(0);do{n=c[f+584+(h<<2)>>2]|0;if(n|0)FZ(n|0,0,e[B>>1]<<2|0)|0;h=h+1|0}while((h|0)!=64);h=0;do{n=c[f+892+(h<<2)>>2]|0;if(n|0)zg(n);h=h+1|0}while((h|0)!=48);f=0;l=C;return f|0}function xg(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a[b+24>>0]=0;a[b+25>>0]=0;t=b+22|0;a[t>>0]=25;u=b+23|0;a[u>>0]=0;a:do if((d[b+4>>0]|0)<17){p=f+8|0;q=f+4|0;r=f+20|0;s=e+9|0;i=0;b:while(1){k=c[p>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-k>>>29;do if(!(a[r>>0]|0))if(k>>>0>3){c[p>>2]=k+-3;break}else{Gf(f,3);break}while(0);if((j&255|0)==7)break a;switch((j&255)<<24>>24){case 2:{n=19;break b}case 0:{if((a[t>>0]|0)==25)a[t>>0]=0;Ag(b,e,f,0);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 1:{if((a[t>>0]|0)==25)a[t>>0]=1;Bg(b,e,f,1);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 3:{a[u>>0]=(a[u>>0]|0)+1<<24>>24;Ag(b,e,f,3);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 4:{o=i+1<<24>>24;i=c[p>>2]|0;do if(!(a[r>>0]|0))if(i>>>0>4){i=i+-4|0;c[p>>2]=i;n=25;break}else{Gf(f,4);i=c[p>>2]|0;n=24;break}else n=24;while(0);if((n|0)==24)if(!i){k=c[q>>2]|0;i=k>>>31;if(!(a[r>>0]|0)){Gf(f,1);j=i;k=c[p>>2]|0;n=28}else{j=i;l=0;n=31}}else n=25;if((n|0)==25){k=i+-1|0;c[p>>2]=k;j=(c[f>>2]|0)>>>k&1;n=28}do if((n|0)==28){n=0;if(k>>>0<8){l=k;k=c[q>>2]|0;n=31;break}else{i=c[f>>2]<<32-k>>>24;m=j;j=k;break}}while(0);if((n|0)==31){i=8-l|0;i=((1<>2])<>>(32-i|0);m=j;j=l}do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{Gf(f,8);break}while(0);if((i&65535|0)==255){j=c[p>>2]|0;if(j>>>0<8){i=8-j|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>24;do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{Gf(f,8);break}while(0);i=(i&65535)+255|0}if(m|0)Ff(f)|0;k=i&65535;if(!k){i=o;continue b}else i=0;while(1){j=c[p>>2]|0;do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{Gf(f,8);break}while(0);i=i+1<<16>>16;if(k>>>0<=(i&65535)>>>0){i=o;continue b}}}case 5:{if(i<<24>>24){n=54;break b}ig(g,f)|0;i=1;continue b}case 6:{o=Cg(b,f,h,-1)|0;a[s>>0]=o;if(!(o<<24>>24)){i=i+1<<24>>24;continue b}else{n=67;break b}}default:continue b}}if((n|0)==19){a[s>>0]=6;return}else if((n|0)==54){a[s>>0]=31;return}else if((n|0)==67)return}else switch(a[b+5>>0]|0){case 1:{Ag(b,e,f,0);if(!(a[e+9>>0]|0))break a;return}case 2:{Bg(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 3:{Ag(b,e,f,0);Bg(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 4:{Ag(b,e,f,0);Bg(b,e,f,1);Ag(b,e,f,0);if(!(a[e+9>>0]|0))break a;return}case 5:{Ag(b,e,f,0);Bg(b,e,f,1);Bg(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 6:{Ag(b,e,f,0);Bg(b,e,f,1);Bg(b,e,f,1);Ag(b,e,f,3);if(!(a[e+9>>0]|0))break a;return}case 7:{Ag(b,e,f,0);Bg(b,e,f,1);Bg(b,e,f,1);Bg(b,e,f,1);Ag(b,e,f,3);if(!(a[e+9>>0]|0))break a;return}default:{a[e+9>>0]=7;return}}while(0);Ff(f)|0;return}function yg(e,f,i,j,k,l){e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0.0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;switch(l<<24>>24){case 1:{y=j&255;l=a[e+20>>0]|0;switch((y<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+g[(c[f+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+(l<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[f+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+g[n+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}e=~~m&65535;f=l<<1;b[i+(f<<1)>>1]=e;b[i+((f|1)<<1)>>1]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[f+((l&255)<<2)>>2]|0;n=c[f+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+g[o+(l<<2)>>2];q=+g[n+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(!(m<=-32768.0))p=m;else p=-32768.0}else{m=m+.5;if(!(m>=32767.0))p=m;else p=32767.0}if(!(q>=0.0)){m=q+-.5;if(m<=-32768.0)m=-32768.0}else{m=q+.5;if(m>=32767.0)m=32767.0}f=l<<1;b[i+(f<<1)>>1]=~~p;b[i+((f|1)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;w=e+2194|0;x=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((N(l,y)|0)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261;if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((N(l,y)|0)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((N(l,y)|0)+n<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[w>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261;if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((N(l,y)|0)+n<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(y|0));return i|0}}}case 2:{y=j&255;l=a[e+20>>0]|0;switch((y<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+g[(c[f+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+(l<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[f+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+g[n+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}e=~~m;f=l<<1;c[i+(f<<2)>>2]=e;c[i+((f|1)<<2)>>2]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[f+((l&255)<<2)>>2]|0;n=c[f+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+g[o+(l<<2)>>2]*256.0;q=+g[n+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(!(m<=-8388608.0))p=m;else p=-8388608.0}else{m=m+.5;if(!(m>=8388607.0))p=m;else p=8388607.0}if(!(q>=0.0)){m=q+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=q+.5;if(m>=8388607.0)m=8388607.0}f=l<<1;c[i+(f<<2)>>2]=~~p;c[i+((f|1)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;w=e+2194|0;x=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((N(l,y)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((N(l,y)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((N(l,y)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[w>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((N(l,y)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(y|0));return i|0}}}case 3:{y=j&255;l=a[e+20>>0]|0;switch((y<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+g[(c[f+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+(l<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[f+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+g[n+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}e=~~m;f=l<<1;c[i+(f<<2)>>2]=e;c[i+((f|1)<<2)>>2]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[f+((l&255)<<2)>>2]|0;n=c[f+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+g[o+(l<<2)>>2]*65536.0;q=+g[n+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(!(m<=-2147483648.0))p=m;else p=-2147483648.0}else{m=m+.5;if(!(m>=2147483648.0))p=m;else p=2147483648.0}if(!(q>=0.0)){m=q+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=q+.5;if(m>=2147483648.0)m=2147483648.0}f=l<<1;c[i+(f<<2)>>2]=~~p;c[i+((f|1)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;w=e+2194|0;x=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((N(l,y)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((N(l,y)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((N(l,y)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+g[(c[f+(d[w>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((N(l,y)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(y|0));return i|0}}}case 4:{y=j&255;l=a[e+20>>0]|0;switch((y<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{g[i+(l<<2)>>2]=+g[(c[f+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(!(a[e+21>>0]|0)){if(j)return i|0;o=c[f+((l&255)<<2)>>2]|0;n=c[f+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{q=+g[n+(l<<2)>>2];f=l<<1;g[i+(f<<2)>>2]=+g[o+(l<<2)>>2]*.000030517578125;g[i+((f|1)<<2)>>2]=q*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}else{if(j)return i|0;n=c[f+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{q=+g[n+(l<<2)>>2]*.000030517578125;f=l<<1;g[i+(f<<2)>>2]=q;g[i+((f|1)<<2)>>2]=q;l=l+1|0}while((l|0)!=(j|0));return i|0}}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;w=e+2194|0;x=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{g[i+((N(l,y)|0)<<2)>>2]=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{g[i+((N(l,y)|0)<<2)>>2]=(+g[(c[f+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{g[i+((N(l,y)|0)+n<<2)>>2]=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{g[i+((N(l,y)|0)+n<<2)>>2]=(+g[(c[f+(d[w>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(y|0));return i|0}}}case 5:{y=j&255;l=a[e+20>>0]|0;switch((y<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{h[i+(l<<3)>>3]=+g[(c[f+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(!(a[e+21>>0]|0)){if(j)return i|0;o=c[f+((l&255)<<2)>>2]|0;n=c[f+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{q=+g[n+(l<<2)>>2];f=l<<1;h[i+(f<<3)>>3]=+g[o+(l<<2)>>2]*.000030517578125;h[i+((f|1)<<3)>>3]=q*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}else{if(j)return i|0;n=c[f+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{q=+g[n+(l<<2)>>2]*.000030517578125;f=l<<1;h[i+(f<<3)>>3]=q;h[i+((f|1)<<3)>>3]=q;l=l+1|0}while((l|0)!=(j|0));return i|0}}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;w=e+2194|0;x=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{h[i+((N(l,y)|0)<<3)>>3]=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{h[i+((N(l,y)|0)<<3)>>3]=(+g[(c[f+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{h[i+((N(l,y)|0)+n<<3)>>3]=+g[(c[f+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{h[i+((N(l,y)|0)+n<<3)>>3]=(+g[(c[f+(d[w>>0]<<2)>>2]|0)+(l<<2)>>2]+ +g[(c[f+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +g[(c[f+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(y|0));return i|0}}}default:return i|0}return 0}function zg(e){e=e|0;var f=0,g=0;f=c[e+12440>>2]|0;if(f|0)FZ(c[f>>2]|0,0,(d[f+6>>0]|0)*80|0)|0;f=c[e+12444>>2]|0;if(f|0)FZ(c[f>>2]|0,0,(d[f+6>>0]|0)*80|0)|0;f=c[e+12448>>2]|0;if(f|0)FZ(c[f>>2]|0,0,(d[f+6>>0]|0)*160|0)|0;f=c[e+12452>>2]|0;if(f|0)FZ(c[f>>2]|0,0,(d[f+6>>0]|0)*160|0)|0;f=c[e+648>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+668>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+688>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+708>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+652>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+672>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+692>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+712>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+656>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+676>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+696>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+716>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+660>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+680>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+700>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+720>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+664>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+684>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+704>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=c[e+724>>2]|0;if(f|0)FZ(f|0,0,256)|0;f=e+53416|0;g=e+53418|0;FZ(e+12456|0,0,(d[g>>0]|0)+(d[f>>0]|0)<<9|0)|0;FZ(e+32936|0,0,(d[g>>0]|0)+(d[f>>0]|0)<<9|0)|0;a[e+728>>0]=0;a[e+729>>0]=0;c[e+12432>>2]=0;a[e+12426>>0]=1;a[e+612>>0]=0;a[e+613>>0]=0;a[e+53435>>0]=2;a[e+53436>>0]=1;a[e+53437>>0]=2;a[e+53438>>0]=2;a[e+53439>>0]=2;a[e+53440>>0]=1;a[e+53441>>0]=1;a[e+53432>>0]=5;a[e+53431>>0]=1;a[e+53442>>0]=1;a[e+12418>>0]=-1;a[e+12419>>0]=-1;a[e+12421>>0]=0;a[e+12422>>0]=0;a[e+12423>>0]=0;a[e+12412>>0]=-1;a[e+646>>0]=0;a[e+647>>0]=0;f=0;do{b[e+2010+(f<<1)>>1]=0;c[e+10460+(f<<2)>>2]=0;b[e+2138+(f<<1)>>1]=0;c[e+10716+(f<<2)>>2]=0;a[e+12277+f>>0]=0;a[e+12341+f>>0]=0;f=f+1|0}while((f|0)!=49);a[e+53445>>0]=0;a[e+53446>>0]=0;return}function Ag(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+22976|0;if((l|0)>=(m|0))W(22976);p=w+2048|0;q=w;v=e+24|0;t=a[v>>0]|0;r=t&255;s=r+1|0;if((t&255)>63){a[f+9>>0]=12;l=w;return}u=e+25|0;i=a[u>>0]|0;if((i&255)>47){a[f+9>>0]=13;l=w;return}a[(i&255)+(e+2128)>>0]=h;FZ(p|0,0,20914)|0;n=p+6|0;FZ(q|0,0,2048)|0;j=g+8|0;i=c[j>>2]|0;if(i>>>0<4){o=4-i|0;o=(c[g>>2]&(1<>2]|0)>>>(32-o|0)}else o=c[g>>2]<<32-i>>>28;k=g+20|0;do if(!(a[k>>0]|0))if(i>>>0>4){c[j>>2]=i+-4;break}else{Gf(g,4);break}while(0);a[p+4>>0]=o;a[p>>0]=t;b[p+2>>1]=-1;i=bh(e,p,g,n,q)|0;do if(!(i<<24>>24))if(!(a[p+9044>>0]|0)){h=c[j>>2]|0;if(h>>>0<3){i=3-h|0;i=(c[g>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[g>>2]<<32-h>>>29;if((i|0)==6){do if(!(a[k>>0]|0))if(h>>>0>3){c[j>>2]=h+-3;break}else{Gf(g,3);break}while(0);i=Cg(e,g,c[e+324>>2]|0,a[u>>0]|0)|0;if(i<<24>>24)break}i=Wh(e,n,p,q)|0}else i=32;while(0);a[f+9>>0]=i;if((a[(d[u>>0]|0)+(e+26)>>0]|0)==2){a[e+2192+r>>0]=t;h=s;i=s&255}else{if(!(a[e+1656>>0]|0))i=t;else i=a[(o&255)+(e+2096)>>0]|0;h=i&255;i=t}a[e+2192+h>>0]=i;t=a[u>>0]|0;a[v>>0]=(d[v>>0]|0)+(d[(t&255)+(e+26)>>0]|0);a[u>>0]=t+1<<24>>24;l=w;return}function Bg(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+25024|0;if((l|0)>=(m|0))W(25024);C=I+22968|0;D=I+20920|0;E=I;H=e+24|0;i=a[H>>0]|0;F=i&255;if((F+2|0)>>>0>64){a[f+9>>0]=12;l=I;return}G=e+25|0;k=a[G>>0]|0;if((k&255)>47){a[f+9>>0]=13;l=I;return}k=k&255;n=e+26+k|0;switch(a[n>>0]|0){case 0:{a[n>>0]=2;break}case 2:break;default:{a[f+9>>0]=21;l=I;return}}a[e+2128+k>>0]=h;FZ(C|0,0,2048)|0;FZ(D|0,0,2048)|0;FZ(E|0,0,20914)|0;y=E+6|0;z=E+10460|0;a[E>>0]=i;B=F+1|0;b[E+2>>1]=B;v=g+8|0;k=c[v>>2]|0;if(k>>>0<4){A=4-k|0;n=c[g>>2]|0;A=(n&(1<>2]|0)>>>(32-A|0)}else{n=c[g>>2]|0;A=n<<32-k>>>28}w=g+20|0;do if(!(a[w>>0]|0))if(k>>>0>4){k=k+-4|0;c[v>>2]=k;a[E+4>>0]=A;u=17;break}else{Gf(g,4);k=c[v>>2]|0;u=15;break}else u=15;while(0);do if((u|0)==15){a[E+4>>0]=A;if(k|0){n=c[g>>2]|0;u=17;break}k=(c[g+4>>2]|0)>>>31;if(!(a[w>>0]|0))Gf(g,1)}while(0);if((u|0)==17){k=k+-1|0;c[v>>2]=k;k=n>>>k&1}k=k&255;t=E+5|0;a[t>>0]=k;a:do if(k<<24>>24){k=$g(e,y,g,k)|0;if(!(k<<24>>24)){n=c[v>>2]|0;if(n>>>0<2){k=2-n|0;k=(c[g>>2]&(1<>2]|0)>>>(32-k|0)}else k=c[g>>2]<<32-n>>>30;do if(!(a[w>>0]|0))if(n>>>0>2){c[v>>2]=n+-2;break}else{Gf(g,2);break}while(0);s=k&255;a[E+8634>>0]=s;switch(s<<24>>24){case 3:{j=32;break a}case 1:{r=E+8|0;k=a[r>>0]|0;if(k<<24>>24){s=g+4|0;n=a[y>>0]|0;q=0;p=0;h=n;while(1){if(!(n<<24>>24))o=0;else{o=0;n=h;do{h=o&255;k=c[v>>2]|0;if(!k){k=(c[s>>2]|0)>>>31;if(!(a[w>>0]|0)){Gf(g,1);n=a[y>>0]|0}}else{k=k+-1|0;c[v>>2]=k;k=(c[g>>2]|0)>>>k&1}a[E+8635+(p*51|0)+h>>0]=k;o=o+1<<24>>24}while((o&255)<(n&255));k=a[r>>0]|0;h=n;o=n}n=q+1<<24>>24;if((n&255)<(k&255)){q=n;p=n&255;n=o}else break}}break}default:{}}if((d[e+4>>0]|0)>16?a[E+9048>>0]|0:0){k=c[v>>2]|0;if(!k){k=(c[g+4>>2]|0)>>>31;if(!(a[w>>0]|0))Gf(g,1)}else{k=k+-1|0;c[v>>2]=k;k=(c[g>>2]|0)>>>k&1}s=k&255;a[E+10283>>0]=s;if(s<<24>>24?(j=ah(e,y,E+10282|0,g)|0,j<<24>>24):0)break}DZ(z|0,y|0,10454)|0;u=50}else j=k}else{a[E+8634>>0]=0;u=50}while(0);do if((u|0)==50){j=bh(e,E,g,y,C)|0;if(!(j<<24>>24)){if((a[t>>0]|0?(d[e+4>>0]|0)>16:0)?a[E+9048>>0]|0:0){j=c[v>>2]|0;if(!j){j=(c[g+4>>2]|0)>>>31;if(!(a[w>>0]|0))Gf(g,1)}else{j=j+-1|0;c[v>>2]=j;j=(c[g>>2]|0)>>>j&1}u=j&255;a[E+10365>>0]=u;if(u<<24>>24?(x=ah(e,y,E+10364|0,g)|0,x<<24>>24):0){j=x;break}}j=bh(e,E,g,z,D)|0;if(!(j<<24>>24)){k=c[v>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[g>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[g>>2]<<32-k>>>29;if((j|0)==6){do if(!(a[w>>0]|0))if(k>>>0>3){c[v>>2]=k+-3;break}else{Gf(g,3);break}while(0);j=Cg(e,g,c[e+324>>2]|0,a[G>>0]|0)|0;if(j<<24>>24)break}j=ch(e,y,z,E,C,D)|0}}}while(0);a[f+9>>0]=j;if(!(a[e+1656>>0]|0))a[e+2192+F>>0]=i;else{F=(A&255)+(e+2112)|0;a[(d[F>>0]|0)+(e+2192)>>0]=i;i=a[F>>0]|0}a[(i&255)+1+(e+2192)>>0]=B;a[H>>0]=(d[H>>0]|0)+2;a[G>>0]=(a[G>>0]|0)+1<<24>>24;l=I;return}function Cg(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=f+8|0;j=c[B>>2]|0;if(j>>>0<4){i=4-j|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>28;A=f+20|0;do if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;break}else{Gf(f,4);break}while(0);if((i&65535|0)==15){j=c[B>>2]|0;if(j>>>0<8){i=8-j|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>24;do if(!(a[A>>0]|0))if(j>>>0>8){c[B>>2]=j+-8;break}else{Gf(f,8);break}while(0);i=(i&65535)+14|0}k=i&65535;if(!(i&65535)){f=0;return f|0}j=c[B>>2]|0;if(j>>>0<4){i=4-j|0;i=(c[f>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>28;if(((i&255)+-13|0)>>>0<2){j=h&255;if(h<<24>>24==-1){f=24;return f|0}i=e+892+(j<<2)|0;if(!(c[i>>2]|0)){g=b[e+10>>1]|0;A=a[e+2128+j>>0]|0;B=(Xf(a[e+3>>0]|0)|0)<<1;c[i>>2]=Dg(g,A,B,a[e+842>>0]|0)|0}a[e+840>>0]=1;B=Eg(f,c[i>>2]|0,k,a[e+12>>0]|0)|0;f=c[i>>2]|0;a[f+10>>0]=B;if(!(a[f+53424>>0]|0)){f=0;return f|0}a[e+1084+j>>0]=1;a[e+1132>>0]=1;f=0;return f|0}if(!(k<<16>>16)){f=0;return f|0}o=f+4|0;p=g+1|0;q=g+3|0;r=g+56|0;s=g+57|0;t=g+58|0;u=g+59|0;v=g+60|0;w=g+61|0;x=g+62|0;y=g+21|0;z=g+2|0;i=k;h=j;while(1){m=i&65535;if(h>>>0<4){j=4-h|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>28;do if(!(a[A>>0]|0))if(h>>>0>4){c[B>>2]=h+-4;break}else{Gf(f,4);break}while(0);a:do switch((j&255)<<24>>24){case 11:{a[g>>0]=1;a[p>>0]=1;i=c[B>>2]|0;if(!i){i=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{i=i+-1|0;c[B>>2]=i;i=(c[f>>2]|0)>>>i&1}do if(i){i=c[B>>2]|0;if(i>>>0<4){j=4-i|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-i>>>28;if(a[A>>0]|0){a[z>>0]=j;i=2;n=53;break}if(i>>>0<=4){Gf(f,4);i=c[B>>2]|0;n=a[A>>0]|0;a[z>>0]=j;if(n<<24>>24){i=2;n=53;break}}else{i=i+-4|0;c[B>>2]=i;a[z>>0]=j}if(i>>>0>4){j=i+-4|0;c[B>>2]=j;i=2;n=54;break}else{Gf(f,4);i=2;n=53;break}}else{i=1;n=53}while(0);if((n|0)==53){n=0;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else n=54}if((n|0)==54){n=0;j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}l=j&255;a[q>>0]=l;if(l<<24>>24==1){j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[r>>0]=j;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[s>>0]=j;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[t>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[u>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[v>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[w>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[x>>0]=j;h=7;l=1;while(1){j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);k=j&255;j=l&255;a[j+-1+(g+120)>>0]=k;if(k<<24>>24!=1)break;e=h&255;k=e+7|0;do{j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[g+56+e>>0]=j;h=h+1<<24>>24;e=h&255}while(k>>>0>e>>>0);h=k&255;l=l+1<<24>>24}i=j+(i&255)&255}j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}if(j){j=c[B>>2]|0;if(j>>>0<4){h=4-j|0;h=(c[f>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>28;do if(!(a[A>>0]|0)){if(j>>>0<=4){Gf(f,4);if(!(a[A>>0]|0))j=c[B>>2]|0;else break}else{j=j+-4|0;c[B>>2]=j}if(j>>>0>4){c[B>>2]=j+-4;break}else{Gf(f,4);break}}while(0);j=h+(d[p>>0]|0)&255;a[p>>0]=j;i=i+1<<24>>24;if(j<<24>>24){l=0;do{k=l&255;h=c[B>>2]|0;if(h>>>0<8){e=8-h|0;e=(c[f>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-h>>>24;do if(!(a[A>>0]|0))if(h>>>0>8){c[B>>2]=h+-8;break}else{Gf(f,8);j=a[p>>0]|0;break}while(0);a[g+4+k>>0]=e;l=l+1<<24>>24;i=i+1<<24>>24}while((l&255)<(j&255))}}j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}if(j){j=c[B>>2]|0;if(j>>>0<7){h=7-j|0;h=(c[f>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>25;do if(!(a[A>>0]|0))if(j>>>0>7){j=j+-7|0;c[B>>2]=j;a[y>>0]=h;n=137;break}else{Gf(f,7);j=c[B>>2]|0;n=136;break}else n=136;while(0);do if((n|0)==136){n=0;a[y>>0]=h;if(j|0){n=137;break}if(a[A>>0]|0)break;Gf(f,1)}while(0);if((n|0)==137){n=0;c[B>>2]=j+-1}i=i+1<<24>>24}if(a[p>>0]|0){k=0;e=0;while(1){j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;Gf(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[g+22+e>>0]=j;h=c[B>>2]|0;if(h>>>0<7){j=7-h|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>25;do if(!(a[A>>0]|0))if(h>>>0>7){c[B>>2]=h+-7;break}else{Gf(f,7);break}while(0);a[g+39+e>>0]=j;i=i+1<<24>>24;j=k+1<<24>>24;if((j&255)<(d[p>>0]|0)){k=j;e=j&255}else break}}i=i&255;break}case 1:{j=c[B>>2]|0;do if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;break}else{Gf(f,4);break}while(0);h=m+-1|0;if((i&65535)>1){j=0;do{e=c[B>>2]|0;do if(!(a[A>>0]|0))if(e>>>0>8){c[B>>2]=e+-8;break}else{Gf(f,8);break}while(0);j=j+1<<16>>16}while((h|0)>(j&65535|0))}else i=1;break}case 2:{h=c[B>>2]|0;if(h>>>0<4){j=4-h|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>28;do if(!(a[A>>0]|0))if(h>>>0>4){c[B>>2]=h+-4;break}else{Gf(f,4);break}while(0);if(!(j&255)){e=0;k=0;do{h=c[B>>2]|0;if(h>>>0<8){j=8-h|0;j=(c[f>>2]&(1<>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>24;do if(!(a[A>>0]|0))if(h>>>0>8){c[B>>2]=h+-8;break}else{Gf(f,8);break}while(0);l=j&255;k=l+(k&65535)|0;e=e+1<<24>>24}while((l|0)==255);if(k&65535){i=c[B>>2]|0;do if(!(a[A>>0]|0))if(i>>>0>8){c[B>>2]=i+-8;break}else{Gf(f,8);break}while(0);i=(e&255)+1+k&65535}else n=191}else n=191;break}default:{j=c[B>>2]|0;if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;n=191;break a}else{Gf(f,4);n=191;break a}else n=191}}while(0);if((n|0)==191){n=0;h=m+-1|0;if((i&65535)>1){j=0;do{e=c[B>>2]|0;do if(!(a[A>>0]|0))if(e>>>0>8){c[B>>2]=e+-8;break}else{Gf(f,8);break}while(0);j=j+1<<16>>16}while((h|0)>(j&65535|0))}}i=m-(i&65535)&65535;if(!(i<<16>>16)){i=0;break}h=c[B>>2]|0}return i|0}function Dg(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;j=Jf(53544)|0;FZ(j+4|0,0,53540)|0;a[j+12436>>0]=f;c[j>>2]=g;a[j+53435>>0]=2;a[j+53436>>0]=1;a[j+53437>>0]=2;a[j+53438>>0]=2;a[j+53439>>0]=2;a[j+53440>>0]=1;a[j+53441>>0]=1;a[j+53432>>0]=5;a[j+53431>>0]=1;a[j+53442>>0]=1;a[j+12418>>0]=-1;a[j+12419>>0]=-1;c[j+12432>>2]=0;a[j+12426>>0]=1;i=j+53418|0;a[i>>0]=8;a[j+53419>>0]=2;a[j+12421>>0]=0;a[j+12422>>0]=0;a[j+12423>>0]=0;b[j+12424>>1]=e;a[j+12412>>0]=-1;e=e<<16>>16==960;g=j+53416|0;a[g>>0]=e?30:32;a[j+53417>>0]=e?15:16;a[j+728>>0]=0;a[j+729>>0]=0;c[j+12440>>2]=Zg(32)|0;if(f<<24>>24==1){c[j+12444>>2]=Zg(32)|0;h=h<<24>>24?32:64;c[j+12448>>2]=_g(h)|0;c[j+12452>>2]=_g(h)|0;c[j+648>>2]=Jf(256)|0;c[j+668>>2]=Jf(256)|0;c[j+688>>2]=Jf(256)|0;c[j+708>>2]=Jf(256)|0;c[j+652>>2]=Jf(256)|0;c[j+672>>2]=Jf(256)|0;c[j+692>>2]=Jf(256)|0;c[j+712>>2]=Jf(256)|0;c[j+656>>2]=Jf(256)|0;c[j+676>>2]=Jf(256)|0;c[j+696>>2]=Jf(256)|0;c[j+716>>2]=Jf(256)|0;c[j+660>>2]=Jf(256)|0;c[j+680>>2]=Jf(256)|0;c[j+700>>2]=Jf(256)|0;c[j+720>>2]=Jf(256)|0;c[j+664>>2]=Jf(256)|0;c[j+684>>2]=Jf(256)|0;c[j+704>>2]=Jf(256)|0;c[j+724>>2]=Jf(256)|0;FZ(j+12456|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;FZ(j+32936|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;return j|0}else{c[j+12448>>2]=_g(h<<24>>24?32:64)|0;c[j+12452>>2]=0;c[j+648>>2]=Jf(256)|0;c[j+688>>2]=Jf(256)|0;c[j+652>>2]=Jf(256)|0;c[j+692>>2]=Jf(256)|0;c[j+656>>2]=Jf(256)|0;c[j+696>>2]=Jf(256)|0;c[j+660>>2]=Jf(256)|0;c[j+700>>2]=Jf(256)|0;c[j+664>>2]=Jf(256)|0;c[j+704>>2]=Jf(256)|0;FZ(j+12456|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;return j|0}return 0}function Eg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+16|0;if((l|0)>=(m|0))W(16);v=K+4|0;w=K;H=Ef(d)|0;if(g<<24>>24)a[e+53425>>0]=g;J=d+8|0;h=c[J>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;I=d+20|0;do if(!(a[I>>0]|0))if(h>>>0>4){c[J>>2]=h+-4;break}else{Gf(d,4);break}while(0);if((g&255|0)==14){h=c[J>>2]|0;if(h>>>0<10){g=10-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>22;do if(!(a[I>>0]|0))if(h>>>0>10){c[J>>2]=h+-10;break}else{Gf(d,10);break}while(0);b[e+53428>>1]=g}k=e+53432|0;B=a[k>>0]|0;t=e+53442|0;C=a[t>>0]|0;p=e+53433|0;D=a[p>>0]|0;q=e+53435|0;E=a[q>>0]|0;r=e+53436|0;F=a[r>>0]|0;s=e+53434|0;G=a[s>>0]|0;g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}z=g&255;A=e+53426|0;a[A>>0]=z;if(z<<24>>24){g=e+12432|0;c[g>>2]=(c[g>>2]|0)+1;g=c[J>>2]|0;do if(!g){h=c[d+4>>2]|0;g=h>>>31;if(!(a[I>>0]|0)){Gf(d,1);h=g;g=c[J>>2]|0;o=29;break}else{a[e+53431>>0]=g;g=0;o=32;break}}else{g=g+-1|0;c[J>>2]=g;h=(c[d>>2]|0)>>>g&1;o=29}while(0);do if((o|0)==29){a[e+53431>>0]=h;if(g>>>0<4){h=c[d+4>>2]|0;o=32;break}else{h=c[d>>2]<<32-g>>>28;break}}while(0);if((o|0)==32){z=4-g|0;h=((1<>2])<>>(32-z|0)}do if(!(a[I>>0]|0))if(g>>>0>4){g=g+-4|0;c[J>>2]=g;break}else{Gf(d,4);g=c[J>>2]|0;break}while(0);a[k>>0]=h;if(g>>>0<4){h=4-g|0;h=(c[d>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>28;do if(!(a[I>>0]|0))if(g>>>0>4){g=g+-4|0;c[J>>2]=g;break}else{Gf(d,4);g=c[J>>2]|0;break}while(0);a[p>>0]=h;if(g>>>0<3){h=3-g|0;h=(c[d>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>29;do if(!(a[I>>0]|0)){if(g>>>0<=3){Gf(d,3);g=c[J>>2]|0;z=a[I>>0]|0;a[s>>0]=h;if(z<<24>>24){o=55;break}}else{g=g+-3|0;c[J>>2]=g;a[s>>0]=h}if(g>>>0>2){g=g+-2|0;c[J>>2]=g;o=56;break}else{Gf(d,2);g=c[J>>2]|0;o=55;break}}else{a[s>>0]=h;o=55}while(0);if((o|0)==55)if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0)){Gf(d,1);h=c[J>>2]|0;o=59}else{i=g;h=g}}else o=56;if((o|0)==56){h=g+-1|0;c[J>>2]=h;g=(c[d>>2]|0)>>>h&1;o=59}do if((o|0)==59){if(h|0){h=h+-1|0;c[J>>2]=h;i=g;h=(c[d>>2]|0)>>>h&1;break}h=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0)){Gf(d,1);i=g}else i=g}while(0);if(!i){a[q>>0]=2;a[r>>0]=1;g=2}else{g=c[J>>2]|0;if(g>>>0<2){j=2-g|0;i=c[d>>2]|0;j=(i&(1<>2]|0)>>>(32-j|0)}else{i=c[d>>2]|0;j=i<<32-g>>>30}do if(!(a[I>>0]|0))if(g>>>0>2){g=g+-2|0;c[J>>2]=g;a[q>>0]=j;o=73;break}else{Gf(d,2);g=c[J>>2]|0;o=71;break}else o=71;while(0);do if((o|0)==71){a[q>>0]=j;if(g|0){i=c[d>>2]|0;o=73;break}i=c[d+4>>2]|0;g=i>>>31;if(!(a[I>>0]|0)){Gf(d,1);i=c[J>>2]|0;o=77;break}else{a[r>>0]=g;g=0;o=80;break}}while(0);if((o|0)==73){z=g+-1|0;c[J>>2]=z;g=i>>>z&1;i=z;o=77}do if((o|0)==77){a[r>>0]=g;if(i>>>0<2){g=i;i=c[d+4>>2]|0;o=80;break}else{j=c[d>>2]<<32-i>>>30;g=i;break}}while(0);if((o|0)==80){j=2-g|0;j=((1<>2])<>>(32-j|0)}do if(!(a[I>>0]|0))if(g>>>0>2){c[J>>2]=g+-2;break}else{Gf(d,2);break}while(0);g=j&255}a[e+53437>>0]=g;if(!h){a[e+53438>>0]=2;a[e+53439>>0]=2;a[e+53440>>0]=1;g=1}else{g=c[J>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[d>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>30;do if(!(a[I>>0]|0))if(g>>>0>2){g=g+-2|0;c[J>>2]=g;break}else{Gf(d,2);g=c[J>>2]|0;break}while(0);a[e+53438>>0]=h;if(g>>>0<2){i=2-g|0;h=c[d>>2]|0;i=(h&(1<>2]|0)>>>(32-i|0)}else{h=c[d>>2]|0;i=h<<32-g>>>30}do if(!(a[I>>0]|0))if(g>>>0>2){g=g+-2|0;c[J>>2]=g;a[e+53439>>0]=i;o=104;break}else{Gf(d,2);g=c[J>>2]|0;o=102;break}else o=102;while(0);do if((o|0)==102){a[e+53439>>0]=i;if(g|0){h=c[d>>2]|0;o=104;break}h=c[d+4>>2]|0;g=h>>>31;if(!(a[I>>0]|0)){Gf(d,1);h=c[J>>2]|0;o=108;break}else{a[e+53440>>0]=g;g=h>>>31;break}}while(0);if((o|0)==104){z=g+-1|0;c[J>>2]=z;g=h>>>z&1;h=z;o=108}do if((o|0)==108){a[e+53440>>0]=g;if(h|0){g=h+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1;break}g=(c[d+4>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1)}while(0);g=g&255}a[e+53441>>0]=g}n=a[k>>0]|0;h=e+12412|0;j=a[p>>0]|0;g=e+12413|0;if((((n<<24>>24==(a[h>>0]|0)?j<<24>>24==(a[g>>0]|0):0)?(a[q>>0]|0)==(a[e+12415>>0]|0):0)?(a[r>>0]|0)==(a[e+12416>>0]|0):0)?(a[s>>0]|0)==(a[e+12414>>0]|0):0)k=(a[e+53437>>0]|0)!=(a[e+12417>>0]|0)&1;else k=1;z=e+12426|0;a[z>>0]=k;a[h>>0]=n;a[g>>0]=j;i=a[q>>0]|0;a[e+12415>>0]=i;h=a[r>>0]|0;a[e+12416>>0]=h;g=a[s>>0]|0;a[e+12414>>0]=g;a[e+12417>>0]=a[e+53437>>0]|0;a:do if(!(c[e+12432>>2]|0))i=1;else{if(!(k<<24>>24)){if(a[A>>0]|0?a[e+9>>0]|0:0)o=125}else o=125;if((o|0)==125?(Fg(e,n,j,a[t>>0]|0,i,h,g)|0)<<24>>24:0)Fg(e,B,D,C,E,F,G)|0;a[e+8>>0]=a[t>>0]|0?2:1;b:do switch(a[e+12436>>0]|0){case 0:{g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}do if(g|0?(u=c[J>>2]|0,(a[I>>0]|0)==0):0)if(u>>>0>4){c[J>>2]=u+-4;break}else{Gf(d,4);break}while(0);g=Gg(d,e,0)|0;if(!(g<<24>>24)){Hg(d,e,0);n=e+19|0;g=a[n>>0]|0;if(g<<24>>24){o=d+4|0;k=0;do{j=k&255;h=c[J>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[I>>0]|0))if(h>>>0>2){c[J>>2]=h+-2;break}else{Gf(d,2);g=a[n>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255))}Ig(d,e,0);Jg(d,e,0);Kg(e,0);g=e+12149|0;h=g+64|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}w=g&255;a[e+53443>>0]=w;if(w<<24>>24?(y=e+17|0,x=a[y>>0]|0,x<<24>>24):0){k=d+4|0;j=0;h=x;do{i=j&255;g=c[J>>2]|0;do if(!g){g=(c[k>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1);h=a[y>>0]|0}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);a[e+12149+i>>0]=g;j=j+1<<24>>24}while((j&255)<(h&255))}g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}y=g&255;a[e+53447>>0]=y;if(!(y<<24>>24)){i=0;break a}h=c[J>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;do if(!(a[I>>0]|0))if(h>>>0>4){c[J>>2]=h+-4;break}else{Gf(d,4);break}while(0);if((g&65535|0)==15){h=c[J>>2]|0;if(h>>>0<8){g=8-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>24;do if(!(a[I>>0]|0))if(h>>>0>8){c[J>>2]=h+-8;break}else{Gf(d,8);break}while(0);g=(g&65535)+15|0}n=d+4|0;o=e+53448|0;i=0;g=g<<3;while(1){j=g&65535;k=g&65535;if((j&65535)<=7)break;g=c[J>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[d>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>30;do if(!(a[I>>0]|0))if(g>>>0>2){c[J>>2]=g+-2;break}else{Gf(d,2);break}while(0);g=h&255;a[o>>0]=g;do if((h&255|0)==2){if(!(i<<24>>24)){h=1;break}a[o>>0]=3;h=i;g=3}else h=i;while(0);g=(Lg(d,e,g)|0)+2<<16>>16;if((g&65535)>(j&65535)){g=1;break b}else{i=h;g=k-(g&65535)|0}}if(j<<16>>16==0|(k|0)==0){i=0;break a}g=c[J>>2]|0;if(a[I>>0]|0){i=0;break a}if(g>>>0>k>>>0){c[J>>2]=g-k;i=0;break a}else{Gf(d,k);i=0;break a}}break}case 1:{g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}do if(g){g=c[J>>2]|0;if(!(a[I>>0]|0)){if(g>>>0<=4){Gf(d,4);g=c[J>>2]|0;if(a[I>>0]|0){o=212;break}}else{g=g+-4|0;c[J>>2]=g}if(g>>>0>4){g=g+-4|0;c[J>>2]=g;o=213;break}else{Gf(d,4);o=211;break}}else o=212}else o=211;while(0);if((o|0)==211){g=c[J>>2]|0;o=212}if((o|0)==212)if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else o=213;if((o|0)==213){g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}y=g&255;p=e+53450|0;a[p>>0]=y;c:do if(!(y<<24>>24)){a[v>>0]=0;a[v+1>>0]=0;a[v+2>>0]=0;a[v+3>>0]=0;a[v+4>>0]=0;a[v+5>>0]=0;a[w>>0]=0;a[w+1>>0]=0;a[w+2>>0]=0;h=e+610|0;i=a[h>>0]|0;j=e+614|0;k=a[j>>0]|0;n=e+53451|0;o=a[n>>0]|0;if(i<<24>>24)DZ(v|0,e+616|0,(i+-1&255)+1|0)|0;if(k<<24>>24)DZ(w|0,e+628|0,(k+-1&255)+1|0)|0;g=Gg(d,e,0)|0;do if(!(g<<24>>24)){g=Gg(d,e,1)|0;if(g<<24>>24){a[n>>0]=o;a[h>>0]=i;a[j>>0]=k;y=e+616|0;a[y>>0]=a[v>>0]|0;a[y+1>>0]=a[v+1>>0]|0;a[y+2>>0]=a[v+2>>0]|0;a[y+3>>0]=a[v+3>>0]|0;a[y+4>>0]=a[v+4>>0]|0;a[y+5>>0]=a[v+5>>0]|0;y=e+628|0;a[y>>0]=a[w>>0]|0;a[y+1>>0]=a[w+1>>0]|0;a[y+2>>0]=a[w+2>>0]|0;break}Hg(d,e,0);Hg(d,e,1);n=e+19|0;g=a[n>>0]|0;do if(g<<24>>24){o=d+4|0;k=0;do{j=k&255;h=c[J>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[I>>0]|0))if(h>>>0>2){c[J>>2]=h+-2;break}else{Gf(d,2);g=a[n>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255));if(!(g<<24>>24))break;else k=0;do{j=k&255;h=c[J>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[I>>0]|0))if(h>>>0>2){c[J>>2]=h+-2;break}else{Gf(d,2);g=a[n>>0]|0;break}while(0);a[e+10981+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255))}while(0);Ig(d,e,0);Ig(d,e,1);Jg(d,e,0);Jg(d,e,1);g=e+12149|0;h=g+128|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[J>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);y=g&255;a[e+53443>>0]=y;do if(y<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;n=d+4|0;j=0;do{i=j&255;h=c[J>>2]|0;do if(!h){h=(c[n>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[J>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12149+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);g=c[J>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);y=g&255;a[e+53444>>0]=y;do if(y<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;n=d+4|0;j=0;do{i=j&255;h=c[J>>2]|0;do if(!h){h=(c[n>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[J>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12213+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);break c}while(0);break b}else{g=Gg(d,e,0)|0;if(g<<24>>24)break b;a[e+53452>>0]=a[e+53451>>0]|0;i=a[e+610>>0]|0;a[e+611>>0]=i;j=a[e+614>>0]|0;a[e+615>>0]=j;a[e+53508>>0]=a[e+53507>>0]|0;h=0;g=0;while(1){a[e+622+g>>0]=a[e+616+g>>0]|0;a[e+640+g>>0]=a[e+634+g>>0]|0;g=h+1<<24>>24;if((g&255)>(i&255)){h=0;g=0;break}else{h=g;g=g&255}}while(1){a[e+631+g>>0]=a[e+628+g>>0]|0;g=h+1<<24>>24;if((g&255)>(j&255))break;else{h=g;g=g&255}}Hg(d,e,0);Hg(d,e,1);n=e+19|0;g=a[n>>0]|0;if(g<<24>>24){o=d+4|0;k=0;do{j=k&255;h=c[J>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[I>>0]|0))if(h>>>0>2){c[J>>2]=h+-2;break}else{Gf(d,2);g=a[n>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255));if(g<<24>>24){g=g&255;h=0;do{a[e+10981+h>>0]=a[e+10976+h>>0]|0;h=h+1|0}while((h|0)!=(g|0))}}Ig(d,e,0);Jg(d,e,0);Ig(d,e,1);Jg(d,e,1);g=e+12149|0;h=g+128|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}y=g&255;a[e+53443>>0]=y;do if(y<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;n=d+4|0;j=0;do{i=j&255;h=c[J>>2]|0;do if(!h){h=(c[n>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[J>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12149+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);g=c[J>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);y=g&255;a[e+53444>>0]=y;if(!(y<<24>>24))break;k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;n=d+4|0;j=0;do{i=j&255;h=c[J>>2]|0;do if(!h){h=(c[n>>2]|0)>>>31;if(a[I>>0]|0)break;Gf(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[J>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12213+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);Kg(e,0);Kg(e,1);if(a[p>>0]|0)Mg(e);g=c[J>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[I>>0]|0))Gf(d,1)}else{g=g+-1|0;c[J>>2]=g;g=(c[d>>2]|0)>>>g&1}y=g&255;a[e+53447>>0]=y;if(!(y<<24>>24)){i=0;break a}h=c[J>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;do if(!(a[I>>0]|0))if(h>>>0>4){c[J>>2]=h+-4;break}else{Gf(d,4);break}while(0);if((g&65535|0)==15){h=c[J>>2]|0;if(h>>>0<8){g=8-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>24;do if(!(a[I>>0]|0))if(h>>>0>8){c[J>>2]=h+-8;break}else{Gf(d,8);break}while(0);g=(g&65535)+15|0}k=d+4|0;n=e+53448|0;g=g<<3;while(1){i=g&65535;j=g&65535;if((i&65535)<=7)break;h=c[J>>2]|0;if(h>>>0<2){g=2-h|0;g=(c[d>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>30;do if(!(a[I>>0]|0))if(h>>>0>2){c[J>>2]=h+-2;break}else{Gf(d,2);break}while(0);g=g&255;a[n>>0]=g;g=(Lg(d,e,g)|0)+2<<16>>16;if((g&65535)>(i&65535)){g=1;break b}else g=j-(g&65535)|0}if(i<<16>>16==0|(j|0)==0){i=0;break a}g=c[J>>2]|0;if(a[I>>0]|0){i=0;break a}if(g>>>0>j>>>0){c[J>>2]=g-j;i=0;break a}else{Gf(d,j);i=0;break a}}default:{i=0;break a}}while(0);if(!(a[z>>0]|0)){if(!(a[A>>0]|0)){i=g;break}if(!(a[e+9>>0]|0)){i=g;break}}Fg(e,B,D,C,E,F,G)|0;i=g}while(0);h=(Ef(d)|0)-H|0;g=(f&65535)<<3;if(g>>>0<(h&65535)>>>0){Hf(d,(H&65535)+g|0);a[e+53424>>0]=0;d=1;l=K;return d|0}g=g-h&65535;if(g>>>0>7)do{h=c[J>>2]|0;do if(!(a[I>>0]|0))if(h>>>0>8){c[J>>2]=h+-8;break}else{Gf(d,8);break}while(0);g=g+65528&65535}while(g>>>0>7);if(!g){d=i;l=K;return d|0}h=c[J>>2]|0;if(a[I>>0]|0){d=i;l=K;return d|0}if(h>>>0>g>>>0){c[J>>2]=h-g;d=i;l=K;return d|0}else{Gf(d,g);d=i;l=K;return d|0}return 0}function Fg(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=Tg(d,f,c[b>>2]|0)|0;d=b+13|0;a[d>>0]=j;j=Ug(e,c[b>>2]|0,j)|0;e=c[b>>2]|0;do if(e>>>0<=47999){d=a[d>>0]|0;f=(j&255)-(d&255)|0;if(e>>>0<32001){f=(f|0)>48;break}else{f=(f|0)>45;break}}else{d=a[d>>0]|0;f=((j&255)-(d&255)|0)>32}while(0);if(!(g<<24>>24))d=Vg(b,d,j,h)|0;else d=Wg(b,d,j,g,h)|0;return ((d&255)+(f&1)+((Xg(b,i,j)|0)&255)&255|0)!=0|0}function Gg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;v=f&255;w=e+610+v|0;x=a[w>>0]|0;y=e+614+v|0;z=a[y>>0]|0;A=e+53451+v|0;B=a[A>>0]|0;u=b+8|0;h=c[u>>2]|0;if(h>>>0<2){g=2-h|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-h>>>30;t=b+20|0;do if(!(a[t>>0]|0))if(h>>>0>2){c[u>>2]=h+-2;break}else{Gf(b,2);break}while(0);g=g&255;a[A>>0]=g;switch(g<<24>>24){case 0:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;i=c[b>>2]|0;h=(i&(1<>2]|0)>>>(32-h|0)}else{i=c[b>>2]|0;h=i<<32-g>>>30}do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;h=1<<(h&255);h=((h|0)<5?h:5)&255;j=18;break}else{Gf(b,2);g=c[u>>2]|0;j=16;break}else j=16;while(0);do if((j|0)==16){h=1<<(h&255);h=((h|0)<5?h:5)&255;if(g|0){i=c[b>>2]|0;j=18;break}g=(c[b+4>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(b,1)}while(0);if((j|0)==18){g=g+-1|0;c[u>>2]=g;g=i>>>g&1}if(h<<24>>24)FZ(e+((v*6|0)+634)|0,g&255|0,(h+-1&255)+1|0)|0;a[e+602+v>>0]=0;a[e+604+v>>0]=a[e+53417>>0]|0;a[e+606+v>>0]=(h&255)+255;g=0;j=173;break}case 1:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{Gf(b,2);g=c[u>>2]|0;break}while(0);o=h+(d[e+53417>>0]|0)&255;if(g>>>0<2){m=2-g|0;m=(c[b>>2]&(1<>2]|0)>>>(32-m|0)}else m=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{Gf(b,2);break}while(0);n=m+1|0;h=n&255;n=n&255;p=n+-1|0;if(n>>>0>1){j=b+4|0;i=0;l=0;do{k=c[u>>2]|0;if(k>>>0<2){g=2-k|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-k>>>30;do if(!(a[t>>0]|0))if(k>>>0>2){c[u>>2]=k+-2;break}else{Gf(b,2);break}while(0);a[e+53453+(v*9|0)+l>>0]=(g<<1)+2;i=i+1<<24>>24;l=i&255}while((p|0)>(l|0))}g=m+2|0;do if((g&255)<10?(s=g<<24>>24,q=d[183780+s>>0]|0,s>>>0>=2):0){i=c[u>>2]|0;if(i>>>0>>0){g=q-i|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-q|0);if(!(a[t>>0]|0))if(i>>>0>q>>>0){c[u>>2]=i-q;break}else{Gf(b,q);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(n|0){j=b+4|0;i=0;k=0;do{g=c[u>>2]|0;if(!g){g=(c[j>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[p-k+(e+634+(v*6|0))>>0]=g;i=i+1<<24>>24;k=i&255}while(n>>>0>k>>>0)}a[e+602+v>>0]=0;a[e+604+v>>0]=o;a[e+606+v>>0]=0;g=p&255;j=173;break}case 2:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{Gf(b,2);g=c[u>>2]|0;break}while(0);p=h&255;if(g>>>0<2){m=2-g|0;m=(c[b>>2]&(1<>2]|0)>>>(32-m|0)}else m=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{Gf(b,2);break}while(0);n=m+1|0;h=n&255;n=n&255;o=n+-1|0;if(n>>>0>1){j=b+4|0;i=0;l=0;do{k=c[u>>2]|0;if(k>>>0<2){g=2-k|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-k>>>30;do if(!(a[t>>0]|0))if(k>>>0>2){c[u>>2]=k+-2;break}else{Gf(b,2);break}while(0);a[e+53453+(v*9|0)+l>>0]=(g<<1)+2;i=i+1<<24>>24;l=i&255}while((o|0)>(l|0))}g=m+2|0;do if((g&255)<10?(s=g<<24>>24,r=d[183780+s>>0]|0,s>>>0>=2):0){i=c[u>>2]|0;if(i>>>0>>0){g=r-i|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-r|0);if(!(a[t>>0]|0))if(i>>>0>r>>>0){c[u>>2]=i-r;break}else{Gf(b,r);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(n|0){j=b+4|0;i=0;k=0;do{g=c[u>>2]|0;if(!g){g=(c[j>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[e+634+(v*6|0)+k>>0]=g;i=i+1<<24>>24;k=i&255}while(n>>>0>k>>>0)}a[e+602+v>>0]=p;a[e+604+v>>0]=a[e+53417>>0]|0;a[e+606+v>>0]=o;g=0;j=173;break}case 3:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{Gf(b,2);g=c[u>>2]|0;break}while(0);p=h&255;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{Gf(b,2);g=c[u>>2]|0;break}while(0);o=h+(d[e+53417>>0]|0)&255;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{Gf(b,2);break}while(0);n=e+53513+v|0;a[n>>0]=h;g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{Gf(b,2);break}while(0);g=h&255;m=e+53515+v|0;a[m>>0]=g;r=a[n>>0]|0;h=(h&255)+(r&255)|0;h=h>>>0>4?5:h+1&255;if(!(r<<24>>24))j=0;else{l=b+4|0;k=0;do{i=k&255;j=c[u>>2]|0;if(j>>>0<2){g=2-j|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-j>>>30;do if(!(a[t>>0]|0))if(j>>>0>2){c[u>>2]=j+-2;break}else{Gf(b,2);break}while(0);a[e+53471+(v*9|0)+i>>0]=(g<<1)+2;k=k+1<<24>>24;j=a[n>>0]|0}while((k&255)<(j&255));g=a[m>>0]|0}if(!(g<<24>>24)){i=0;g=j}else{l=b+4|0;k=0;do{i=k&255;j=c[u>>2]|0;if(j>>>0<2){g=2-j|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-j>>>30;do if(!(a[t>>0]|0))if(j>>>0>2){c[u>>2]=j+-2;break}else{Gf(b,2);break}while(0);a[e+53489+(v*9|0)+i>>0]=(g<<1)+2;k=k+1<<24>>24;i=a[m>>0]|0}while((k&255)<(i&255));g=a[n>>0]|0}g=(i&255)+2+(g&255)|0;do if((g&255)<10?(r=g<<24>>24,s=d[183780+r>>0]|0,r>>>0>=2):0){i=c[u>>2]|0;if(i>>>0>>0){g=s-i|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-s|0);if(!(a[t>>0]|0))if(i>>>0>s>>>0){c[u>>2]=i-s;break}else{Gf(b,s);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(h<<24>>24){i=b+4|0;k=h&255;j=0;do{g=c[u>>2]|0;if(!g){g=(c[i>>2]|0)>>>31;if(!(a[t>>0]|0))Gf(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[e+634+(v*6|0)+j>>0]=g;j=j+1|0}while((j|0)!=(k|0))}a[e+602+v>>0]=p;a[e+604+v>>0]=o;a[e+606+v>>0]=a[n>>0]|0;g=a[m>>0]|0;j=173;break}default:h=0}if((j|0)==173){a[e+608+v>>0]=g;g=a[A>>0]|0}v=h&255;g=g<<24>>24==3?5:4;g=g>>>0>v>>>0?v:g;a[w>>0]=g;if(!g){B=1;return B|0}a[y>>0]=(g|0)!=1?2:1;g=Rg(e,f)|0;if(!(g<<24>>24)){Sg(e,f);B=0;return B|0}else{a[A>>0]=B;a[w>>0]=x;a[y>>0]=z;B=g;return B|0}return 0}function Hg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f&255;i=e+610+m|0;if(a[i>>0]|0){j=b+8|0;k=b+4|0;l=b+20|0;g=0;do{h=g&255;f=c[j>>2]|0;if(!f){f=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))Gf(b,1)}else{f=f+-1|0;c[j>>2]=f;f=(c[b>>2]|0)>>>f&1}a[e+53517+(m*9|0)+h>>0]=f;g=g+1<<24>>24}while((g&255)<(d[i>>0]|0))}h=e+614+m|0;if(!(a[h>>0]|0))return;i=b+8|0;j=b+4|0;k=b+20|0;g=0;do{l=g&255;f=c[i>>2]|0;if(!f){f=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))Gf(b,1)}else{f=f+-1|0;c[i>>2]=f;f=(c[b>>2]|0)>>>f&1}a[e+53535+(m*3|0)+l>>0]=f;g=g+1<<24>>24}while((g&255)<(d[h>>0]|0));return}function Ig(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=g&255;x=f+610+w|0;i=a[x>>0]|0;if(i<<24>>24==1?(a[f+53451+w>>0]|0)==0:0)h=0;else h=a[f+53431>>0]|0;t=f+11+w|0;a[t>>0]=h;u=f+53450|0;v=g<<24>>24==1;j=v&(a[u>>0]|0)!=0;r=h<<24>>24==0;s=j?(r?182936:183032):r?183176:183416;r=j?(r?183080:182764):r?183540:182812;if(!(i<<24>>24)){Qg(f,g);return}o=e+8|0;p=e+4|0;q=e+20|0;n=j&1;m=0;l=0;while(1){if(!(a[f+53517+(w*9|0)+l>>0]|0)){i=(a[t>>0]|0)==0;i=v&(a[u>>0]|0)==1?(i?6:5):i?7:6;j=c[o>>2]|0;if(j>>>0>>0){h=i-j|0;h=(c[e>>2]&(1<>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-j>>>(32-i|0);do if(!(a[q>>0]|0))if(j>>>0>i>>>0){c[o>>2]=j-i;break}else{Gf(e,i);break}while(0);b[f+730+(w*640|0)+(l<<1)>>1]=h<>0]|0)+(f+24)>>0]|0)>1){j=1;do{i=0;do{h=c[o>>2]|0;if(!h){h=(c[p>>2]|0)>>>31;if(!(a[q>>0]|0))Gf(e,1)}else{h=h+-1|0;c[o>>2]=h;h=(c[e>>2]|0)>>>h&1}h=a[r+(i<<1)+h>>0]|0;i=h<<24>>24}while(h<<24>>24>-1);b[f+730+(w*640|0)+((j&255)*10|0)+(l<<1)>>1]=i+64<>24}while((j&255)<(d[(d[k>>0]|0)+(f+24)>>0]|0))}}else{k=f+634+(w*6|0)+l|0;if(a[(d[k>>0]|0)+(f+24)>>0]|0){j=0;do{i=0;do{h=c[o>>2]|0;if(!h){h=(c[p>>2]|0)>>>31;if(!(a[q>>0]|0))Gf(e,1)}else{h=h+-1|0;c[o>>2]=h;h=(c[e>>2]|0)>>>h&1}h=a[s+(i<<1)+h>>0]|0;i=h<<24>>24}while(h<<24>>24>-1);b[f+730+(w*640|0)+((j&255)*10|0)+(l<<1)>>1]=i+64<>24}while((j&255)<(d[(d[k>>0]|0)+(f+24)>>0]|0))}}h=m+1<<24>>24;if((h&255)<(d[x>>0]|0)){m=h;l=h&255}else break}Qg(f,g);return}function Jg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=f<<24>>24==1&(a[e+53450>>0]|0)==1;o=g?182592:182640;n=g?182764:182812;s=f&255;t=e+614+s|0;if(!(a[t>>0]|0)){Pg(e,f);return}p=b+8|0;q=b+4|0;r=b+20|0;l=g&1;m=e+19|0;k=0;j=0;while(1){if(!(a[e+53535+(s*3|0)+j>>0]|0)){h=c[p>>2]|0;if(h>>>0<5){g=5-h|0;g=(c[b>>2]&(1<>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-h>>>27;do if(!(a[r>>0]|0))if(h>>>0>5){c[p>>2]=h+-5;break}else{Gf(b,5);break}while(0);c[e+7388+(s<<9)+(j<<2)>>2]=g<>0]|0)>1){h=1;do{i=0;do{g=c[p>>2]|0;if(!g){g=(c[q>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(b,1)}else{g=g+-1|0;c[p>>2]=g;g=(c[b>>2]|0)>>>g&1}g=a[n+(i<<1)+g>>0]|0;i=g<<24>>24}while(g<<24>>24>-1);c[e+7388+(s<<9)+((h&255)<<3)+(j<<2)>>2]=i+64<>24}while((h&255)<(d[m>>0]|0))}}else if(a[m>>0]|0){i=0;do{h=0;do{g=c[p>>2]|0;if(!g){g=(c[q>>2]|0)>>>31;if(!(a[r>>0]|0))Gf(b,1)}else{g=g+-1|0;c[p>>2]=g;g=(c[b>>2]|0)>>>g&1}g=a[o+(h<<1)+g>>0]|0;h=g<<24>>24}while(g<<24>>24>-1);c[e+7388+(s<<9)+((i&255)<<3)+(j<<2)>>2]=h+64<>24}while((i&255)<(d[m>>0]|0))}g=k+1<<24>>24;if((g&255)<(d[t>>0]|0)){k=g;j=g&255}else break}Pg(e,f);return}function Kg(e,f){e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=e+53450|0;if(a[t>>0]|0)return;u=f&255;h=(a[e+11+u>>0]|0)==0;p=a[e+610+u>>0]|0;a:do if(p<<24>>24){q=h&1;if(h){o=0;m=0}else{n=0;l=0;while(1){m=(d[e+634+(u*6|0)+l>>0]|0)+(e+24)|0;if(a[m>>0]|0){k=0;i=0;while(1){h=b[e+730+(u*640|0)+(i*10|0)+(l<<1)>>1]>>q;if(h>>>0>63)j=0.0;else j=+g[92380+(h<<2)>>2];g[e+2268+(u*1280|0)+(i*20|0)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(d[m>>0]|0)){k=h;i=h&255}else break}}h=n+1<<24>>24;if((h&255)<(p&255)){n=h;l=h&255}else break a}}while(1){n=(d[e+634+(u*6|0)+m>>0]|0)+(e+24)|0;if(a[n>>0]|0){l=0;i=0;while(1){k=b[e+730+(u*640|0)+(i*10|0)+(m<<1)>>1]|0;h=k<<16>>16>>q;if(h>>>0<=63){j=+g[92380+(h<<2)>>2];h=e+2268+(u*1280|0)+(i*20|0)+(m<<2)|0;g[h>>2]=j;if(k&1)g[h>>2]=j*1.4142135381698608}else g[e+2268+(u*1280|0)+(i*20|0)+(m<<2)>>2]=0.0;h=l+1<<24>>24;if((h&255)<(d[n>>0]|0)){l=h;i=h&255}else break}}h=o+1<<24>>24;if((h&255)<(p&255)){o=h;m=h&255}else break}}while(0);p=a[e+614+u>>0]|0;if(!(p<<24>>24))return;o=f<<24>>24==0;n=a[e+19>>0]|0;m=0;h=n;l=0;while(1){if(h<<24>>24)if(o){k=0;i=0;while(1){if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+g[94348+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(v=c[e+7900+(i<<3)+(l<<2)>>2]|0,v>>>0<=24):0)j=+g[92736+(h*52|0)+(v>>>1<<2)>>2];else j=0.0}g[e+8412+(u<<9)+(i<<3)+(l<<2)>>2]=j;if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+g[97696+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(w=c[e+7900+(i<<3)+(l<<2)>>2]|0,w>>>0<=24):0)j=+g[96084+(h*52|0)+(w>>>1<<2)>>2];else j=0.0}g[e+9436+(u<<9)+(i<<3)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(n&255)){k=h;i=h&255}else{h=n;break}}}else{k=0;i=0;while(1){if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+g[94348+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(r=c[e+7900+(i<<3)+(l<<2)>>2]|0,r>>>0<=24):0)j=+g[94472+(h*52|0)+(r>>>1<<2)>>2];else j=0.0}g[e+8412+(u<<9)+(i<<3)+(l<<2)>>2]=j;if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+g[97696+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(s=c[e+7900+(i<<3)+(l<<2)>>2]|0,s>>>0<=24):0)j=+g[97820+(h*52|0)+(s>>>1<<2)>>2];else j=0.0}g[e+9436+(u<<9)+(i<<3)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(n&255)){k=h;i=h&255}else{h=n;break}}}else h=0;i=m+1<<24>>24;if((i&255)<(p&255)){m=i;l=i&255}else break}return}function Lg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;if(e<<24>>24!=2){f=b+8|0;g=c[f>>2]|0;if(g>>>0<6){e=6-g|0;e=(c[b>>2]&(1<>2]|0)>>>(32-e|0)}else e=c[b>>2]<<32-g>>>26;do if(!(a[b+20>>0]|0))if(g>>>0>6){c[f>>2]=g+-6;break}else{Gf(b,6);break}while(0);a[d+53449>>0]=e;d=6;l=j;return d|0}f=d+53420|0;e=c[f>>2]|0;if(!e){e=Wf(c[d>>2]|0)|0;e=Ng(e,a[d+53416>>0]|0)|0;c[f>>2]=e}h=d+53425|0;if(a[h>>0]|0)a[e+719>>0]=0;g=Og(e,b,i)|0;f=d+53424|0;e=(a[i>>0]|0)==1;if(!((a[f>>0]|0)==0&e)){if(!e){d=g;l=j;return d|0}}else a[f>>0]=1;a[h>>0]=0;d=g;l=j;return d|0}function Mg(e){e=e|0;var f=0,h=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=(a[e+11>>0]|0)==0;s=a[e+610>>0]|0;if(s<<24>>24){p=r&1;q=(a[e+12>>0]|0)==0&1;o=0;m=0;while(1){n=(d[e+634+m>>0]|0)+(e+24)|0;if(a[n>>0]|0)if(r){l=0;k=0;while(1){f=b[e+730+(k*10|0)+(m<<1)>>1]|0;h=b[e+1370+(k*10|0)+(m<<1)>>1]>>q;j=(f>>p<<16)+65536|0;if(h>>>0>24|j>>>0>4128768){g[e+3548+(k*20|0)+(m<<2)>>2]=0.0;i=0.0;f=0}else{i=+g[92380+(j>>16<<2)>>2];i=(f&1|0)==0?i:i*1.4142135381698608;g[e+2268+(k*20|0)+(m<<2)>>2]=+g[92636+(h<<2)>>2]*i;i=i*+g[92636+(24-h<<2)>>2];f=1}g[e+2268+(f*1280|0)+(k*20|0)+(m<<2)>>2]=i;f=l+1<<24>>24;if((f&255)<(d[n>>0]|0)){l=f;k=f&255}else break}}else{k=0;j=0;while(1){f=b[e+1370+(j*10|0)+(m<<1)>>1]>>q;h=(b[e+730+(j*10|0)+(m<<1)>>1]>>p<<16)+65536|0;if(f>>>0>24|h>>>0>4128768){g[e+3548+(j*20|0)+(m<<2)>>2]=0.0;i=0.0;f=0}else{i=+g[92380+(h>>16<<2)>>2];g[e+2268+(j*20|0)+(m<<2)>>2]=+g[92636+(f<<2)>>2]*i;i=i*+g[92636+(24-f<<2)>>2];f=1}g[e+2268+(f*1280|0)+(j*20|0)+(m<<2)>>2]=i;f=k+1<<24>>24;if((f&255)<(d[n>>0]|0)){k=f;j=f&255}else break}}f=o+1<<24>>24;if((f&255)<(s&255)){o=f;m=f&255}else break}}p=a[e+614>>0]|0;if(!(p<<24>>24))return;q=e+53450|0;o=a[e+19>>0]|0;n=0;f=o;m=0;while(1){if(!(f<<24>>24))f=0;else{l=0;k=0;while(1){j=c[e+7388+(k<<3)+(m<<2)>>2]|0;h=j>>>0>30;if(!(a[q>>0]|0))if(h)i=0.0;else i=+g[94348+(j<<2)>>2];else if(!h?(t=c[e+7900+(k<<3)+(m<<2)>>2]|0,t>>>0<=24):0)i=+g[92736+(j*52|0)+(t>>>1<<2)>>2];else i=0.0;g[e+8412+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0)){f=c[e+7900+(k<<3)+(m<<2)>>2]|0;if(f>>>0>30)i=0.0;else i=+g[94348+(f<<2)>>2]}else if(!h?(u=c[e+7900+(k<<3)+(m<<2)>>2]|0,u>>>0<=24):0)i=+g[94472+(j*52|0)+(u>>>1<<2)>>2];else i=0.0;g[e+8924+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0))if(h)i=0.0;else i=+g[97696+(j<<2)>>2];else if(!h?(v=c[e+7900+(k<<3)+(m<<2)>>2]|0,v>>>0<=24):0)i=+g[96084+(j*52|0)+(v>>>1<<2)>>2];else i=0.0;g[e+9436+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0)){f=c[e+7900+(k<<3)+(m<<2)>>2]|0;if(f>>>0>30)i=0.0;else i=+g[97696+(f<<2)>>2]}else if(!h?(w=c[e+7900+(k<<3)+(m<<2)>>2]|0,w>>>0<=24):0)i=+g[97820+(j*52|0)+(w>>>1<<2)>>2];else i=0.0;g[e+9948+(k<<3)+(m<<2)>>2]=i;f=l+1<<24>>24;if((f&255)<(o&255)){l=f;k=f&255}else{f=o;break}}}h=n+1<<24>>24;if((h&255)<(p&255)){n=h;m=h&255}else break}return} -function VG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;QH(e,b+(0-(c<<1))|0,c);lI(a,e+16|0,c);l=d;return}function WG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;LH(e,b+(0-(c<<1))|0,c);kI(a,e+8|0,c);l=d;return}function XG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;GH(e,b+(0-(c<<1))|0,c);jI(a,e+16|0,c);l=d;return}function YG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;YH(g,b+(0-(c<<1))|0,c);ZH(f,g+16|0,8);dI(e,d,b,8,c);_H(a,f,e,c,8);l=d;return}function ZG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;UH(g,b+(0-(c<<1))|0,c);VH(f,g+16|0,8);cI(e,d,b,8,c);WH(a,f,e,c,8);l=d;return}function _G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;QH(g,b+(0-(c<<1))|0,c);RH(f,g+16|0,8);bI(e,d,b,8,c);SH(a,f,e,c,8);l=d;return}function $G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;LH(g,b+(0-(c<<1))|0,c);MH(f,g+8|0,4);aI(e,d,b,4,c);NH(a,f,e,c,4);l=d;return}function aH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;GH(g,b+(0-(c<<1))|0,c);HH(f,g+16|0,8);$H(e,d,b,8,c);IH(a,f,e,c,8);l=d;return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);iI(a,d,b,c,c);l=d;return}function cH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);hI(a,d,b,c,c);l=d;return}function dH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);gI(a,d,b,c,c);l=d;return}function eH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);fI(a,d,b,c,c);l=d;return}function fH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);eI(a,d,b,c,c);l=d;return}function gH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;YH(g,b+(0-(c<<1))+2|0,c);ZH(f,g+16|0,8);dI(e,d,b,8,c);_H(a,f,e,c,8);l=d;return}function hH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;UH(g,b+(0-(c<<1))+2|0,c);VH(f,g+16|0,8);cI(e,d,b,8,c);WH(a,f,e,c,8);l=d;return}function iH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;QH(g,b+(0-(c<<1))+2|0,c);RH(f,g+16|0,8);bI(e,d,b,8,c);SH(a,f,e,c,8);l=d;return}function jH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;LH(g,b+(0-(c<<1))+1|0,c);MH(f,g+8|0,4);aI(e,d,b,4,c);NH(a,f,e,c,4);l=d;return}function kH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;GH(g,b+(0-(c<<1))+2|0,c);HH(f,g+16|0,8);$H(e,d,b,8,c);IH(a,f,e,c,8);l=d;return}function lH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;YH(f,b+(0-(c<<1))|0,c);ZH(e,f+16|0,8);_H(a,f+24|0,e,c,8);l=d;return}function mH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;UH(f,b+(0-(c<<1))|0,c);VH(e,f+16|0,8);WH(a,f+24|0,e,c,8);l=d;return}function nH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;QH(f,b+(0-(c<<1))|0,c);RH(e,f+16|0,8);SH(a,f+24|0,e,c,8);l=d;return}function oH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;LH(f,b+(0-(c<<1))|0,c);MH(e,f+8|0,4);NH(a,f+12|0,e,c,4);l=d;return}function pH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;GH(f,b+(0-(c<<1))|0,c);HH(e,f+16|0,8);IH(a,f+24|0,e,c,8);l=d;return}function qH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b+c|0,8,c);YH(g,b+(0-(c<<1))|0,c);ZH(e,g+16|0,8);_H(a,f,e,c,8);l=d;return}function rH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b+c|0,8,c);UH(g,b+(0-(c<<1))|0,c);VH(e,g+16|0,8);WH(a,f,e,c,8);l=d;return}function sH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b+c|0,8,c);QH(g,b+(0-(c<<1))|0,c);RH(e,g+16|0,8);SH(a,f,e,c,8);l=d;return}function tH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b+c|0,4,c);LH(g,b+(0-(c<<1))|0,c);MH(e,g+8|0,4);NH(a,f,e,c,4);l=d;return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b+c|0,8,c);GH(g,b+(0-(c<<1))|0,c);HH(e,g+16|0,8);IH(a,f,e,c,8);l=d;return}function vH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;XH(f,b+c|0,8,c);dI(e,d,b,8,c);_H(a,f,e,c,8);l=d;return}function wH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;TH(f,b+c|0,8,c);cI(e,d,b,8,c);WH(a,f,e,c,8);l=d;return}function xH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;PH(f,b+c|0,8,c);bI(e,d,b,8,c);SH(a,f,e,c,8);l=d;return}function yH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;KH(f,b+c|0,4,c);aI(e,d,b,4,c);NH(a,f,e,c,4);l=d;return}function zH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;FH(f,b+c|0,8,c);$H(e,d,b,8,c);IH(a,f,e,c,8);l=d;return}function AH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;XH(f,b+c|0,8,c);YH(g,b+(0-(c<<1))+2|0,c);ZH(e,g+16|0,8);_H(a,f,e,c,8);l=d;return}function BH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;TH(f,b+c|0,8,c);UH(g,b+(0-(c<<1))+2|0,c);VH(e,g+16|0,8);WH(a,f,e,c,8);l=d;return}function CH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;PH(f,b+c|0,8,c);QH(g,b+(0-(c<<1))+2|0,c);RH(e,g+16|0,8);SH(a,f,e,c,8);l=d;return}function DH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;KH(f,b+c|0,4,c);LH(g,b+(0-(c<<1))+1|0,c);MH(e,g+8|0,4);NH(a,f,e,c,4);l=d;return}function EH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;FH(f,b+c|0,8,c);GH(g,b+(0-(c<<1))+2|0,c);HH(e,g+16|0,8);IH(a,f,e,c,8);l=d;return}function FH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function GH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function HH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<512?p:0-p>>31&511;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<512?o:0-o>>31&511;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function IH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=JH(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function JH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=yZ(c^a|0,d^b|0,1)|0;d=pZ(c|a|0,d|b|0,e&2147450879|0,y&2147450879|0)|0;return d|0}function KH(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function LH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function MH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(N(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(N(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(N(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function NH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;j=e+(h<<2)|0;i=a+(N(h,f)|0)|0;l=c[i>>2]|0;c[i>>2]=OH(l,OH(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;h=h+1|0}return}function OH(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function PH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function QH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function RH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:0-q>>31&1023;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<1024?p:0-p>>31&1023;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function SH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=JH(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function TH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function UH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function VH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:0-q>>31&4095;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<4096?o:0-o>>31&4095;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function WH(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=JH(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function XH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function YH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function ZH(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:0-q>>31&16383;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<16384?o:0-o>>31&16383;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function _H(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=JH(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function $H(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;p=b[g+-16>>1]|0;f=b[g>>1]|0;c=b[g+16>>1]|0;o=b[g+32>>1]|0;m=b[g+48>>1]|0;l=b[g+64>>1]|0;n=b[g+80>>1]|0;k=b[g+96>>1]|0;q=(b[g+-32>>1]|0)+512+m+((c+f|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+512+l+((o+c|0)*20|0)+(N(m+f|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<512?p:0-p>>31&511;f=f+512+n+((m+o|0)*20|0)+(N(l+c|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<512?f:0-f>>31&511;o=c+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<512?o:0-o>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function aI(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(N(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(N(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(N(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function bI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;r=b[g+-16>>1]|0;p=b[g>>1]|0;q=p+10230|0;c=b[g+16>>1]|0;f=c+10230|0;o=(b[g+32>>1]|0)+10230|0;m=(b[g+48>>1]|0)+10230|0;l=(b[g+64>>1]|0)+10230|0;n=(b[g+80>>1]|0)+10230|0;k=b[g+96>>1]|0;s=(b[g+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(N(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:0-s>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(N(m+q|0,-5)|0)>>10;b[a+(i<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(N(l+f|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<1024?f:0-f>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function cI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:0-r>>31&4095;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<4096?g:0-g>>31&4095;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function dI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:0-r>>31&16383;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<16384?g:0-g>>31&16383;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function eI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;q=b[g+-16>>1]|0;p=b[g>>1]|0;f=b[g+16>>1]|0;n=b[g+32>>1]|0;l=b[g+48>>1]|0;k=b[g+64>>1]|0;m=b[g+80>>1]|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+512+l+((f+p|0)*20|0)+(N(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:0-o>>31&511)|0)>>>1;o=a+(i<<1)|0;q=q+512+k+((n+f|0)*20|0)+(N(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;o=a+(d<<1)|0;p=p+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;o=a+(j<<1)|0;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function fI(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(N(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(N(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}function gI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;s=b[g+-16>>1]|0;q=b[g>>1]|0;r=q+10230|0;f=b[g+16>>1]|0;p=f+10230|0;n=(b[g+32>>1]|0)+10230|0;l=(b[g+48>>1]|0)+10230|0;k=(b[g+64>>1]|0)+10230|0;m=(b[g+80>>1]|0)+10230|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(N(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:0-o>>31&1023)|0)>>>1;o=a+(i<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(N(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:0-r>>31&1023)|0)>>>1;o=a+(d<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(N(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;o=a+(j<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function hI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:0-r>>31&4095)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:0-g>>31&4095)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function iI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:0-r>>31&16383)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:0-g>>31&16383)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function jI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:0-j>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function kI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function lI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:0-q>>31&1023)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:0-j>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function mI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:0-j>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function nI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:0-j>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function oI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function pI(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function qI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function rI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function sI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=JH(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function uI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=OH(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;f=f+1|0;a=a+e|0;b=b+e|0}return}function vI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=JH(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function wI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=JH(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function xI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=JH(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function yI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function zI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function AI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<512?K:0-K>>31&511;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<512?c:0-c>>31&511;g=g+1|0;f=f+2|0;d=d+2|0}return}function BI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=JH(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=JH(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=JH(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=JH(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function CI(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function DI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function EI(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;J=d[c+t>>0]|0;I=d[c>>0]|0;H=d[c+f>>0]|0;G=d[c+u>>0]|0;F=d[c+v>>0]|0;E=d[c+w>>0]|0;D=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;K=(d[c+s>>0]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[b>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[b+e>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[b+m>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+16+y+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;a[b+n>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+16+A+((D+E|0)*20|0)+(N(y+F|0,-5)|0)>>5;a[b+o>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+16+B+((y+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;a[b+p>>0]=F>>>0>255?(F^-2147483648)>>31:F;E=E+16+z+((A+y|0)*20|0)+(N(B+D|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+16+C+((B+A|0)*20|0)+(N(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function FI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;p=b+m|0;l=N(j,h)|0;o=e+l|0;k=N(j,f)|0;n=a+k|0;q=c[n>>2]|0;c[n>>2]=OH(q,OH(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;c[k>>2]=OH(n,OH(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;j=j+1|0}return}function GI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function HI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function II(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<1024?K:0-K>>31&1023;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<1024?H:0-H>>31&1023;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<1024?F:0-F>>31&1023;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;g=g+1|0;f=f+2|0;d=d+2|0}return}function JI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=JH(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=JH(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=JH(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=JH(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function KI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function LI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function MI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<4096?E:0-E>>31&4095;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;g=g+1|0;f=f+2|0;d=d+2|0}return}function NI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=JH(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=JH(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=JH(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=JH(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function OI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function PI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function QI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<16384?E:0-E>>31&16383;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;g=g+1|0;f=f+2|0;d=d+2|0}return}function RI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=JH(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=JH(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=JH(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=JH(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function SI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;J=b[h+(f<<1)>>1]|0;I=b[h>>1]|0;H=b[h+(g<<1)>>1]|0;G=b[h+(l<<1)>>1]|0;F=b[h+(m<<1)>>1]|0;E=b[h+(n<<1)>>1]|0;D=b[h+(o<<1)>>1]|0;c=b[h+(p<<1)>>1]|0;a=b[h+(q<<1)>>1]|0;B=b[h+(r<<1)>>1]|0;A=b[h+(s<<1)>>1]|0;C=b[h+(t<<1)>>1]|0;K=(b[h+(k<<1)>>1]|0)+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[j>>1]=K>>>0<512?K:0-K>>31&511;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[j+(d<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+512+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[j+(u<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+512+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>10;b[j+(v<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+512+a+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;b[j+(w<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+512+B+((c+D|0)*20|0)+(N(a+E|0,-5)|0)>>10;b[j+(x<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+512+A+((a+c|0)*20|0)+(N(B+D|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+512+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<512?c:0-c>>31&511;j=j+2|0;h=h+2|0;i=i+1|0}return}function TI(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;K=b[f+(l<<1)>>1]|0;J=b[f>>1]|0;I=b[f+(h<<1)>>1]|0;H=b[f+(m<<1)>>1]|0;G=b[f+(n<<1)>>1]|0;F=b[f+(o<<1)>>1]|0;E=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;L=(b[f+(i<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[k>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[k+g>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[k+v>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+512+B+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;a[k+w>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+512+c+((E+F|0)*20|0)+(N(B+G|0,-5)|0)>>10;a[k+x>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+512+C+((B+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;a[k+y>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+512+e+((c+B|0)*20|0)+(N(C+E|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+512+D+((C+c|0)*20|0)+(N(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function UI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;Q=b[h+(f<<1)>>1]|0;O=b[h>>1]|0;P=O+10230|0;L=b[h+(g<<1)>>1]|0;M=L+10230|0;J=b[h+(l<<1)>>1]|0;K=J+10230|0;H=b[h+(m<<1)>>1]|0;I=H+10230|0;F=b[h+(n<<1)>>1]|0;G=F+10230|0;D=b[h+(o<<1)>>1]|0;E=D+10230|0;c=(b[h+(p<<1)>>1]|0)+10230|0;a=(b[h+(q<<1)>>1]|0)+10230|0;B=(b[h+(r<<1)>>1]|0)+10230|0;A=(b[h+(s<<1)>>1]|0)+10230|0;C=b[h+(t<<1)>>1]|0;R=(b[h+(k<<1)>>1]|0)+10742+I+((M+P|0)*20|0)+(N(K+(Q+10230)|0,-5)|0)>>10;b[j>>1]=R>>>0<1024?R:0-R>>31&1023;P=Q+10742+G+((K+M|0)*20|0)+(N(I+P|0,-5)|0)>>10;b[j+(d<<1)>>1]=P>>>0<1024?P:0-P>>31&1023;M=O+10742+E+((I+K|0)*20|0)+(N(G+M|0,-5)|0)>>10;b[j+(u<<1)>>1]=M>>>0<1024?M:0-M>>31&1023;K=L+10742+c+((G+I|0)*20|0)+(N(E+K|0,-5)|0)>>10;b[j+(v<<1)>>1]=K>>>0<1024?K:0-K>>31&1023;I=J+10742+a+((E+G|0)*20|0)+(N(c+I|0,-5)|0)>>10;b[j+(w<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;G=H+10742+B+((c+E|0)*20|0)+(N(a+G|0,-5)|0)>>10;b[j+(x<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;E=F+10742+A+((a+c|0)*20|0)+(N(B+E|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+20972+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;j=j+2|0;h=h+2|0;i=i+1|0}return}function VI(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;k=k+2|0;i=i+4|0;j=j+1|0}return}function WI(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;k=k+2|0;i=i+4|0;j=j+1|0}return}function XI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;K=b[h+(f<<1)>>1]|0;J=b[h>>1]|0;I=b[h+(g<<1)>>1]|0;H=b[h+(l<<1)>>1]|0;G=b[h+(m<<1)>>1]|0;F=b[h+(n<<1)>>1]|0;E=b[h+(o<<1)>>1]|0;A=b[h+(p<<1)>>1]|0;B=b[h+(q<<1)>>1]|0;C=b[h+(r<<1)>>1]|0;a=b[h+(s<<1)>>1]|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=j+(d<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(u<<1)|0;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;I=I+512+A+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;H=H+512+B+((E+F|0)*20|0)+(N(A+G|0,-5)|0)>>10;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;G=G+512+C+((A+E|0)*20|0)+(N(B+F|0,-5)|0)>>10;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=F+512+a+((B+A|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+512+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<512?A:0-A>>31&511)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function YI(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;L=b[f+(l<<1)>>1]|0;K=b[f>>1]|0;J=b[f+(h<<1)>>1]|0;I=b[f+(m<<1)>>1]|0;H=b[f+(n<<1)>>1]|0;G=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;B=(b[f+(i<<1)>>1]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[B>>0]=((d[B>>0]|0)+1+((L>>>0>255?(L^-2147483648)>>31:L)&255)|0)>>>1;B=k+v|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[B>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;J=J+512+e+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;I=I+512+C+((F+G|0)*20|0)+(N(e+H|0,-5)|0)>>10;a[B>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;H=H+512+D+((e+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;a[B>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=G+512+c+((C+e|0)*20|0)+(N(D+F|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+512+E+((D+C|0)*20|0)+(N(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function ZI(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;R=b[h+(f<<1)>>1]|0;P=b[h>>1]|0;Q=P+10230|0;M=b[h+(g<<1)>>1]|0;O=M+10230|0;K=b[h+(l<<1)>>1]|0;L=K+10230|0;I=b[h+(m<<1)>>1]|0;J=I+10230|0;G=b[h+(n<<1)>>1]|0;H=G+10230|0;E=b[h+(o<<1)>>1]|0;F=E+10230|0;A=(b[h+(p<<1)>>1]|0)+10230|0;B=(b[h+(q<<1)>>1]|0)+10230|0;C=(b[h+(r<<1)>>1]|0)+10230|0;a=(b[h+(s<<1)>>1]|0)+10230|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+10742+J+((O+Q|0)*20|0)+(N(L+(R+10230)|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=j+(d<<1)|0;Q=R+10742+H+((L+O|0)*20|0)+(N(J+Q|0,-5)|0)>>10;b[c>>1]=((e[c>>1]|0)+1+(Q>>>0<1024?Q:0-Q>>31&1023)|0)>>>1;c=j+(u<<1)|0;O=P+10742+F+((J+L|0)*20|0)+(N(H+O|0,-5)|0)>>10;b[c>>1]=((O>>>0<1024?O:0-O>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;L=M+10742+A+((H+J|0)*20|0)+(N(F+L|0,-5)|0)>>10;b[c>>1]=((L>>>0<1024?L:0-L>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;J=K+10742+B+((F+H|0)*20|0)+(N(A+J|0,-5)|0)>>10;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;H=I+10742+C+((A+F|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=G+10742+a+((B+A|0)*20|0)+(N(C+F|0,-5)|0)>>10;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+20972+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<1024?A:0-A>>31&1023)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function _I(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<4096?d:0-d>>31&4095)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<4096?B:0-B>>31&4095)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function $I(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<16384?d:0-d>>31&16383)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<16384?B:0-B>>31&16383)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function aJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:0-a>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function bJ(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;K=d[c+t>>0]|0;J=d[c>>0]|0;I=d[c+f>>0]|0;H=d[c+u>>0]|0;G=d[c+v>>0]|0;F=d[c+w>>0]|0;E=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;y=(d[c+s>>0]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[y>>0]=((d[y>>0]|0)+1+((K>>>0>255?(K^-2147483648)>>31:K)&255)|0)>>>1;y=b+m|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[y>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;I=I+16+z+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;H=H+16+B+((E+F|0)*20|0)+(N(z+G|0,-5)|0)>>5;a[y>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;G=G+16+C+((z+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;a[y>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=F+16+A+((B+z|0)*20|0)+(N(C+E|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+16+D+((C+B|0)*20|0)+(N(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function cJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<1024?G:0-G>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:0-a>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function dJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:0-F>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:0-a>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function eJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:0-F>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:0-a>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function fJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function gJ(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=N((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function hJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function iJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function jJ(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function kJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=JH(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=JH(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function lJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=OH(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;h=a+4|0;i=b+4|0;c[h>>2]=OH(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;g=g+1|0;a=a+e|0;b=b+e|0}return}function mJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=JH(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=JH(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function nJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=JH(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=JH(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function oJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=JH(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=JH(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function pJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yI(a,b,c,d);yI(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;yI(a,b,c,d);yI(a+16|0,b+16|0,c,d);return}function qJ(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function rJ(a,b,c){a=a|0;b=b|0;c=c|0;AI(a,b,c,32);AI(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;AI(a,b+256|0,c,32);AI(a+16|0,b+272|0,c,32);return}function sJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;BI(a,b,c,d,e,32,16);BI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function tJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;CI(a,b,c,d);CI(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;CI(a,b,c,d);CI(a+8|0,b+8|0,c,d);return}function uJ(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function vJ(a,b,c){a=a|0;b=b|0;c=c|0;EI(a,b,c,16);EI(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;EI(a,b+128|0,c,16);EI(a+8|0,b+136|0,c,16);return}function wJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;FI(a,b,c,d,e,16,16);FI(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function xJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GI(a,b,c,d);GI(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;GI(a,b,c,d);GI(a+16|0,b+16|0,c,d);return}function yJ(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function zJ(a,b,c){a=a|0;b=b|0;c=c|0;II(a,b,c,32);II(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;II(a,b+256|0,c,32);II(a+16|0,b+272|0,c,32);return}function AJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;JI(a,b,c,d,e,32,16);JI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function BJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;KI(a,b,c,d);KI(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;KI(a,b,c,d);KI(a+16|0,b+16|0,c,d);return}function CJ(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function DJ(a,b,c){a=a|0;b=b|0;c=c|0;MI(a,b,c,32);MI(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;MI(a,b+256|0,c,32);MI(a+16|0,b+272|0,c,32);return}function EJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;NI(a,b,c,d,e,32,16);NI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function FJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;OI(a,b,c,d);OI(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;OI(a,b,c,d);OI(a+16|0,b+16|0,c,d);return}function GJ(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function HJ(a,b,c){a=a|0;b=b|0;c=c|0;QI(a,b,c,32);QI(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;QI(a,b+256|0,c,32);QI(a+16|0,b+272|0,c,32);return}function IJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;RI(a,b,c,d,e,32,16);RI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function JJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;SI(a,b,c,d,32,e);f=b+16|0;SI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;SI(a,b,c,d,32,e);SI(a+16|0,f,c+16|0,d,32,e);return}function KJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;TI(a,b,c,d,16,e);f=b+16|0;TI(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;TI(a,b,c,d,16,e);TI(a+8|0,f,c+8|0,d,16,e);return}function LJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;UI(a,b,c,d,32,e);f=b+16|0;UI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;UI(a,b,c,d,32,e);UI(a+16|0,f,c+16|0,d,32,e);return}function MJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;VI(a,b,c,d,32,e);f=b+32|0;VI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;VI(a,b,c,d,32,e);VI(a+16|0,f,c+16|0,d,32,e);return}function NJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;WI(a,b,c,d,32,e);f=b+32|0;WI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;WI(a,b,c,d,32,e);WI(a+16|0,f,c+16|0,d,32,e);return}function OJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;XI(a,b,c,d,32,e);f=b+16|0;XI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;XI(a,b,c,d,32,e);XI(a+16|0,f,c+16|0,d,32,e);return}function PJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;YI(a,b,c,d,16,e);f=b+16|0;YI(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;YI(a,b,c,d,16,e);YI(a+8|0,f,c+8|0,d,16,e);return}function QJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;ZI(a,b,c,d,32,e);f=b+16|0;ZI(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;ZI(a,b,c,d,32,e);ZI(a+16|0,f,c+16|0,d,32,e);return}function RJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;_I(a,b,c,d,32,e);f=b+32|0;_I(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;_I(a,b,c,d,32,e);_I(a+16|0,f,c+16|0,d,32,e);return}function SJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;$I(a,b,c,d,32,e);f=b+32|0;$I(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;$I(a,b,c,d,32,e);$I(a+16|0,f,c+16|0,d,32,e);return}function TJ(a,b,c){a=a|0;b=b|0;c=c|0;aJ(a,b,c,32);aJ(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;aJ(a,b+256|0,c,32);aJ(a+16|0,b+272|0,c,32);return}function UJ(a,b,c){a=a|0;b=b|0;c=c|0;bJ(a,b,c,16);bJ(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;bJ(a,b+128|0,c,16);bJ(a+8|0,b+136|0,c,16);return}function VJ(a,b,c){a=a|0;b=b|0;c=c|0;cJ(a,b,c,32);cJ(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;cJ(a,b+256|0,c,32);cJ(a+16|0,b+272|0,c,32);return}function WJ(a,b,c){a=a|0;b=b|0;c=c|0;dJ(a,b,c,32);dJ(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;dJ(a,b+256|0,c,32);dJ(a+16|0,b+272|0,c,32);return}function XJ(a,b,c){a=a|0;b=b|0;c=c|0;eJ(a,b,c,32);eJ(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;eJ(a,b+256|0,c,32);eJ(a+16|0,b+272|0,c,32);return}function YJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fJ(a,b,c,d);fJ(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;fJ(a,b,c,d);fJ(a+16|0,b+16|0,c,d);return}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gJ(a,b,c,d);gJ(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;gJ(a,b,c,d);gJ(a+8|0,b+8|0,c,d);return}function _J(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hJ(a,b,c,d);hJ(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;hJ(a,b,c,d);hJ(a+16|0,b+16|0,c,d);return}function $J(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;iJ(a,b,c,d);iJ(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;iJ(a,b,c,d);iJ(a+16|0,b+16|0,c,d);return}function aK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;jJ(a,b,c,d);jJ(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;jJ(a,b,c,d);jJ(a+16|0,b+16|0,c,d);return}function bK(a,b,c){a=a|0;b=b|0;c=c|0;kJ(a,b,c,16);kJ(a+16|0,b+16|0,c,16);return}function cK(a,b,c){a=a|0;b=b|0;c=c|0;lJ(a,b,c,16);lJ(a+8|0,b+8|0,c,16);return}function dK(a,b,c){a=a|0;b=b|0;c=c|0;mJ(a,b,c,16);mJ(a+16|0,b+16|0,c,16);return}function eK(a,b,c){a=a|0;b=b|0;c=c|0;nJ(a,b,c,16);nJ(a+16|0,b+16|0,c,16);return}function fK(a,b,c){a=a|0;b=b|0;c=c|0;oJ(a,b,c,16);oJ(a+16|0,b+16|0,c,16);return}function gK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:0-l>>31&511;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function hK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function iK(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function jK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=JH(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function kK(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=N((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function lK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function mK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(N(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(N(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function nK(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=c+(N(h,g)|0)|0;i=e+(h<<1)|0;b[a+(N(h,f)|0)>>1]=OH((d[j>>0]|d[j+1>>0]<<8)&65535,(d[i>>0]|d[i+1>>0]<<8)&65535)|0;h=h+1|0}return}function oK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:0-l>>31&1023;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function pK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function qK(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function rK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=JH(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function sK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:0-l>>31&4095;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function uK(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function vK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=JH(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function wK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:0-l>>31&16383;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function xK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function yK(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function zK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=JH(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function AK(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=b[g>>1]|0;l=b[g+8>>1]|0;k=b[g+16>>1]|0;m=b[g+24>>1]|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[a>>1]=j>>>0<512?j:0-j>>31&511;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<512?n:0-n>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function BK(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=N((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function CK(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=(b[g>>1]|0)+10230|0;l=(b[g+8>>1]|0)+10230|0;k=(b[g+16>>1]|0)+10230|0;m=(b[g+24>>1]|0)+10230|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(N(k+(f+10230)|0,-5)|0)>>10;b[a>>1]=j>>>0<1024?j:0-j>>31&1023;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<1024?n:0-n>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function DK(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<4096?g:0-g>>31&4095;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function EK(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<16384?g:0-g>>31&16383;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function FK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function GK(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function HK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function IK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function JK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function KK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=JH(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function LK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;c[a+(N(h,f)|0)>>2]=OH(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=h+1|0}return}function MK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=JH(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function NK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=JH(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function OK(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=JH(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function PK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function QK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function RK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function SK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function TK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function UK(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=JH(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function VK(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;o=b+m|0;l=N(j,h)|0;n=e+l|0;k=N(j,f)|0;c[a+k>>2]=OH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;m=b+(m+4)|0;l=e+(l+4)|0;c[a+(k+4)>>2]=OH(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;j=j+1|0}return}function WK(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=JH(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function XK(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=JH(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function YK(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=JH(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=JH(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function ZK(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function _K(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function $K(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function aL(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function bL(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function cL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;UK(a,b,c,d,e,32,16);UK(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function dL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;VK(a,b,c,d,e,16,16);VK(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function eL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;WK(a,b,c,d,e,32,16);WK(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function fL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;XK(a,b,c,d,e,32,16);XK(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function gL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;YK(a,b,c,d,e,32,16);YK(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function hL(a,b,c){a=a|0;b=b|0;c=c|0;ZK(a,b,c,16);ZK(a+16|0,b+16|0,c,16);return}function iL(a,b,c){a=a|0;b=b|0;c=c|0;_K(a,b,c,16);_K(a+8|0,b+8|0,c,16);return}function jL(a,b,c){a=a|0;b=b|0;c=c|0;$K(a,b,c,16);$K(a+16|0,b+16|0,c,16);return}function kL(a,b,c){a=a|0;b=b|0;c=c|0;aL(a,b,c,16);aL(a+16|0,b+16|0,c,16);return}function lL(a,b,c){a=a|0;b=b|0;c=c|0;bL(a,b,c,16);bL(a+16|0,b+16|0,c,16);return} -function qq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function rq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function sq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function tq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function uq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=(n+1+m|0)>>>1;c=(m+1+l|0)>>>1&255;i=e<<1;a[b+i>>0]=c;a[b+1>>0]=c;c=(l+1+k|0)>>>1&255;a[b+(i|1)>>0]=c;a[b+2>>0]=c;c=(k+1+j|0)>>>1&255;a[b+(i+2)>>0]=c;a[b+3>>0]=c;a[b+e>>0]=(n+2+(m<<1)+l|0)>>>2;m=(m+2+(l<<1)+k|0)>>>2&255;c=e*3|0;a[b+c>>0]=m;a[b+(e+1)>>0]=m;l=(l+2+(k<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+2+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function vq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function wq(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function xq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=uZ(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function yq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=199354+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function zq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;d=a+(d*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function Aq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;d=a+(d*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function Bq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=uZ(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Cq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;r=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;n=d[c>>0]|0;l=d[c+1>>0]|0;i=d[c+2>>0]|0;h=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;j=e<<1;q=d[b+(j+-1)>>0]|0;c=e*3|0;o=d[b+(c+-1)>>0]|0;m=d[b+((e<<2)+-1)>>0]|0;k=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+r+(d[b+-1>>0]|0)+q+(s+t<<1)|0)>>>3;s=(t+4+p+s+o+(q+r<<1)|0)>>>3&255;a[b+e>>0]=s;a[b+1>>0]=s;q=(r+4+n+q+m+(o+p<<1)|0)>>>3&255;a[b+j>>0]=q;a[b+(e+1)>>0]=q;a[b+2>>0]=q;o=(p+4+l+o+k+(m+n<<1)|0)>>>3&255;a[b+c>>0]=o;a[b+(j|1)>>0]=o;a[b+(e+2)>>0]=o;a[b+3>>0]=o;m=(n+4+i+m+g+(k+l<<1)|0)>>>3&255;a[b+(c+1)>>0]=m;a[b+(j+2)>>0]=m;a[b+(e+3)>>0]=m;e=(l+4+h+k+f+(g+i<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(j+3)>>0]=e;a[b+(c+3)>>0]=(i+2+h+g+f|0)>>>2;return}function Dq(a,b,c){a=a|0;b=b|0;c=c|0;kx(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function Eq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;t=q<<1;s=t+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+u<<1)|0)>>>3;a[b+1>>0]=(u+4+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;p=(q+4+o+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+4+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function Fq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;d=a+(d*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function Gq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;m=d[b+(3-e)>>0]|0;l=d[c>>0]|0;k=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;j=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+n+(d[b+-1>>0]|0)+j+(o+p<<1)|0)>>>3;o=(p+4+m+o+f+(j+n<<1)|0)>>>3&255;a[b+e>>0]=o;a[b+1>>0]=o;j=(n+4+l+(m<<1)+j+(f*3|0)|0)>>>3&255;a[b+i>>0]=j;a[b+(e+1)>>0]=j;a[b+2>>0]=j;j=f<<2;m=(m+4+k+(l<<1)+j|0)>>>3&255;a[b+c>>0]=m;a[b+(i|1)>>0]=m;a[b+(e+2)>>0]=m;a[b+3>>0]=m;l=(l+4+h+(k<<1)+j|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(i+2)>>0]=l;a[b+(e+3)>>0]=l;e=(k+4+g+(h<<1)+j|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function Hq(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;r=o<<1;q=r+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+s<<1)|0)>>>3;a[b+1>>0]=(s+4+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;j=(o+4+n+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+4+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+2+i+c|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function Iq(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;kx(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function Jq(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Kq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=uZ((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=uZ((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=uZ((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=uZ((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=uZ((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=uZ((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=uZ((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=uZ((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Lq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Mq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Nq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Oq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Pq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Qq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Rq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Sq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=uZ(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Tq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Uq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function Vq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Wq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Xq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Zq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function _q(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+p>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+o>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function $q(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=199354+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function ar(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=uZ(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=uZ(k|0,l|0,65537,65537)|0;h=y;d=uZ(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function br(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=uZ(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=uZ(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function cr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function dr(a,b){a=a|0;b=b|0;cr(a,b);oq(a,0,b);return}function er(a,b){a=a|0;b=b|0;ar(a,b);Bq(a,0,b);return}function fr(a,b){a=a|0;b=b|0;br(a,b);a=a+(b<<2)|0;Fq(a,0,b);Fq(a+8|0,0,b);return}function gr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=uZ(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=uZ(m|0,n|0,65537,65537)|0;q=y;m=uZ(f|0,o|0,65537,65537)|0;n=y;k=uZ(r|0,s|0,65537,65537)|0;l=y;i=uZ(g|0,t|0,65537,65537)|0;j=y;g=uZ(u|0,v|0,65537,65537)|0;h=y;d=uZ(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function hr(a,b){a=a|0;b=b|0;br(a,b);br(a+(b<<3)|0,b);return}function ir(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function jr(a,b){a=a|0;b=b|0;ir(a,b);oq(a,0,b);return}function kr(a,b){a=a|0;b=b|0;gr(a,b);Bq(a,0,b);return}function lr(a,b){a=a|0;b=b|0;hr(a,b);a=a+(b<<2)|0;Fq(a,0,b);Fq(a+8|0,0,b);return}function mr(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=0;f=0;while(1){if((f|0)==4)break;h=d[a+((N(f,b)|0)+-1)>>0]|0;g=f+4|0;e=e+h+(d[a+(f-b)>>0]|0)+(d[a+(g-b)>>0]|0)+(d[a+((N(g,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}return}function nr(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function or(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function pr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function qr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function rr(a,b){a=a|0;b=b|0;hr(a,b);Fq(a,0,b);Fq(a+8|0,0,b);return}function sr(a,b){a=a|0;b=b|0;br(a,b);Fq(a,0,b);Fq(a+8|0,0,b);return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function ur(a,b){a=a|0;b=b|0;tr(a,b);tr(a+(b<<3)|0,b);return}function vr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function wr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function xr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function yr(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=199354+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function zr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function Ar(a,b){a=a|0;b=b|0;jx(a,b);return}function Br(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function Cr(a,b){a=a|0;b=b|0;fx(a,b,0,1);return}function Dr(a,b){a=a|0;b=b|0;fx(a,b,1,0);return}function Er(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Fr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Gr(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function Hr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Ir(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Jr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}FZ(d|0,0,256)|0;return}function Kr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}FZ(d|0,0,256)|0;return}function Lr(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}FZ(d|0,0,256)|0;l=s;return}function Mr(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}FZ(d|0,0,256)|0;l=k;return}function Nr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Hr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Or(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Hr(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Hr(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Pr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ir(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Ir(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Ir(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Sr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=uZ(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=uZ(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Tr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Ur(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Vr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Wr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Xr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Yr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Zr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function _r(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=uZ(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function $r(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;d=a+(d*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function as(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;d=a+(d*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function bs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=uZ(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function cs(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;d=a+(d*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function ds(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function es(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=uZ((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=uZ((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=uZ((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=uZ((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=uZ((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=uZ((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=uZ((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=uZ((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function fs(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function gs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function hs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function is(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function js(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function ks(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function ls(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function ms(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=uZ(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function ns(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function os(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function ps(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function qs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function rs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function ss(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function ts(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function us(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+p>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+o>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function vs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=uZ(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=uZ(k|0,l|0,65537,65537)|0;h=y;d=uZ(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function ws(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=uZ(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=uZ(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function xs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function ys(a,b){a=a|0;b=b|0;xs(a,b);Tr(a,0,b);return}function zs(a,b){a=a|0;b=b|0;vs(a,b);bs(a,0,b);return}function As(a,b){a=a|0;b=b|0;ws(a,b);a=a+(b<<2)|0;cs(a,0,b);cs(a+8|0,0,b);return}function Bs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=uZ(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=uZ(m|0,n|0,65537,65537)|0;q=y;m=uZ(f|0,o|0,65537,65537)|0;n=y;k=uZ(r|0,s|0,65537,65537)|0;l=y;i=uZ(g|0,t|0,65537,65537)|0;j=y;g=uZ(u|0,v|0,65537,65537)|0;h=y;d=uZ(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Cs(a,b){a=a|0;b=b|0;ws(a,b);ws(a+(b<<3)|0,b);return}function Ds(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Es(a,b){a=a|0;b=b|0;Ds(a,b);Tr(a,0,b);return}function Fs(a,b){a=a|0;b=b|0;Bs(a,b);bs(a,0,b);return}function Gs(a,b){a=a|0;b=b|0;Cs(a,b);a=a+(b<<2)|0;cs(a,0,b);cs(a+8|0,0,b);return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function Js(a,b){a=a|0;b=b|0;Cs(a,b);cs(a,0,b);cs(a+8|0,0,b);return}function Ks(a,b){a=a|0;b=b|0;ws(a,b);cs(a,0,b);cs(a+8|0,0,b);return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function Ms(a,b){a=a|0;b=b|0;Ls(a,b);Ls(a+(b<<3)|0,b);return}function Ns(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Ps(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Qs(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Rs(a,b){a=a|0;b=b|0;ix(a,b);return}function Ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Ts(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Us(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Vs(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Ws(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Xs(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Ys(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}FZ(d|0,0,256)|0;return}function Zs(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}FZ(d|0,0,256)|0;return}function _s(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}FZ(d|0,0,256)|0;l=s;return}function $s(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}FZ(d|0,0,256)|0;l=k;return}function at(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function bt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Ws(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Ws(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ct(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Xs(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function dt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Xs(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Xs(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function et(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function ft(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=uZ(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=uZ(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=uZ(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function gt(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ht(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function it(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function jt(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function kt(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function lt(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function mt(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=uZ(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ot(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;d=a+(d*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function pt(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;d=a+(d*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function qt(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=uZ(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function rt(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;d=a+(d*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function st(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function tt(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=uZ((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=uZ((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=uZ((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=uZ((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=uZ((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=uZ((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=uZ((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=uZ((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function ut(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function vt(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function wt(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function xt(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function yt(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function zt(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function At(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Bt(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=uZ(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Ct(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Dt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Ft(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Gt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ht(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function It(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Jt(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+p>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+o>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Kt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=uZ(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=uZ(k|0,l|0,65537,65537)|0;h=y;d=uZ(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Lt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=uZ(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=uZ(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Mt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Nt(a,b){a=a|0;b=b|0;Mt(a,b);gt(a,0,b);return}function Ot(a,b){a=a|0;b=b|0;Kt(a,b);qt(a,0,b);return}function Pt(a,b){a=a|0;b=b|0;Lt(a,b);a=a+(b<<2)|0;rt(a,0,b);rt(a+8|0,0,b);return}function Qt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=uZ(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=uZ(m|0,n|0,65537,65537)|0;q=y;m=uZ(f|0,o|0,65537,65537)|0;n=y;k=uZ(r|0,s|0,65537,65537)|0;l=y;i=uZ(g|0,t|0,65537,65537)|0;j=y;g=uZ(u|0,v|0,65537,65537)|0;h=y;d=uZ(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Rt(a,b){a=a|0;b=b|0;Lt(a,b);Lt(a+(b<<3)|0,b);return}function St(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=uZ(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=uZ(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Tt(a,b){a=a|0;b=b|0;St(a,b);gt(a,0,b);return}function Ut(a,b){a=a|0;b=b|0;Qt(a,b);qt(a,0,b);return}function Vt(a,b){a=a|0;b=b|0;Rt(a,b);a=a+(b<<2)|0;rt(a,0,b);rt(a+8|0,0,b);return}function Wt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function Xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function Yt(a,b){a=a|0;b=b|0;Rt(a,b);rt(a,0,b);rt(a+8|0,0,b);return}function Zt(a,b){a=a|0;b=b|0;Lt(a,b);rt(a,0,b);rt(a+8|0,0,b);return}function _t(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function $t(a,b){a=a|0;b=b|0;_t(a,b);_t(a+(b<<3)|0,b);return}function au(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function cu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=uZ(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function du(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function eu(a,b){a=a|0;b=b|0;hx(a,b);return}function fu(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function gu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function hu(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=uZ(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function iu(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function ju(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ku(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function lu(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}FZ(d|0,0,256)|0;return}function mu(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}FZ(d|0,0,256)|0;return}function nu(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}FZ(d|0,0,256)|0;l=s;return}function ou(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}FZ(d|0,0,256)|0;l=k;return}function pu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;ju(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}ju(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;ju(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ru(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;ku(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function su(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}ku(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;ku(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function tu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return} -function mL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(s,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(s,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(s,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(s,e[c+6>>1]|0)|0)+32|0)>>>6;b[a+8>>1]=((N(s,e[c+8>>1]|0)|0)+32|0)>>>6;b[a+10>>1]=((N(s,e[c+10>>1]|0)|0)+32|0)>>>6;b[a+12>>1]=((N(s,e[c+12>>1]|0)|0)+32|0)>>>6;b[a+14>>1]=((N(s,e[c+14>>1]|0)|0)+32|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=(q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+2>>1]|0)|0;b[a+2>>1]=(q+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+4>>1]|0)|0;b[a+4>>1]=(q+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+6>>1]|0)|0;b[a+6>>1]=(q+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+8>>1]|0)|0;b[a+8>>1]=(q+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+10>>1]|0)|0;b[a+10>>1]=(q+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+12>>1]|0)|0;b[a+12>>1]=(q+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+14>>1]|0)|0;b[a+14>>1]=(q+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,e[c>>1]|0)|0;u=c+2|0;x=N(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=N(q,e[t>>1]|0)|0;w=c+(h<<1)|0;b[a>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+4|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(d<<1)|0;b[a+2>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+6|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(i<<1)|0;b[a+4>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=c+8|0;x=N(p,e[v>>1]|0)|0;u=N(q,e[u>>1]|0)|0;y=c+(j<<1)|0;b[a+6>>1]=(w+32+x+u+(N(o,e[y>>1]|0)|0)|0)>>>6;v=N(s,e[v>>1]|0)|0;u=c+10|0;x=N(p,e[u>>1]|0)|0;y=N(q,e[y>>1]|0)|0;w=c+(k<<1)|0;b[a+8>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+12|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(l<<1)|0;b[a+10>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+14|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(m<<1)|0;b[a+12>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=N(p,e[c+16>>1]|0)|0;u=N(q,e[u>>1]|0)|0;b[a+14>>1]=(w+32+v+u+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function nL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(s,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(s,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(s,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(s,d[c+3>>0]|0)|0)+32|0)>>>6;a[b+4>>0]=((N(s,d[c+4>>0]|0)|0)+32|0)>>>6;a[b+5>>0]=((N(s,d[c+5>>0]|0)|0)+32|0)>>>6;a[b+6>>0]=((N(s,d[c+6>>0]|0)|0)+32|0)>>>6;a[b+7>>0]=((N(s,d[c+7>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=(r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6;r=N(s,d[c+1>>0]|0)|0;a[b+1>>0]=(r+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6;r=N(s,d[c+2>>0]|0)|0;a[b+2>>0]=(r+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6;r=N(s,d[c+3>>0]|0)|0;a[b+3>>0]=(r+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6;r=N(s,d[c+4>>0]|0)|0;a[b+4>>0]=(r+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6;r=N(s,d[c+5>>0]|0)|0;a[b+5>>0]=(r+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6;r=N(s,d[c+6>>0]|0)|0;a[b+6>>0]=(r+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6;r=N(s,d[c+7>>0]|0)|0;a[b+7>>0]=(r+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,d[c>>0]|0)|0;u=c+1|0;x=N(q,d[u>>0]|0)|0;t=c+e|0;y=N(r,d[t>>0]|0)|0;w=c+i|0;a[b>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+2|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+j|0;a[b+1>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+3|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+k|0;a[b+2>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=c+4|0;x=N(q,d[v>>0]|0)|0;u=N(r,d[u>>0]|0)|0;y=c+l|0;a[b+3>>0]=(w+32+x+u+(N(h,d[y>>0]|0)|0)|0)>>>6;v=N(s,d[v>>0]|0)|0;u=c+5|0;x=N(q,d[u>>0]|0)|0;y=N(r,d[y>>0]|0)|0;w=c+m|0;a[b+4>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+6|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+n|0;a[b+5>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+7|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+o|0;a[b+6>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=N(q,d[c+8>>0]|0)|0;u=N(r,d[u>>0]|0)|0;a[b+7>>0]=(w+32+v+u+(N(h,d[c+p>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=t}}while(0);return}function oL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(o,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(o,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(o,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(o,e[c+6>>1]|0)|0)+32|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=(m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+2>>1]|0)|0;b[a+2>>1]=(m+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+4>>1]|0)|0;b[a+4>>1]=(m+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+6>>1]|0)|0;b[a+6>>1]=(m+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,e[c>>1]|0)|0;q=c+2|0;t=N(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=N(m,e[p>>1]|0)|0;s=c+(h<<1)|0;b[a>>1]=(r+32+t+u+(N(k,e[s>>1]|0)|0)|0)>>>6;q=N(o,e[q>>1]|0)|0;u=c+4|0;t=N(l,e[u>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(d<<1)|0;b[a+2>>1]=(q+32+t+s+(N(k,e[r>>1]|0)|0)|0)>>>6;u=N(o,e[u>>1]|0)|0;s=c+6|0;t=N(l,e[s>>1]|0)|0;r=N(m,e[r>>1]|0)|0;q=c+(i<<1)|0;b[a+4>>1]=(u+32+t+r+(N(k,e[q>>1]|0)|0)|0)>>>6;s=N(o,e[s>>1]|0)|0;r=N(l,e[c+8>>1]|0)|0;q=N(m,e[q>>1]|0)|0;b[a+6>>1]=(s+32+r+q+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function pL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(o,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(o,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(o,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(o,d[c+3>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=(n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6;n=N(o,d[c+1>>0]|0)|0;a[b+1>>0]=(n+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6;n=N(o,d[c+2>>0]|0)|0;a[b+2>>0]=(n+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6;n=N(o,d[c+3>>0]|0)|0;a[b+3>>0]=(n+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,d[c>>0]|0)|0;q=c+1|0;t=N(m,d[q>>0]|0)|0;p=c+e|0;u=N(n,d[p>>0]|0)|0;s=c+i|0;a[b>>0]=(r+32+t+u+(N(h,d[s>>0]|0)|0)|0)>>>6;q=N(o,d[q>>0]|0)|0;u=c+2|0;t=N(m,d[u>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+j|0;a[b+1>>0]=(q+32+t+s+(N(h,d[r>>0]|0)|0)|0)>>>6;u=N(o,d[u>>0]|0)|0;s=c+3|0;t=N(m,d[s>>0]|0)|0;r=N(n,d[r>>0]|0)|0;q=c+k|0;a[b+2>>0]=(u+32+t+r+(N(h,d[q>>0]|0)|0)|0)>>>6;s=N(o,d[s>>0]|0)|0;r=N(m,d[c+4>>0]|0)|0;q=N(n,d[q>>0]|0)|0;a[b+3>>0]=(s+32+r+q+(N(h,d[c+l>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=p}}while(0);return}function qL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(m,e[c+2>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;k=N(m,e[c+2>>1]|0)|0;b[a+2>>1]=(k+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;q=c+2|0;r=N(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=N(k,e[n>>1]|0)|0;o=c+(h<<1)|0;b[a>>1]=(s+32+r+p+(N(i,e[o>>1]|0)|0)|0)>>>6;q=N(m,e[q>>1]|0)|0;p=N(j,e[c+4>>1]|0)|0;o=N(k,e[o>>1]|0)|0;b[a+2>>1]=(q+32+p+o+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function rL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(m,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(m,d[c+1>>0]|0)|0)+32|0)>>>6;b=b+e|0;c=c+e|0;g=g+1|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=(l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6;l=N(m,d[c+1>>0]|0)|0;a[b+1>>0]=(l+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;q=c+1|0;r=N(k,d[q>>0]|0)|0;n=c+e|0;p=N(l,d[n>>0]|0)|0;o=c+i|0;a[b>>0]=(s+32+r+p+(N(h,d[o>>0]|0)|0)|0)>>>6;q=N(m,d[q>>0]|0)|0;p=N(k,d[c+2>>0]|0)|0;o=N(l,d[o>>0]|0)|0;a[b+1>>0]=(q+32+p+o+(N(h,d[c+j>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=n}}while(0);return}function sL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=(p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function tL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(l,d[c>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=(k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=(p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=m}}while(0);return}function uL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+2|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+4|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+6|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+8|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+10|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+12|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+14|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;p=N(s,e[c+2>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;p=N(s,e[c+4>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;p=N(s,e[c+6>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+8|0;p=N(s,e[c+8>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+10|0;p=N(s,e[c+10>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+12|0;p=N(s,e[c+12>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+14|0;p=N(s,e[c+14>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,e[c>>1]|0)|0;v=c+2|0;z=N(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=N(q,e[t>>1]|0)|0;x=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((y+32+z+u+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+2|0;v=N(s,e[v>>1]|0)|0;z=c+4|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(d<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+4|0;z=N(s,e[z>>1]|0)|0;x=c+6|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(i<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+6|0;x=N(s,e[x>>1]|0)|0;w=c+8|0;y=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;z=c+(j<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+y+v+(N(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+8|0;w=N(s,e[w>>1]|0)|0;v=c+10|0;y=N(p,e[v>>1]|0)|0;z=N(q,e[z>>1]|0)|0;x=c+(k<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((w+32+y+z+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+10|0;v=N(s,e[v>>1]|0)|0;z=c+12|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(l<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+12|0;z=N(s,e[z>>1]|0)|0;x=c+14|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(m<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+14|0;x=N(s,e[x>>1]|0)|0;w=N(p,e[c+16>>1]|0)|0;v=N(q,e[v>>1]|0)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+w+v+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function vL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+1|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+2|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+3|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+4|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+5|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+6|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+7|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+1|0;q=N(s,d[c+1>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+2|0;q=N(s,d[c+2>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+3|0;q=N(s,d[c+3>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+4|0;q=N(s,d[c+4>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+5|0;q=N(s,d[c+5>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+6|0;q=N(s,d[c+6>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+7|0;q=N(s,d[c+7>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,d[c>>0]|0)|0;v=c+1|0;z=N(q,d[v>>0]|0)|0;t=c+e|0;u=N(r,d[t>>0]|0)|0;x=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((y+32+z+u+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+1|0;v=N(s,d[v>>0]|0)|0;z=c+2|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+j|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+2|0;z=N(s,d[z>>0]|0)|0;x=c+3|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+k|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+3|0;x=N(s,d[x>>0]|0)|0;w=c+4|0;y=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;z=c+l|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+y+v+(N(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+4|0;w=N(s,d[w>>0]|0)|0;v=c+5|0;y=N(q,d[v>>0]|0)|0;z=N(r,d[z>>0]|0)|0;x=c+m|0;a[u>>0]=((d[u>>0]|0)+1+((w+32+y+z+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+5|0;v=N(s,d[v>>0]|0)|0;z=c+6|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+n|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+6|0;z=N(s,d[z>>0]|0)|0;x=c+7|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+o|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+7|0;x=N(s,d[x>>0]|0)|0;w=N(q,d[c+8>>0]|0)|0;v=N(r,d[v>>0]|0)|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+w+v+(N(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=t}}while(0);return}function wL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+2|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+4|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+6|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+2|0;l=N(o,e[c+2>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+4|0;l=N(o,e[c+4>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+6|0;l=N(o,e[c+6>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,e[c>>1]|0)|0;r=c+2|0;v=N(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=N(m,e[p>>1]|0)|0;t=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((u+32+v+q+(N(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;r=N(o,e[r>>1]|0)|0;v=c+4|0;u=N(l,e[v>>1]|0)|0;t=N(m,e[t>>1]|0)|0;s=c+(d<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((r+32+u+t+(N(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;v=N(o,e[v>>1]|0)|0;t=c+6|0;u=N(l,e[t>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(i<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((v+32+u+s+(N(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;t=N(o,e[t>>1]|0)|0;s=N(l,e[c+8>>1]|0)|0;r=N(m,e[r>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((t+32+s+r+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function xL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+1|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+2|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+3|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+1|0;m=N(o,d[c+1>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+2|0;m=N(o,d[c+2>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+3|0;m=N(o,d[c+3>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,d[c>>0]|0)|0;r=c+1|0;v=N(m,d[r>>0]|0)|0;p=c+e|0;q=N(n,d[p>>0]|0)|0;t=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((u+32+v+q+(N(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+1|0;r=N(o,d[r>>0]|0)|0;v=c+2|0;u=N(m,d[v>>0]|0)|0;t=N(n,d[t>>0]|0)|0;s=c+j|0;a[q>>0]=((d[q>>0]|0)+1+((r+32+u+t+(N(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+2|0;v=N(o,d[v>>0]|0)|0;t=c+3|0;u=N(m,d[t>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+k|0;a[q>>0]=((d[q>>0]|0)+1+((v+32+u+s+(N(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+3|0;t=N(o,d[t>>0]|0)|0;s=N(m,d[c+4>>0]|0)|0;r=N(n,d[r>>0]|0)|0;a[q>>0]=((d[q>>0]|0)+1+((t+32+s+r+(N(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=p}}while(0);return}function yL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;k=a+2|0;b[k>>1]=((e[k>>1]|0)+1+(((N(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;k=a+2|0;j=N(m,e[c+2>>1]|0)|0;b[k>>1]=((e[k>>1]|0)+1+((j+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;r=c+2|0;q=N(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=N(k,e[n>>1]|0)|0;p=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((s+32+q+o+(N(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1;o=a+2|0;r=N(m,e[r>>1]|0)|0;q=N(j,e[c+4>>1]|0)|0;p=N(k,e[p>>1]|0)|0;b[o>>1]=((e[o>>1]|0)+1+((r+32+q+p+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function zL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;l=b+1|0;a[l>>0]=((d[l>>0]|0)+1+(((N(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;l=b+1|0;k=N(m,d[c+1>>0]|0)|0;a[l>>0]=((d[l>>0]|0)+1+((k+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;r=c+1|0;q=N(k,d[r>>0]|0)|0;n=c+e|0;o=N(l,d[n>>0]|0)|0;p=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((s+32+q+o+(N(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1;o=b+1|0;r=N(m,d[r>>0]|0)|0;q=N(k,d[c+2>>0]|0)|0;p=N(l,d[p>>0]|0)|0;a[o>>0]=((d[o>>0]|0)+1+((r+32+q+p+(N(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=n}}while(0);return}function AL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function BL(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=m}}while(0);return}function CL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function DL(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function EL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}FZ(d|0,0,256)|0;return}function FL(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function GL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:0-m>>31&511;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:0-o>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function HL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:0-r>>31&511;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:0-t>>31&511;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:0-v>>31&511;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:0-x>>31&511;g=g+1|0}FZ(d|0,0,256)|0;return}function IL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function JL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function KL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else IL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;GL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function LL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else JL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;HL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function ML(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function NL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[215911+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function OL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[215911+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)IL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else GL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function PL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[215907+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function QL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function RL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[215905+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function SL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function TL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function UL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function VL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function WL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function XL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function YL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ZL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function _L(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function $L(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function aM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function bM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function cM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function dM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function eM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:0-u>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function fM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function gM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function hM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<1;q=g<<1;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;s=l-s|0;b[g>>1]=s>>>0<512?s:0-s>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function iM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function jM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function kM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function lM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function mM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function nM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function oM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:0-m>>31&1023;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:0-o>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function pM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:0-r>>31&1023;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:0-t>>31&1023;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:0-v>>31&1023;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:0-x>>31&1023;g=g+1|0}FZ(d|0,0,256)|0;return}function qM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function rM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function sM(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else qM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;oM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function tM(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else rM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;pM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function uM(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)qM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else oM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function vM(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)qM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else oM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[215911+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)qM((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else oM((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function wM(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[215911+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)qM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else oM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function xM(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[215907+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function yM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function zM(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[215905+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function AM(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function BM(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function CM(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function DM(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function EM(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function FM(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function GM(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function HM(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function IM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function JM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function KM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function LM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function MM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function NM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function OM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:0-u>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function PM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function QM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function RM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<2;q=g<<2;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;s=l-s|0;b[g>>1]=s>>>0<1024?s:0-s>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function SM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function TM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function UM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function VM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function WM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function XM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function YM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:0-m>>31&4095;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:0-o>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function ZM(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:0-r>>31&4095;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:0-t>>31&4095;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:0-v>>31&4095;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:0-x>>31&4095;g=g+1|0}FZ(d|0,0,256)|0;return}function _M(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function $M(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function aN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else _M(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;YM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function bN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else $M(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;ZM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function cN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)_M((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else YM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function dN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)_M((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else YM((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[215911+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)_M((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else YM((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function eN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[215911+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)_M(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else YM(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function fN(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[215907+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function gN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function hN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[215905+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function iN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function jN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function kN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function lN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function mN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function nN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function oN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function pN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function qN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function rN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function sN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function tN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function uN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function vN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function wN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:0-u>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function xN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function yN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function zN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<4;q=g<<4;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;s=l-s|0;b[g>>1]=s>>>0<4096?s:0-s>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function AN(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function BN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function CN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function DN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function EN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function FN(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function GN(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:0-m>>31&16383;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:0-o>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function HN(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:0-r>>31&16383;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:0-t>>31&16383;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:0-v>>31&16383;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:0-x>>31&16383;g=g+1|0}FZ(d|0,0,256)|0;return}function IN(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function JN(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function KN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else IN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;GN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function LN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[215911+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else JN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;HN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function MN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IN((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GN((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function NN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[215911+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IN((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GN((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[215911+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)IN((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else GN((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function ON(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[215911+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)IN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else GN(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function PN(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[215907+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function QN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function RN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[215905+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function SN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function TN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function UN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function VN(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function WN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function XN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function YN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ZN(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function _N(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function $N(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function aO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function bO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function cO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function dO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function eO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:0-u>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function fO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function gO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function hO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<6;q=g<<6;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;s=l-s|0;b[g>>1]=s>>>0<16384?s:0-s>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function iO(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function jO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function kO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function lO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function mO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function nO(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function oO(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function pO(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}l=g<<1;m=g*3|0;n=g<<2;i=g*5|0;j=g*6|0;k=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+l)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+m)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+n)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+i)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+j)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+k)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function qO(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;else e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function rO(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;else e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function sO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[215911+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else qO(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;oO(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function tO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)>=16)break;switch(a[i+(d[215911+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else rO(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;pO(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return} -function Km(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+208|0;if((l|0)>=(m|0))W(208);ia=qa+128|0;ba=qa+120|0;ea=qa+104|0;da=qa+88|0;t=qa+80|0;s=qa+72|0;r=qa+64|0;u=qa+56|0;p=qa+40|0;q=qa+24|0;o=qa+16|0;k=qa;ka=qa+192|0;V=qa+176|0;X=qa+144|0;na=f+28212|0;Y=c[(c[na>>2]|0)+64>>2]|0;ja=f+28216|0;ca=((c[(c[ja>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ma=c[f+25664>>2]|0;ga=g+21788|0;ha=g+21792|0;$=f+27016|0;pa=(N(c[$>>2]|0,c[ha>>2]|0)|0)+(c[ga>>2]|0)|0;oa=g+21796|0;c[oa>>2]=pa;n=g+840|0;if((c[n>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;if((h|0)==-1){h=Lm(g+4|0)|0;c[j>>2]=h}i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26376>>2]|0?(c[ha>>2]&1|i|0)==0:0){pa=Mm(g+4|0)|0;c[g+21828>>2]=pa;c[g+21832>>2]=pa}Nm(f,g);h=0}else fa=9}else fa=9;a:do if((fa|0)==9){_=f+26376|0;if(c[_>>2]|0?(c[ha>>2]&1|0)==0:0){la=Mm(g+4|0)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}c[g+21648>>2]=0;la=g+4|0;i=Om(la)|0;c[ka>>2]=i;b:do switch(c[n>>2]|0){case 3:if(i>>>0<23){aa=a[172448+(i<<2)+2>>0]|0;h=e[172448+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-23|0;c[ka>>2]=h;fa=21;break b}case 2:if(i>>>0<5){aa=a[172412+(i<<2)+2>>0]|0;h=e[172412+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-5|0;c[ka>>2]=h;fa=21;break b}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ka>>2]=h;fa=21}else{h=i;fa=21}}}while(0);do if((fa|0)==21)if(h>>>0>25){f=c[f+4>>2]|0;oa=(gl(c[g+836>>2]|0)|0)<<24>>24;pa=c[ga>>2]|0;g=c[ha>>2]|0;c[k>>2]=h;c[k+4>>2]=oa;c[k+8>>2]=pa;c[k+12>>2]=g;gi(f,16,204412,k);h=-1;break a}else{aa=d[172308+(h<<2)+3>>0]|0;c[g+21660>>2]=d[172308+(h<<2)+2>>0];h=e[172308+(h<<2)>>1]|0;c[ka>>2]=h;i=0;break}while(0);Z=g+21828|0;if(c[Z>>2]|0){h=h|128;c[ka>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[ja>>2]|0;h=N(c[h+1184>>2]|0,e[172592+(c[h+12>>2]<<1)>>1]|0)|0;c[g+27780>>2]=Pm(la)|0;if((Qm(la)|0)<(h|0)){gi(c[f+4>>2]|0,16,204455,o);h=-1094995529;break}else{Rm(la,h);a[(c[f+24340>>2]|0)+pa>>0]=0;k=(c[f+25972>>2]|0)+(pa*48|0)|0;n=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(n|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[ka>>2];h=0;break}}Sm(f,g,h);Tm(f,g,h);c:do if(!(h&7)){if(i<<24>>24==4){d:do if((c[n>>2]|0)==3){h=0;while(1){if((h|0)>=4)break;i=Xm(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>12){fa=52;break}c[V+(h<<2)>>2]=d[172540+(k<<2)+2>>0];b[j>>1]=b[172540+((i&65535)<<2)>>1]|0;h=h+1|0}if((fa|0)==52){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[q>>2]=k;c[q+4>>2]=pa;c[q+8>>2]=f;gi(g,16,204496,q);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))fa=56;else{Ym(f,g,ka);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;fa=56}}else{h=0;while(1){if((h|0)>=4){fa=56;break d}i=Xm(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>3)break;c[V+(h<<2)>>2]=d[172432+(k<<2)+2>>0];b[j>>1]=b[172432+((i&65535)<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[p>>2]=k;c[p+4>>2]=pa;c[p+8>>2]=f;gi(g,16,204536,p)}while(0);do if((fa|0)==56){U=g+23412|0;o=g+21832|0;n=0;e:while(1){h=c[U>>2]|0;if(n>>>0>=h>>>0)break;if(!(c[ka>>2]&512))k=c[g+23404+(n<<2)>>2]<>2];else k=1;j=4096<<(n<<1);i=0;while(1){if((i|0)>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){f:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break f}case 2:{h=(Mm(la)|0)^1;break f}default:{h=Xm(la)|0;if(h>>>0>>0)break f;else{fa=73;break e}}}while(0);c[X+(n<<4)+(i<<2)>>2]=h}i=i+1|0}n=n+1|0}if((fa|0)==73){g=c[f+4>>2]|0;c[u>>2]=h;gi(g,16,204576,u);break}if(!Y)n=0;else{Y=(c[(c[ja>>2]|0)+72>>2]|0)==0;n=g+28552|0;n=(((Y?24117616:7340144)&c[n>>2]|0)==0?((Y?24117616:7340144)&c[n+4>>2]|0)==0:0)&1}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;while(1){if(O>>>0>=h>>>0)break;K=O<<1;H=4096<>1]&256)){Y=c[X+(O<<4)+(G<<2)>>2]&255;M=G<<2;i=d[215911+M>>0]|0;a[i+9+(g+28272+(O*40|0))>>0]=Y;a[i+8+(g+28272+(O*40|0))>>0]=Y;a[i+1+(g+28272+(O*40|0))>>0]=Y;a[g+28272+(O*40|0)+i>>0]=Y;h=e[h>>1]|0;if(!(H&h)){c[g+27952+(O*160|0)+(i<<2)+36>>2]=0;c[g+27952+(O*160|0)+(i<<2)+32>>2]=0;c[g+27952+(O*160|0)+(i<<2)+4>>2]=0;c[g+27952+(O*160|0)+(i<<2)>>2]=0;break}C=h&24|0?2:1;D=c[V+(G<<2)>>2]|0;E=(h&8|0)==0;F=(h&16|0)==0;z=(h&32|0)==0;y=0;while(1){if((y|0)>=(D|0))break g;h=a[215911+((N(y,C)|0)+M)>>0]|0;A=h&255;B=g+27952+(O*160|0)+(A<<2)|0;q=a[g+28272+(O*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(O*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;s=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(w<<2)|0;i=w+C|0;j=a[g+28272+(O*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[_>>2]|0)!=0))){if((a[I>>0]|0)==-2){fa=95;break}p=c[(c[P>>2]|0)+48>>2]|0;c[J>>2]=0;o=(c[Q>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=95;break}Y=c[$>>2]|0;h=Y+(c[R>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,Y)|0)+h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=b[Y+(o<<2)+2>>1]<<1;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!o){fa=95;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i&3)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=(b[Y+(o<<2)+2>>1]|0)/2|0;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else fa=95;while(0);do if((fa|0)==95){fa=0;if(j){k=A+-9|0;o=g+27952+(O*160|0)+(k<<2)|0;k=a[g+28272+(O*40|0)+k>>0]|0;break}else{o=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{i=Zm(i,b[v>>1]|0,b[o>>1]|0)|0;h=Zm(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(i){i=b[s>>1]|0;h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){i=b[v>>1]|0;h=b[g+27952+(O*160|0)+(w<<2)+2>>1]|0;break}else{i=b[o>>1]|0;h=b[o+2>>1]|0;break}}else{i=Zm(b[s>>1]|0,b[v>>1]|0,b[o>>1]|0)|0;h=Zm(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0}while(0);k=(_m(la)|0)+i|0;i=(_m(la)|0)+h|0;do if(E){if(!F){b[B+4>>1]=k;h=i&65535;j=1;fa=115;break}if(z)break;b[B+32>>1]=k;h=i&65535;j=8;fa=115}else{h=k&65535;b[B+36>>1]=h;b[B+32>>1]=h;b[B+4>>1]=h;h=i&65535;b[B+38>>1]=h;b[B+34>>1]=h;j=1;fa=115}while(0);if((fa|0)==115){fa=0;b[B+(j<<2)+2>>1]=h}b[B>>1]=k;b[g+27952+(O*160|0)+(A<<2)+2>>1]=i;y=y+1|0}}else{Y=d[215911+(G<<2)>>0]|0;a[g+28272+(O*40|0)+Y>>0]=a[Y+1+(g+28272+(O*40|0))>>0]|0}while(0);G=G+1|0}O=O+1|0;h=c[U>>2]|0}break c}while(0);h=-1;break a}if(h&256|0){Ym(f,g,ka);n=c[(c[ja>>2]|0)+72>>2]&Y;break}if(h&8|0){u=g+23412|0;v=c[ka>>2]|0;k=g+21832|0;j=0;h:while(1){h=c[u>>2]|0;if(j>>>0>=h>>>0){t=0;break}if(v&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];switch(i|0){case 1:{h=0;break}case 2:{h=(Mm(la)|0)^1;break}default:{h=Xm(la)|0;if(h>>>0>=i>>>0){fa=132;break h}}}$=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=$;c[g+28272+(j*40|0)+20>>2]=$;c[g+28272+(j*40|0)+28>>2]=$;c[g+28272+(j*40|0)+36>>2]=$}j=j+1|0}if((fa|0)==132){g=c[f+4>>2]|0;c[r>>2]=h;gi(g,16,204576,r);h=-1;break a}while(1){if(t>>>0>=h>>>0){n=Y;break c}if(v&4096<<(t<<1)){i=a[g+28272+(t*40|0)+12>>0]|0;p=a[g+28272+(t*40|0)+4>>0]|0;q=a[g+28272+(t*40|0)+11>>0]|0;o=g+27952+(t*160|0)+44|0;r=g+27952+(t*160|0)+16|0;h=a[g+28272+(t*40|0)+8>>0]|0;if(h<<24>>24==-2){s=g+27952+(t*160|0)+12|0;n=a[g+28272+(t*40|0)+3>>0]|0}else{s=g+27952+(t*160|0)+32|0;n=h<<24>>24}j=p<<24>>24==i<<24>>24;k=q<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[o>>1]|0;if(q<<24>>24!=-2&(p<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(t*160|0)+46>>1]|0;break}else{i=Zm(i,b[r>>1]|0,b[s>>1]|0)|0;h=Zm(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0;break}}if(k){i=b[o>>1]|0;h=b[g+27952+(t*160|0)+46>>1]|0;break}if(j){i=b[r>>1]|0;h=b[g+27952+(t*160|0)+18>>1]|0;break}else{i=b[s>>1]|0;h=b[s+2>>1]|0;break}}else{i=Zm(b[o>>1]|0,b[r>>1]|0,b[s>>1]|0)|0;h=Zm(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0}while(0);$=(_m(la)|0)+i|0;h=(_m(la)|0)+h<<16|$&65535;c[g+27952+(t*160|0)+48>>2]=h;c[g+27952+(t*160|0)+52>>2]=h;c[g+27952+(t*160|0)+56>>2]=h;c[g+27952+(t*160|0)+60>>2]=h;c[g+27952+(t*160|0)+80>>2]=h;c[g+27952+(t*160|0)+84>>2]=h;c[g+27952+(t*160|0)+88>>2]=h;c[g+27952+(t*160|0)+92>>2]=h;c[g+27952+(t*160|0)+112>>2]=h;c[g+27952+(t*160|0)+116>>2]=h;c[g+27952+(t*160|0)+120>>2]=h;c[g+27952+(t*160|0)+124>>2]=h;c[g+27952+(t*160|0)+144>>2]=h;c[g+27952+(t*160|0)+148>>2]=h;c[g+27952+(t*160|0)+152>>2]=h;c[g+27952+(t*160|0)+156>>2]=h;h=c[u>>2]|0}t=t+1|0}}S=g+23412|0;T=c[ka>>2]|0;p=g+21832|0;if(!(h&16))o=0;else{o=0;i:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;j:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break j}case 2:{h=(Mm(la)|0)^1;break j}default:{h=Xm(la)|0;if(h>>>0>>0)break j;else{fa=161;break i}}}}while(0);X=(j<<4|12)+(g+28272+(o*40|0))|0;V=N(h,16843009)|0;c[X>>2]=V;c[X+8>>2]=V;j=j+1|0}o=o+1|0}if((fa|0)==161){g=c[f+4>>2]|0;c[s>>2]=h;gi(g,16,204576,s);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+4|0;C=g+27952+(L*160|0)+16|0;D=g+27952+(L*160|0)+18|0;E=g+28272+(L*40|0)+11|0;F=g+27952+(L*160|0)+40|0;G=12288<>0]|0;s=r<<24>>24;do if(!z){if((a[B>>0]|0)!=r<<24>>24){fa=174;break}j=b[C>>1]|0;i=b[D>>1]|0}else{if((a[I>>0]|0)!=r<<24>>24){fa=174;break}j=b[J>>1]|0;i=b[K>>1]|0}while(0);do if((fa|0)==174){fa=0;i=a[215911+i>>0]|0;p=i&255;x=p+-8|0;u=a[g+28272+(L*40|0)+x>>0]|0;y=p+-1|0;v=a[g+28272+(L*40|0)+y>>0]|0;t=g+27952+(L*160|0)+(y<<2)|0;w=g+27952+(L*160|0)+(x<<2)|0;j=p+-4|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[E>>0]|0)==-2){fa=183;break}q=c[(c[M>>2]|0)+48>>2]|0;c[F>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=183;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=b[X+(o<<2)+2>>1]<<1;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=183;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=183;while(0);do if((fa|0)==183){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=u<<24>>24==r<<24>>24;j=v<<24>>24==r<<24>>24;i=(j&1)+(k&1)+((n|0)==(s|0)&1)|0;if(i>>>0>1){j=Zm(b[t>>1]|0,b[w>>1]|0,b[o>>1]|0)|0;i=Zm(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[t>>1]|0;if(v<<24>>24!=-2&(u<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}else{j=Zm(j,b[w>>1]|0,b[o>>1]|0)|0;i=Zm(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[t>>1]|0;i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}if(k){j=b[w>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(_m(la)|0)+j|0;i=(_m(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+8>>2]=i;c[g+27952+(L*160|0)+(h<<2)+12>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+40>>2]=i;c[g+27952+(L*160|0)+(h<<2)+44>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}k:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;l:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break l}case 2:{h=(Mm(la)|0)^1;break l}default:{h=Xm(la)|0;if(h>>>0>>0)break l;else{fa=208;break k}}}}while(0);X=(j<<1)+12+(g+28272+(o*40|0))|0;V=h*257&65535;b[X>>1]=V;b[X+8>>1]=V;b[X+16>>1]=V;b[X+24>>1]=V;j=j+1|0}o=o+1|0}if((fa|0)==208){g=c[f+4>>2]|0;c[t>>2]=h;gi(g,16,204576,t);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+11|0;C=g+27952+(L*160|0)+44|0;D=g+27952+(L*160|0)+46|0;E=g+27952+(L*160|0)+40|0;F=12288<>0]|0;y=v<<24>>24;do if(!z)if((a[B>>0]|0)==v<<24>>24){j=b[C>>1]|0;i=b[D>>1]|0}else fa=223;else{i=a[H>>0]|0;if(i<<24>>24==-2){k=I;i=a[J>>0]|0}else k=K;if(i<<24>>24!=v<<24>>24){fa=223;break}j=b[k>>1]|0;i=b[k+2>>1]|0}while(0);do if((fa|0)==223){fa=0;i=a[215911+j>>0]|0;p=i&255;w=p+-8|0;s=a[g+28272+(L*40|0)+w>>0]|0;x=p+-1|0;t=a[g+28272+(L*40|0)+x>>0]|0;r=g+27952+(L*160|0)+(x<<2)|0;u=g+27952+(L*160|0)+(w<<2)|0;j=p+-6|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[B>>0]|0)==-2){fa=232;break}q=c[(c[M>>2]|0)+48>>2]|0;c[E>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=232;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=b[X+(o<<2)+2>>1]<<1;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=232;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=232;while(0);do if((fa|0)==232){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=s<<24>>24==v<<24>>24;j=t<<24>>24==v<<24>>24;i=(j&1)+(k&1)+((n|0)==(y|0)&1)|0;if(i>>>0>1){j=Zm(b[r>>1]|0,b[u>>1]|0,b[o>>1]|0)|0;i=Zm(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[r>>1]|0;if(t<<24>>24!=-2&(s<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=Zm(j,b[u>>1]|0,b[o>>1]|0)|0;i=Zm(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[r>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}if(k){j=b[u>>1]|0;i=b[g+27952+(L*160|0)+(w<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(_m(la)|0)+j|0;i=(_m(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+64>>2]=i;c[g+27952+(L*160|0)+(h<<2)+68>>2]=i;c[g+27952+(L*160|0)+(h<<2)+96>>2]=i;c[g+27952+(L*160|0)+(h<<2)+100>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}else{if(!(h&1)){_=g+21660|0;$=Wm(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[_>>2]|0,0)|0;c[_>>2]=$;if(($|0)<0){h=-1;break a}}else{if((Y|0)!=0?(Mm(la)|0)!=0:0){c[ka>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if((i|0)>=16)break;n=d[215911+i>>0]|0;h=a[n+-1+(g+21664)>>0]|0;$=a[n+-8+(g+21664)>>0]|0;h=(h|0)>($|0)?$:h;h=(h|0)<0?2:h;if(!(Mm(la)|0)){$=Um(la,3)|0;h=$+(($|0)>=(h|0)&1)|0}if(k){$=g+21664+n|0;_=h*257&65535;b[$>>1]=_;b[$+8>>1]=_}else a[g+21664+n>>0]=h;i=i+j|0}$=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[$>>2]=c[g+21700>>2];a[$+4>>0]=a[g+21695>>0]|0;a[$+5>>0]=a[g+21687>>0]|0;a[$+6>>0]=a[g+21679>>0]|0;if((Vm(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<=-1){h=-1;break a}}if(ca){_=c[f+4>>2]|0;$=c[g+21760>>2]|0;h=c[g+21768>>2]|0;h=Wm(_,$,h,Xm(la)|0,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h;n=Y}while(0);h=c[ka>>2]|0;if(h&120|0){i=c[f+26368>>2]|0;j=(N(i<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;k=c[oa>>2]<<2;if(!(h&12288)){$=(c[f+24384>>2]|0)+k|0;b[$>>1]=-1;b[$+2>>1]=-1}else{$=(c[f+24352>>2]|0)+(j<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28008|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28040|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28064|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28096|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24384>>2]|0)+k|0;a[$>>0]=a[g+28284>>0]|0;a[$+1>>0]=a[g+28286>>0]|0;a[$+2>>0]=a[g+28300>>0]|0;a[$+3>>0]=a[g+28302>>0]|0}if(h&49152|0){$=(c[f+24356>>2]|0)+(j<<2)|0;Z=g+28160|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28168|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28192|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28200|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28224|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28232|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28256|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24388>>2]|0)+k|0;a[$>>0]=a[g+28324>>0]|0;a[$+1>>0]=a[g+28326>>0]|0;a[$+2>>0]=a[g+28340>>0]|0;a[$+3>>0]=a[g+28342>>0]|0}}h=c[ka>>2]|0;if(h&2)if(aa>>>0>15&(ca^1)){gi(c[f+4>>2]|0,16,205234,ba);h=-1094995529;break}else y=aa;else{i=Om(la)|0;do if(ca){if(i>>>0>47){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[da>>2]=i;c[da+4>>2]=f;c[da+8>>2]=g;gi(h,16,204593,da);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=193267+i|0;break}else{i=193219+i|0;break}}else{if(i>>>0>15){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[ea>>2]=i;c[ea+4>>2]=f;c[ea+8>>2]=g;gi(h,16,204593,ea);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=204638+i|0;break}else{i=204622+i|0;break}}while(0);y=d[i>>0]|0}w=(y&15|0)==0;if((h&7|0)==0&(((n|0)==0|w)^1)){h=(Mm(la)|0)<<24;h=c[ka>>2]|h;c[ka>>2]=h}t=f+26392|0;b[(c[t>>2]|0)+(pa<<1)>>1]=y;c[g+21856>>2]=y&65535;c[(c[f+24364>>2]|0)+(pa<<2)>>2]=h;if((y|0)==0?(c[ka>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else fa=274;m:do if((fa|0)==274){i=(c[(c[ja>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;n=_m(la)|0;h=g+848|0;j=(c[h>>2]|0)+n|0;c[h>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[h>>2]=i;if(i>>>0>k>>>0){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[ia>>2]=n;c[ia+4>>2]=pa;c[ia+8>>2]=f;gi(g,16,204654,ia);c[h>>2]=k;h=-1;break a}else j=i}i=c[na>>2]|0;s=g+852|0;c[s>>2]=d[i+548+j>>0];u=g+856|0;c[u>>2]=d[i+636+j>>0];i=c[ka>>2]|0;ia=(i&128|0)==0;v=(j|0)!=0;x=ia?(v?f+26428|0:f+26716|0):v?f+26572|0:f+26860|0;v=ia?(v?f+26508|0:f+26796|0):v?f+26652|0:f+26940|0;n:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;i=0;p=0;while(1){if((p|0)>=4)break;o:do if(1<=4)break o;k=n+o|0;if(($m(f,g,la,g+28560+(k<<4<>2]|0)+173788+(r<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break a}n=n+1|0;i=d[(d[215911+k>>0]|0)+(g+27824)>>0]<=4)break;if(($m(f,g,la,n,k+o|0,v+(k<<4)|0,(c[(c[na>>2]|0)+173812+(r<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break a}}ha=(d[215911+o>>0]|0)+(g+27824)|0;ia=(d[ha+8>>0]|0)+(d[ha+1>>0]|0)+(d[ha+9>>0]|0)+(d[ha>>0]|0)&255;a[ha>>0]=ia;i=(ia<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ia+9>>0]=0;a[ia+8>>0]=0;a[ia+1>>0]=0;a[ia>>0]=0}while(0);p=p+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31632|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if(($m(f,g,la,i,48,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}n=x+1|0;k=0;while(1){if((k|0)>=4){i=15;break n}o=k<<2;i=0;while(1){if((i|0)>=4)break;ia=i+o|0;if(($m(f,g,la,g+28560+(ia<<4<>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}k=k+1|0}}while(0);t=(c[t>>2]|0)+(pa<<1)|0;b[t>>1]=i<<12|e[t>>1];t=c[(c[ja>>2]|0)+12>>2]|0;if((t|0)!=3){p:do if(y&48|0){j=t<<2;i=0;while(1){if((i|0)>=2)break p;if(($m(f,g,la,g+28560+((i<<8)+256<>2]|0)+12>>2]|0)==2?193319:193315,0,j)|0)<0){h=-1;break a}else i=i+1|0}}while(0);if(!(y&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}p=x+1|0;q=16<=2)break m;r=i+1|0;s=(c[(c[na>>2]|0)+173788+((c[ka>>2]&7|0?0:3)+r<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;n=(i<<4)+16|0;i=g+28560+(n<<4<=(t|0)){i=r;continue q}o=(j<<3)+n|0;k=0;while(1){if((k|0)>=4)break;if(($m(f,g,la,i,o+k|0,p,s,15)|0)<=-1){h=-1;break a}k=k+1|0;i=i+(q<<1)|0}j=j+1|0}}}i=c[ka>>2]|0;r=c[s>>2]|0;r:do if(!(i&2)){q=i&7|0?1:4;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;s:do if(1<=4)break s;j=n+k|0;if(($m(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[215911+j>>0]|0)+(g+27824)>>0]<=4)break;if(($m(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ia=(d[215911+n>>0]|0)+(g+27824)|0;ja=(d[ia+8>>0]|0)+(d[ia+1>>0]|0)+(d[ia+9>>0]|0)+(d[ia>>0]|0)&255;a[ia>>0]=ja;i=(ja<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ja+9>>0]=0;a[ja+8>>0]=0;a[ja+1>>0]=0;a[ja>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31696|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if(($m(f,g,la,i,49,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break r;n=(j<<2)+16|0;i=0;while(1){if((i|0)>=4)break;ja=n+i|0;if(($m(f,g,la,g+28560+(ja<<4<>2]|0)+173792>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}while(0);i=c[ka>>2]|0;r=c[u>>2]|0;if(i&2|0){i=g+31760|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if(($m(f,g,la,i,50,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break m;n=(j<<2)+32|0;i=0;while(1){if((i|0)>=4)break;ka=n+i|0;if(($m(f,g,la,g+28560+(ka<<4<>2]|0)+173796>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}q=i&7|0?2:5;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;t:do if(1<=4)break t;j=n+k|0;if(($m(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[215911+j>>0]|0)+(g+27824)>>0]<=4)break;if(($m(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ja=(d[215911+n>>0]|0)+(g+27824)|0;ka=(d[ja+8>>0]|0)+(d[ja+1>>0]|0)+(d[ja+9>>0]|0)+(d[ja>>0]|0)&255;a[ja>>0]=ka;i=(ka<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ka+9>>0]=0;a[ka+8>>0]=0;a[ka+1>>0]=0;a[ka>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}while(0);a[(c[f+24340>>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function Lm(a){a=a|0;var b=0,c=0,e=0;e=kn(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Rm(a,b);return (ln(a,b+1|0)|0)+-1|0}function Mm(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function Nm(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;if((l|0)>=(m|0))W(16);x=B+4|0;z=B;y=f+21796|0;A=c[y>>2]|0;c[z>>2]=0;g=(c[e+25972>>2]|0)+(A*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));w=f+21828|0;if(!(c[w>>2]|0))g=0;else{c[z>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[z>>2]=g;if(c[f+21844>>2]|0){Sm(e,f,g);Tm(e,f,g)}Ym(e,f,z);j=c[z>>2]|2048;c[z>>2]=j;g=e+26368|0}else{j=g|14344;c[z>>2]=j;Sm(e,f,j);q=c[e+24384>>2]|0;r=c[e+24352>>2]|0;g=e+26368|0;s=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)h=0;else{v=253248;t=-1;n=16}else{h=c[f+21720>>2]|0;v=d[c[f+21748>>2]>>0]|0;i=a[q+((v&254)+(h<<2|1))>>0]|0;h=r+((N(s,v)|0)+3+(c[(c[e+26360>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=h>>16<<1;h=x;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=x;i=i<<1;break}}while(0);if(!(c[h>>2]|i))h=0;else{v=h;t=i;n=16}}do if((n|0)==16){k=c[f+21732>>2]|0;if(!(k&12288))if(!k){h=0;break}else{o=-1;p=253248}else{i=c[f+21712>>2]|0;h=a[q+(i<<2|2)>>0]|0;i=r+((c[(c[e+26360>>2]|0)+(i<<2)>>2]|0)+(s*3|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=p>>16<<1;h=h>>1;break}else{if(k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=((p>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[i>>2]|h)){h=0;break}else{o=h;p=i}}i=c[f+21736>>2]|0;do if(!(i&12288))if((i|0)==0?(u=c[f+21728>>2]|0,(u&12288|0)!=0):0){k=c[f+21708>>2]|0;n=c[f+21752>>2]|0;h=a[q+(k<<2|n&2|1)>>0]|0;k=r+(s+3+(n&s<<1)+(c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)<<2)|0;if(c[e+26376>>2]|0){i=(u&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}else{n=253248;h=-1}else{k=c[f+21716>>2]|0;h=a[q+(k<<2|2)>>0]|0;k=r+((c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)+(s*3|0)<<2)|0;if(c[e+26376>>2]|0){i=(i&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}while(0);k=(o|0)!=0;i=(t|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=Zm(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Zm(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0;break}if(!i){i=b[v+2>>1]|0;h=b[v>>1]|0;break}if(k){i=b[n+2>>1]|0;h=b[n>>1]|0;break}else{i=b[p+2>>1]|0;h=b[p>>1]|0;break}}else{h=Zm(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=Zm(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0}while(0);h=i<<16|h&65535}while(0);c[f+28e3>>2]=h;c[f+28004>>2]=h;c[f+28008>>2]=h;c[f+28012>>2]=h;c[f+28032>>2]=h;c[f+28036>>2]=h;c[f+28040>>2]=h;c[f+28044>>2]=h;c[f+28064>>2]=h;c[f+28068>>2]=h;c[f+28072>>2]=h;c[f+28076>>2]=h;c[f+28096>>2]=h;c[f+28100>>2]=h;c[f+28104>>2]=h;c[f+28108>>2]=h}h=c[g>>2]|0;i=(N(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[y>>2]<<2;if(!(j&12288)){y=(c[e+24384>>2]|0)+g|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[e+24352>>2]|0)+(i<<2)|0;w=f+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24384>>2]|0)+g|0;a[y>>0]=a[f+28284>>0]|0;a[y+1>>0]=a[f+28286>>0]|0;a[y+2>>0]=a[f+28300>>0]|0;a[y+3>>0]=a[f+28302>>0]|0}if(j&49152|0){y=(c[e+24356>>2]|0)+(i<<2)|0;w=f+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24388>>2]|0)+g|0;a[y>>0]=a[f+28324>>0]|0;a[y+1>>0]=a[f+28326>>0]|0;a[y+2>>0]=a[f+28340>>0]|0;a[y+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(A<<2)>>2]=c[z>>2];a[(c[e+24340>>2]|0)+A>>0]=c[f+848>>2];b[(c[e+26372>>2]|0)+(A<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;l=B;return}function Om(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[185709+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){gi(0,16,221068,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[191678+a>>0]|0);a=d[192190+a>>0]|0}while(0);l=h;return a|0}function Pm(a){a=a|0;var b=0;b=0-(jn(a)|0)&7;if(b|0)cn(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function Qm(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(jn(a)|0)|0}function Rm(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Sm(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=205070;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?205166:205134;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=205102;h=i}else d=205166;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Tm(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ka=l;l=l+16|0;if((l|0)>=(m|0))W(16);aa=ka+8|0;ba=ka;ha=c[f+21748>>2]|0;ja=c[f+21708>>2]|0;U=c[f+21712>>2]|0;V=c[f+21716>>2]|0;X=c[f+21720>>2]|0;c[aa>>2]=X;c[aa+4>>2]=c[f+21724>>2];Y=c[f+21728>>2]|0;Z=c[f+21732>>2]|0;_=c[f+21736>>2]|0;$=c[f+21740>>2]|0;c[ba>>2]=$;t=c[f+21744>>2]|0;c[ba+4>>2]=t;a:do if(!(g&2048)){b:do if(g&7|0){q=c[(c[e+28212>>2]|0)+56>>2]|0?7:-1;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;n=f+21756|0;c[n>>2]=65535;o=f+21764|0;c[o>>2]=61162;p=(q&Z|0)!=0;if(p){h=65535;k=60138}else{c[n>>2]=46079;c[h>>2]=13311;c[o>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==($&128|0)){if(!($&q)){h=h&57183;c[n>>2]=h;c[j>>2]=24415}}else{if(!i){if(!(($&q|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27016>>2]|0)+X<<2)>>2]&q|0)==0))break;h=h&57183;c[n>>2]=h;c[j>>2]=24415;break}if(!($&q)){h=h&57343;c[n>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(t&q)){h=h&65375;c[n>>2]=h;c[j>>2]=i}}while(0);if(!(q&Y))c[n>>2]=h&32767;if(!(q&_))c[o>>2]=k;if(g&1|0){if(!(Z&1)){FZ(f+21668|0,(p?2:-1)|0,4)|0;k=f+21704|0;n=e+26364|0}else{k=f+21704|0;n=e+26364|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(U<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[ba+(j<<2)>>2]|0;if(!(h&1)){h=(h&q|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{T=(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[aa+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[T+(6-(d[ha+h>>0]|0))>>0]|0;h=a[T+(6-(d[ha+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);if(!Z){c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;r=e+25972|0;h=1077952576}else{r=e+25972|0;h=c[r>>2]|0;c[f+27828>>2]=c[h+(U*48|0)+12>>2];T=(c[e+25680>>2]|0)==0;c[f+27868>>2]=c[(T?28:20)+(h+(U*48|0))>>2];h=c[(T?44:36)+(h+(U*48|0))>>2]|0}c[f+27908>>2]=h;q=e+28216|0;p=0;while(1){if((p|0)==2)break a;if(!(c[ba+(p<<2)>>2]|0)){i=p<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;i=i|11;h=64}else{n=c[r>>2]|0;o=c[aa+(p<<2)>>2]|0;h=p<<1;j=ha+(h+8)|0;i=p<<4;a[(i|11)+(f+27824)>>0]=a[(d[j>>0]|0)+(n+(o*48|0))>>0]|0;k=ha+(h+9)|0;a[i+19+(f+27824)>>0]=a[(d[k>>0]|0)+(n+(o*48|0))>>0]|0;switch(c[(c[q>>2]|0)+12>>2]|0){case 3:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+32+(n+(o*48|0))>>0]|0;k=(d[k>>0]|0)+32|0;h=i+99|0;break}case 2:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+30+(n+(o*48|0))>>0]|0;h=(d[k>>0]|0)+30|0;j=99;s=39;break}default:{i=p<<3;a[i+51+(f+27824)>>0]=a[(d[ha+(h+12)>>0]|0)+(n+(o*48|0))>>0]|0;h=d[ha+(h+13)>>0]|0;j=91;s=39}}if((s|0)==39){s=0;k=h;h=j+i|0}i=h;h=a[n+(o*48|0)+k>>0]|0}a[f+27824+i>>0]=h;p=p+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)s=46}else s=46;c:do if((s|0)==46){z=c[e+26368>>2]|0;A=f+23412|0;B=Z|0?-1:-16843010;C=(g&80|0)==0;D=$|0?-1:-2;E=e+26360|0;F=X<<2|1;G=_|0?-1:-2;H=Y|0?-1:-2;I=f+21752|0;J=z<<1;K=z+3|0;L=ja<<2;M=(g&2304|0)==0;O=e+26376|0;P=f+21828|0;Q=(Y&128|0)!=0;R=(Z&128|0)==0;S=(_&128|0)==0;T=($&128|0)==0;u=(t&128|0)==0;v=z*3|0;w=V<<2|2;y=U<<2;x=y|2;y=y|3;t=0;while(1){if(t>>>0>=(c[A>>2]|0)>>>0)break c;o=f+28272+(t*40|0)+12|0;q=c[e+24384+(t<<2)>>2]|0;p=f+27952+(t*160|0)+48|0;r=c[e+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&g|0){if(!(s&Z)){n=f+27952+(t*160|0)+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28272+(t*40|0)+4>>2]=B}else{j=(c[(c[E>>2]|0)+(U<<2)>>2]|0)+v|0;i=r+(j<<2)|0;n=c[i+4>>2]|0;k=f+27952+(t*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=n;j=r+(j<<2)+8|0;k=c[j+4>>2]|0;n=f+27952+(t*160|0)+24|0;c[n>>2]=c[j>>2];c[n+4>>2]=k;n=a[q+x>>0]|0;a[f+28272+(t*40|0)+5>>0]=n;a[f+28272+(t*40|0)+4>>0]=n;n=a[q+y>>0]|0;a[f+28272+(t*40|0)+7>>0]=n;a[f+28272+(t*40|0)+6>>0]=n}d:do if(C){if(!($&s)){c[f+27952+(t*160|0)+44>>2]=0;h=D}else{c[f+27952+(t*160|0)+44>>2]=c[r+((c[(c[E>>2]|0)+(X<<2)>>2]|0)+3+(N(z,d[ha>>0]|0)|0)<<2)>>2];h=a[q+(F+(a[ha>>0]&-2&255))>>0]|0}a[f+28272+(t*40|0)+11>>0]=h}else{n=0;while(1){if((n|0)==2)break d;i=n<<1;j=n<<4;h=j+-1|0;k=c[ba+(n<<2)>>2]|0;if(!(k&s)){c[p+(h<<2)>>2]=0;j=j|7;c[p+(j<<2)>>2]=0;i=k|0?-1:-2;a[o+j>>0]=i}else{la=c[aa+(n<<2)>>2]|0;na=(c[(c[E>>2]|0)+(la<<2)>>2]|0)+3|0;la=la<<2|1;ma=ha+i|0;c[p+(h<<2)>>2]=c[r+((N(z,d[ma>>0]|0)|0)+na<<2)>>2];i=ha+(i|1)|0;k=j|7;c[p+(k<<2)>>2]=c[r+((N(z,d[i>>0]|0)|0)+na<<2)>>2];a[o+h>>0]=a[q+(la+(a[ma>>0]&-2&255))>>0]|0;i=a[q+(la+(a[i>>0]&-2&255))>>0]|0;h=k}a[o+h>>0]=i;n=n+1|0}}while(0);if(!(s&_)){c[f+27952+(t*160|0)+32>>2]=0;h=G}else{c[f+27952+(t*160|0)+32>>2]=c[r+((c[(c[E>>2]|0)+(V<<2)>>2]|0)+v<<2)>>2];h=a[q+w>>0]|0}k=f+28272+(t*40|0)+8|0;a[k>>0]=h;j=f+28272+(t*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(s&Y)){c[f+27952+(t*160|0)+12>>2]=0;h=H}else{h=c[I>>2]|0;c[f+27952+(t*160|0)+12>>2]=c[r+(K+(c[(c[E>>2]|0)+(ja<<2)>>2]|0)+(h&J)<<2)>>2];h=a[q+(L|h&2|1)>>0]|0}a[f+28272+(t*40|0)+3>>0]=h}if(M){a[f+28272+(t*40|0)+30>>0]=-2;a[f+28272+(t*40|0)+14>>0]=-2;c[f+27952+(t*160|0)+56>>2]=0;c[f+27952+(t*160|0)+120>>2]=0;if(!(c[O>>2]|0))break}else if(!(c[O>>2]|0))break;if(!(c[P>>2]|0)){if(Q?(fa=f+28272+(t*40|0)+3|0,ga=a[fa>>0]|0,ga<<24>>24>-1):0){a[fa>>0]=(ga&255)>>>1;na=f+27952+(t*160|0)+14|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+7|0;a[na>>0]=d[na>>0]<<1}do if(!R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+18|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+9|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+22|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+11|0;a[na>>0]=d[na>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=(h&255)>>>1;na=f+27952+(t*160|0)+26|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+13|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+30|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+15|0;a[na>>0]=d[na>>0]<<1}while(0);if(!S?(ia=a[k>>0]|0,ia<<24>>24>-1):0){a[k>>0]=(ia&255)>>>1;na=f+27952+(t*160|0)+34|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+17|0;a[na>>0]=d[na>>0]<<1}do if(!T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+46|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+23|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+78|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+39|0;a[na>>0]=d[na>>0]<<1}while(0);if(u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+110|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+55|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+142|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+71|0;a[na>>0]=d[na>>0]<<1;break}else{if(!Q?(ca=f+28272+(t*40|0)+3|0,da=a[ca>>0]|0,da<<24>>24>-1):0){a[ca>>0]=da<<24>>24<<1;na=f+27952+(t*160|0)+14|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+7|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+18|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+9|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+22|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+11|0;a[na>>0]=(d[na>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;na=f+27952+(t*160|0)+26|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+13|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+30|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+15|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(S?(ea=a[k>>0]|0,ea<<24>>24>-1):0){a[k>>0]=ea<<24>>24<<1;na=f+27952+(t*160|0)+34|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+17|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+46|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+23|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+78|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+39|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(!u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+110|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+55|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+142|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+71|0;a[na>>0]=(d[na>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[f+21840>>2]=($>>>24&1)+(Z>>>24&1);l=ka;return}function Um(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function Vm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;a:do if(!(e&32768)){e=0;while(1){if((e|0)>=4){k=8;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[204940+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;gi(d,16,204952,j);e=-1094995529}else k=8;while(0);b:do if((k|0)==8)if((f&34952|0)==34952)e=0;else{e=0;while(1){if((e|0)>=4){e=0;break b}if(!(c[164472+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[205003+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[n>>2]=i<<24>>24;gi(d,16,205015,n);e=-1094995529}while(0);l=o;return e|0}function Wm(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[204834+e>>0]|0;if((e|1|0)==3){gi(b,16,204838,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){gi(b,16,204886,h);c=-1094995529;break}else{l=i;return ((e|0)==0|(f|0)==0?a[204935+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{gi(b,16,204797,i);c=-1094995529}while(0);l=i;return c|0}function Xm(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[191678+a>>0]|0);return d[192190+a>>0]|0|0}function Ym(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))fn(a,b,d);else en(a,b,d);return}function Zm(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function _m(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(BZ(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[191678+b>>0]|0);b=a[192702+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[185709+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function $m(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+112|0;if((l|0)>=(m|0))W(112);A=B+32|0;x=B+24|0;v=B+16|0;u=B;z=B+40|0;w=(n|0)<9;do if(!w)if((i|0)>47){t=c[252608+(c[164376+((an(f,(i<<4)+-768|0)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(BZ(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((BZ(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{t=c[252608+(c[164376+((an(f,i)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(BZ(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((BZ(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{q=(n|0)==4;y=q?c[63145]|0:c[63149]|0;o=g+8|0;t=c[o>>2]|0;p=(c[g>>2]|0)+(t>>>3)|0;p=(BZ(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(t&7);q=p>>>(q?24:19);p=b[y+(q<<2)>>1]|0;q=t+(b[y+(q<<2)+2>>1]|0)|0}while(0);c[o>>2]=q;y=p>>2;a[(d[215911+i>>0]|0)+(f+27824)>>0]=y;a:do if(y){if(y>>>0>n>>>0){o=c[e+4>>2]|0;A=c[f+21792>>2]|0;c[u>>2]=c[f+21788>>2];c[u+4>>2]=A;c[u+8>>2]=y;gi(o,16,204689,u);o=-1;break}q=p&3;u=bn(g,3)|0;cn(g,q);c[z>>2]=1-(u>>>1&2);c[z+4>>2]=1-(u&2);c[z+8>>2]=1-(u<<1&2);b:do if((q|0)<(y|0)){r=(q|0)!=3;p=(y|0)>10&r;s=p&1;t=bn(g,8)|0;u=a[328620+(s<<9)+(t<<1)>>0]|0;o=u<<24>>24;cn(g,a[328620+(s<<9)+(t<<1)+1>>0]|0);if(u<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(dn(g)|0)+8|0;do if((o|0)<14){if(p)o=(Mm(g)|0)+(o<<1)|0}else{if((o|0)==14)if(p){o=(Mm(g)|0)+28|0;break}else{o=(Um(g,4)|0)+14|0;break}do if((o|0)>15)if((o|0)>28){gi(c[e+4>>2]|0,16,204734,v);o=-1;break a}else{p=o+-3|0;o=(1<>1^0-o)+o|0}else{o=(r?o>>31|1:0)+o|0;p=(o+3|0)>>>0>6?2:1}c[z+(q<<2)>>2]=o;while(1){q=q+1|0;if((q|0)>=(y|0))break b;u=bn(g,8)|0;v=a[328620+(p<<9)+(u<<1)>>0]|0;o=v<<24>>24;cn(g,a[328620+(p<<9)+(u<<1)+1>>0]|0);if(v<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(dn(g)|0)+8|0;if((o|0)>=15){r=15<28)break;v=o+-3|0;o=r+-4096+(1<>1^0-o)+o|0}c[z+(q<<2)>>2]=o;v=c[164444+(p<<2)>>2]|0;p=p+((v+o|0)>>>0>v<<1>>>0&1)|0}gi(c[e+4>>2]|0,16,204734,x);o=-1094995529;break a}while(0);if((y|0)==(n|0))o=0;else{do if(w)if((n|0)==4){o=29;p=252672+(y<<4)+4|0;break}else{o=27;p=252736+(y<<4)+4|0;break}else{o=23;p=252864+(y<<4)+4|0}while(0);n=c[p>>2]|0;x=g+8|0;v=c[x>>2]|0;w=(c[g>>2]|0)+(v>>>3)|0;w=(BZ(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(v&7)>>>o;o=b[n+(w<<2)>>1]|0;c[x>>2]=v+(b[n+(w<<2)+2>>1]|0)}q=j+(y+-1+o)|0;p=(i|0)>47;r=c[z>>2]|0;c:do if(!(c[e+25664>>2]|0))if(p){b[h+(d[q>>0]<<1)>>1]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[253120+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(BZ(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[63309]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(BZ(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((BZ(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;b[h+(d[k>>0]<<1)>>1]=c[z+(p<<2)>>2];o=o-s|0;q=k;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;b[h+(d[g>>0]<<1)>>1]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;b[h+(n<<1)>>1]=((N(c[k+(n<<2)>>2]|0,r)|0)+32|0)>>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[253120+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(BZ(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[63309]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(BZ(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((BZ(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;b[h+(j<<1)>>1]=((N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;o=o-s|0;q=i;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;b[h+(i<<1)>>1]=((N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;q=g;p=p+1|0}}else if(p){c[h+(d[q>>0]<<2)>>2]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[253120+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(BZ(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[63309]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(BZ(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((BZ(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;c[h+(d[k>>0]<<2)>>2]=c[z+(p<<2)>>2];q=k;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;c[h+(d[g>>0]<<2)>>2]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;c[h+(n<<2)>>2]=(N(c[k+(n<<2)>>2]|0,r)|0)+32>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[253120+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(BZ(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[63309]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(BZ(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((BZ(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;c[h+(j<<2)>>2]=(N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=i;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;c[h+(i<<2)>>2]=(N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=g;p=p+1|0}}while(0);if((o|0)<0){o=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[A>>2]=c[f+21788>>2];c[A+4>>2]=e;gi(o,16,204756,A);o=-1}else o=0}else o=0;while(0);l=B;return o|0}function an(a,b){a=a|0;b=b|0;b=d[215911+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function bn(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function cn(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function dn(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[185709+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function en(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=l;l=l+32|0;if((l|0)>=(m|0))W(32);E=V+16|0;D=V+8|0;y=V;A=c[f+26368>>2]|0;k=c[g+21796>>2]|0;C=g+21792|0;r=c[C>>2]|0;U=c[h>>2]|0;T=U&64;B=g+25336|0;gn(f,B,(U>>>7&1)+r|0);U=(T|0)==0;i=61440;w=0;while(1){if((w|0)==2)break;o=a[g+28272+(w*40|0)+11>>0]|0;u=a[g+28272+(w*40|0)+4>>0]|0;j=a[g+28272+(w*40|0)+8>>0]|0;if(j<<24>>24==-2){s=a[g+28272+(w*40|0)+3>>0]|0;t=g+27952+(w*160|0)+12|0}else{s=j<<24>>24;t=g+27952+(w*160|0)+32|0}v=o>>>0>u>>>0?u:o;j=v>>>0>s>>>0?s:v;n=D+(w<<2)|0;c[n>>2]=j;if((j|0)>-1){p=g+27952+(w*160|0)+44|0;q=g+27952+(w*160|0)+16|0;n=(j|0)==(o|0);j=(j|0)==(u|0);do if(((j&1)+(s>>>0<=v>>>0&1)+(n&1)|0)>>>0<=1){if(n){j=c[p>>2]|0;break}if(j){j=c[q>>2]|0;break}else{j=c[t>>2]|0;break}}else{j=hn(b[p>>1]|0,b[q>>1]|0,b[t>>1]|0)|0;j=(hn(b[g+27952+(w*160|0)+46>>1]|0,b[g+27952+(w*160|0)+18>>1]|0,b[t+2>>1]|0)|0)<<16|j&65535}while(0);c[y+(w<<2)>>2]=j}else{j=~(12288<<(w<<1));c[y+(w<<2)>>2]=0;c[n>>2]=-1;if(U)c[h>>2]=c[h>>2]&j;i=i&j}w=w+1|0}j=c[D>>2]|0;if((j|0)<0?(x=D+4|0,(c[x>>2]|0)<0):0){c[x>>2]=0;c[D>>2]=0;if(U)c[h>>2]=c[h>>2]|61440;u=i|61440;w=0}else{u=i;w=j}i=c[y>>2]|0;j=c[y+4>>2]|0;do if(i|T|j){S=g+25372|0;t=c[(c[S>>2]|0)+48>>2]|0;q=c[t+(k<<2)>>2]|0;v=c[h>>2]|0;n=(v&128|0)!=0;do if(!(q&128))if(n){s=c[C>>2]&-2;p=c[f+27016>>2]|0;k=N(s,p)|0;k=k+(c[g+21788>>2]|0)|0;q=c[t+(k<<2)>>2]|0;c[E>>2]=q;n=c[t+(p+k<<2)>>2]|0;o=E+4|0;c[o>>2]=n;p=p<<2|2;r=A*6|0;if((q^n)&128){q=q&-129;c[E>>2]=q;n=n&-129;c[o>>2]=n}o=u|264;if(q&15|0?!((T|0)!=0|(n&15|0)==0):0){Q=r;r=s;t=o;n=272;break}Q=r;r=s;t=o;n=64}else{p=2;R=36}else{if(n){o=c[g+21852>>2]|0;p=2;q=o+r|0;n=c[f+27016>>2]|0}else{n=(c[C>>2]&-2)+(c[g+21848>>2]|0)|0;p=0;q=n;k=c[g+21788>>2]|0;o=c[f+27016>>2]|0}R=k+(N(n,o)|0)|0;k=R;r=q;q=c[t+(R<<2)>>2]|0;R=36}while(0);do if((R|0)==36){c[E+4>>2]=q;c[E>>2]=q;o=u|264;n=(T|0)!=0;if(n|(q&15|0)==0){if(!n?(z=q&48,z|0):0){Q=A;t=o;n=z|256;break}Q=A;t=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?o+56|0:o;n=64}else{Q=A;t=o;n=264}}while(0);c[h>>2]=v|n;gn(f,B,r);s=c[S>>2]|0;o=c[(c[f+26360>>2]|0)+(k<<2)>>2]|0;n=(c[s+36>>2]|0)+(o<<2)|0;o=(c[s+40>>2]|0)+(o<<2)|0;r=k<<2;k=(c[s+68>>2]|0)+r|0;r=(c[s+72>>2]|0)+r|0;if(!p){M=(c[C>>2]&1|0)==0;O=Q<<1;P=M?n:n+(O<<2)|0;o=M?o:o+(O<<2)|0;O=M?k:k+2|0;r=M?r:r+2|0}else{P=n;O=k}k=c[h>>2]|0;if((q^k)&128|0){z=t&65535;A=(w&255)*257&65535;v=c[D+4>>2]|0;y=(v&255)*257&65535;x=(w|0)>0?i:0;v=(v|0)>0?j:0;k=0;w=0;while(1){if((w|0)==4)break;t=w&1;q=w>>1;s=(N(q,p)|0)+t|0;t=(0-t&3)+(N(q,Q)|0)|0;n=g+28552+(w<<1)|0;if(!(!U?(b[n>>1]&256)==0:0)){b[n>>1]=z;u=d[215911+(w<<2)>>0]|0;R=g+28272+u|0;b[R>>1]=A;b[R+8>>1]=A;R=g+28312+u|0;b[R>>1]=y;b[R+8>>1]=y;do if((c[E+(q<<2)>>2]&7|0)==0?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+s>>0]|0;if(!(n<<24>>24)){M=b[P+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[P+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}else{if(n<<24>>24>=0){n=j;q=i;break}if(a[r+s>>0]|0){n=j;q=i;break}M=b[o+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[o+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}n=v;q=x;k=k+1|0}else{n=j;q=i}while(0);R=g+27952+(u<<2)|0;c[R>>2]=q;c[R+4>>2]=q;c[R+32>>2]=q;c[R+36>>2]=q;R=g+28112+(u<<2)|0;c[R>>2]=n;c[R+4>>2]=n;c[R+32>>2]=n;c[R+36>>2]=n}w=w+1|0}if(k&3|T|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){n=N(w&255,16843009)|0;c[g+28284>>2]=n;c[g+28292>>2]=n;c[g+28300>>2]=n;c[g+28308>>2]=n;n=c[D+4>>2]|0;h=N(n&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((q&7|0)==0?(c[s+100>>2]|0)==0:0){k=a[O>>0]|0;if(!(k<<24>>24)){U=b[P>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[P+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[r>>0]|0)break;U=b[o>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[o+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;if((c[f+25704>>2]|0)>>>0<=33)break}j=(n|0)>0?j:0;i=(w|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}L=t&65535;M=(w&255)*257&65535;G=c[D+4>>2]|0;K=(G&255)*257&65535;J=(q&7|0)==0;H=(t&8|0)==0;I=Q*3|0;F=(w|0)==0;G=(G|0)==0;E=f+25704|0;k=0;f=0;while(1){if((f|0)==4)break;q=f&1;s=f>>1;C=g+28552+(f<<1)|0;if(!(!U?(b[C>>1]&256)==0:0))R=79;do if((R|0)==79){R=0;b[C>>1]=L;D=f<<2;B=d[215911+D>>0]|0;t=g+27952+(B<<2)|0;c[t>>2]=i;u=t+4|0;c[u>>2]=i;v=t+32|0;c[v>>2]=i;w=t+36|0;c[w>>2]=i;x=g+28112+(B<<2)|0;c[x>>2]=j;y=x+4|0;c[y>>2]=j;z=x+32|0;c[z>>2]=j;A=x+36|0;c[A>>2]=j;p=g+28272+B|0;b[p>>1]=M;b[p+8>>1]=M;B=g+28312+B|0;b[B>>1]=K;b[B+8>>1]=K;if(J?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+f>>0]|0;p=n<<24>>24==0;if(!p){if(n<<24>>24>=0)break;if(a[r+f>>0]|0)break;if((c[E>>2]|0)>>>0<=33)break}B=p?P:o;if(!H){n=(N(I,s)|0)+(0-q&3)|0;C=b[B+(n<<2)>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;C=b[B+(n<<2)+2>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;if(F){c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0}if(G){c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0}k=k+4|0;break}t=q<<1;s=s<<1;n=0;q=0;while(1){if((q|0)==4)break;p=(N((q>>1)+s|0,Q)|0)+(q&1|t)|0;z=b[B+(p<<2)>>1]|0;A=z<<16>>16;if(((z<<16>>16>-1?A:0-A|0)|0)<2?(z=b[B+(p<<2)+2>>1]|0,A=z<<16>>16,((z<<16>>16>-1?A:0-A|0)|0)<2):0){if(F)c[g+27952+(d[215911+(q+D)>>0]<<2)>>2]=0;if(G)c[g+28112+(d[215911+(q+D)>>0]<<2)>>2]=0;n=n+1|0}q=q+1|0}if(!(n&3))b[C>>1]=(e[C>>1]|0)+65480;k=n+k|0}}while(0);f=f+1|0}if(!(k&15|T))c[h>>2]=c[h>>2]&-41337|264}else{O=N(w&255,16843009)|0;c[g+28284>>2]=O;c[g+28292>>2]=O;c[g+28300>>2]=O;c[g+28308>>2]=O;O=N(c[D+4>>2]&255,16843009)|0;c[g+28324>>2]=O;c[g+28332>>2]=O;c[g+28340>>2]=O;c[g+28348>>2]=O;O=g+28e3|0;P=g+28032|0;Q=g+28064|0;R=g+28096|0;S=g+28160|0;T=g+28192|0;U=g+28224|0;g=g+28256|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);l=V;return}function fn(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=l;l=l+16|0;if((l|0)>=(m|0))W(16);E=H;s=c[f+26368>>2]|0;i=c[g+21796>>2]|0;w=g+21792|0;o=c[w>>2]|0;u=c[h>>2]|0;x=u&64;t=g+25336|0;gn(f,t,(u>>>7&1)+o|0);u=g+25372|0;r=c[(c[u>>2]|0)+48>>2]|0;k=c[r+(i<<2)>>2]|0;v=c[h>>2]|0;j=(v&128|0)!=0;do if(!(k&128))if(j){q=c[w>>2]&-2;n=c[f+27016>>2]|0;p=(N(n,q)|0)+(c[g+21788>>2]|0)|0;k=c[r+(p<<2)>>2]|0;c[E>>2]=k;i=c[r+(n+p<<2)>>2]|0;j=E+4|0;c[j>>2]=i;n=n<<2|2;o=s*6|0;if((k^i)&128){k=k&-129;c[E>>2]=k;i=i&-129;c[j>>2]=i}if(k&15|0?!((x|0)!=0|(i&15|0)==0):0){G=o;i=p;o=q;r=20744;j=61712;q=k;break}G=o;i=p;o=q;r=20744;j=61504;q=k}else{n=2;F=12}else{if(j){k=c[g+21852>>2]|0;n=2;o=k+o|0;j=c[f+27016>>2]|0}else{j=(c[w>>2]&-2)+(c[g+21848>>2]|0)|0;n=0;o=j;i=c[g+21788>>2]|0;k=c[f+27016>>2]|0}k=i+(N(j,k)|0)|0;i=k;k=c[r+(k<<2)>>2]|0;F=12}while(0);do if((F|0)==12){c[E+4>>2]=k;c[E>>2]=k;j=(x|0)!=0;if(j|(k&15|0)==0){if(!j?(p=k&48,p|0):0){G=s;r=20744;j=p|61696;q=k;break}G=s;r=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?20800:20744;j=61504;q=k}else{G=s;r=20744;j=20744;q=k}}while(0);c[h>>2]=v|j;gn(f,t,o);p=c[u>>2]|0;k=c[(c[f+26360>>2]|0)+(i<<2)>>2]|0;j=(c[p+36>>2]|0)+(k<<2)|0;k=(c[p+40>>2]|0)+(k<<2)|0;o=i<<2;i=(c[p+68>>2]|0)+o|0;o=(c[p+72>>2]|0)+o|0;if(!n){B=(c[w>>2]&1|0)==0;C=G<<1;D=B?j:j+(C<<2)|0;C=B?k:k+(C<<2)|0;A=B?i:i+2|0;o=B?o:o+2|0}else{D=j;C=k;A=i}k=c[h>>2]|0;if((c[f+26376>>2]|0)==0|(k&128|0)==0){B=g+21868|0;j=g+22252|0;y=g+22444|0}else{y=c[w>>2]&1;B=g+21996+(y<<7)|0;j=g+22636+(y*384|0)|0;y=g+22636+(y*384|0)+192|0}z=q>>3&c[p+632>>2]<<4;i=k&128;a:do if((i|0)==(q&128|0)){if(k&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(q&7)){i=a[A>>0]|0;k=i<<24>>24>-1;if(!k){j=y;i=a[o>>0]|0}G=c[j+(z+(i<<24>>24)<<2)>>2]|0;E=c[B+(G<<2)>>2]|0;F=k?D:C;i=b[F>>1]|0;j=(N(E,i)|0)+128>>8;F=b[F+2>>1]|0;k=(N(E,F)|0)+128>>8;i=k-F<<16|j-i&65535;j=k<<16|j&65535;k=N(G,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}w=(x|0)==0;x=r&65535;h=(r&8|0)==0;f=G*3|0;v=(q&7|0)==0;u=0;while(1){if((u|0)==4)break a;q=u&1;r=u>>1;i=g+28552+(u<<1)|0;if(!(!w?!(b[i>>1]&256):0))F=43;b:do if((F|0)==43){F=0;b[i>>1]=x;t=u<<2;n=d[215911+t>>0]|0;E=g+28312+n|0;b[E>>1]=0;b[E+8>>1]=0;if(!v){E=g+28272+n|0;b[E>>1]=0;b[E+8>>1]=0;E=g+27952+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;E=g+28112+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;break}i=a[A+u>>0]|0;if(i<<24>>24>-1){s=D;k=j}else{s=C;i=a[o+u>>0]|0;k=y}k=c[k+(z+(i<<24>>24)<<2)>>2]|0;p=c[B+(k<<2)>>2]|0;E=g+28272+n|0;k=k*257&65535;b[E>>1]=k;b[E+8>>1]=k;if(!h){q=(N(f,r)|0)+(0-q&3)|0;t=b[s+(q<<2)>>1]|0;r=(N(p,t<<16>>16)|0)+128>>8;s=b[s+(q<<2)+2>>1]|0;q=(N(p,s<<16>>16)|0)+128>>8;E=g+27952+(n<<2)|0;p=q<<16|r&65535;c[E>>2]=p;c[E+4>>2]=p;c[E+32>>2]=p;c[E+36>>2]=p;E=g+28112+(n<<2)|0;t=q-(s&65535)<<16|r-(t&65535)&65535;c[E>>2]=t;c[E+4>>2]=t;c[E+32>>2]=t;c[E+36>>2]=t;break}n=q<<1;k=r<<1;i=0;while(1){if((i|0)==4)break b;I=(N((i>>1)+k|0,G)|0)+(i&1|n)|0;r=s+(I<<2)|0;E=d[215911+(i+t)>>0]|0;q=((N(p,b[r>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)>>1]=q;I=s+(I<<2)+2|0;J=((N(p,b[I>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)+2>>1]=J;c[g+28112+(E<<2)>>2]=J-(e[I>>1]|0)<<16|q-(e[r>>1]|0)&65535;i=i+1|0}}while(0);u=u+1|0}}else{h=i>>>6^2;v=(x|0)==0;u=r&65535;t=0;while(1){if((t|0)==4)break a;q=t&1;r=t>>1;i=g+28552+(t<<1)|0;if(!(!v?!(b[i>>1]&256):0)){b[i>>1]=u;s=d[215911+(t<<2)>>0]|0;J=g+28312+s|0;b[J>>1]=0;b[J+8>>1]=0;if(!(c[E+(r<<2)>>2]&7)){k=(N(r,n)|0)+q|0;i=a[A+k>>0]|0;if(i<<24>>24>-1){p=D;k=j}else{p=C;i=a[o+k>>0]|0;k=y}i=c[k+(z+(i<<24>>24)<<2)>>2]|0;J=c[B+(i<<2)>>2]|0;I=g+28272+s|0;i=i*257&65535;b[I>>1]=i;b[I+8>>1]=i;I=(0-q&3)+(N(r,G)|0)|0;i=(b[p+(I<<2)+2>>1]<>1]|0;F=(N(J,I<<16>>16)|0)+128>>8;J=(N(i,J)|0)+128>>8;x=g+27952+(s<<2)|0;w=J<<16|F&65535;c[x>>2]=w;c[x+4>>2]=w;c[x+32>>2]=w;c[x+36>>2]=w;i=F-(I&65535)&65535|J-i<<16}else{i=g+28272+s|0;b[i>>1]=0;b[i+8>>1]=0;i=g+27952+(s<<2)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+32>>2]=0;c[i+36>>2]=0;i=0}J=g+28112+(s<<2)|0;c[J>>2]=i;c[J+4>>2]=i;c[J+32>>2]=i;c[J+36>>2]=i}t=t+1|0}}while(0);l=H;return}function gn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+696>>2]&1|0){a=c[a+27008>>2]<<4>>f;d=d<<4>>f;il(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function hn(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function jn(a){a=a|0;return c[a+8>>2]|0}function kn(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=ln(d,32)|0;l=b;return a|0}function ln(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Um(a,b)|0;break}else{b=b+-16|0;c=(Um(a,16)|0)<=(m|0))W(32);h=n;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=d[(Bj(c[i+112>>2]|0)|0)+6>>0]|0;g=c[a+26380>>2]|0;p=(g|0)!=3;r=p&1;q=f<>2]|0)-f|0;e=(q|0)>(e|0)?e:q;if(!((p?(c[a+26384>>2]|0)!=0:0)?!(c[i+240>>2]&2|0):0))k=4;if((k|0)==4?(o=c[i+116>>2]|0,o|0):0){c[h>>2]=N(c[j+32>>2]|0,f)|0;b=N(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}Xd[o&63](i,j,h,f,g,e)}l=n;return}function nn(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))on(a);return}function on(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function pn(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ka=l;l=l+48|0;if((l|0)>=(m|0))W(48);_=ka+20|0;Y=ka;ja=ka+8|0;ca=g+21788|0;k=c[ca>>2]|0;aa=g+21792|0;q=c[aa>>2]|0;$=g+21796|0;n=c[$>>2]|0;da=c[(c[f+24364>>2]|0)+(n<<2)>>2]|0;p=f+25976|0;X=g+848|0;if(!(c[X>>2]|0))ha=(c[(c[f+28216>>2]|0)+16>>2]|0)!=0;else ha=0;i=f+24316|0;ia=f+25664|0;o=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;Z=c[ia>>2]|0;fa=c[o>>2]|0;V=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((N(fa,q)|0)+(k<>2]=V;Z=V+(N(c[ca>>2]<<2&12,fa)|0)+(64<>2]&1023](Z,fa,4);h=h+1|0}r=g+23412|0;a[(c[f+26388>>2]|0)+n>>0]=c[r>>2];Z=g+21828|0;h=c[o>>2]|0;a:do if(c[Z>>2]|0){o=h<<1;c[g+21784>>2]=o;c[g+21780>>2]=o;p=f+26168|0;b:do if(q&1|0){i=N(h,-15)|0;h=0;while(1){if((h|0)==3)break b;fa=ja+(h<<2)|0;c[fa>>2]=(c[fa>>2]|0)+i;h=h+1|0}}while(0);if(!(c[f+26376>>2]|0))fa=o;else{j=(da&8|0)==0;i=0;while(1){if(i>>>0>=(c[r>>2]|0)>>>0){fa=o;break a}c:do if(12288<<(i<<1)&da|0){if(j)h=0;else{V=g+28272+(i*40|0)+12|0;fa=N((a[V>>0]|0)+16^c[aa>>2]&1,16843009)|0;c[V>>2]=fa;c[g+28272+(i*40|0)+20>>2]=fa;c[g+28272+(i*40|0)+28>>2]=fa;c[g+28272+(i*40|0)+36>>2]=fa;break}while(1){if((h|0)>=16)break c;k=(d[215911+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){fa=(c[aa>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=fa;b[k+8>>1]=fa}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;fa=h}while(0);d:do if(!(da&4)){e:do if(da&7){V=g+868|0;i=c[V>>2]|0;f:do if(i|0){j=c[ja>>2]|0;k=c[ja+4>>2]|0;n=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=j+z|0;x=k+z|0;z=n+z|0;A=g+27796+(h<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i|0){n=(B|0)==0;do if(u){h=(8<>2]|0;T=c[T+4>>2]|0;i=s+(-7<>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(n){h=k;i=s+1|0;q=0;j=c[h>>2]|0;h=c[h+4>>2]|0;n=1;break}else{T=h+8|0;n=T;j=c[n>>2]|0;n=c[n+4>>2]|0;h=i+8|0;U=h;ea=c[U+4>>2]|0;i=T;c[i>>2]=c[U>>2];c[i+4>>2]=ea;c[h>>2]=j;c[h+4>>2]=n;h=k;n=1<>2]|0;h=c[h+4>>2]|0;ea=56;break}}else{h=k;j=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[k>>2]=c[ea>>2];c[k+4>>2]=q;k=i;c[k>>2]=j;c[k+4>>2]=h;k=v+(w*96|0)+8|0;h=k;i=s+n+8|0;q=1;j=c[h>>2]|0;h=c[h+4>>2]|0}o=i;T=c[o+4>>2]|0;U=k;c[U>>2]=c[o>>2];c[U+4>>2]=T;U=i;c[U>>2]=j;c[U+4>>2]=h;h=(8<>2]|0;U=c[U+4>>2]|0;o=9<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}h=(c[ca>>2]|0)+1|0;r=f+27012|0;if((h|0)<(c[r>>2]|0)?(ea=(c[A>>2]|0)+(h*96|0)|0,U=ea,T=c[U>>2]|0,U=c[U+4>>2]|0,C=s+(17<>2]|0,ea,c[ea>>2]=c[R>>2],c[ea+4>>2]=S,ea=C,c[ea>>2]=T,c[ea+4>>2]=U,q):0){S=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=C+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}if(u){h=(24<>2]|0;U=c[U+4>>2]|0;j=-7<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}i=(40<>2]|0;U=c[U+4>>2]|0;h=z+j|0;R=h;S=c[R+4>>2]|0;ea=i;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=h;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=i+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=h+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U;ea=68}else ea=69}else if(q)ea=68;else ea=69;if((ea|0)==68){i=(16<>2]|0;U=c[U+4>>2]|0;h=x+n|0;R=h;S=c[R+4>>2]|0;k=i;c[k>>2]=c[R>>2];c[k+4>>2]=S;k=h;c[k>>2]=T;c[k+4>>2]=U;h=h+8|0;i=i+8|0;k=1}else if((ea|0)==69){h=x+n|0;i=(16<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;c[h>>2]=S;c[h+4>>2]=T;h=(24<>2]|0;T=c[T+4>>2]|0;i=x+o|0;Q=i;R=c[Q+4>>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(k){h=h+8|0;T=h;S=c[T>>2]|0;T=c[T+4>>2]|0;i=i+8|0;R=i;Q=c[R+4>>2]|0;c[h>>2]=c[R>>2];c[h+4>>2]=Q;c[i>>2]=S;c[i+4>>2]=T;i=(32<>2]|0;T=c[T+4>>2]|0;h=z+n|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;h=h+8|0;i=i+8|0}else{h=z+n|0;i=(32<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;i=h;c[i>>2]=S;c[i+4>>2]=T;i=(40<>2]|0;T=c[T+4>>2]|0;h=z+o|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}h=(c[ca>>2]|0)+1|0;if((h|0)<(c[r>>2]|0)){i=16<>2]|0)+(h*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;j=17<>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}i=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;h=z+j|0;Q=h;R=c[Q+4>>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}}}}while(0);h=da&1;A=(h|0)==0;F=g+21660|0;B=f+132|0;C=f+28212|0;T=da&16777216;D=(T|0)==0;H=f+144|0;G=f+28216|0;I=g+21764|0;J=3-fa|0;K=3-((fa|0)/2|0)|0;L=0-fa|0;E=g+28560|0;M=f+108|0;O=f+100|0;U=f+140|0;P=f+25704|0;Q=g+21756|0;R=f+112|0;S=f+104|0;z=0;while(1){if((z|0)==3)break;x=c[ia>>2]|0;u=c[ja+(z<<2)>>2]|0;i=c[((z|0)==0?X:g+852+(z+-1<<2)|0)>>2]|0;v=z<<4;w=p+(v<<2)|0;g:do if(A){Td[c[f+25888+(c[F>>2]<<2)>>2]&255](u,fa);if(a[(d[215911+(z+48)>>0]|0)+(g+27824)>>0]|0){if(!ha){Ud[c[B>>2]&1023](g+28560+(z<<8<>2]|0)+173788+(z<<2)>>2]|0)+(i<<6)>>2]|0);break}o=g+28560+(z<<8<>0]|0;if(j)b[o+(n<<1)>>1]=b[g+31632+(z<<6)+(i<<1)>>1]|0;else c[o+(n<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!D){if(ha){n=c[U>>2]|0;k=n}else{k=c[S>>2]|0;n=c[R>>2]|0}q=z<<8;r=(x|0)==0;o=0;while(1){if((o|0)>=16)break g;s=u+(c[w+(o<<2)>>2]|0)|0;t=a[(d[215911+o>>0]|0)+(g+21664)>>0]|0;i=t<<24>>24;do if(ha?(t<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)if((c[P>>2]|0)>>>0<151){Ud[c[f+25932+(i<<2)>>2]&1023](s,g+28560+((o<<4)+q<>2]&127](s,g+28560+((o<<4)+q<>2]<>2]<>0]|0)+(g+27824)>>0]|0;Vd[c[f+25796+(i<<2)>>2]&255](s,c[Q>>2]<>2]<>24){case 0:break h;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j)break i;Ud[n&1023](s,g+28560+(i<>2]|0;k=n}else{k=c[O>>2]|0;n=c[M>>2]|0}q=z<<8;r=(x|0)==0;s=4<>2]|0)|0;i=a[(d[215911+o>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(ha?(i<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)Ud[c[f+25924+(j<<2)>>2]&1023](t,g+28560+((o<<4)+q<>24==7){if(c[I>>2]&32768>>>o|0){i=t+s+L|0;break}if(r){c[_>>2]=N(d[t+J>>0]|0,16843009)|0;i=_;break}else{la=uZ(e[t+(K<<1)>>1]|0,0,65537,65537)|0;i=Y;c[i>>2]=la;c[i+4>>2]=y;i=Y;break}}else i=0;while(0);Ud[c[f+25736+(j<<2)>>2]&1023](t,i,fa);j:do switch(a[(d[215911+(o+v)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j){ea=124;break j}Ud[n&1023](t,g+28560+(i<>2]|0;if(j){k=c[ja>>2]|0;n=c[ja+4>>2]|0;q=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(i){o=1;break}else{j=T;i=U;break e}else{o=(i^1)&1;break}}else o=1;while(0);if((j|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=k+z|0;x=n+z|0;z=q+z|0;A=g+27796+(o<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i){n=(B|0)==0;do if(u){i=(8<>2]|0;aa=c[aa+4>>2]|0;j=s+(-7<>2]|0;la=i;c[la>>2]=c[Z>>2];c[la+4>>2]=_;la=j;c[la>>2]=$;c[la+4>>2]=aa;if(n){i=k;j=s+1|0;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1;n=0;break}else{$=i+8|0;o=$;ea=c[o>>2]|0;o=c[o+4>>2]|0;i=j+8|0;aa=i;la=c[aa+4>>2]|0;j=$;c[j>>2]=c[aa>>2];c[j+4>>2]=la;c[i>>2]=ea;c[i+4>>2]=o;i=k;o=1<>2]|0;i=c[i+4>>2]|0;ea=151;break}}else{i=k;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1<>2]=k;c[j+4>>2]=i;i=v+(w*96|0)+8|0;j=s+o+8|0;k=c[i>>2]|0;i=c[i+4>>2]|0;n=1}ea=j;c[ea>>2]=k;c[ea+4>>2]=i;i=(8<>2]|0;ea=c[ea+4>>2]|0;q=9<>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ea;if(n){$=i+8|0;ea=$;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ea}i=(c[ca>>2]|0)+1|0;r=f+27012|0;if((i|0)<(c[r>>2]|0)?(la=(c[A>>2]|0)+(i*96|0)|0,ea=la,aa=c[ea>>2]|0,ea=c[ea+4>>2]|0,ba=s+(17<>2]|0,la,c[la>>2]=c[_>>2],c[la+4>>2]=$,la=ba,c[la>>2]=aa,c[la+4>>2]=ea,n):0){Z=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;ea=Z;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=ba+8|0;_=la;$=c[_+4>>2]|0;ba=Z;c[ba>>2]=c[_>>2];c[ba+4>>2]=$;c[la>>2]=aa;c[la+4>>2]=ea}if(u){i=(24<>2]|0;ea=c[ea+4>>2]|0;k=-7<>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=i+8|0;ea=aa;ba=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ea}j=(40<>2]|0;ea=c[ea+4>>2]|0;i=z+k|0;$=i;aa=c[$+4>>2]|0;la=j;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=j+8|0;la=aa;ba=c[la>>2]|0;la=c[la+4>>2]|0;ea=i+8|0;_=ea;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[ea>>2]=ba;c[ea+4>>2]=la;ea=163}else ea=164}else if(n)ea=163;else ea=164;if((ea|0)==163){j=(16<>2]|0;i=x+o|0;n=i;c[n>>2]=c[ba>>2];c[n+4>>2]=la;i=i+8|0;j=j+8|0;n=1}else if((ea|0)==164){i=x+o|0;j=(16<>2]|0;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;i=(24<>2]|0;ba=c[ba+4>>2]|0;j=x+q|0;_=j;$=c[_+4>>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ba;if(n){i=i+8|0;aa=i;ba=c[aa>>2]|0;aa=c[aa+4>>2]|0;j=j+8|0;$=j;la=c[$+4>>2]|0;c[i>>2]=c[$>>2];c[i+4>>2]=la;c[j>>2]=ba;c[j+4>>2]=aa;j=(32<>2]|0;i=z+o|0;la=i;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;i=i+8|0;j=j+8|0}else{i=z+o|0;j=(32<>2]|0;j=i;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(40<>2]|0;ba=c[ba+4>>2]|0;i=z+q|0;_=i;$=c[_+4>>2]|0;la=j;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}i=(c[ca>>2]|0)+1|0;if((i|0)<(c[r>>2]|0)){j=16<>2]|0)+(i*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;k=17<>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}j=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;i=z+k|0;_=i;$=c[_+4>>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;la=$;ca=c[la>>2]|0;la=c[la+4>>2]|0;j=i+8|0;aa=j;ba=c[aa+4>>2]|0;i=$;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;c[j>>2]=ca;c[j+4>>2]=la;j=T;i=U}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{An(f,g,c[ja>>2]|0,c[ja+4>>2]|0,c[ja+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=da&16777216;H=f+144|0;i=f+140|0;G=f+28216|0;F=g+21660|0;E=g+28560|0;h=da&1}while(0);D=(h|0)==0;A=(da&2|0)==0;B=g+21856|0;z=(j|0)!=0;C=z?4:1;z=z?i:H;q=(j|0)==0;r=f+116|0;s=f+120|0;t=f+128|0;o=0;while(1){if((o|0)==3)break d;u=c[ia>>2]|0;v=c[ja+(o<<2)>>2]|0;w=o<<4;x=p+(w<<2)|0;k:do if(D){if(A){if(!(c[B>>2]&15))break;if(!ha)if(q){Wd[c[r>>2]&127](v,x,g+28560+(o<<8<>2]&127](v,x,g+28560+(o<<8<>2]|0;j=o<<8;h=0;while(1){if((h|0)>=16)break k;if(a[(d[215911+(h+w)>>0]|0)+(g+27824)>>0]|0)Ud[i&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<>2]&127](v,x,g+28560+(o<<8<>2]|0)+4>>2]|0)==244?(ga=c[F>>2]|0,(ga+-1|0)>>>0<2):0){Vd[c[f+25960+(ga<<2)>>2]&255](v,x,g+28560+(o<<8<>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(n<<1)>>1]|0;else i=c[E+(n<<2)>>2]|0;if(i|0)ea=191}else ea=191;if((ea|0)==191){ea=0;Ud[c[H>>2]&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+(n<>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ja+(i<<2)|0;n=i<<8;h=0;while(1){if((h|0)==16)break;o=(c[k>>2]|0)+(N(h,fa)|0)|0;p=(c[j>>2]|0)+n+(h<<4)|0;q=o+16|0;do{a[o>>0]=a[p>>0]|0;o=o+1|0;p=p+1|0}while((o|0)<(q|0));h=h+1|0}i=i+1|0}}o=c[(c[f+28216>>2]|0)+1184>>2]|0;rn(_,c[g+27780>>2]|0,o*768|0);j=0;while(1){if((j|0)==3)break;k=ja+(j<<2)|0;i=0;while(1){if((i|0)==16)break;n=(c[k>>2]|0)+(N(i,fa)|0)|0;h=0;while(1){if((h|0)==16)break;b[n+(h<<1)>>1]=sn(_,o)|0;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);l=ka;return}function qn(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;$=l;l=l+32|0;if((l|0)>=(m|0))W(32);_=$+8|0;D=$;I=g+21788|0;i=c[I>>2]|0;G=g+21792|0;k=c[G>>2]|0;F=g+21796|0;j=c[F>>2]|0;K=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;B=g+848|0;U=f+28216|0;h=c[U>>2]|0;if(!(c[B>>2]|0))R=(c[h+16>>2]|0)!=0;else R=0;v=16>>>(c[f+25680>>2]|0);V=(c[h+12>>2]|0)==2;S=c[f+24316>>2]|0;Y=f+25664|0;T=c[Y>>2]|0;E=i<>2]|0;n=(c[S>>2]|0)+((N(t,k)|0)+E<<4)|0;E=E<<3;h=g+21776|0;o=N(N(v,k)|0,c[h>>2]|0)|0;q=(c[S+4>>2]|0)+E+o|0;o=(c[S+8>>2]|0)+E+o|0;E=f+12|0;i=n+(N(i<<2&12,t)|0)+(64<>2]&1023](i,t,4);t=q+(N(c[I>>2]&7,c[h>>2]|0)|0)|0;Ud[c[E>>2]&1023](t+(64<>2])|0,o-q|0,2);t=g+23412|0;a[(c[f+26388>>2]|0)+j>>0]=c[t>>2];E=g+21828|0;i=c[Z>>2]|0;a:do if(c[E>>2]|0){r=i<<1;c[g+21780>>2]=r;h=c[h>>2]|0;s=h<<1;c[g+21784>>2]=s;u=f+26168|0;if(!(k&1))p=n;else{Z=N(1-v|0,h)|0;p=n+(N(i,-15)|0)|0;q=q+Z|0;o=o+Z|0}if(!(c[f+26376>>2]|0)){O=r;Z=s;S=u;M=p;T=o}else{j=(K&8|0)==0;i=0;while(1){if(i>>>0>=(c[t>>2]|0)>>>0){O=r;Z=s;S=u;M=p;T=o;break a}b:do if(12288<<(i<<1)&K|0){if(j)h=0;else{T=g+28272+(i*40|0)+12|0;Z=N((a[T>>0]|0)+16^c[G>>2]&1,16843009)|0;c[T>>2]=Z;c[g+28272+(i*40|0)+20>>2]=Z;c[g+28272+(i*40|0)+28>>2]=Z;c[g+28272+(i*40|0)+36>>2]=Z;break}while(1){if((h|0)>=16)break b;k=(d[215911+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){Z=(c[G>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=Z;b[k+8>>1]=Z}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;Z=c[h>>2]|0;c[g+21784>>2]=Z;O=i;S=f+25976|0;M=n;T=o}while(0);c:do if(!(K&4)){J=(K&7|0)!=0;d:do if(J){C=g+868|0;i=c[C>>2]|0;e:do if(i|0){z=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[I>>2]|0}else{w=c[I>>2]|0;s=(w|0)>0;i=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}r=M+(0-(O+1+z))|0;x=0-(Z+1+z)|0;u=q+x|0;x=T+x|0;p=g+27796+(h<<2)|0;v=c[p>>2]|0;t=w+-1|0;n=v+(w*96|0)|0;if(i|0){j=(z|0)==0;do if(s){h=(8<>2]|0;k=c[k+4>>2]|0;i=r+(-7<>2]|0;o=h;c[o>>2]=c[ca>>2];c[o+4>>2]=ba;o=i;c[o>>2]=aa;c[o+4>>2]=k;if(j){h=n;i=r+1|0;j=0;k=c[h>>2]|0;h=c[h+4>>2]|0;break}else{ba=h+8|0;o=ba;j=c[o>>2]|0;o=c[o+4>>2]|0;h=i+8|0;ca=h;X=c[ca+4>>2]|0;i=ba;c[i>>2]=c[ca>>2];c[i+4>>2]=X;c[h>>2]=j;c[h+4>>2]=o;h=n;o=1<>2]|0;h=c[h+4>>2]|0;X=69;break}}else{h=n;k=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[n>>2]=c[ca>>2];c[n+4>>2]=k;n=i;c[n>>2]=j;c[n+4>>2]=h;n=v+(w*96|0)+8|0;h=n;i=r+o+8|0;j=1;k=c[h>>2]|0;h=c[h+4>>2]|0}o=i;aa=c[o+4>>2]|0;ba=n;c[ba>>2]=c[o>>2];c[ba+4>>2]=aa;ba=i;c[ba>>2]=k;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=r+(9<>2]|0;ca=h;c[ca>>2]=c[n>>2];c[ca+4>>2]=o;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){o=h+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;k=ca;n=c[k+4>>2]|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[p>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,A=r+(17<>2]|0,ca,c[ca>>2]=c[o>>2],c[ca+4>>2]=r,ca=A,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){o=(c[p>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=A+8|0;p=ca;r=c[p+4>>2]|0;A=o;c[A>>2]=c[p>>2];c[A+4>>2]=r;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[s>>2];c[ca+4>>2]=A;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=h+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;r=ca;s=c[r+4>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=s;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+k|0;t=h;A=c[t+4>>2]|0;ca=i;c[ca>>2]=c[t>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;t=j;A=c[t+4>>2]|0;c[aa>>2]=c[t>>2];c[aa+4>>2]=A;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=v+(w*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=u+1+z|0;u=h;A=c[u+4>>2]|0;ca=i;c[ca>>2]=c[u>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;t=ca;u=c[t+4>>2]|0;c[A>>2]=c[t>>2];c[A+4>>2]=u;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+1+z|0;z=h;A=c[z+4>>2]|0;ca=i;c[ca>>2]=c[z>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;x=ca;z=c[x+4>>2]|0;c[A>>2]=c[x>>2];c[A+4>>2]=z;c[ca>>2]=aa;c[ca+4>>2]=ba}}}while(0);z=g+21656|0;Td[c[f+25844+(c[z>>2]<<2)>>2]&255](q,Z);Td[c[f+25844+(c[z>>2]<<2)>>2]&255](T,Z);z=c[Y>>2]|0;h=c[B>>2]|0;f:do if(!(K&1)){Td[c[f+25888+(c[g+21660>>2]<<2)>>2]&255](M,O);if(a[g+27824>>0]|0){if(!R){Ud[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28212>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}n=g+28560|0;i=(z|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[205198+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[n+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(K&16777216|0){if(R){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}o=f+25704|0;p=g+21756|0;r=g+21764|0;s=(z|0)==0;t=g+28560|0;n=0;while(1){if((n|0)>=16)break f;u=M+(c[S+(n<<2)>>2]|0)|0;h=d[215911+n>>0]|0;ca=a[g+21664+h>>0]|0;i=ca<<24>>24;do if(R?(ca<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)if((c[o>>2]|0)>>>0<151){Ud[c[f+25932+(i<<2)>>2]&1023](u,g+28560+(n<<4<>2]&127](u,g+28560+(n<<4<>2]<>2]<>0]|0;Vd[c[f+25796+(i<<2)>>2]&255](u,c[p>>2]<>2]<>24){case 0:break g;case 1:{h=n<<4;if(s)i=e[g+28560+(h<<1)>>1]|0;else i=c[t+(h<<2)>>2]|0;if(i){Ud[k&1023](u,g+28560+(h<>2]|0;k=n}else{k=c[f+100>>2]|0;n=c[f+108>>2]|0}p=g+21764|0;r=(z|0)==0;s=3-O|0;t=3-((O|0)/2|0)|0;u=4<>2]|0)|0;i=d[215911+o>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(R?(h<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)Ud[c[f+25924+(j<<2)>>2]&1023](x,g+28560+(o<<4<>24==7){if(c[p>>2]&32768>>>o|0){h=x+u+v|0;break}if(r){c[_>>2]=N(d[x+s>>0]|0,16843009)|0;h=_;break}else{ca=uZ(e[x+(t<<1)>>1]|0,0,65537,65537)|0;h=D;c[h>>2]=ca;c[h+4>>2]=y;h=D;break}}else h=0;while(0);Ud[c[f+25736+(j<<2)>>2]&1023](x,h,O);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=o<<4;if(r)i=e[g+28560+(h<<1)>>1]|0;else i=c[w+(h<<2)>>2]|0;if(!i)X=126;else Ud[n&1023](x,g+28560+(h<>2]|0;if(i|0){x=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){r=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;v=c[I>>2]|0}else{v=c[I>>2]|0;r=(v|0)>0;h=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}p=M+(0-(O+1+x))|0;w=0-(Z+1+x)|0;t=q+w|0;w=T+w|0;o=g+27796+(j<<2)|0;u=c[o>>2]|0;s=v+-1|0;j=u+(v*96|0)|0;if(h|0){n=(x|0)==0;do if(r){h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(-7<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(n){h=j;k=p+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=0;break}else{X=h+8|0;k=X;h=c[k>>2]|0;k=c[k+4>>2]|0;i=i+8|0;ba=i;ca=c[ba+4>>2]|0;c[X>>2]=c[ba>>2];c[X+4>>2]=ca;c[i>>2]=h;c[i+4>>2]=k;i=j;k=1<>2]|0;i=c[i>>2]|0;X=152;break}}else{h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;k=1<>2]=i;c[j+4>>2]=h;h=u+(v*96|0)+8|0;k=p+k+8|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1}ba=k;c[ba>>2]=i;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(9<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){G=h+8|0;ba=G;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;E=ca;F=c[E+4>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=F;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[o>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,H=p+(17<>2]|0,ca,c[ca>>2]=c[F>>2],c[ca+4>>2]=G,ca=H,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){I=(c[o>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=H+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=h+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+k|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;H=j;I=c[H+4>>2]|0;c[aa>>2]=c[H>>2];c[aa+4>>2]=I;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=u+(v*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=t+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;n=f+16|0;o=f+32|0;if(V){tn(f,g,M,q,T,h,i,j,k,n,o);break}else{un(f,g,M,q,T,h,i,j,k,n,o);break}}while(0);p=c[Y>>2]|0;h:do if(!(K&1)){if(!(K&2)){if(!(c[g+21856>>2]&15))break;h=K&16777216;if(!R)if(!h){Wd[c[f+116>>2]&127](M,S,g+28560|0,O,g+27824|0);break}else{Wd[c[f+120>>2]&127](M,S,g+28560|0,O,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if((h|0)>=16)break h;if(a[(d[215911+h>>0]|0)+(g+27824)>>0]|0)Ud[j&1023](M+(c[S+(h<<2)>>2]|0)|0,g+28560+(h<<4<>2]&127](M,S,g+28560|0,O,g+27824|0);break}if((c[(c[U>>2]|0)+4>>2]|0)==244?(L=c[g+21660>>2]|0,(L+-1|0)>>>0<2):0){Vd[c[f+25960+(L<<2)>>2]&255](M,S,g+28560|0,O);break}j=(p|0)==0;k=g+28560|0;n=f+144|0;i=0;while(1){if((i|0)==16)break h;o=i<<4;if(!(a[(d[215911+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(o<<1)>>1]|0;else h=c[k+(o<<2)>>2]|0;if(h|0)X=183}else X=183;if((X|0)==183){X=0;Ud[c[n>>2]&1023](M+(c[S+(i<<2)>>2]|0)|0,g+28560+(o<>2]&48|0){c[_>>2]=q;h=_+4|0;c[h>>2]=T;i:do if(R){if((J?(c[(c[U>>2]|0)+4>>2]|0)==244:0)?(P=g+21656|0,Q=c[P>>2]|0,(Q+-1|0)>>>0<2):0){Vd[c[f+25948+(Q<<2)>>2]&255](q,S+64|0,g+28560+(256<>2]<<1)|0,Z);Vd[c[f+25948+(c[P>>2]<<2)>>2]&255](c[h>>2]|0,S+128|0,g+28560+(512<>2]<<1)|0,Z);break}r=c[f+144>>2]|0;s=g+28560|0;q=1;while(1){if((q|0)==3)break i;j=q<<4;o=j|4;t=_+(q+-1<<2)|0;i=j;while(1){if((i|0)>=(o|0))break;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[215911+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=211}else X=211;if((X|0)==211){X=0;Ud[r&1023]((c[t>>2]|0)+(c[S+(i<<2)>>2]|0)|0,g+28560+(n<=(p|0))break j;j=i+4|0;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[215911+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=221}else X=221;if((X|0)==221){X=0;Ud[r&1023]((c[t>>2]|0)+(c[S+(j<<2)>>2]|0)|0,g+28560+(n<>2]|0;if(V){i=(c[g+856>>2]|0)+3|0;h=h+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)Td[c[f+136>>2]&255](g+28560+(256<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)Td[c[f+136>>2]&255](g+28560+(512<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);Wd[c[f+124>>2]&127](_,S,g+28560|0,Z,g+27824|0)}while(0)}}else{h=c[U>>2]|0;o=c[h+1184>>2]|0;if(!(c[Y>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=M+(N(h,O)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;n=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(n|0));h=h+1|0}if(!(c[(c[U>>2]|0)+12>>2]|0)){i=1<>2]|0)+256|0;j=i+(v<<3)|0;h=0;while(1){if((h|0)>=(v|0))break c;ca=N(h,Z)|0;ba=h<<3;aa=i+ba|0;Y=aa;Y=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;aa=aa+4|0;aa=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;_=q+ca|0;g=_;a[g>>0]=Y;a[g+1>>0]=Y>>8;a[g+2>>0]=Y>>16;a[g+3>>0]=Y>>24;_=_+4|0;a[_>>0]=aa;a[_+1>>0]=aa>>8;a[_+2>>0]=aa>>16;a[_+3>>0]=aa>>24;ba=j+ba|0;_=ba;_=d[_>>0]|d[_+1>>0]<<8|d[_+2>>0]<<16|d[_+3>>0]<<24;ba=ba+4|0;ba=d[ba>>0]|d[ba+1>>0]<<8|d[ba+2>>0]<<16|d[ba+3>>0]<<24;ca=T+ca|0;aa=ca;a[aa>>0]=_;a[aa+1>>0]=_>>8;a[aa+2>>0]=_>>16;a[aa+3>>0]=_>>24;ca=ca+4|0;a[ca>>0]=ba;a[ca+1>>0]=ba>>8;a[ca+2>>0]=ba>>16;a[ca+3>>0]=ba>>24;h=h+1|0}}}rn(_,c[g+27780>>2]|0,N(o,e[172592+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=M+(N(i,O)|0)|0;h=0;while(1){if((h|0)==16)break;b[j+(h<<1)>>1]=sn(_,o)|0;h=h+1|0}i=i+1|0}k:do if(!(c[(c[U>>2]|0)+12>>2]|0)){j=1<=(v|0))break k;n=N(i,Z)|0;k=q+n|0;n=T+n|0;h=0;while(1){if((h|0)==8)break;b[n+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(v|0)){i=0;break}j=q+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=sn(_,o)|0;h=h+1|0}i=i+1|0}while(1){if((i|0)>=(v|0))break k;j=T+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=sn(_,o)|0;h=h+1|0}i=i+1|0}}while(0)}while(0);l=$;return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function sn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function tn(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)vn(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Ud[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Ud[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;zn(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);zn(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;zn(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);zn(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;zn(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);zn(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;zn(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);zn(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;zn(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else zn(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else zn(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Ud[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Ud[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function un(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)vn(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Ud[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Ud[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;wn(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);wn(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;wn(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);wn(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;wn(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);wn(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;wn(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);wn(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;wn(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else wn(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else wn(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Ud[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Ud[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function vn(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+208|0;if((l|0)>=(m|0))W(208);u=w+8|0;v=w;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;t=v;c[t>>2]=0;c[t+4>>2]=0;FZ(u|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){xn(a,d,u,0,8,0,f&4096,f&16384,v);xn(a,d,u,8,8,8,f&8192,f&32768,v);break}if(f&32|0){xn(a,d,u,0,16,0,f&4096,f&16384,v);xn(a,d,u,4,16,0,f&8192,f&32768,v);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){s=f&4096;t=f&16384;xn(a,d,u,h,4,i,s,t,v);xn(a,d,u,h|2,4,i|4,s,t,v);break}j=f&4096;k=f&16384;if(!(f&32))f=0;else{xn(a,d,u,h,8,i,j,k,v);xn(a,d,u,h|1,8,i,j,k,v);break}while(1){if((f|0)==4)break b;xn(a,d,u,f+h|0,4,f<<1&4|i,j,k,v);f=f+1|0}}else xn(a,d,u,h,8,i,f&4096,f&16384,v);while(0);g=g+1|0}}else xn(a,d,u,0,16,0,f&4096,f&16384,v);while(0);s=a+27008|0;t=d+21832|0;r=a+26380|0;f=c[d+23412>>2]|0;c:while(1){f=f+-1|0;if((f|0)<=-1)break;p=v+(f<<2)|0;o=0;while(1){if((o|0)>=48)continue c;h=c[p>>2]|0;if(!h)continue c;g=b[u+(f*96|0)+(o<<1)>>1]|0;do if(g<<16>>16>-1){q=(c[d+23416+(f*1920|0)+(o*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(o*40|0)+36|0;j=c[i>>2]|0;x=c[j+636>>2]|0;n=c[s>>2]<<4>>x;k=g<<16>>16<>2];c[p>>2]=h+-1;a=(c[r>>2]|0)==3;g=(x|0)!=0;if(g&a){x=k>>1;a=x-(k&1^1)|0;q=n+-1|0;il(j+4|0,(a|0)<(n|0)?a:q,1);il((c[i>>2]|0)+4|0,(x|0)>(q|0)?q:x,0);break}h=j+4|0;if(!(g|a)){x=(k<<1)+q|0;il(h,(x|0)<(n|0)?x:n+-1|0,0);break}g=n+-1|0;g=(k|0)>(g|0)?g:k;if(a){il(h,g,0);break}else{il(h,g,q);break}}while(0);o=o+1|0}}l=w;return}function wn(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;M=f+880|0;x=c[M>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){V=d[215911+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+V>>0]|0)*384|0)+(a[f+28312+V>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=44;else{P=x;x=5}}else if((x|0)==1){y=f+21792|0;P=y;y=c[y>>2]|0;x=5}else x=44;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;K=c[u>>2]|0;J=c[u+4>>2]|0;O=c[e+25664>>2]|0;V=f+21780|0;s=c[V>>2]|0;S=k+((N(o<<1,s)|0)+(n<<1<>1;U=f+21784|0;x=c[U>>2]|0;Q=(N(x,o)|0)+(n<>2]<<3)+n|0;L=f+21828|0;n=c[L>>2]|0;y=(y>>n<<3)+o|0;if(!(z&A)){B=A&1;z=d[215911+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;k=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;v=z<<2&12|k&3;x=k>>2;y=z>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;u=m<<4;A=c[e+27008>>2]<<4>>n;n=k&7;M=(n|0)==0?0:-3;g=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(y|0)<(0-g|0))?(x+16|0)<=(M+u|0):0)?(y+16|0)<=(A+g|0):0){l=0;y=s}else{g=f+27792|0;l=2<>2]&3](c[g>>2]|0,t+(0-l)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+l+(y<<1)|0;l=1}x=p+(v<<2)|0;Ud[c[x>>2]&1023](S,t,y);if(!h)Ud[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){z=(1-(c[f+23416+(B*1920|0)+(o*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(A>>1|0)}k=k>>3;v=k<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+v+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+v+x|0;v=f+27792|0;if(!l){y=z&7;Xd[q&63](R,u,t,T,n,y)}else{j=A>>1;h=m<<3;O=e+8|0;_d[c[O>>2]&3](c[v>>2]|0,u,t,t,9,9,k,y,h,j);e=z&7;Xd[q&63](R,c[v>>2]|0,c[U>>2]|0,T,n,e);P=c[U>>2]|0;_d[c[O>>2]&3](c[v>>2]|0,x,P,P,9,9,k,y,h,j);x=c[v>>2]|0;y=e}Xd[q&63](Q,x,c[U>>2]|0,T,n,y);Xd[D&63](S,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;Xd[C&63](R,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Xd[C&63](Q,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}H=c[f+27788>>2]|0;I=H+(16<>0]|0;w=a[f+28272+C>>0]|0;F=a[f+28312+C>>0]|0;o=t<<3;z=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;l=B+(b[f+27952+(C<<2)+2>>1]|0)|0;v=l<<2&12|z&3;x=z>>2;y=l>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;E=e+27012|0;m=c[E>>2]|0;u=m<<4;r=e+27008|0;A=c[r>>2]<<4>>n;n=z&7;D=(n|0)==0?0:-3;g=(l&7|0)==0?0:-3;if((!((x|0)<(0-D|0)|(y|0)<(0-g|0))?(x+16|0)<=(D+u|0):0)?(y+16|0)<=(A+g|0):0){k=0;y=s}else{g=f+27792|0;k=2<>2]&3](c[g>>2]|0,t+(0-k)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Ud[c[x>>2]&1023](S,t,y);D=(h|0)!=0;if(!D)Ud[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+23416+(w*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;h=l>>3;k=h>>>31|k|(h+8|0)>=(A>>1|0)}y=z>>3;s=y<>3;u=c[U>>2]|0;x=N(u,t)|0;v=(c[f+23416+(w*40|0)+4>>2]|0)+s+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+s+x|0;s=f+27792|0;if(!k){y=l&7;Xd[q&63](R,v,u,T,n,y)}else{g=A>>1;m=m<<3;z=e+8|0;_d[c[z>>2]&3](c[s>>2]|0,v,u,u,9,9,y,t,m,g);h=l&7;Xd[q&63](R,c[s>>2]|0,c[U>>2]|0,T,n,h);A=c[U>>2]|0;_d[c[z>>2]&3](c[s>>2]|0,x,A,A,9,9,y,t,m,g);x=c[s>>2]|0;y=h}Xd[q&63](Q,x,c[U>>2]|0,T,n,y);A=o+(b[f+28112+(C<<2)>>1]|0)|0;l=B+(b[f+28112+(C<<2)+2>>1]|0)|0;z=l<<2&12|A&3;u=A>>2;v=l>>2;y=c[V>>2]|0;t=(N(v,y)|0)+(u<>2]|0)+t|0;n=c[E>>2]|0;x=n<<4;m=c[r>>2]<<4>>c[L>>2];o=A&7;g=(o|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(v|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(v+16|0)<=(m+h|0):0)k=0;else{k=2<>2]&3](c[s>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,x,m);y=c[V>>2]|0;t=(c[s>>2]|0)+k+(y<<1)|0;k=1}x=p+(z<<2)|0;Ud[c[x>>2]&1023](G,t,y);if(!D)Ud[c[x>>2]&1023](G+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+25336+(F*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;j=l>>3;k=j>>>31|k|(j+8|0)>=(m>>1|0)}v=A>>3;j=v<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+25336+(F*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(F*40|0)+8>>2]|0)+j+x|0;if(!k){y=l&7;Xd[q&63](H,u,t,T,o,y)}else{j=m>>1;h=n<<3;g=e+8|0;_d[c[g>>2]&3](c[s>>2]|0,u,t,t,9,9,v,y,h,j);e=l&7;Xd[q&63](H,c[s>>2]|0,c[U>>2]|0,T,o,e);O=c[U>>2]|0;_d[c[g>>2]&3](c[s>>2]|0,x,O,O,9,9,v,y,h,j);x=c[s>>2]|0;y=e}Xd[q&63](I,x,c[U>>2]|0,T,o,y);if((c[M>>2]|0)==2){e=c[f+3216+(w*384|0)+(F<<3)+((c[P>>2]&1)<<2)>>2]|0;f=64-e|0;Yd[K&31](S,G,c[V>>2]|0,i,5,e,f,0);Yd[J&31](R,H,c[U>>2]|0,T,5,e,f,0);Yd[J&31](Q,I,c[U>>2]|0,T,5,e,f,0);break}else{Yd[K&31](S,G,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(F<<4)+8>>2]|0,(c[f+912+(F<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);i=f+892|0;Yd[J&31](R,H,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(F<<5)+16>>2]|0,(c[f+1680+(F<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Yd[J&31](Q,I,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(F<<5)+24>>2]|0,(c[f+1680+(F<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==44){J=c[e+25664>>2]|0;I=f+21780|0;y=c[I>>2]|0;H=k+((N(o<<1,y)|0)+(n<<1<>2]|0,o)|0)+(n<>2]<<3)+n|0;F=f+21792|0;G=f+21828|0;x=c[G>>2]|0;E=(c[F>>2]>>x<<3)+o|0;if(v){z=d[215911+g>>0]|0;n=a[f+28272+z>>0]|0;m=(D<<3)+(b[f+27952+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+27952+(z<<2)+2>>1]|0)|0;A=z<<2&12|m&3;u=m>>2;v=z>>2;t=(N(v,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;k=B<<4;o=c[e+27008>>2]<<4>>x;C=m&7;U=(C|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((u|0)<(0-U|0)|(v|0)<(0-V|0))?(u+16|0)<=(U+k|0):0)?(v+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,k,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(A<<2)|0;Ud[c[x>>2]&1023](H,t,y);if(!h)Ud[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+23416+(n*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;V=z>>3;l=V>>>31|l|(V+8|0)>=(o>>1|0)}t=m>>3;y=t<>3;v=c[M>>2]|0;x=N(v,u)|0;k=(c[f+23416+(n*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(n*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Xd[q&63](K,k,v,y,C,t)}else{T=o>>1;S=B<<3;Q=e+8|0;_d[c[Q>>2]&3](c[y>>2]|0,k,v,v,9,9,t,u,S,T);U=i>>1;V=z&7;Xd[q&63](K,c[y>>2]|0,c[M>>2]|0,U,C,V);R=c[M>>2]|0;_d[c[Q>>2]&3](c[y>>2]|0,x,R,R,9,9,t,u,S,T);x=c[y>>2]|0;y=U;t=V}Xd[q&63](L,x,c[M>>2]|0,y,C,t);q=s;p=r}if(w|0){z=d[215911+g>>0]|0;m=a[f+28312+z>>0]|0;A=(D<<3)+(b[f+28112+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+28112+(z<<2)+2>>1]|0)|0;k=z<<2&12|A&3;x=A>>2;u=z>>2;y=c[I>>2]|0;t=(N(u,y)|0)+(x<>2]|0)+t|0;n=c[e+27012>>2]|0;v=n<<4;o=c[e+27008>>2]<<4>>c[G>>2];B=A&7;U=(B|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((x|0)<(0-U|0)|(u|0)<(0-V|0))?(x+16|0)<=(v+U|0):0)?(u+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,x+-2|0,u+-2|0,v,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(k<<2)|0;Ud[c[x>>2]&1023](H,t,y);if(!h)Ud[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+25336+(m*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(o>>1|0)}k=A>>3;y=k<>3;u=c[M>>2]|0;x=N(u,t)|0;v=(c[f+25336+(m*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(m*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Xd[q&63](K,v,u,y,B,t)}else{j=o>>1;h=n<<3;V=e+8|0;_d[c[V>>2]&3](c[y>>2]|0,v,u,u,9,9,k,t,h,j);f=i>>1;i=z&7;Xd[q&63](K,c[y>>2]|0,c[M>>2]|0,f,B,i);e=c[M>>2]|0;_d[c[V>>2]&3](c[y>>2]|0,x,e,e,9,9,k,t,h,j);x=c[y>>2]|0;y=f;t=i}Xd[q&63](L,x,c[M>>2]|0,y,B,t)}}while(0);return}function xn(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[215911+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=yn(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[215911+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=yn(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function yn(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[215911+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+(g&3|0?3:0)|0;return ((g|0)>0?g:0)|0}function zn(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;x=c[O>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){U=d[215911+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=38;else{M=x;x=5}}else if((x|0)==1){y=f+21792|0;M=y;y=c[y>>2]|0;x=5}else x=38;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;L=c[u>>2]|0;K=c[u+4>>2]|0;P=c[e+25664>>2]|0;Q=o<<1;U=f+21780|0;E=c[U>>2]|0;S=k+((N(E,Q)|0)+(n<<1<>2]|0;Q=(N(x,Q)|0)+(n<>2]<<3)+n|0;r=f+21828|0;l=c[r>>2]|0;y=(y>>l<<3)+o|0;if(!(z&A)){B=A&1;z=d[215911+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;v=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;u=z<<2&12|v&3;x=v>>2;A=z>>2;t=(N(A,E)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;y=m<<4;l=c[e+27008>>2]<<4>>l;n=v&7;M=(n|0)==0?0:-3;O=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(A|0)<(0-O|0))?(x+16|0)<=(M+y|0):0)?(A+16|0)<=(l+O|0):0){k=0;y=E}else{O=f+27792|0;k=2<>2]&3](c[O>>2]|0,t+(0-k)+(0-(E<<1))|0,E,E,21,21,x+-2|0,A+-2|0,y,l);y=c[U>>2]|0;t=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;Ud[c[x>>2]&1023](S,t,y);if(!h)Ud[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);v=v>>3;u=v<>2]|0;x=N(y,A)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+u+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+u+x|0;u=f+27792|0;if(!k){e=z<<1&6;Xd[q&63](R,t,y,i,n,e);y=e}else{j=m<<3;h=e+8|0;_d[c[h>>2]&3](c[u>>2]|0,t,y,y,9,17,v,A,j,l);y=z<<1&6;Xd[q&63](R,c[u>>2]|0,c[T>>2]|0,i,n,y);e=c[T>>2]|0;_d[c[h>>2]&3](c[u>>2]|0,x,e,e,9,17,v,A,j,l);x=c[u>>2]|0}Xd[q&63](Q,x,c[T>>2]|0,i,n,y);Xd[D&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;Xd[C&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Xd[C&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}I=c[f+27788>>2]|0;J=I+(16<>0]|0;w=a[f+28272+C>>0]|0;G=a[f+28312+C>>0]|0;o=t<<3;k=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;m=B+(b[f+27952+(C<<2)+2>>1]|0)|0;u=m<<2&12|k&3;x=k>>2;z=m>>2;y=(N(z,E)|0)+(x<>2]|0)+y|0;D=e+27012|0;A=c[D>>2]|0;t=A<<4;s=e+27008|0;l=c[s>>2]<<4>>l;n=k&7;F=(n|0)==0?0:-3;g=(m&7|0)==0?0:-3;if((!((x|0)<(0-F|0)|(z|0)<(0-g|0))?(x+16|0)<=(F+t|0):0)?(z+16|0)<=(l+g|0):0){t=y;v=0;y=E}else{g=f+27792|0;v=2<>2]&3](c[g>>2]|0,y+(0-v)+(0-(E<<1))|0,E,E,21,21,x+-2|0,z+-2|0,t,l);y=c[U>>2]|0;t=(c[g>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;Ud[c[x>>2]&1023](S,t,y);E=(h|0)!=0;if(!E)Ud[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);y=k>>3;F=y<>2]|0;x=N(t,z)|0;u=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!v){y=m<<1&6;Xd[q&63](R,u,t,i,n,y)}else{g=A<<3;A=e+8|0;_d[c[A>>2]&3](c[F>>2]|0,u,t,t,9,17,y,z,g,l);h=m<<1&6;Xd[q&63](R,c[F>>2]|0,c[T>>2]|0,i,n,h);m=c[T>>2]|0;_d[c[A>>2]&3](c[F>>2]|0,x,m,m,9,17,y,z,g,l);x=c[F>>2]|0;y=h}Xd[q&63](Q,x,c[T>>2]|0,i,n,y);z=o+(b[f+28112+(C<<2)>>1]|0)|0;n=B+(b[f+28112+(C<<2)+2>>1]|0)|0;k=n<<2&12|z&3;u=z>>2;o=n>>2;y=c[U>>2]|0;t=(N(o,y)|0)+(u<>2]|0)+t|0;A=c[D>>2]|0;x=A<<4;l=c[s>>2]<<4>>c[r>>2];m=z&7;g=(m|0)==0?0:-3;h=(n&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(o|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(o+16|0)<=(l+h|0):0)v=0;else{v=2<>2]&3](c[F>>2]|0,t+(0-v)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,x,l);y=c[U>>2]|0;t=(c[F>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;Ud[c[x>>2]&1023](H,t,y);if(!E)Ud[c[x>>2]&1023](H+j|0,t+j|0,c[U>>2]|0);u=z>>3;j=u<>2]|0;x=N(y,o)|0;t=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=n<<1&6;Xd[q&63](I,t,y,i,m,e);y=e}else{j=A<<3;h=e+8|0;_d[c[h>>2]&3](c[F>>2]|0,t,y,y,9,17,u,o,j,l);y=n<<1&6;Xd[q&63](I,c[F>>2]|0,c[T>>2]|0,i,m,y);e=c[T>>2]|0;_d[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,u,o,j,l);x=c[F>>2]|0}Xd[q&63](J,x,c[T>>2]|0,i,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[M>>2]&1)<<2)>>2]|0;f=64-e|0;Yd[L&31](S,H,c[U>>2]|0,i,5,e,f,0);Yd[K&31](R,I,c[T>>2]|0,i,5,e,f,0);Yd[K&31](Q,J,c[T>>2]|0,i,5,e,f,0);break}else{Yd[L&31](S,H,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;Yd[K&31](R,I,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Yd[K&31](Q,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==38){I=c[e+25664>>2]|0;K=o<<1;H=f+21780|0;y=c[H>>2]|0;G=k+((N(y,K)|0)+(n<<1<>2]|0,K)|0)+(n<>2]<<3)+n|0;F=f+21828|0;x=c[F>>2]|0;E=(c[f+21792>>2]>>x<<3)+o|0;if(v){n=d[215911+g>>0]|0;A=a[f+28272+n>>0]|0;l=(D<<3)+(b[f+27952+(n<<2)>>1]|0)|0;n=(E<<3)+(b[f+27952+(n<<2)+2>>1]|0)|0;k=n<<2&12|l&3;u=l>>2;o=n>>2;t=(N(o,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;v=B<<4;m=c[e+27008>>2]<<4>>x;C=l&7;T=(C|0)==0?0:-3;U=(n&7|0)==0?0:-3;if((!((u|0)<(0-T|0)|(o|0)<(0-U|0))?(u+16|0)<=(T+v|0):0)?(o+16|0)<=(m+U|0):0)z=0;else{U=f+27792|0;z=2<>2]&3](c[U>>2]|0,t+(0-z)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,v,m);y=c[H>>2]|0;t=(c[U>>2]|0)+z+(y<<1)|0;z=1}x=p+(k<<2)|0;Ud[c[x>>2]&1023](G,t,y);if(!h)Ud[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);t=l>>3;y=t<>2]|0;x=N(u,o)|0;v=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!z){y=n<<1&6;Xd[q&63](J,v,u,i,C,y)}else{T=B<<3;R=e+8|0;_d[c[R>>2]&3](c[y>>2]|0,v,u,u,9,17,t,o,T,m);U=n<<1&6;Xd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,C,U);S=c[L>>2]|0;_d[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,t,o,T,m);x=c[y>>2]|0;y=U}Xd[q&63](K,x,c[L>>2]|0,i,C,y);q=s;p=r}if(w|0){m=d[215911+g>>0]|0;A=a[f+28312+m>>0]|0;l=(D<<3)+(b[f+28112+(m<<2)>>1]|0)|0;m=(E<<3)+(b[f+28112+(m<<2)+2>>1]|0)|0;v=m<<2&12|l&3;x=l>>2;n=m>>2;y=c[H>>2]|0;t=(N(n,y)|0)+(x<>2]|0)+t|0;o=c[e+27012>>2]|0;u=o<<4;z=c[e+27008>>2]<<4>>c[F>>2];B=l&7;T=(B|0)==0?0:-3;U=(m&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(n|0)<(0-U|0))?(x+16|0)<=(u+T|0):0)?(n+16|0)<=(z+U|0):0)k=0;else{U=f+27792|0;k=2<>2]&3](c[U>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,n+-2|0,u,z);y=c[H>>2]|0;t=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Ud[c[x>>2]&1023](G,t,y);if(!h)Ud[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);v=l>>3;y=v<>2]|0;x=N(t,n)|0;u=(c[f+25336+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=m<<1&6;Xd[q&63](J,u,t,i,B,y)}else{j=o<<3;h=e+8|0;_d[c[h>>2]&3](c[y>>2]|0,u,t,t,9,17,v,n,j,z);f=m<<1&6;Xd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,B,f);e=c[L>>2]|0;_d[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,v,n,j,z);x=c[y>>2]|0;y=f}Xd[q&63](K,x,c[L>>2]|0,i,B,y)}}while(0);return}function An(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)vn(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){A=q<<24>>24;B=c[f+21788>>2]|0;B=((B<<4|8)+(b[f+28e3>>1]>>2)<>2]<<4|B<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;C=f+21772|0;Ud[c[z>>2]&1023]((c[f+23416+(A*40|0)>>2]|0)+B|0,c[C>>2]|0,4);Ud[c[z>>2]&1023]((c[f+23416+(A*40|0)+4>>2]|0)+B|0,c[C>>2]|0,4);Ud[c[z>>2]&1023]((c[f+23416+(A*40|0)+8>>2]|0)+B|0,c[C>>2]|0,4)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;Bn(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);Bn(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}A=f+21780|0;if(D&32|0){w=j+64|0;x=k+4|0;y=l+64|0;z=m+4|0;B=n+4|0;C=o+4|0;Bn(d,f,0,0,16,c[A>>2]<<3,g,h,i,0,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&4096,D&16384);Bn(d,f,4,0,16,c[A>>2]<<3,g,h,i,4,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&8192,D&32768);break}B=j+128|0;C=k+8|0;w=l+128|0;x=m+8|0;y=n+8|0;z=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;Bn(d,f,n,0,4,4<>2],g,h,i,o,j,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);Bn(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;Bn(d,f,n,0,8,c[A>>2]<<2,g,h,i,o,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);Bn(d,f,n|1,0,8,c[A>>2]<<2,g,h,i,o|2,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Bn(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,l,q);p=p+1|0}}else Bn(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else Bn(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){G=F<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;i=f+21772|0;Ud[c[g>>2]&1023]((c[f+25336+(G*40|0)>>2]|0)+h|0,c[i>>2]|0,4);Ud[c[g>>2]&1023]((c[f+25336+(G*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);Ud[c[g>>2]&1023]((c[f+25336+(G*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function Bn(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0;K=f+880|0;q=c[K>>2]|0;x=(v|0)!=0;y=(w|0)!=0;if(y&(x&(q|0)==2)){Q=d[215911+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=59;else{J=q;q=5}}else if((q|0)==1){s=f+21792|0;J=s;s=c[s>>2]|0;q=5}else q=59;do if((q|0)==5){z=c[t>>2]|0;I=c[u>>2]|0;L=c[e+25664>>2]|0;Q=f+21780|0;w=c[Q>>2]|0;M=(N(o<<1,w)|0)+(n<<1<>2]<<3)+n|0;B=f+21828|0;u=c[B>>2]|0;q=(s>>u<<3)+o|0;if(!(x&y)){o=y&1;K=d[215911+g>>0]|0;n=a[f+28272+(o*40|0)+K>>0]|0;J=(t<<3)+(b[f+27952+(o*160|0)+(K<<2)>>1]|0)|0;K=(q<<3)+(b[f+27952+(o*160|0)+(K<<2)+2>>1]|0)|0;t=K<<2&12|J&3;y=J>>2;l=K>>2;v=(N(l,w)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>u;J=(J&7|0)==0?0:-3;K=(K&7|0)==0?0:-3;if((!((y|0)<(0-J|0)|(l|0)<(0-K|0))?(y+16|0)<=(J+m|0):0)?(l+16|0)<=(k+K|0):0){u=0;s=w}else{K=f+27792|0;u=2<>2]&3](c[K>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Ud[c[x>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)Ud[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){K=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[x>>2]&1023](O,q,s);if(!p)Ud[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+8>>2]|0)+v|0;if(t){K=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[x>>2]&1023](M,q,s);if(!p)Ud[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);Xd[z&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(n<<4)+(o<<3)>>2]|0,c[f+912+(n<<4)+(o<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;Xd[z&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)>>2]|0,c[f+1680+(n<<5)+(o<<4)+4>>2]|0);Xd[z&63](M,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)+8>>2]|0,c[f+1680+(n<<5)+(o<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<>2]<<4)|0;z=d[215911+g>>0]|0;C=a[f+28272+z>>0]|0;D=a[f+28312+z>>0]|0;o=t<<3;x=o+(b[f+27952+(z<<2)>>1]|0)|0;n=q<<3;g=n+(b[f+27952+(z<<2)+2>>1]|0)|0;t=g<<2&12|x&3;l=x>>2;m=g>>2;k=(N(m,w)|0)+(l<>2]|0)+k|0;A=e+27012|0;y=c[A>>2]<<4;r=e+27008|0;v=c[r>>2]<<4>>u;x=(x&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((l|0)<(0-x|0)|(m|0)<(0-g|0))?(l+16|0)<=(x+y|0):0)?(m+16|0)<=(v+g|0):0){u=0;s=w}else{g=f+27792|0;u=2<>2]&3](c[g>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Ud[c[x>>2]&1023](P,q,s);w=(h|0)!=0;if(!w)Ud[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[x>>2]&1023](O,q,s);if(!w)Ud[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+8>>2]|0)+k|0;if(t){g=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[x>>2]&1023](M,q,s);if(!w)Ud[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);g=o+(b[f+28112+(z<<2)>>1]|0)|0;h=n+(b[f+28112+(z<<2)+2>>1]|0)|0;u=h<<2&12|g&3;y=g>>2;l=h>>2;q=c[Q>>2]|0;v=(N(l,q)|0)+(y<>2]|0)+v|0;k=c[A>>2]<<4;x=c[r>>2]<<4>>c[B>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(l|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(l+16|0)<=(x+h|0):0)t=0;else{h=f+27792|0;t=2<>2]&3](c[h>>2]|0,s+(0-t)+(0-(q<<1))|0,q,q,21,21,y+-2|0,l+-2|0,k,x);q=c[Q>>2]|0;s=(c[h>>2]|0)+t+(q<<1)|0;t=1}u=p+(u<<2)|0;Ud[c[u>>2]&1023](H,s,q);if(!w)Ud[c[u>>2]&1023](H+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;t=(t|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[u>>2]&1023](E,q,s);if(!w)Ud[c[u>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(t){g=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Ud[c[u>>2]&1023](F,q,s);if(!w)Ud[c[u>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[K>>2]|0)==2){f=c[f+3216+(C*384|0)+(D<<3)+((c[J>>2]&1)<<2)>>2]|0;j=64-f|0;Yd[I&31](P,H,c[Q>>2]|0,i,5,f,j,0);Yd[I&31](O,E,c[G>>2]|0,i,5,f,j,0);Yd[I&31](M,F,c[G>>2]|0,i,5,f,j,0);break}else{Yd[I&31](P,H,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(C<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(C<<4)+4>>2]|0)|0);j=f+892|0;Yd[I&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(C<<5)+4>>2]|0)|0);Yd[I&31](M,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(C<<5)+12>>2]|0)|0);break}}else if((q|0)==59){E=c[e+25664>>2]|0;F=f+21780|0;x=c[F>>2]|0;D=(N(o<<1,x)|0)+(n<<1<>2]<<3)+n|0;A=f+21828|0;s=c[A>>2]|0;o=(c[f+21792>>2]>>s<<3)+o|0;if(v){i=d[215911+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(z<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;l=Q>>2;m=i>>2;k=(N(m,x)|0)+(l<>2]|0)+k|0;n=c[e+27012>>2]<<4;y=c[e+27008>>2]<<4>>s;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((l|0)<(0-Q|0)|(m|0)<(0-i|0))?(l+16|0)<=(Q+n|0):0)?(m+16|0)<=(y+i|0):0){u=0;s=x}else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(x<<1))|0,x,x,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Ud[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Ud[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){Q=f+27792|0;i=2<>2]|0;_d[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Ud[c[x>>2]&1023](C,q,s);if(!p)Ud[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(t){Q=f+27792|0;i=2<>2]|0;_d[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Ud[c[x>>2]&1023](D,q,s);if(p)p=r;else{Ud[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0);p=r}}if(w|0){i=d[215911+g>>0]|0;n=a[f+28312+i>>0]|0;Q=(z<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;y=Q>>2;l=i>>2;s=c[F>>2]|0;v=(N(l,s)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>c[A>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(l|0)<(0-i|0))?(y+16|0)<=(m+Q|0):0)?(l+16|0)<=(k+i|0):0)u=0;else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Ud[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Ud[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){i=f+27792|0;h=2<>2]|0;_d[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[F>>2]|0;Ud[c[x>>2]&1023](C,q,s);if(!p)Ud[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+8>>2]|0)+v|0;if(t){h=f+27792|0;f=2<>2]|0;_d[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[F>>2]|0;Ud[c[x>>2]&1023](D,q,s);if(!p)Ud[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0)}}while(0);return}function Cn(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26376>>2]|0){j=c[a+27016>>2]|0;h=(N(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(N(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27016>>2]<<((c[a+26380>>2]|0)!=3&1))|0}while(0);i=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return Gn(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function Dn(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27016>>2]<<1)|0;return Gn(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0} -function ol(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;T=l;l=l+16|0;if((l|0)>=(m|0))W(16);R=T+4|0;M=T;pl(e,R,M);S=c[R>>2]>>j;c[R>>2]=S;R=N(c[M>>2]|0,S)|0;c[M>>2]=R;M=h+-1|0;O=e+580|0;P=e+564|0;Q=e+696|0;z=e+680|0;A=i*7|0;B=i*6|0;C=i<<3;D=i*9|0;E=i*5|0;F=i<<2;G=i*10|0;H=i*11|0;h=0;a:while(1){if((h|0)>=(M|0))break;I=h>>j;J=h+1|0;K=J>>j;L=N(h,i)|0;u=N(R,h)|0;v=N(R,J)|0;t=0;while(1){if((t|0)>=(g|0)){h=J;continue a}U=c[O>>2]|0;e=t>>j;k=c[P>>2]|0;h=(N(k,I)|0)+e|0;s=a[U+h>>0]|0;e=(N(k,K)|0)+e|0;U=a[U+e>>0]|0;k=c[Q>>2]|0;w=t+L<<3;n=c[z>>2]|0;q=N(S,t)|0;o=q+u|0;p=n+(o<<2)|0;q=q+v|0;r=n+(q<<2)|0;x=(s&14)!=0;y=(U&14)!=0;b:do if((U|s)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(U=(b[p>>1]|0)-(b[r>>1]|0)|0,s=(b[n+(q<<2)+2>>1]|0)+(b[n+(o<<2)+2>>1]|0)|0,(((s|0)>-1?s:0-s|0)+((U|0)>-1?U:0-U|0)|0)<2):0)break;s=x&y;e=0;while(1){if((e|0)==8)break b;n=e+w|0;o=f+(n+A)|0;p=d[o>>0]|0;q=f+(n+B)|0;V=p-(d[q>>0]|0)|0;r=f+(n+C)|0;h=d[r>>0]|0;U=h-p|0;k=f+(n+D)|0;h=(d[k>>0]|0)-h|0;h=((U|0)>-1?U:0-U|0)-(((V|0)>-1?V:0-V|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(U|0)<0?0-h|0:h;if(h|0){h=s?h:(h<<4|0)/9|0;if(x){a[o>>0]=a[199354+((h*7>>4)+p)>>0]|0;a[q>>0]=a[199354+((h*5>>4)+(d[q>>0]|0))>>0]|0;V=f+(n+E)|0;a[V>>0]=a[199354+((h*3>>4)+(d[V>>0]|0))>>0]|0;V=f+(n+F)|0;a[V>>0]=a[199354+((h>>4)+(d[V>>0]|0))>>0]|0}if(y){a[r>>0]=a[199354+((d[r>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[199354+((d[k>>0]|0)-(h*5>>4))>>0]|0;V=f+(n+G)|0;a[V>>0]=a[199354+((d[V>>0]|0)-(h*3>>4))>>0]|0;V=f+(n+H)|0;a[V>>0]=a[199354+((d[V>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);t=t+1|0}}l=T;return}function pl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;do if((c[(c[a>>2]|0)+16>>2]|0)==27)if(!(c[a+788>>2]|0)){c[f>>2]=200634;c[f+4>>2]=198300;c[f+8>>2]=47;gi(0,0,229320,f);Tb()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;l=g;return}function ql(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[185709+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){gi(0,16,221068,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[191678+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[192190+a>>0]|0}while(0);l=i;return a|0}function rl(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[191678+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[192190+a>>0]|0|0}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;Fl(0,a,b,f);l=e;return}function tl(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function ul(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function vl(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(BZ(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[191678+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[192702+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[185709+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(BZ(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function wl(a){a=a|0;return c[a+8>>2]|0}function xl(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{gi(b,40,201324,d);a=0}break}default:a=1}l=d;return a|0}function yl(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=(e|0)!=0;if(j)h=0;else h=(c[b+668>>2]|0)!=0;i=h?b+768|0:201056;k=h?b+960|0:201120;if(!(tl(a)|0))return 0;l=El(a,f,16,201184,h?b+672|0:201184)|0;m=f+16|0;l=El(a,m,16,201184,f)|0|l;m=l|(El(a,f+32|0,16,201184,m)|0);l=f+48|0;m=m|(El(a,l,16,201200,h?b+720|0:201200)|0);h=f+64|0;l=m|(El(a,h,16,201200,l)|0);h=l|(El(a,f+80|0,16,201200,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=El(a,g,64,201056,i)|0|h;f=g+192|0;h=h|(El(a,f,64,201120,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=El(a,m,64,201056,g)|0|h;h=g+256|0;l=l|(El(a,h,64,201120,f)|0);m=l|(El(a,g+128|0,64,201056,m)|0);h=m|(El(a,g+320|0,64,201120,h)|0)}}return ((h|0)==0?e:h)|0}function zl(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(193573+(f*88|0))>>0]|0;e=e+1|0}return}function Al(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;Cl(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)Dl(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function Bl(a,b){a=a|0;b=b|0;Ni(a+128+(b<<2)|0);return}function Cl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(VV(a+68+(e<<4)|0,b,16)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+4828+(e*5632|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=(d[193485+g>>0]|0)+2|0;f=d[193397+g>>0]|0;b=0;while(1){if((b|0)==16)break;j=b>>2;c[a+4828+(h*5632|0)+(g<<6)+((b<<2&12|j)<<2)>>2]=(N(d[a+68+(h<<4)+b>>0]|0,d[(j&1)+(b&1)+(193327+(f*3|0))>>0]|0)|0)<>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(VV(a+164+(e<<6)|0,b,64)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+38620+(e*22528|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=d[193485+g>>0]|0;f=d[193397+g>>0]|0;b=0;while(1){if((b|0)==64)break;c[a+38620+(h*22528|0)+(g<<8)+((b<<3&56|b>>3)<<2)>>2]=(N(d[a+164+(h<<6)+b>>0]|0,d[(d[193345+(b>>>1&12|b&3)>>0]|0)+(193361+(f*6|0))>>0]|0)|0)<=(m|0))W(16);n=o;k=(f|0)==16?201216:201233;a:do if(tl(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=vl(b)|0;if((h+128|0)>>>0>255){i=7;break}h=h+j&255}if(!(h|i)){i=9;break}p=h|0?h:j;a[e+(d[k+i>>0]|0)>>0]=p;i=i+1|0;j=p}if((i|0)==7){c[n>>2]=h;gi(0,16,201297,n);h=-1094995529;break}else if((i|0)==9){DZ(e|0,g|0,f|0)|0;h=0;break}}else{DZ(e|0,h|0,f|0)|0;h=0}while(0);l=o;return h|0}function Fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);hi(b,24,c,d);gi(b,24,201389,e);if(a|0)gi(b,24,201565,e+8|0);l=e;return}function Gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function Hl(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function Il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=n+24|0;i=n+16|0;h=n+8|0;f=n;do if(tl(a)|0){e=ul(a,8)|0;if((e|0)==255){c[d+100>>2]=ul(a,16)|0;c[d+104>>2]=ul(a,16)|0;g=8;break}if(e>>>0<17){e=166984+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{gi(b,16,202367,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(tl(a)|0)tl(a)|0;g=tl(a)|0;c[d+108>>2]=g;if(g|0?(ul(a,3)|0,c[d+112>>2]=tl(a)|0,g=tl(a)|0,c[d+116>>2]=g,g|0):0){e=d+120|0;c[e>>2]=ul(a,8)|0;f=d+124|0;c[f>>2]=ul(a,8)|0;g=d+128|0;c[g>>2]=ul(a,8)|0;if(!(Ll(c[e>>2]|0)|0))c[e>>2]=2;if(!(Ml(c[f>>2]|0)|0))c[f>>2]=2;if(!(Nl(c[g>>2]|0)|0))c[g>>2]=2}if(tl(a)|0){c[b+332>>2]=(ql(a)|0)+1;ql(a)|0}if(Ol(a)|0?(Jl(a)|0)<10:0){gi(b,24,202389,h);e=0;break}h=tl(a)|0;e=d+132|0;c[e>>2]=h;if(h|0){f=Pl(a,32)|0;g=Pl(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;gi(b,16,202404,i);c[e>>2]=0}c[d+144>>2]=tl(a)|0}i=tl(a)|0;e=d+1152|0;c[e>>2]=i;if(i|0?(Ql(a,b,d)|0)<0:0){e=-1094995529;break}i=tl(a)|0;f=d+1156|0;c[f>>2]=i;if(i|0?(Ql(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))tl(a)|0;c[d+1160>>2]=tl(a)|0;if((Jl(a)|0)!=0?(i=tl(a)|0,j=d+660|0,c[j>>2]=i,(i|0)!=0):0){tl(a)|0;ql(a)|0;ql(a)|0;ql(a)|0;ql(a)|0;f=d+664|0;c[f>>2]=ql(a)|0;ql(a)|0;if((Jl(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;gi(b,16,202465,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);l=n;return e|0}function Jl(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(wl(a)|0)|0}function Kl(a,b){a=a|0;b=b|0;Ni(a+(b<<2)|0);return}function Ll(a){a=a|0;if(a>>>0<23)a=c[164284+(a<<2)>>2]|0;else a=0;return a|0}function Ml(a){a=a|0;if(a>>>0<19)a=c[164208+(a<<2)>>2]|0;else a=0;return a|0}function Nl(a){a=a|0;if(a>>>0<15)a=c[164148+(a<<2)>>2]|0;else a=0;return a|0}function Ol(a){a=a|0;return Ul(a)|0}function Pl(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=ul(a,b)|0;break}else{b=b+-16|0;c=(ul(a,16)|0)<=(m|0))W(16);e=h;f=rl(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;gi(b,16,202505,e);b=-1094995529}else{ul(a,4)|0;ul(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;Rl(a);Rl(a);tl(a)|0;b=b+1|0}c[d+1172>>2]=(ul(a,5)|0)+1;c[d+1176>>2]=(ul(a,5)|0)+1;c[d+1180>>2]=(ul(a,5)|0)+1;c[d+1164>>2]=ul(a,5)|0;c[d+1168>>2]=g;b=0}l=h;return b|0}function Rl(a){a=a|0;var b=0,c=0,e=0;e=Sl(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Tl(a,b);Pl(a,b+1|0)|0;return}function Sl(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Pl(d,32)|0;l=b;return a|0}function Tl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Ul(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function Vl(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Yl(a)|0)|0}function Wl(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Xl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Yl(a){a=a|0;return c[a+8>>2]|0}function Zl(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){c[a+16>>2]=nm(b,c[g+1176>>2]|0)|0;c[a+12>>2]=nm(b,c[g+1180>>2]|0)|0}if(c[g+1160>>2]|0){h=Xl(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[203020+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Xl(b,1)|0){i=1<<(Xl(b,2)|0);c[k>>2]=c[k>>2]|i;im(b,1);im(b,5);i=Xl(b,1)|0;im(b,1);im(b,1);im(b,8);if(!i){if((Xl(b,1)|0?(im(b,6),Xl(b,1)|0):0)?(im(b,6),Xl(b,1)|0):0)im(b,5)}else{im(b,6);im(b,6);im(b,5)}i=c[h>>2]|0;if((i|0)>0)im(b,i)}g=g+1|0}b=c[j>>2]|0;c[n>>2]=c[k>>2];c[n+4>>2]=b;gi(f,48,203029,n)}c[a>>2]=1;g=0}else{gi(f,16,202978,j);g=-1397768184}while(0);l=o;return g|0}function _l(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Xl(b,8)|0)==255){im(b,8);c=c+-8|0}else c=c+-7|0;im(b,8);im(b,8);d=nm(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=pm(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=qm(a+28|0,b,c)|0;break a}while(0);im(b,c<<3);c=0}while(0);return c|0}function $l(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=j+4|0;if((e+-16|0)>>>0<=2147483614){f=e+16|0;i=oi(e+17|0)|0;if(!i)e=-12;else{e=0;while(1){if((e|0)>=(f|0))break;a[i+e>>0]=Xl(d,8)|0;e=e+1|0}a[i+e>>0]=0;f=i+16|0;c[g>>2]=h;d=(vX(f,202946,g)|0)==1;e=c[h>>2]|0;if(d&(e|0)>0)c[b>>2]=e;if(d&(e|0)==1?(WV(f,202961,16)|0)==0:0)c[b>>2]=67;di(i);e=0}}else e=-1094995529;l=j;return e|0}function am(a,b){a=a|0;b=b|0;c[a>>2]=km(b)|0;im(b,4);return}function bm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;f=om(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;c[a+4+(d<<2)>>2]=nm(b,c[f>>2]|0)|0;im(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;c[a+4+(d<<2)>>2]=nm(b,c[e>>2]|0)|0;im(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;gi(e,16,202894,i);d=g?-1094995529:-1397768184}l=j;return d|0}function cm(a,b){a=a|0;b=b|0;var d=0,e=0;c[a+4>>2]=km(b)|0;d=jm(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){d=a+12|0;c[d>>2]=Xl(b,7)|0;e=a+24|0;c[e>>2]=jm(b)|0;c[a+20>>2]=Xl(b,6)|0;im(b,3);c[a+28>>2]=jm(b)|0;im(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)im(b,16);im(b,8);c[a+16>>2]=km(b)|0}lm(b);return}function dm(a,b){a=a|0;b=b|0;var d=0;d=(jm(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=jm(b)|0;c[a+12>>2]=jm(b)|0;c[a+4>>2]=Xl(b,16)|0;km(b)|0;lm(b)}return}function em(c,d){c=c|0;d=d|0;var e=0;e=(Xl(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Xl(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{b[c+2>>1]=Xl(d,16)|0;break}case 3:{b[c+4>>1]=Xl(d,16)|0;break}default:{}}a[c+6>>0]=Xl(d,8)|0;a[c+7>>0]=Xl(d,8)|0;a[c+8>>0]=Xl(d,8)|0;a[c+9>>0]=Xl(d,8)|0;break}case 1:{a[c+10>>0]=Xl(d,8)|0;b[c+12>>1]=Xl(d,16)|0;break}default:{}}return}function fm(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=Xl(b,8)|0;return}function gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function hm(a){a=a|0;var b=0;b=0-(Yl(a)|0)&7;if(b|0)im(a,b);return}function im(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function jm(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function km(a){a=a|0;var b=0,c=0,e=0;e=mm(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[185709+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;gm(a,b);return (nm(a,b+1|0)|0)+-1|0}function lm(a){a=a|0;im(a,1);return}function mm(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=nm(d,32)|0;l=b;return a|0}function nm(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Xl(a,b)|0;break}else{b=b+-16|0;c=(Xl(a,16)|0)<>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(BZ(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[191678+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[192190+a>>0]|0|0}function pm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){im(d,1);f=Xl(d,1)|0;im(d,6);if(f)if((e|0)<2)b=-1094995529;else{im(d,4);a[b+4>>0]=Xl(d,4)|0;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function qm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Xl(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}im(d,8);e=e+1|0}}im(d,1);if(((Xl(d,1)|0)!=0?(im(d,1),g=Xl(d,5)|0,im(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=uZ(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=oZ(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=rm(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Xl(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Xl(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Xl(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}im(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function rm(b,c){b=b|0;c=c|0;do if(c){c=ni(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){ci(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{ci(b);c=0}while(0);return c|0}function sm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;if((l|0)>=(m|0))W(64);r=D+56|0;q=D+48|0;w=D+32|0;u=D+24|0;v=D+16|0;f=D;z=c[d>>2]|0;C=d+21788|0;t=c[C>>2]|0;A=d+868|0;B=c[A>>2]|0;y=c[c[z+24312>>2]>>2]|0;b=c[y+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[y+36>>2];b=ym(d,b)|0;a:do if((b|0)>=0){p=d+21816|0;c[p>>2]=-1;if((c[z+26036>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<>2])|0)){c[f>>2]=204150;c[f+4>>2]=203124;c[f+8>>2]=2536;gi(0,0,229320,f);Tb()}if(c[z+25708>>2]|0)c[A>>2]=0;x=z+26376|0;if(!(c[x>>2]|0))b=(c[z+26380>>2]|0)!=3;else b=1;c[d+21820>>2]=b&1;y=z+4|0;if(((((c[(c[y>>2]|0)+696>>2]&2|0)==0?(c[z+26380>>2]|0)==3:0)?(h=c[z+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(s=(N(c[z+27012>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[z+27020>>2]|0)+-1|0,g=(s|0)>(g|0)?g:s,!((s|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[z+28212>>2]|0)+4>>2]|0)){o=d+21792|0;f=z+27012|0;i=d+21812|0;n=d+4|0;j=z+26380|0;k=z+27008|0;e=t;while(1){w=(N(c[f>>2]|0,c[o>>2]|0)|0)+(c[C>>2]|0)|0;b=c[i>>2]|0;if((w|0)>=(b|0)){f=46;break}b=Km(z,d)|0;if((b|0)<=-1){f=52;break}Gm(z,d);if(c[x>>2]|0){c[o>>2]=(c[o>>2]|0)+1;b=Km(z,d)|0;if((b|0)<=-1){f=50;break}Gm(z,d);c[o>>2]=(c[o>>2]|0)+-1}b=(c[C>>2]|0)+1|0;c[C>>2]=b;if((b|0)>=(c[f>>2]|0)){tm(z,d,e,b);c[C>>2]=0;Im(z,d);b=c[o>>2]|0;e=b+1|0;c[o>>2]=e;if(!(c[x>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[o>>2]=e}}else{b=b+2|0;c[o>>2]=b;if((b|0)<(c[k>>2]|0)){Jm(z,d);e=c[o>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=Bm(n)|0;if((g|0)>=1){e=h;continue}if((c[p>>2]|0)<1){f=68;break}else e=h}if((f|0)==46){B=c[y>>2]|0;c[q>>2]=b;gi(B,16,204277,q);Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[o>>2]|0)+-1|0;c[o>>2]=e}else if((f|0)==52)e=c[o>>2]|0;else if((f|0)==61){b=Bm(n)|0;do if(b|0){if((b|0)>0?(c[(c[y>>2]|0)+580>>2]&262144|0)==0:0)break;Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,e,112);b=-1094995529;break a}while(0);Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,e,112);break}else if((f|0)==68){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[C>>2]|0;if(g|0){Em(d,b,e,f,c[o>>2]|0,14);b=-1094995529;break a}Em(d,b,e,f+-1|0,c[o>>2]|0,112);b=c[C>>2]|0;if((b|0)<=(h|0))break;tm(z,d,h,b);break}B=c[y>>2]|0;c[r>>2]=c[C>>2];c[r+4>>2]=e;gi(B,16,204381,r);Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);break a}else{b=d+4|0;zm(b);q=d+32856|0;s=c[b>>2]|0;s=s+((Am(b)|0)/8|0)|0;b=Cm(q,s,((Bm(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;Dm(z,d);s=d+21792|0;i=z+27012|0;j=d+21812|0;k=z+25700|0;r=d+32872|0;p=d+32876|0;n=z+27008|0;o=z+26380|0;h=t;b=c[s>>2]|0;while(1){t=(N(c[i>>2]|0,b)|0)+(c[C>>2]|0)|0;b=c[j>>2]|0;if((t|0)>=(b|0)){f=19;break}b=Fm(z,d)|0;if((b|0)>-1?(Gm(z,d),(c[x>>2]|0)!=0):0){c[s>>2]=(c[s>>2]|0)+1;b=Fm(z,d)|0;if((b|0)>-1)Gm(z,d);c[s>>2]=(c[s>>2]|0)+-1}g=Hm(q)|0;e=c[r>>2]|0;f=c[p>>2]|0;if((c[k>>2]&16384|0)!=0&e>>>0>(f+2|0)>>>0){f=26;break}if(e>>>0>(f+2|0)>>>0){t=c[y>>2]|0;c[u>>2]=f-e;gi(t,48,204309,u)}if((b|0)<0){f=31;break}b=c[r>>2]|0;e=c[p>>2]|0;if(b>>>0>(e+4|0)>>>0){f=33;break}b=(c[C>>2]|0)+1|0;c[C>>2]=b;do if((b|0)>=(c[i>>2]|0)){tm(z,d,h,b);c[C>>2]=0;Im(z,d);b=c[s>>2]|0;c[s>>2]=b+1;if(!(c[x>>2]|0)){if((c[o>>2]|0)==3){e=0;break}c[s>>2]=b+2;e=0;break}else{t=b+2|0;c[s>>2]=t;if((t|0)>=(c[n>>2]|0)){e=0;break}Jm(z,d);e=0;break}}else e=h;while(0);b=c[s>>2]|0;if(g|0){f=43;break}if((b|0)>=(c[n>>2]|0)){f=43;break}else h=e}if((f|0)==19){B=c[y>>2]|0;c[v>>2]=b;gi(B,16,204277,v);Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}else if((f|0)==26){Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,c[s>>2]|0,112);b=c[C>>2]|0;if((b|0)<(h|0))break;tm(z,d,h,b+1|0);break}else if((f|0)==31){e=c[p>>2]|0;b=c[r>>2]|0}else if((f|0)!=33)if((f|0)==43){Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,b,112);b=c[C>>2]|0;if((b|0)<=(e|0))break;tm(z,d,e,b);break}B=c[y>>2]|0;A=c[s>>2]|0;c[w>>2]=c[C>>2];c[w+4>>2]=A;c[w+8>>2]=e-b;gi(B,16,204334,w);Em(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}while(0);c[A>>2]=B;b=0}while(0);l=D;return b|0}function tm(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;aa=e+21792|0;_=b+26376|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25664|0;Y=c[X>>2]|0;Z=16>>>(c[b+25680>>2]|0);if(!(c[b+25708>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28212|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{I=b+27016|0;J=e+21796|0;K=b+24364|0;i=e+21788|0;L=b+24316|0;M=e+21772|0;O=b+28216|0;P=e+21776|0;Q=e+21828|0;R=e+21780|0;S=e+21784|0;l=b+28212|0;T=b+24340|0;k=e+852|0;j=e+856|0;U=e+21832|0;V=e+27796|0;W=1-Z|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;H=f<(ba|0))break;F=(N(c[I>>2]|0,E)|0)+f|0;c[J>>2]=F;G=c[(c[K>>2]|0)+(F<<2)>>2]|0;t=(c[_>>2]|0)==0;h=G>>>7&1;if(t)h=c[Q>>2]|0;else{c[Q>>2]=h;c[U>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[L>>2]|0;p=c[M>>2]|0;m=(c[C>>2]|0)+((N(p,E)|0)+H<<4)|0;s=c[(c[O>>2]|0)+12>>2]|0;z=(s|0)==3;D=N(8<<(z&1),H)|0;r=c[P>>2]|0;o=N(N(E,Z)|0,r)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(h){h=p<<1;c[R>>2]=h;q=r<<1;c[S>>2]=q;if(!(E&1)){D=n;C=o;p=h}else{C=N(W,r)|0;m=m+(N(p,-15)|0)|0;D=n+C|0;C=o+C|0;p=h}}else{c[R>>2]=p;c[S>>2]=r;D=n;C=o;q=r}w=c[X>>2]|0;x=(s|0)==2;v=m+(0-p)|0;B=0-q|0;y=D+B|0;B=C+B|0;do if(!t){h=(c[U>>2]|0)!=0;if(!(E&1))if(h){h=0;u=f;A=33;break}else break;if(!h){t=c[V>>2]|0;h=v+(p*15|0)|0;s=h;A=c[s+4>>2]|0;u=t+(f*96|0)|0;c[u>>2]=c[s>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;s=t+(f*96|0)+8|0;c[s>>2]=c[u>>2];c[s+4>>2]=A;s=(w|0)!=0;h=h+16|0;if(s){A=h;u=c[A+4>>2]|0;r=t+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=t+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}do if(z){h=q*15|0;n=y+h|0;r=n;o=c[r>>2]|0;r=c[r+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=o;c[A+4>>2]=r;A=n+8|0;u=c[A+4>>2]|0;s=t+(f*96|0)+40|0;c[s>>2]=c[A>>2];c[s+4>>2]=u;n=n+16|0;s=n;u=c[s+4>>2]|0;A=t+(f*96|0)+48|0;c[A>>2]=c[s>>2];c[A+4>>2]=u;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+56|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+64|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=h+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+72|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=h+16|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+80|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=88;h=h+8|0;break}else{A=t+(f*96|0)+16|0;c[A>>2]=o;c[A+4>>2]=r;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+24|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+32|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=40;h=h+8|0;break}}else if(x){r=q*15|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q*7|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);A=h;u=c[A+4>>2]|0;h=t+(f*96|0)+n|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=1;u=c[i>>2]|0;A=33}else{h=1;u=f;A=33}}else{h=1;u=f;A=33}while(0);if((A|0)==33){A=0;t=c[e+27796+(h<<2)>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;o=t+(u*96|0)|0;c[o>>2]=c[s>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[o>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;o=t+(u*96|0)+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[o>>2];c[w+4>>2]=v}do if(z){h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;z=h+8|0;y=c[z+4>>2]|0;n=t+(u*96|0)+40|0;c[n>>2]=c[z>>2];c[n+4>>2]=y;n=h+16|0;y=n;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;n=n+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+64|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=h+8|0;B=c[n+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[n>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+80|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=88;h=h+8|0;break}else{z=t+(u*96|0)+16|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+32|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=40;h=h+8|0;break}}else if(x){r=q<<4;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q<<3;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+n|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(um(b,e,G)|0)){G=c[l>>2]|0;F=(c[T>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){wm(b,e,f,E,m,D,C,p,q);break}else{vm(b,e,f,E,m,D,C,p,q);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return}function um(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=c[f+21796>>2]|0;o=d+27016|0;m=c[o>>2]|0;h=u-(m<>2])|0;j=u+-1|0;n=d+26376|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=j+((k|0)==(l|0)?0:m)|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26372|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26368|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29940+((n&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((N(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29940+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((N(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25972|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26392|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28212>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function vm(f,g,h,i,j,k,n,o,p){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Sa=l;l=l+32|0;if((l|0)>=(m|0))W(32);Qa=Sa+16|0;Ma=Sa;Na=f+27016|0;Da=(N(c[Na>>2]|0,i)|0)+h|0;Ea=f+24364|0;Fa=c[(c[Ea>>2]|0)+(Da<<2)>>2]|0;Ga=(Fa>>>6&2^2)+2|0;Ha=f+28216|0;Ka=c[Ha>>2]|0;Ia=(c[Ka+12>>2]|0)!=0;Ka=(N(c[Ka+1184>>2]|0,-6)|0)+48|0;Ja=(c[g+872>>2]|0)+52+Ka|0;Ka=(c[g+876>>2]|0)+52+Ka|0;La=f+26376|0;Ca=g+21740|0;if((c[La>>2]|0)!=0?(Ba=c[Ca>>2]|0,!((Ba|0)==0|((Ba^Fa)&128|0)==0)):0){a:do if(!(Fa&7)){x=c[g+21828>>2]|0;t=i&1;h=f+28212|0;u=f+25972|0;v=f+26392|0;w=(x|0)!=0;s=0;while(1){if((s|0)==8){q=x;break a}r=w?s>>2:s&1;q=c[g+21720+(r<<2)>>2]|0;r=c[g+21740+(r<<2)>>2]|0;if(!(r&7)){if((r&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)q=d[(d[204102+(x<<4)+(t<<3)+s>>0]|0)+((c[u>>2]|0)+(q*48|0))>>0]|0;else q=((w?s&2:t)|0?32768:8192)&e[(c[v>>2]|0)+(q<<1)>>1];q=q|d[(s>>>1<<3)+12+(g+27824)>>0]|0?2:1}else q=4;b[Ma+(s<<1)>>1]=q;s=s+1|0}}else{h=Ma;c[h>>2]=262148;c[h+4>>2]=262148;h=Ma+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28212|0;q=c[g+21828>>2]|0}while(0);A=c[f+24340>>2]|0;Aa=a[A+Da>>0]|0;z=a[A+(c[g+21720>>2]|0)>>0]|0;A=a[A+(c[g+21724>>2]|0)>>0]|0;v=Aa+1|0;Ba=c[h>>2]|0;y=(d[Ba+548+Aa>>0]|0)+1|0;Aa=(d[Ba+636+Aa>>0]|0)+1|0;h=v+z>>1;w=(y+(d[Ba+548+z>>0]|0)|0)>>>1;z=(Aa+(d[Ba+636+z>>0]|0)|0)>>>1;v=v+A>>1;y=(y+(d[Ba+548+A>>0]|0)|0)>>>1;A=(Aa+(d[Ba+636+A>>0]|0)|0)>>>1;do if(!q){u=o<<1;r=h+Ja|0;s=d[203322+r>>0]|0;Ba=h+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](j,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](j,u,s,h,Qa);break}}while(0);r=j+o|0;x=Ma+2|0;s=v+Ja|0;t=d[203322+s>>0]|0;Ba=v+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);if(Ia){u=p<<1;r=w+Ja|0;s=d[203322+r>>0]|0;h=w+Ka|0;q=d[203166+h>>0]|0;h=r>>>0<68|h>>>0<68;if((c[(c[Ha>>2]|0)+12>>2]|0)==3){do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Vd[c[f+68>>2]&255](k,u,s,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[203322+s>>0]|0;Ba=y+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[203322+r>>0]|0;Ba=z+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](n,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[203322+s>>0]|0;Ba=A+Ka|0;q=d[203166+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Vd[c[f+68>>2]&255](r,u,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,u,t,q,Qa);break}}else{do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Vd[c[f+92>>2]&255](k,u,s,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(203478+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(203478+(r<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[203322+s>>0]|0;Ba=y+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](r,u,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[203322+r>>0]|0;Ba=z+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](n,u,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(203478+(r<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[203322+s>>0]|0;Ba=A+Ka|0;q=d[203166+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Vd[c[f+92>>2]&255](r,u,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,u,t,q,Qa);break}}}}else{r=h+Ja|0;s=d[203322+r>>0]|0;Ba=h+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](j,o,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](j,o,s,h,Qa);break}}while(0);r=j+(o<<3)|0;x=Ma+8|0;s=v+Ja|0;t=d[203322+s>>0]|0;Ba=v+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](r,o,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,o,t,h,Qa);break}}while(0);if(Ia){h=c[(c[Ha>>2]|0)+12>>2]|0;if((h|0)==3){r=w+Ja|0;s=d[203322+r>>0]|0;Ba=w+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](k,p,s,h,Qa);break}}while(0);u=p<<3;r=k+u|0;s=y+Ja|0;t=d[203322+s>>0]|0;Ba=y+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](r,p,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[203322+r>>0]|0;Ba=z+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+68>>2]&255](n,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(203478+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(203478+(r<<2))>>0]|0;Wd[c[f+56>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[203322+s>>0]|0;Ba=A+Ka|0;q=d[203166+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Vd[c[f+68>>2]&255](r,p,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[f+56>>2]&127](r,p,t,q,Qa);break}}r=(h|0)==2;s=w+Ja|0;t=d[203322+s>>0]|0;Ba=w+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](k,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](k,p,t,h,Qa);break}}while(0);if(r){u=p<<3;r=k+u|0;s=y+Ja|0;t=d[203322+s>>0]|0;Ba=y+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[203322+r>>0]|0;Ba=z+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(203478+(r<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[203322+s>>0]|0;Ba=A+Ka|0;q=d[203166+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Vd[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,p,t,q,Qa);break}}else{u=p<<2;r=k+u|0;s=y+Ja|0;t=d[203322+s>>0]|0;Ba=y+Ka|0;h=d[203166+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[203322+r>>0]|0;Ba=z+Ka|0;h=d[203166+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Vd[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(203478+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(203478+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(203478+(r<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[203322+s>>0]|0;Ba=A+Ka|0;q=d[203166+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Vd[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[f+80>>2]&127](r,p,t,q,Qa);break}}}}while(0);ga=1}else ga=0;ha=Da+-1|0;ia=g+21732|0;ja=Fa>>>3&7;ka=g+21856|0;la=Fa&16777216;ma=(Fa&7|0)==0;na=Ma+6|0;oa=Ma+4|0;pa=Ma+2|0;qa=f+24340|0;ra=f+25664|0;sa=g+852|0;ta=g+856|0;ua=Qa+1|0;va=Qa+2|0;wa=Qa+3|0;xa=f+52|0;ya=f+76|0;za=o<<2;Aa=f+48|0;Ba=f+72|0;I=(i&1|0)==0;J=Fa&128^128;K=o<<1;L=p<<1;M=f+28212|0;O=f+25972|0;P=f+26392|0;Q=g+27836|0;R=g+27837|0;S=Ma+2|0;T=Ma+4|0;U=Ma+6|0;V=g+27839|0;X=g+27838|0;Y=Ma+2|0;Z=Ma+4|0;_=Ma+6|0;$=Ma+6|0;aa=Ma+4|0;ba=Ma+2|0;ca=f+64|0;da=f+88|0;ea=f+60|0;fa=f+84|0;B=f+26380|0;C=g+21712|0;f=0;while(1){if((f|0)==2)break;i=(f|0)!=0;E=c[(c[Ha>>2]|0)+12>>2]|0;D=(E|0)==3;E=(E|0)==2;F=(f|0)==0;if(F)u=ha;else u=c[C>>2]|0;h=c[(F?Ca:ia)>>2]|0;H=a[204134+(f<<3)+ja>>0]|0;G=H&255;if(H<<24>>24==3)H=(c[ka>>2]&15|0)==0?1:4;else H=4;q=32>>>f|8;A=q&Fa;t=i^1;b:do if(!(ga&t|(h|0)==0)){r=c[La>>2]|0;if(!((h&J|0)==0|I&((f|0)==1&(r|0)!=0)^1)){w=Da-(c[Na>>2]<<1)|0;x=0;while(1){if((x|0)==2)break b;h=c[(c[Ea>>2]|0)+(w<<2)>>2]|0;c:do if(!((h|Fa)&7)){if((h&16777216|0)==0?1:(c[(c[M>>2]|0)+4>>2]|0)!=0){q=(c[O>>2]|0)+(w*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[Ma+(h<<1)>>1]=(a[q+h>>0]|a[h+12+(g+27824)>>0])<<24>>24?2:1;h=h+1|0}}h=b[(c[P>>2]|0)+(w<<1)>>1]|0;if(!(h&16384)){b[Ma>>1]=(a[Q>>0]|0)==0?1:2;if(!(a[R>>0]|0))q=1;else Ra=128}else{b[Ma>>1]=2;Ra=128}if((Ra|0)==128){Ra=0;q=2}b[S>>1]=q;if(h<<16>>16>=0){b[T>>1]=(a[X>>0]|0)==0?1:2;if(!(a[V>>0]|0))h=1;else Ra=132}else{b[T>>1]=2;Ra=132}if((Ra|0)==132){Ra=0;h=2}b[U>>1]=h}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611}while(0);r=c[qa>>2]|0;h=a[r+w>>0]|0;r=(a[r+Da>>0]|0)+1+(h<<24>>24)>>1;q=r+Ja|0;r=r+Ka|0;if(!(q>>>0<68|r>>>0<68)){h=d[203166+r>>0]|0;z=d[203322+q>>0]|0;y=j+(N(x,o)|0)|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(203478+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(203478+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(203478+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(203478+(q<<2))>>0]|0;Wd[c[Aa>>2]&127](y,K,z,h,Qa);h=a[(c[qa>>2]|0)+w>>0]|0}z=c[M>>2]|0;u=h<<24>>24;h=(c[sa>>2]|0)+1+(d[z+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[z+636+u>>0]|0)>>1;do if(Ia){v=N(x,p)|0;r=k+v|0;s=h+Ja|0;t=d[203322+s>>0]|0;q=h+Ka|0;h=d[203166+q>>0]|0;q=s>>>0<68|q>>>0<68;if(D){if(!q){a[Qa>>0]=a[(b[Ma>>1]|0)+(203478+(s<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(203478+(s<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(203478+(s<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(203478+(s<<2))>>0]|0;Wd[c[Aa>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[203166+h>>0]|0;y=d[203322+q>>0]|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(203478+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(203478+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(203478+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(203478+(q<<2))>>0]|0;Wd[c[Aa>>2]&127](n+v|0,L,y,z,Qa);break}else{if(!q){a[Qa>>0]=(d[(b[Ma>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(203478+(s<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[203166+h>>0]|0;y=d[203322+q>>0]|0;a[Qa>>0]=(d[(b[Ma>>1]|0)+(203478+(q<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(203478+(q<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(203478+(q<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(203478+(q<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](n+v|0,L,y,z,Qa);break}}while(0);w=(c[Na>>2]|0)+w|0;x=x+1|0}}s=h|Fa;d:do if(!(s&7)){if(!((r|0)==0|t)?((h^Fa)&128|0)!=0:0){s=Ma;c[s>>2]=65537;c[s+4>>2]=65537;s=0}else if((A|0)==0|(h&q|0)==0)s=1;else{s=(xm(g,12,i?4:11,Ga)|0)&65535;b[$>>1]=s;b[aa>>1]=s;b[ba>>1]=s;b[Ma>>1]=s;s=0}t=i?8:1;r=0;while(1){if((r|0)==4)break;h=(F?r<<3:r)+12|0;q=h-t|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(s){h=(xm(g,h,q,Ga)|0)&65535;Ra=166}}else{h=2;Ra=166}if((Ra|0)==166){Ra=0;b[Ma+(r<<1)>>1]=h}r=r+1|0}z=b[Ma>>1]|0;h=b[ba>>1]|0;q=b[aa>>1]|0;r=b[$>>1]|0}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611;do if(s&128|0)if(!r)if(F&(c[B>>2]|0)!=3)break;else{z=3;h=3;q=3;r=3;break d}else if(F)break;else{z=3;h=3;q=3;r=3;break d}while(0);z=Ma;c[z>>2]=262148;c[z+4>>2]=262148;z=4;h=4;q=4;r=4}while(0);y=z<<16>>16;x=h<<16>>16;w=q<<16>>16;v=r<<16>>16;do if((x+w+y|0)!=(0-v|0)){s=c[qa>>2]|0;u=a[s+u>>0]|0;s=(a[s+Da>>0]|0)+1+u>>1;h=c[M>>2]|0;t=(c[sa>>2]|0)+1+(d[h+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[h+636+u>>0]|0)>>1;h=s+Ja|0;q=d[203322+h>>0]|0;s=s+Ka|0;r=d[203166+s>>0]|0;s=h>>>0<68|s>>>0<68;if(F){do if(!s)if(z<<16>>16>3){Vd[c[ca>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[203478+(h<<2)+y>>0]|0;a[ua>>0]=a[203478+(h<<2)+x>>0]|0;a[va>>0]=a[203478+(h<<2)+w>>0]|0;a[wa>>0]=a[203478+(h<<2)+v>>0]|0;Wd[c[xa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[203322+r>>0]|0;q=t+Ka|0;h=d[203166+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Vd[c[ca>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[203478+(r<<2)+y>>0]|0;a[ua>>0]=a[203478+(r<<2)+x>>0]|0;a[va>>0]=a[203478+(r<<2)+w>>0]|0;a[wa>>0]=a[203478+(r<<2)+v>>0]|0;Wd[c[xa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[203322+q>>0]|0;u=u+Ka|0;h=d[203166+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Vd[c[ca>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[203478+(q<<2)+y>>0]|0;a[ua>>0]=a[203478+(q<<2)+x>>0]|0;a[va>>0]=a[203478+(q<<2)+w>>0]|0;a[wa>>0]=a[203478+(q<<2)+v>>0]|0;Wd[c[xa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Vd[c[da>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[203478+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[203478+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[203478+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[203478+(r<<2)+v>>0]|0)+1;Wd[c[ya>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[203322+q>>0]|0;u=u+Ka|0;h=d[203166+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Vd[c[da>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[203478+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[203478+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[203478+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[203478+(q<<2)+v>>0]|0)+1;Wd[c[ya>>2]&127](n,p,r,h,Qa);break}}}else{do if(!s)if(z<<16>>16>3){Vd[c[ea>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[203478+(h<<2)+y>>0]|0;a[ua>>0]=a[203478+(h<<2)+x>>0]|0;a[va>>0]=a[203478+(h<<2)+w>>0]|0;a[wa>>0]=a[203478+(h<<2)+v>>0]|0;Wd[c[Aa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[203322+r>>0]|0;q=t+Ka|0;h=d[203166+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Vd[c[ea>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[203478+(r<<2)+y>>0]|0;a[ua>>0]=a[203478+(r<<2)+x>>0]|0;a[va>>0]=a[203478+(r<<2)+w>>0]|0;a[wa>>0]=a[203478+(r<<2)+v>>0]|0;Wd[c[Aa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[203322+q>>0]|0;u=u+Ka|0;h=d[203166+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Vd[c[ea>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[203478+(q<<2)+y>>0]|0;a[ua>>0]=a[203478+(q<<2)+x>>0]|0;a[va>>0]=a[203478+(q<<2)+w>>0]|0;a[wa>>0]=a[203478+(q<<2)+v>>0]|0;Wd[c[Aa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Vd[c[fa>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[203478+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[203478+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[203478+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[203478+(r<<2)+v>>0]|0)+1;Wd[c[Ba>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[203322+q>>0]|0;u=u+Ka|0;h=d[203166+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Vd[c[fa>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[203478+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[203478+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[203478+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[203478+(q<<2)+v>>0]|0)+1;Wd[c[Ba>>2]&127](n,p,r,h,Qa);break}}}}while(0)}while(0);z=F|E^1;y=(A|0)==0;x=i?8:1;w=1;while(1){if((w|0)>=(H|0))break;t=(la&w<<24|0)==0;do if(!(z&(t^1))){if(ma){if(!(w&G))if(y)r=1;else{r=(N(w,x)|0)+12|0;r=(xm(g,r,r-x|0,Ga)|0)&65535;b[na>>1]=r;b[oa>>1]=r;b[pa>>1]=r;b[Ma>>1]=r;r=0}else{r=Ma;c[r>>2]=0;c[r+4>>2]=0;r=0}s=0;while(1){if((s|0)==4)break;h=(F?w:s)+12+((F?s:w)<<3)|0;q=h-x|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(r){h=(xm(g,h,q,Ga)|0)&65535;Ra=230}}else{h=2;Ra=230}if((Ra|0)==230){Ra=0;b[Ma+(s<<1)>>1]=h}s=s+1|0}h=b[Ma>>1]|0;q=b[pa>>1]|0;r=b[oa>>1]|0;s=b[na>>1]|0;if(((q<<16>>16)+(h<<16>>16)+(r<<16>>16)|0)==(0-(s<<16>>16)|0))break;else v=s}else{h=Ma;c[h>>2]=196611;c[h+4>>2]=196611;h=3;q=3;r=3;v=3}s=a[(c[qa>>2]|0)+Da>>0]|0;if(F){u=w<<2;t=Ja+s|0;s=Ka+s|0;if(!(t>>>0<68|s>>>0<68)){i=d[203166+s>>0]|0;A=d[203322+t>>0]|0;s=j+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(t<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(t<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(t<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(t<<2))>>0]|0;Wd[c[xa>>2]&127](s,o,A,i,Qa)}if(!Ia)break;if(D){t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(s<<2))>>0]|0;Wd[c[xa>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(s<<2))>>0]|0;Wd[c[xa>>2]&127](u,p,A,i,Qa);break}if(w&1|0)break;u=w<<1;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[ya>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[ya>>2]&127](u,p,A,i,Qa);break}if(E){if(t?(Oa=Ja+s|0,Pa=Ka+s|0,!(Oa>>>0<68|Pa>>>0<68)):0){i=d[203166+Pa>>0]|0;A=d[203322+Oa>>0]|0;u=j+(N(za,w)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(Oa<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(Oa<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(Oa<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(Oa<<2))>>0]|0;Wd[c[Aa>>2]&127](u,o,A,i,Qa)}if(!Ia)break;u=N(w<<2,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](n+u|0,p,A,i,Qa);break}t=w<<2;u=Ja+s|0;s=Ka+s|0;if(!(u>>>0<68|s>>>0<68)){i=d[203166+s>>0]|0;A=d[203322+u>>0]|0;s=j+(N(t,o)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(u<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(u<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(u<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(u<<2))>>0]|0;Wd[c[Aa>>2]&127](s,o,A,i,Qa)}if(Ia){if(D){u=N(t,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(s<<2))>>0]|0;Wd[c[Aa>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(203478+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(203478+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(203478+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(203478+(s<<2))>>0]|0;Wd[c[Aa>>2]&127](n+u|0,p,A,i,Qa);break}if(!(w&1)){u=N(w<<1,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[203166+t>>0]|0;A=d[203322+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(203478+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(203478+(s<<2))>>0]|0)+1;Wd[c[Ba>>2]&127](n+u|0,p,A,i,Qa)}}}}while(0);w=w+1|0}f=f+1|0}l=Sa;return}function wm(e,f,g,h,i,j,k,n,o){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;va=l;l=l+80|0;if((l|0)>=(m|0))W(80);ta=va+64|0;pa=va;q=c[e+96>>2]|0;do if((q|0)!=0?(p=c[e+28212>>2]|0,(c[p+724>>2]|0)==0):0){ga=c[e+25664>>2]|0;sa=c[e+28216>>2]|0;w=c[sa+12>>2]|0;ma=(w|0)!=0;oa=(w|0)==3;w=(w|0)==2;Y=c[f+21796>>2]|0;h=c[f+21740>>2]|0;ka=c[f+21732>>2]|0;sa=(N(c[sa+1184>>2]|0,-6)|0)+48|0;ra=(c[f+872>>2]|0)+52+sa|0;sa=(c[f+876>>2]|0)+52+sa|0;t=c[(c[e+24364>>2]|0)+(Y<<2)>>2]|0;la=c[e+24340>>2]|0;na=a[la+Y>>0]|0;Y=a[la+(Y+-1)>>0]|0;la=a[la+(c[f+21712>>2]|0)>>0]|0;qa=d[p+548+na>>0]|0;ja=na+1|0;v=ja+Y>>1;ja=ja+la>>1;g=qa+1|0;Y=(g+(d[p+548+Y>>0]|0)|0)>>>1;la=(g+(d[p+548+la>>0]|0)|0)>>>1;if(t&7|0){J=(c[e+26380>>2]|0)!=3?172600:172608;s=(h|0)!=0;if(s?(r=v+ra|0,u=v+sa|0,!(r>>>0<68|u>>>0<68)):0)Vd[c[e+64>>2]&255](i,n,d[203322+r>>0]|0,d[203166+u>>0]|0);f=(t&16777216|0)!=0;q=ra+na|0;r=203322+q|0;p=sa+na|0;h=203166+p|0;p=q>>>0<68|p>>>0<68;if(f){if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;FZ(ta|0,a[203478+(q<<2)+3>>0]|0,4)|0;Wd[c[e+52>>2]&127](i+(8<>0]|0,pa=ja+sa|0,z=d[203166+pa>>0]|0,!(x>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Vd[c[e+60>>2]&255](i,n,y,z);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(x<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(203478+(x<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(203478+(x<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(203478+(x<<2))>>0]|0;Wd[c[e+48>>2]&127](i,n,y,z,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;FZ(ta|0,a[203478+(q<<2)+3>>0]|0,4)|0;Wd[c[e+48>>2]&127](i+(n<<3)|0,n,na,pa,ta)}}else{if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ha=a[203478+(q<<2)+3>>0]|0;ia=e+52|0;FZ(ta|0,ha|0,4)|0;Wd[c[ia>>2]&127](i+(4<>2]&127](i+(8<>2]&127](i+(12<>0]|0,pa=ja+sa|0,C=d[203166+pa>>0]|0,!(A>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Vd[c[e+60>>2]&255](i,n,B,C);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(A<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(203478+(A<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(203478+(A<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(203478+(A<<2))>>0]|0;Wd[c[e+48>>2]&127](i,n,B,C,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ia=a[203478+(q<<2)+3>>0]|0;ja=e+48|0;FZ(ta|0,ia|0,4)|0;Wd[c[ja>>2]&127](i+(n<<2)|0,n,na,pa,ta);FZ(ta|0,ia|0,4)|0;Wd[c[ja>>2]&127](i+(n<<3)|0,n,na,pa,ta);FZ(ta|0,ia|0,4)|0;Wd[c[ja>>2]&127](i+(n*12|0)|0,n,na,pa,ta)}}if(!ma)break;if(oa){if(s?(D=Y+ra|0,E=Y+sa|0,!(D>>>0<68|E>>>0<68)):0){o=d[203166+E>>0]|0;pa=d[203322+D>>0]|0;oa=e+64|0;Vd[c[oa>>2]&255](j,n,pa,o);Vd[c[oa>>2]&255](k,n,pa,o)}if(f){g=8<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;oa=a[203478+(f<<2)+3>>0]|0;pa=e+52|0;FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](j+g|0,n,qa,o,ta);FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](k+g|0,n,qa,o,ta)}do if(ka|0?(K=la+ra|0,L=d[203322+K>>0]|0,sa=la+sa|0,M=d[203166+sa>>0]|0,!(K>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Vd[c[sa>>2]&255](j,n,L,M);Vd[c[sa>>2]&255](k,n,L,M);break}else{na=a[(g<<16>>16)+(203478+(K<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(203478+(K<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(203478+(K<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(203478+(K<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Wd[c[sa>>2]&127](j,n,L,M,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Wd[c[sa>>2]&127](k,n,L,M,ta);break}}while(0);g=n<<3;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;o=a[203478+(f<<2)+3>>0]|0;e=e+48|0;FZ(ta|0,o|0,4)|0;Wd[c[e>>2]&127](j+g|0,n,ra,sa,ta);FZ(ta|0,o|0,4)|0;Wd[c[e>>2]&127](k+g|0,n,ra,sa,ta);break}else{g=4<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;i=a[203478+(f<<2)+3>>0]|0;oa=e+52|0;FZ(ta|0,i|0,4)|0;Wd[c[oa>>2]&127](j+g|0,n,qa,o,ta);FZ(ta|0,i|0,4)|0;Wd[c[oa>>2]&127](k+g|0,n,qa,o,ta);pa=8<>2]&127](j+pa|0,n,qa,o,ta);FZ(ta|0,i|0,4)|0;Wd[c[oa>>2]&127](k+pa|0,n,qa,o,ta);pa=12<>2]&127](j+pa|0,n,qa,o,ta);FZ(ta|0,i|0,4)|0;Wd[c[oa>>2]&127](k+pa|0,n,qa,o,ta)}do if(ka|0?(O=la+ra|0,P=d[203322+O>>0]|0,sa=la+sa|0,Q=d[203166+sa>>0]|0,!(O>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Vd[c[sa>>2]&255](j,n,P,Q);Vd[c[sa>>2]&255](k,n,P,Q);break}else{na=a[(g<<16>>16)+(203478+(O<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(203478+(O<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(203478+(O<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(203478+(O<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Wd[c[sa>>2]&127](j,n,P,Q,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Wd[c[sa>>2]&127](k,n,P,Q,ta);break}}while(0);g=n<<2;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;qa=a[203478+(f<<2)+3>>0]|0;o=e+48|0;FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](j+g|0,n,ra,sa,ta);FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](k+g|0,n,ra,sa,ta);e=n<<3;FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](j+e|0,n,ra,sa,ta);FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](k+e|0,n,ra,sa,ta);e=n*12|0;FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](j+e|0,n,ra,sa,ta);FZ(ta|0,qa|0,4)|0;Wd[c[o>>2]&127](k+e|0,n,ra,sa,ta);break}}if(w){if(s?(F=Y+ra|0,G=Y+sa|0,!(F>>>0<68|G>>>0<68)):0){n=d[203166+G>>0]|0;pa=d[203322+F>>0]|0;oa=e+88|0;Vd[c[oa>>2]&255](j,o,pa,n);Vd[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[203478+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](j+g|0,o,qa,n,ta);FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(R=la+ra|0,S=d[203322+R>>0]|0,n=la+sa|0,T=d[203166+n>>0]|0,!(R>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Vd[c[n>>2]&255](j,o,S,T);Vd[c[n>>2]&255](k,o,S,T);break}else{na=(d[(g<<16>>16)+(203478+(R<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(203478+(R<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(203478+(R<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(203478+(R<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Wd[c[n>>2]&127](j,o,S,T,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Wd[c[n>>2]&127](k,o,S,T,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;qa=(d[203478+(f<<2)+3>>0]|0)+1&255;ra=e+72|0;FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](j+g|0,o,sa,n,ta);FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](k+g|0,o,sa,n,ta);e=o<<3;FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](j+e|0,o,sa,n,ta);FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](k+e|0,o,sa,n,ta);e=o*12|0;FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](j+e|0,o,sa,n,ta);FZ(ta|0,qa|0,4)|0;Wd[c[ra>>2]&127](k+e|0,o,sa,n,ta);break}else{if(s?(H=Y+ra|0,I=Y+sa|0,!(H>>>0<68|I>>>0<68)):0){n=d[203166+I>>0]|0;pa=d[203322+H>>0]|0;oa=e+88|0;Vd[c[oa>>2]&255](j,o,pa,n);Vd[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[203478+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](j+g|0,o,qa,n,ta);FZ(ta|0,oa|0,4)|0;Wd[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(U=la+ra|0,V=d[203322+U>>0]|0,n=la+sa|0,X=d[203166+n>>0]|0,!(U>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Vd[c[n>>2]&255](j,o,V,X);Vd[c[n>>2]&255](k,o,V,X);break}else{na=(d[(g<<16>>16)+(203478+(U<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(203478+(U<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(203478+(U<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(203478+(U<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Wd[c[n>>2]&127](j,o,V,X,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Wd[c[n>>2]&127](k,o,V,X,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;ra=(d[203478+(f<<2)+3>>0]|0)+1&255;e=e+72|0;FZ(ta|0,ra|0,4)|0;Wd[c[e>>2]&127](j+g|0,o,sa,n,ta);FZ(ta|0,ra|0,4)|0;Wd[c[e>>2]&127](k+g|0,o,sa,n,ta);break}}r=(t&16777216|0)!=0;g=c[f+21856>>2]|0;if(r?!(oa|(g&7|0)!=7):0){q=pa;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+16|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+32|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+48|0;c[q>>2]=131074;c[q+4>>2]=131074;q=4}else{V=0-((t*5|0)>>>5&1)&3|t>>4;X=4-(0-(t>>>3&(g&15|0)==0)&3)|0;_d[q&3](pa,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,X,(t>>24)+1|0,0-((h*5|0)>>>5&1&V>>>1)&3,V,(c[e+26380>>2]|0)!=3&1);q=X}if(h&7|0){X=pa;c[X>>2]=262148;c[X+4>>2]=262148}if(ka&7|0){V=(c[e+26380>>2]|0)!=3;X=pa+32|0;c[X>>2]=V?196611:262148;c[X+4>>2]=V?196611:262148}do if(h|0?(X=pa,V=c[X>>2]|0,s=V&65535,!((V|0)==0&(c[X+4>>2]|0)==0)):0){h=v+ra|0;p=d[203322+h>>0]|0;X=v+sa|0;g=d[203166+X>>0]|0;do if(!(h>>>0<68|X>>>0<68))if(s<<16>>16>3){Vd[c[e+64>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(s<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+52>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=Y+ra|0;f=d[203322+p>>0]|0;g=Y+sa|0;h=d[203166+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Vd[c[e+64>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+52>>2]&127](j,n,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Vd[c[e+64>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+52>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Vd[c[e+88>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+76>>2]&127](j,o,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Vd[c[e+88>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+76>>2]&127](k,o,f,h,ta);break}}}}while(0);do if((q|0)==1){if(ka|0?($=pa+32|0,qa=$,na=c[qa>>2]|0,J=na&65535,!((na|0)==0&(c[qa+4>>2]|0)==0)):0){h=ja+ra|0;p=d[203322+h>>0]|0;qa=ja+sa|0;g=d[203166+qa>>0]|0;do if(!(h>>>0<68|qa>>>0<68))if(J<<16>>16>3){Vd[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(J<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[203322+p>>0]|0;g=la+sa|0;h=d[203166+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Vd[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Vd[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Vd[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Vd[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}}else{if(r){r=pa+16|0;ia=r;f=c[ia>>2]|0;do if(!((f|0)==0&(c[ia+4>>2]|0)==0)){g=1<>>0<68|p>>>0<68)){ia=d[203166+p>>0]|0;ha=d[203322+h>>0]|0;a[ta>>0]=a[(f<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+52>>2]&127](i+q|0,n,ha,ia,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ia=d[203166+h>>0]|0;ha=d[203322+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(203478+(g<<2))>>0]|0;_=pa+18|0;$=ta+1|0;a[$>>0]=a[(b[_>>1]|0)+(203478+(g<<2))>>0]|0;ca=pa+20|0;da=ta+2|0;a[da>>0]=a[(b[ca>>1]|0)+(203478+(g<<2))>>0]|0;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=a[(b[ea>>1]|0)+(203478+(g<<2))>>0]|0;ga=e+52|0;Wd[c[ga>>2]&127](j+q|0,n,ha,ia,ta);a[ta>>0]=a[(b[r>>1]|0)+(203478+(g<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(203478+(g<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(203478+(g<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(203478+(g<<2))>>0]|0;Wd[c[ga>>2]&127](k+q|0,n,ha,ia,ta);break}else{g=g<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ia=d[203166+p>>0]|0;ha=d[203322+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(203478+(h<<2))>>0]|0)+1;_=pa+18|0;$=ta+1|0;a[$>>0]=(d[(b[_>>1]|0)+(203478+(h<<2))>>0]|0)+1;ca=pa+20|0;da=ta+2|0;a[da>>0]=(d[(b[ca>>1]|0)+(203478+(h<<2))>>0]|0)+1;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=(d[(b[ea>>1]|0)+(203478+(h<<2))>>0]|0)+1;ga=e+76|0;Wd[c[ga>>2]&127](j+g|0,o,ha,ia,ta);a[ta>>0]=(d[(b[r>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[$>>0]=(d[(b[_>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[da>>0]=(d[(b[ca>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(203478+(h<<2))>>0]|0)+1;Wd[c[ga>>2]&127](k+g|0,o,ha,ia,ta);break}}while(0);do if(ka|0?(ba=pa+32|0,ka=ba,ia=c[ka>>2]|0,aa=ia&65535,!((ia|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[203322+h>>0]|0;ka=ja+sa|0;g=d[203166+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(aa<<16>>16>3){Vd[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(aa<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[203322+p>>0]|0;g=la+sa|0;h=d[203166+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Vd[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Vd[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Vd[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Vd[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);q=pa+48|0;la=q;h=c[la>>2]|0;if((h|0)==0&(c[la+4>>2]|0)==0)break;f=n<<3;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){na=d[203166+g>>0]|0;la=d[203322+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](i+f|0,n,la,na,ta)}if(!ma)break;if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[203166+g>>0]|0;ra=d[203322+h>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(203478+(h<<2))>>0]|0;ma=pa+50|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0;i=pa+52|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(203478+(h<<2))>>0]|0;qa=pa+54|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0;e=e+48|0;Wd[c[e>>2]&127](j+f|0,n,ra,sa,ta);a[ta>>0]=a[(b[q>>1]|0)+(203478+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(203478+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e>>2]&127](k+f|0,n,ra,sa,ta);break}else{p=o<<2;h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;n=d[203166+g>>0]|0;sa=d[203322+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(203478+(h<<2))>>0]|0)+1;ma=pa+50|0;na=ta+1|0;a[na>>0]=(d[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0)+1;i=pa+52|0;oa=ta+2|0;a[oa>>0]=(d[(b[i>>1]|0)+(203478+(h<<2))>>0]|0)+1;qa=pa+54|0;ra=ta+3|0;a[ra>>0]=(d[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0)+1;e=e+72|0;Wd[c[e>>2]&127](j+p|0,o,sa,n,ta);a[ta>>0]=(d[(b[q>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[na>>0]=(d[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[oa>>0]=(d[(b[i>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0)+1;Wd[c[e>>2]&127](k+p|0,o,sa,n,ta);break}}g=pa+8|0;ba=g;h=c[ba>>2]|0;if(!((h|0)==0&(c[ba+4>>2]|0)==0)){p=4<>>0<68|q>>>0<68)){ba=d[203166+q>>0]|0;aa=d[203322+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(203478+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+10>>1]|0)+(203478+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+12>>1]|0)+(203478+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+14>>1]|0)+(203478+(f<<2))>>0]|0;Wd[c[e+52>>2]&127](i+p|0,n,aa,ba,ta)}if(oa?(Z=ra+qa|0,_=sa+qa|0,!(Z>>>0<68|_>>>0<68)):0){ba=d[203166+_>>0]|0;aa=d[203322+Z>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(203478+(Z<<2))>>0]|0;T=pa+10|0;U=ta+1|0;a[U>>0]=a[(b[T>>1]|0)+(203478+(Z<<2))>>0]|0;V=pa+12|0;X=ta+2|0;a[X>>0]=a[(b[V>>1]|0)+(203478+(Z<<2))>>0]|0;Y=pa+14|0;_=ta+3|0;a[_>>0]=a[(b[Y>>1]|0)+(203478+(Z<<2))>>0]|0;$=e+52|0;Wd[c[$>>2]&127](j+p|0,n,aa,ba,ta);a[ta>>0]=a[(b[g>>1]|0)+(203478+(Z<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(203478+(Z<<2))>>0]|0;a[X>>0]=a[(b[V>>1]|0)+(203478+(Z<<2))>>0]|0;a[_>>0]=a[(b[Y>>1]|0)+(203478+(Z<<2))>>0]|0;Wd[c[$>>2]&127](k+p|0,n,aa,ba,ta)}}r=pa+16|0;ba=r;g=c[ba>>2]|0;do if(!((g|0)==0&(c[ba+4>>2]|0)==0)){h=1<>>0<68|f>>>0<68)){ba=d[203166+f>>0]|0;aa=d[203322+p>>0]|0;a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+52>>2]&127](i+q|0,n,aa,ba,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ba=d[203166+h>>0]|0;aa=d[203322+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(203478+(g<<2))>>0]|0;U=pa+18|0;V=ta+1|0;a[V>>0]=a[(b[U>>1]|0)+(203478+(g<<2))>>0]|0;X=pa+20|0;Y=ta+2|0;a[Y>>0]=a[(b[X>>1]|0)+(203478+(g<<2))>>0]|0;Z=pa+22|0;_=ta+3|0;a[_>>0]=a[(b[Z>>1]|0)+(203478+(g<<2))>>0]|0;$=e+52|0;Wd[c[$>>2]&127](j+q|0,n,aa,ba,ta);a[ta>>0]=a[(b[r>>1]|0)+(203478+(g<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(203478+(g<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(203478+(g<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(203478+(g<<2))>>0]|0;Wd[c[$>>2]&127](k+q|0,n,aa,ba,ta);break}else{g=h<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ba=d[203166+p>>0]|0;aa=d[203322+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(203478+(h<<2))>>0]|0)+1;U=pa+18|0;V=ta+1|0;a[V>>0]=(d[(b[U>>1]|0)+(203478+(h<<2))>>0]|0)+1;X=pa+20|0;Y=ta+2|0;a[Y>>0]=(d[(b[X>>1]|0)+(203478+(h<<2))>>0]|0)+1;Z=pa+22|0;_=ta+3|0;a[_>>0]=(d[(b[Z>>1]|0)+(203478+(h<<2))>>0]|0)+1;$=e+76|0;Wd[c[$>>2]&127](j+g|0,o,aa,ba,ta);a[ta>>0]=(d[(b[r>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[V>>0]=(d[(b[U>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[Y>>0]=(d[(b[X>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[_>>0]=(d[(b[Z>>1]|0)+(203478+(h<<2))>>0]|0)+1;Wd[c[$>>2]&127](k+g|0,o,aa,ba,ta);break}}while(0);f=pa+24|0;ba=f;q=c[ba>>2]|0;if(!((q|0)==0&(c[ba+4>>2]|0)==0)){g=12<>>0<68|p>>>0<68)){ga=d[203166+p>>0]|0;ba=d[203322+h>>0]|0;a[ta>>0]=a[(q<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+26>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+28>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+30>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+52>>2]&127](i+g|0,n,ba,ga,ta)}if(oa?(ca=ra+qa|0,da=sa+qa|0,!(ca>>>0<68|da>>>0<68)):0){ga=d[203166+da>>0]|0;da=d[203322+ca>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(203478+(ca<<2))>>0]|0;X=pa+26|0;Y=ta+1|0;a[Y>>0]=a[(b[X>>1]|0)+(203478+(ca<<2))>>0]|0;Z=pa+28|0;_=ta+2|0;a[_>>0]=a[(b[Z>>1]|0)+(203478+(ca<<2))>>0]|0;$=pa+30|0;aa=ta+3|0;a[aa>>0]=a[(b[$>>1]|0)+(203478+(ca<<2))>>0]|0;ba=e+52|0;Wd[c[ba>>2]&127](j+g|0,n,da,ga,ta);a[ta>>0]=a[(b[f>>1]|0)+(203478+(ca<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(203478+(ca<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(203478+(ca<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(203478+(ca<<2))>>0]|0;Wd[c[ba>>2]&127](k+g|0,n,da,ga,ta)}}do if(ka|0?(fa=pa+32|0,ka=fa,ga=c[ka>>2]|0,ea=ga&65535,!((ga|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[203322+h>>0]|0;ka=ja+sa|0;g=d[203166+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(ea<<16>>16>3){Vd[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(ea<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[203322+p>>0]|0;g=la+sa|0;h=d[203166+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Vd[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](j,n,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Vd[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Vd[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](j,o,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Vd[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(203478+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(203478+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(203478+(p<<2))>>0]|0)+1;Wd[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);g=pa+40|0;la=g;h=c[la>>2]|0;if(!((h|0)==0&(c[la+4>>2]|0)==0)){p=n<<2;f=ra+na|0;q=sa+na|0;if(!(f>>>0<68|q>>>0<68)){la=d[203166+q>>0]|0;ka=d[203322+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(203478+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+42>>1]|0)+(203478+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+44>>1]|0)+(203478+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+46>>1]|0)+(203478+(f<<2))>>0]|0;Wd[c[e+48>>2]&127](i+p|0,n,ka,la,ta)}if(oa?(ha=ra+qa|0,ia=sa+qa|0,!(ha>>>0<68|ia>>>0<68)):0){la=d[203166+ia>>0]|0;ka=d[203322+ha>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(203478+(ha<<2))>>0]|0;ca=pa+42|0;da=ta+1|0;a[da>>0]=a[(b[ca>>1]|0)+(203478+(ha<<2))>>0]|0;ea=pa+44|0;fa=ta+2|0;a[fa>>0]=a[(b[ea>>1]|0)+(203478+(ha<<2))>>0]|0;ga=pa+46|0;ia=ta+3|0;a[ia>>0]=a[(b[ga>>1]|0)+(203478+(ha<<2))>>0]|0;ja=e+48|0;Wd[c[ja>>2]&127](j+p|0,n,ka,la,ta);a[ta>>0]=a[(b[g>>1]|0)+(203478+(ha<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(203478+(ha<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(203478+(ha<<2))>>0]|0;a[ia>>0]=a[(b[ga>>1]|0)+(203478+(ha<<2))>>0]|0;Wd[c[ja>>2]&127](k+p|0,n,ka,la,ta)}}q=pa+48|0;la=q;g=c[la>>2]|0;do if(!((g|0)==0&(c[la+4>>2]|0)==0)){f=n<<3;h=ra+na|0;p=sa+na|0;if(!(h>>>0<68|p>>>0<68)){la=d[203166+p>>0]|0;ka=d[203322+h>>0]|0;a[ta>>0]=a[(g<<16>>16)+(203478+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(203478+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e+48>>2]&127](i+f|0,n,ka,la,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;o=d[203166+h>>0]|0;ma=d[203322+g>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(203478+(g<<2))>>0]|0;fa=pa+50|0;ga=ta+1|0;a[ga>>0]=a[(b[fa>>1]|0)+(203478+(g<<2))>>0]|0;ha=pa+52|0;ia=ta+2|0;a[ia>>0]=a[(b[ha>>1]|0)+(203478+(g<<2))>>0]|0;ja=pa+54|0;ka=ta+3|0;a[ka>>0]=a[(b[ja>>1]|0)+(203478+(g<<2))>>0]|0;la=e+48|0;Wd[c[la>>2]&127](j+f|0,n,ma,o,ta);a[ta>>0]=a[(b[q>>1]|0)+(203478+(g<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(203478+(g<<2))>>0]|0;a[ia>>0]=a[(b[ha>>1]|0)+(203478+(g<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(203478+(g<<2))>>0]|0;Wd[c[la>>2]&127](k+f|0,n,ma,o,ta);break}else{g=o<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ma=d[203166+p>>0]|0;la=d[203322+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(203478+(h<<2))>>0]|0)+1;ea=pa+50|0;fa=ta+1|0;a[fa>>0]=(d[(b[ea>>1]|0)+(203478+(h<<2))>>0]|0)+1;ga=pa+52|0;ha=ta+2|0;a[ha>>0]=(d[(b[ga>>1]|0)+(203478+(h<<2))>>0]|0)+1;ia=pa+54|0;ja=ta+3|0;a[ja>>0]=(d[(b[ia>>1]|0)+(203478+(h<<2))>>0]|0)+1;ka=e+72|0;Wd[c[ka>>2]&127](j+g|0,o,la,ma,ta);a[ta>>0]=(d[(b[q>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[ha>>0]=(d[(b[ga>>1]|0)+(203478+(h<<2))>>0]|0)+1;a[ja>>0]=(d[(b[ia>>1]|0)+(203478+(h<<2))>>0]|0)+1;Wd[c[ka>>2]&127](k+g|0,o,la,ma,ta);break}}while(0);f=pa+56|0;o=f;h=c[o>>2]|0;if(!((h|0)==0&(c[o+4>>2]|0)==0)){q=n*12|0;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){o=d[203166+g>>0]|0;na=d[203322+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(203478+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+58>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+60>>1]|0)+(203478+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+62>>1]|0)+(203478+(p<<2))>>0]|0;Wd[c[e+48>>2]&127](i+q|0,n,na,o,ta)}if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[203166+g>>0]|0;ra=d[203322+h>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(203478+(h<<2))>>0]|0;ma=pa+58|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0;i=pa+60|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(203478+(h<<2))>>0]|0;qa=pa+62|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0;e=e+48|0;Wd[c[e>>2]&127](j+q|0,n,ra,sa,ta);a[ta>>0]=a[(b[f>>1]|0)+(203478+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(203478+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(203478+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(203478+(h<<2))>>0]|0;Wd[c[e>>2]&127](k+q|0,n,ra,sa,ta)}}}while(0)}else ua=3;while(0);if((ua|0)==3)vm(e,f,g,h,i,j,k,n,o);l=va;return}function xm(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;bo(f,g,d*96|0);b=a+27792|0;bo(b,a+27808|0,d*42|0);d=a+27796|0;h=h+27012|0;co(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;co(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{ci(f);ci(b);ci(d);ci(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function zm(a){a=a|0;var b=0;b=0-(Am(a)|0)&7;if(b|0)ao(a,b);return}function Am(a){a=a|0;return c[a+8>>2]|0}function Bm(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Am(a)|0)|0}function Cm(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=f+e|0;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function Dm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(N(c[(c[b+28216>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)>0?((b|0)<51?b:51):0;if((c[d+840>>2]|0)==1)f=211810;else f=205666+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(N(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function Em(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29672>>2]|0)$n((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function Fm(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+80|0;if((l|0)>=(m|0))W(80);ia=qa+40|0;da=qa+32|0;s=qa+24|0;t=qa+16|0;p=qa+8|0;u=qa;la=qa+72|0;aa=qa+56|0;ba=qa+52|0;X=qa+48|0;ka=f+28216|0;fa=c[ka>>2]|0;ma=f+28212|0;o=c[(c[ma>>2]|0)+64>>2]|0;k=fa+12|0;ea=((c[k>>2]|0)+-1|0)>>>0<2;na=c[f+25664>>2]|0;ga=g+21788|0;h=c[ga>>2]|0;ha=g+21792|0;i=c[ha>>2]|0;_=f+27016|0;pa=(N(c[_>>2]|0,i)|0)+h|0;oa=g+21796|0;c[oa>>2]=pa;ca=g+840|0;Z=f+26376|0;if((c[ca>>2]|0)!=1){if(!((c[Z>>2]|0)==0|(i&1|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=Cn(f,g,h,i)|0;if(h){if((c[Z>>2]|0?(c[ha>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(pa<<2)>>2]=2048,oa=Cn(f,g,c[ga>>2]|0,(c[ha>>2]|0)+1|0)|0,c[g+21652>>2]=oa,(oa|0)==0):0){oa=Dn(f,g)|0;c[g+21828>>2]=oa;c[g+21832>>2]=oa}En(f,g);b[(c[f+26392>>2]|0)+(pa<<1)>>1]=0;a[(c[f+26396>>2]|0)+pa>>0]=0;c[g+864>>2]=0;h=0}else ja=12}else ja=12;a:do if((ja|0)==12){if(c[Z>>2]|0?(c[ha>>2]&1|0)==0:0){$=Dn(f,g)|0;c[g+21828>>2]=$;c[g+21832>>2]=$}c[g+21648>>2]=0;Y=g+21828|0;Fn(f,g,0-(c[Y>>2]|0)|0);b:do switch(c[ca>>2]|0){case 3:{j=g+32856|0;c:do if(!(Gn(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[la>>2]=0;h=0}else{if(!(Gn(j,g+32934|0)|0)){h=(Gn(j,g+32936|0)|0)+1|0;c[la>>2]=h;break}i=(Gn(j,g+32935|0)|0)<<3;h=g+32936|0;i=((Gn(j,h)|0)<<2)+i|0;i=i+((Gn(j,h)|0)<<1)|0;i=i+(Gn(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[la>>2]=h;break}switch(i|0){case 13:{h=Hn(g,32,0)|0;c[la>>2]=h;ja=36;break b}case 14:{c[la>>2]=11;h=11;break c}case 15:{c[la>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(Gn(j,h)|0)|0;c[la>>2]=h;break c}}}while(0);i=a[172448+(h<<2)+2>>0]|0;h=e[172448+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}case 2:{h=g+32856|0;if(Gn(h,g+32918|0)|0){h=Hn(g,17,0)|0;c[la>>2]=h;ja=36;break b}if(!(Gn(h,g+32919|0)|0))h=(Gn(h,g+32920|0)|0)*3|0;else h=2-(Gn(h,g+32921|0)|0)|0;i=a[172412+(h<<2)+2>>0]|0;h=e[172412+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}default:{h=Hn(g,3,1)|0;c[la>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[la>>2]=h;ja=36}else ja=36}}while(0);if((ja|0)==36){$=d[172308+(h<<2)+3>>0]|0;c[g+21660>>2]=d[172308+(h<<2)+2>>0];h=e[172308+(h<<2)>>1]|0;c[la>>2]=h;i=0}if(c[Y>>2]|0){h=h|128;c[la>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){i=(N(c[fa+1184>>2]|0,e[172592+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=Cm(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=-2065;a[(c[f+26396>>2]|0)+pa>>0]=0;a[(c[f+24340>>2]|0)+pa>>0]=0;j=(c[f+25972>>2]|0)+(pa*48|0)|0;k=j+48|0;do{a[j>>0]=16;j=j+1|0}while((j|0)<(k|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[la>>2];c[g+864>>2]=0;h=0;break}In(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[ca>>2]|0)==3){h=0;while(1){if((h|0)==4)break;V=Ln(g)|0;c[aa+(h<<2)>>2]=d[172540+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[172540+((V&65535)<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){Ym(f,g,la);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;V=(d[215911+(h<<2)>>0]|0)+(g+28512)|0;U=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[V>>1]=U;b[V+8>>1]=U;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;V=Mn(g)|0;c[aa+(h<<2)>>2]=d[172432+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[172432+((V&65535)<<2)>>1]|0;h=h+1|0}}while(0);V=g+23412|0;r=g+21832|0;q=0;f:while(1){h=c[V>>2]|0;if(q>>>0>=h>>>0){ja=80;break}n=4096<<(q<<1);p=g+23404+(q<<2)|0;k=0;while(1){if((k|0)>=4)break;h=e[g+28552+(k<<1)>>1]|0;if(!(h&256)){if(n&h){i=c[p>>2]<>2];if(i>>>0>1){j=k<<2;h=Nn(g,q,j)|0;if(h>>>0>=i>>>0){ja=75;break f}}else{h=0;ja=76}}else{h=-1;ja=76}if((ja|0)==76){ja=0;j=k<<2}T=h&255;U=d[215911+j>>0]|0;a[U+9+(g+28272+(q*40|0))>>0]=T;a[U+8+(g+28272+(q*40|0))>>0]=T;a[U+1+(g+28272+(q*40|0))>>0]=T}k=k+1|0}q=q+1|0}do if((ja|0)==75){g=c[f+4>>2]|0;c[u>>2]=h;c[u+4>>2]=i;gi(g,16,205214,u);h=-1}else if((ja|0)==80){if(!o)o=0;else{U=(c[(c[ka>>2]|0)+72>>2]|0)==0;o=g+28552|0;o=(((U?24117616:7340144)&c[o>>2]|0)==0?((U?24117616:7340144)&c[o+4>>2]|0)==0:0)&1}Q=f+24312|0;R=g+21740|0;S=g+21720|0;T=f+26360|0;U=f+26368|0;P=0;g:while(1){if(P>>>0>=h>>>0){ja=129;break}L=P<<1;I=4096<=4)break;O=H<<2;h=d[215911+O>>0]|0;a[g+28272+(P*40|0)+h>>0]=a[h+1+(g+28272+(P*40|0))>>0]|0;i=e[g+28552+(H<<1)>>1]|0;h:do if(!(i&256)){if(!(I&i)){c[g+27952+(P*160|0)+(h<<2)>>2]=0;c[g+27952+(P*160|0)+(h<<2)+4>>2]=0;c[g+27952+(P*160|0)+(h<<2)+32>>2]=0;c[g+27952+(P*160|0)+(h<<2)+36>>2]=0;ja=125;break}D=i&24|0?2:1;E=c[aa+(H<<2)>>2]|0;F=(i&8|0)==0;G=(i&16|0)==0;z=(i&32|0)==0;y=0;while(1){if((y|0)>=(E|0))break h;h=a[215911+((N(y,D)|0)+O)>>0]|0;A=h&255;B=g+27952+(P*160|0)+(A<<2)|0;C=g+28352+(P*80|0)+(A<<1)|0;q=a[g+28272+(P*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(P*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(P*40|0)+x>>0]|0;s=g+27952+(P*160|0)+(x<<2)|0;v=g+27952+(P*160|0)+(w<<2)|0;i=w+D|0;j=a[g+28272+(P*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[J>>0]|0)==-2){ja=99;break}p=c[(c[Q>>2]|0)+48>>2]|0;c[K>>2]=0;n=(c[R>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(n){ja=99;break}n=c[_>>2]|0;h=n+(c[S>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,n)|0)+h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=b[p+(n<<2)+2>>1]<<1;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!n){ja=99;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i&3)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=(b[p+(n<<2)+2>>1]|0)/2|0;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ja=99;while(0);do if((ja|0)==99){ja=0;if(j){k=A+-9|0;n=g+27952+(P*160|0)+(k<<2)|0;k=a[g+28272+(P*40|0)+k>>0]|0;break}else{n=g+27952+(P*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}else{h=On(h,b[v>>1]|0,b[n>>1]|0)|0;i=On(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){h=b[s>>1]|0;i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}if(j){h=b[v>>1]|0;i=b[g+27952+(P*160|0)+(w<<2)+2>>1]|0;break}else{h=b[n>>1]|0;i=b[n+2>>1]|0;break}}else{h=On(b[s>>1]|0,b[v>>1]|0,b[n>>1]|0)|0;i=On(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0}while(0);p=(d[g+28352+(P*80|0)+(w<<1)+1>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)+1>>0]|0)|0;w=Pn(g,40,(d[g+28352+(P*80|0)+(w<<1)>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)>>0]|0)|0,ba)|0;x=Pn(g,47,p,X)|0;p=w+h|0;n=x+i|0;if((w|0)==-2147483648|(x|0)==-2147483648){ja=123;break g}do if(F){if(!G){b[B+4>>1]=p;b[B+6>>1]=n;i=c[ba>>2]|0;a[C+2>>0]=i;h=c[X>>2]|0;j=h&255;k=1;ja=121;break}if(z){i=c[ba>>2]|0;h=c[X>>2]|0;break}else{b[B+32>>1]=p;b[B+34>>1]=n;i=c[ba>>2]|0;a[C+16>>0]=i;h=c[X>>2]|0;j=h&255;k=8;ja=121;break}}else{i=p&65535;b[B+36>>1]=i;b[B+32>>1]=i;b[B+4>>1]=i;i=n&65535;b[B+38>>1]=i;b[B+34>>1]=i;b[B+6>>1]=i;i=c[ba>>2]|0;h=i&255;a[C+18>>0]=h;a[C+16>>0]=h;a[C+2>>0]=h;h=c[X>>2]|0;j=h&255;a[C+19>>0]=j;a[C+17>>0]=j;k=1;ja=121}while(0);if((ja|0)==121){ja=0;a[C+(k<<1)+1>>0]=j}b[B>>1]=p;b[g+27952+(P*160|0)+(A<<2)+2>>1]=n;a[C>>0]=i;a[g+28352+(P*80|0)+(A<<1)+1>>0]=h;y=y+1|0}}else ja=125;while(0);if((ja|0)==125){ja=0;c[g+28352+(P*80|0)+(h<<1)>>2]=0;c[g+28352+(P*80|0)+(h<<1)+16>>2]=0}H=H+1|0}P=P+1|0;h=c[V>>2]|0}if((ja|0)==123){h=-1094995529;break}else if((ja|0)==129)break d}while(0);break a}if(h&256|0){Ym(f,g,la);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;o=c[fa+72>>2]&o;break}if(h&8|0){v=g+23412|0;k=c[la>>2]|0;n=g+21832|0;j=0;while(1){h=c[v>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];if(i>>>0>1){h=Nn(g,j,0)|0;if(h>>>0>=i>>>0){ja=140;break}}else h=0;_=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=_;c[g+28272+(j*40|0)+20>>2]=_;c[g+28272+(j*40|0)+28>>2]=_;c[g+28272+(j*40|0)+36>>2]=_}j=j+1|0}if((ja|0)==140){g=c[f+4>>2]|0;c[p>>2]=h;c[p+4>>2]=i;gi(g,16,205214,p);h=-1;break a}u=0;while(1){if(u>>>0>=h>>>0)break d;if(c[la>>2]&4096<<(u<<1)){i=a[g+28272+(u*40|0)+12>>0]|0;q=a[g+28272+(u*40|0)+4>>0]|0;r=a[g+28272+(u*40|0)+11>>0]|0;p=g+27952+(u*160|0)+44|0;s=g+27952+(u*160|0)+16|0;h=a[g+28272+(u*40|0)+8>>0]|0;if(h<<24>>24==-2){t=g+27952+(u*160|0)+12|0;n=a[g+28272+(u*40|0)+3>>0]|0}else{t=g+27952+(u*160|0)+32|0;n=h<<24>>24}j=q<<24>>24==i<<24>>24;k=r<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){k=b[p>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(u*160|0)+46>>1]|0;break}else{k=On(k,b[s>>1]|0,b[t>>1]|0)|0;h=On(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0;break}}if(k){k=b[p>>1]|0;h=b[g+27952+(u*160|0)+46>>1]|0;break}if(j){k=b[s>>1]|0;h=b[g+27952+(u*160|0)+18>>1]|0;break}else{k=b[t>>1]|0;h=b[t+2>>1]|0;break}}else{k=On(b[p>>1]|0,b[s>>1]|0,b[t>>1]|0)|0;h=On(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0}while(0);j=(d[g+28352+(u*80|0)+9>>0]|0)+(d[g+28352+(u*80|0)+23>>0]|0)|0;i=Pn(g,40,(d[g+28352+(u*80|0)+8>>0]|0)+(d[g+28352+(u*80|0)+22>>0]|0)|0,aa)|0;j=Pn(g,47,j,ba)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;_=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(u*80|0)+24>>2]=_;c[g+28352+(u*80|0)+28>>2]=_;c[g+28352+(u*80|0)+40>>2]=_;c[g+28352+(u*80|0)+44>>2]=_;c[g+28352+(u*80|0)+56>>2]=_;c[g+28352+(u*80|0)+60>>2]=_;c[g+28352+(u*80|0)+72>>2]=_;c[g+28352+(u*80|0)+76>>2]=_;h=j+h<<16|i+k&65535;c[g+27952+(u*160|0)+48>>2]=h;c[g+27952+(u*160|0)+52>>2]=h;c[g+27952+(u*160|0)+56>>2]=h;c[g+27952+(u*160|0)+60>>2]=h;c[g+27952+(u*160|0)+80>>2]=h;c[g+27952+(u*160|0)+84>>2]=h;c[g+27952+(u*160|0)+88>>2]=h;c[g+27952+(u*160|0)+92>>2]=h;c[g+27952+(u*160|0)+112>>2]=h;c[g+27952+(u*160|0)+116>>2]=h;c[g+27952+(u*160|0)+120>>2]=h;c[g+27952+(u*160|0)+124>>2]=h;c[g+27952+(u*160|0)+144>>2]=h;c[g+27952+(u*160|0)+148>>2]=h;c[g+27952+(u*160|0)+152>>2]=h;c[g+27952+(u*160|0)+156>>2]=h;h=c[v>>2]|0}u=u+1|0}h=-1094995529;break a}U=g+23412|0;q=c[la>>2]|0;r=g+21832|0;if(!(h&16))p=0;else{p=0;i:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Nn(g,p,j<<3)|0;if(h>>>0>=i>>>0){ja=171;break i}}else h=0;h=N(h,16843009)|0}X=(j<<4|12)+(g+28272+(p*40|0))|0;c[X>>2]=h;c[X+8>>2]=h;j=j+1|0}p=p+1|0}if((ja|0)==171){g=c[f+4>>2]|0;c[t>>2]=h;c[t+4>>2]=i;gi(g,16,205214,t);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;j:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+4|0;D=g+27952+(O*160|0)+16|0;E=g+27952+(O*160|0)+18|0;F=g+28272+(O*40|0)+11|0;G=g+27952+(O*160|0)+40|0;H=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+4>>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+20>>2]=0;V=g+27952+(O*160|0)+(X<<2)|0;X=g+27952+(O*160|0)+(X<<2)+32|0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[V+12>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0}else{z=A<<3;M=A<<4|12;r=a[g+28272+(O*40|0)+M>>0]|0;s=r<<24>>24;do if(!A){if((a[C>>0]|0)!=r<<24>>24){ja=183;break}k=b[D>>1]|0;j=b[E>>1]|0}else{if((a[J>>0]|0)!=r<<24>>24){ja=183;break}k=b[K>>1]|0;j=b[L>>1]|0}while(0);do if((ja|0)==183){ja=0;k=a[215911+z>>0]|0;p=k&255;y=p+-8|0;w=a[g+28272+(O*40|0)+y>>0]|0;x=p+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;t=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(y<<2)|0;h=p+-4|0;i=a[g+28272+(O*40|0)+h>>0]|0;n=i<<24>>24;i=i<<24>>24==-2;do if((p&7|0)==4&((k&255)>19&(i&(c[Z>>2]|0)!=0))){if((a[F>>0]|0)==-2){ja=192;break}q=c[(c[P>>2]|0)+48>>2]|0;c[G>>2]=0;j=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(j){ja=192;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=b[X+(p<<2)+2>>1]<<1;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ja=192;break}i=c[g+21720+(((k&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=192;while(0);do if((ja|0)==192){ja=0;if(i){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(h<<2)|0;break}}while(0);j=w<<24>>24==r<<24>>24;i=u<<24>>24==r<<24>>24;h=(i&1)+(j&1)+((n|0)==(s|0)&1)|0;if(h>>>0>1){k=On(b[t>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=On(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[t>>1]|0;if(u<<24>>24!=-2&(w<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=On(k,b[v>>1]|0,b[p>>1]|0)|0;j=On(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[t>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[215911+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Pn(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Pn(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+4>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+20>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+8>>2]=X;c[g+27952+(O*160|0)+(M<<2)+12>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+40>>2]=X;c[g+27952+(O*160|0)+(M<<2)+44>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}k:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Nn(g,p,j<<2)|0;if(h>>>0>=i>>>0){ja=220;break k}}else h=0;h=h*257&65535}X=(j<<1)+12+(g+28272+(p*40|0))|0;b[X>>1]=h;b[X+8>>1]=h;b[X+16>>1]=h;b[X+24>>1]=h;j=j+1|0}p=p+1|0}if((ja|0)==220){g=c[f+4>>2]|0;c[s>>2]=h;c[s+4>>2]=i;gi(g,16,205214,s);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;l:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+11|0;D=g+27952+(O*160|0)+44|0;E=g+27952+(O*160|0)+46|0;F=g+27952+(O*160|0)+40|0;G=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+32>>2]=0;c[g+28352+(O*80|0)+(X<<1)+48>>2]=0;c[g+27952+(O*160|0)+(X<<2)>>2]=0;c[g+27952+(O*160|0)+(X<<2)+4>>2]=0;c[g+27952+(O*160|0)+(X<<2)+32>>2]=0;c[g+27952+(O*160|0)+(X<<2)+36>>2]=0;c[g+27952+(O*160|0)+(X<<2)+64>>2]=0;c[g+27952+(O*160|0)+(X<<2)+68>>2]=0;c[g+27952+(O*160|0)+(X<<2)+96>>2]=0;c[g+27952+(O*160|0)+(X<<2)+100>>2]=0}else{z=A<<2;M=(A<<1)+12|0;s=a[g+28272+(O*40|0)+M>>0]|0;w=s<<24>>24;do if(!A)if((a[C>>0]|0)==s<<24>>24){k=b[D>>1]|0;j=b[E>>1]|0}else ja=234;else{h=a[I>>0]|0;if(h<<24>>24==-2){i=J;h=a[K>>0]|0}else i=L;if(h<<24>>24!=s<<24>>24){ja=234;break}k=b[i>>1]|0;j=b[i+2>>1]|0}while(0);do if((ja|0)==234){ja=0;h=a[215911+z>>0]|0;p=h&255;x=p+-8|0;t=a[g+28272+(O*40|0)+x>>0]|0;y=p+-1|0;u=a[g+28272+(O*40|0)+y>>0]|0;r=g+27952+(O*160|0)+(y<<2)|0;v=g+27952+(O*160|0)+(x<<2)|0;i=p+-6|0;j=a[g+28272+(O*40|0)+i>>0]|0;n=j<<24>>24;j=j<<24>>24==-2;do if((p&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[C>>0]|0)==-2){ja=243;break}q=c[(c[P>>2]|0)+48>>2]|0;c[F>>2]=0;k=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(k){ja=243;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=b[X+(p<<2)+2>>1]<<1;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!k){ja=243;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=243;while(0);do if((ja|0)==243){ja=0;if(j){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==s<<24>>24;i=u<<24>>24==s<<24>>24;h=(i&1)+(j&1)+((n|0)==(w|0)&1)|0;if(h>>>0>1){k=On(b[r>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=On(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[r>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=On(k,b[v>>1]|0,b[p>>1]|0)|0;j=On(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[r>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[215911+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Pn(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Pn(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+32>>2]=X;c[g+28352+(O*80|0)+(M<<1)+48>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+64>>2]=X;c[g+27952+(O*160|0)+(M<<2)+68>>2]=X;c[g+27952+(O*160|0)+(M<<2)+96>>2]=X;c[g+27952+(O*160|0)+(M<<2)+100>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}else{if(!(h&1)){aa=g+21660|0;ba=Wm(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[aa>>2]|0,0)|0;c[aa>>2]=ba;if((ba|0)<0){h=-1;break a}}else{m:do if((o|0)!=0?(Gn(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[la>>2]=h|16777216;h=0;while(1){if((h|0)>=16)break m;ba=d[215911+h>>0]|0;aa=a[ba+-1+(g+21664)>>0]|0;_=a[ba+-8+(g+21664)>>0]|0;aa=(aa|0)>(_|0)?_:aa;ba=g+21664+ba|0;aa=(Jn(g,(aa|0)<0?2:aa)|0)*257&65535;b[ba>>1]=aa;b[ba+8>>1]=aa;h=h+4|0}}else{h=0;ja=50}while(0);n:do if((ja|0)==50)while(1){ja=0;if((h|0)==16)break n;ja=d[215911+h>>0]|0;ba=a[ja+-1+(g+21664)>>0]|0;aa=a[ja+-8+(g+21664)>>0]|0;ba=(ba|0)>(aa|0)?aa:ba;a[g+21664+ja>>0]=Jn(g,(ba|0)<0?2:ba)|0;h=h+1|0;ja=50}while(0);ba=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[ba>>2]=c[g+21700>>2];a[ba+4>>0]=a[g+21695>>0]|0;a[ba+5>>0]=a[g+21687>>0]|0;a[ba+6>>0]=a[g+21679>>0]|0;if((Vm(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(ea){h=Kn(f,g)|0;a[(c[f+26396>>2]|0)+pa>>0]=h;h=Wm(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h}while(0);if(c[la>>2]&120|0){a[(c[f+26396>>2]|0)+pa>>0]=0;k=c[la>>2]|0;h=c[f+26368>>2]|0;i=(N(h<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;n=c[oa>>2]<<2;if(!(k&12288)){ba=(c[f+24384>>2]|0)+n|0;b[ba>>1]=-1;b[ba+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;aa=g+28e3|0;ba=c[aa+4>>2]|0;Z=j;c[Z>>2]=c[aa>>2];c[Z+4>>2]=ba;Z=g+28008|0;ba=c[Z+4>>2]|0;aa=j+8|0;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28032|0;ba=c[aa+4>>2]|0;Z=j+(h<<2)|0;_=Z;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28040|0;ba=c[_+4>>2]|0;Z=Z+8|0;c[Z>>2]=c[_>>2];c[Z+4>>2]=ba;Z=g+28064|0;ba=c[Z+4>>2]|0;_=j+(h<<1<<2)|0;aa=_;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28072|0;ba=c[aa+4>>2]|0;_=_+8|0;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28096|0;ba=c[_+4>>2]|0;j=j+(h*3<<2)|0;aa=j;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28104|0;ba=c[aa+4>>2]|0;j=j+8|0;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28424|0;aa=c[_+4>>2]|0;ba=j;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=j+6|0;b[ba+6>>1]=b[g+28382>>1]|0;b[ba+4>>1]=b[g+28398>>1]|0;b[ba+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}ba=(c[f+24384>>2]|0)+n|0;a[ba>>0]=a[g+28284>>0]|0;a[ba+1>>0]=a[g+28286>>0]|0;a[ba+2>>0]=a[g+28300>>0]|0;a[ba+3>>0]=a[g+28302>>0]|0}if(k&49152|0){aa=(c[f+24356>>2]|0)+(i<<2)|0;Z=g+28160|0;ba=c[Z+4>>2]|0;Y=aa;c[Y>>2]=c[Z>>2];c[Y+4>>2]=ba;Y=g+28168|0;ba=c[Y+4>>2]|0;Z=aa+8|0;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28192|0;ba=c[Z+4>>2]|0;Y=aa+(h<<2)|0;_=Y;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28200|0;ba=c[_+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[_>>2];c[Y+4>>2]=ba;Y=g+28224|0;ba=c[Y+4>>2]|0;_=aa+(h<<1<<2)|0;Z=_;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28232|0;ba=c[Z+4>>2]|0;_=_+8|0;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28256|0;ba=c[_+4>>2]|0;h=aa+(h*3<<2)|0;aa=h;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28264|0;ba=c[aa+4>>2]|0;h=h+8|0;c[h>>2]=c[aa>>2];c[h+4>>2]=ba;h=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28504|0;aa=c[_+4>>2]|0;ba=h;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=h+6|0;b[ba+6>>1]=b[g+28462>>1]|0;b[ba+4>>1]=b[g+28478>>1]|0;b[ba+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}ba=(c[f+24388>>2]|0)+n|0;a[ba>>0]=a[g+28324>>0]|0;a[ba+1>>0]=a[g+28326>>0]|0;a[ba+2>>0]=a[g+28340>>0]|0;a[ba+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[ca>>2]|0)!=3)){ca=(c[f+26408>>2]|0)+(c[oa>>2]<<2)|0;a[ca+1>>0]=(e[g+28554>>1]|0)>>>1;a[ca+2>>0]=(e[g+28556>>1]|0)>>>1;a[ca+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[la>>2]&2)){h=Qn(g)|0;if(ea)w=(Rn(g)|0)<<4|h;else w=h}else if($>>>0>15&(ea^1)){gi(c[f+4>>2]|0,16,205234,da);h=-1094995529;break}else w=$;c[g+21856>>2]=w;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=w;u=(w&15|0)==0;if(!((o|0)==0|u)?(c[la>>2]&7|0)==0:0){ea=(Gn(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[la>>2]=c[la>>2]|ea}k=c[la>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ka>>2]|0)+12>>2]|0)!=3)){if((c[f+25704>>2]|0)>>>0>=151){h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){da=i<<4&64;ea=h<<4;a[ea+99+(g+27824)>>0]=da;a[ea+91+(g+27824)>>0]=da;a[ea+59+(g+27824)>>0]=da;a[ea+51+(g+27824)>>0]=da;a[ea+19+(g+27824)>>0]=da;a[(ea|11)+(g+27824)>>0]=da}h=h+1|0}ea=c[g+21732>>2]|0;h=(ea&4|0)==0?0:1077952576;if(!((ea|0)!=0&(ea&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}i=k&7;j=i|0?64:0;h=0;while(1){if((h|0)==2)break;ea=c[g+21740+(h<<2)>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=h<<4;a[ea+99+(g+27824)>>0]=j;a[ea+91+(g+27824)>>0]=j;a[ea+59+(g+27824)>>0]=j;a[ea+51+(g+27824)>>0]=j;a[ea+19+(g+27824)>>0]=j;a[(ea|11)+(g+27824)>>0]=j}h=h+1|0}ea=c[g+21732>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=(i|0)==0?0:1077952576;c[g+27828>>2]=ea;c[g+27868>>2]=ea;c[g+27908>>2]=ea}}while(0);c[(c[f+24364>>2]|0)+(pa<<2)>>2]=k;if((w|0)==0?(c[la>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ja=302;o:do if((ja|0)==302){x=g+32856|0;o=g+864|0;do if(Gn(x,(c[o>>2]|0?61:60)+(g+32904)|0)|0){k=(c[fa+1184>>2]|0)*6|0;n=k+3|0;i=n<<1;h=62;j=1;while(1){if(!(Gn(x,g+32904+h|0)|0)){ja=306;break}if((j|0)<(i|0)){h=63;j=j+1|0}else{ja=429;break}}if((ja|0)==306){s=j+1>>1;s=(j&1|0)==0?0-s|0:s;c[o>>2]=s;h=g+848|0;s=(c[h>>2]|0)+s|0;s=(s>>>0>n>>>0?((s|0)<0?k+4|0:-4-k|0):0)+s|0;c[h>>2]=s;ja=c[ma>>2]|0;c[g+852>>2]=d[ja+548+s>>0];c[g+856>>2]=d[ja+636+s>>0];break}else if((ja|0)==429){h=c[f+4>>2]|0;g=c[ha>>2]|0;c[ia>>2]=c[ga>>2];c[ia+4>>2]=g;gi(h,16,205247,ia);h=-1;break a}}else{c[o>>2]=0;s=g+848|0;h=s;s=c[s>>2]|0}while(0);i=c[la>>2]|0;ja=(i&128|0)==0;t=(s|0)!=0;v=ja?(t?f+26428|0:f+26716|0):t?f+26572|0:f+26860|0;t=ja?(t?f+26444|0:f+26732|0):t?f+26588|0:f+26876|0;p:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break p;q:do if(!(1<>0]|0)+(g+27824)|0;b[ja>>1]=0;b[ja+8>>1]=0}else{if(!q){i=p<<2;j=g+28560+(p<<6<>2]|0)+173812+(r<<2)>>2]|0)+(s<<8)|0;do if((c[(c[ka>>2]|0)+12>>2]|0)==3){n=d[215911+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(Sn(x,((a[n+-8+(g+27824)>>0]|0?ja|2:ja)|1012)+(g+32904)|0)|0)break;ja=g+27824+n|0;b[ja>>1]=0;b[ja+8>>1]=0;break q}while(0);Un(f,g,j,5,i,t,k,64);break}j=(c[(c[ma>>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=p<<2;i=0;while(1){if((i|0)==4)break q;n=i+k|0;o=d[215911+n>>0]|0;ja=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,(a[o+-8+(g+27824)>>0]|0?ja|2:ja)+93+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Un(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Sn(x,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else Tn(f,g,i,0,48,v,16);if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ma>>2]|0)+173788>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break p;n=d[215911+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,(a[n+-8+(g+27824)>>0]|0?ja|2:ja)+89+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Un(f,g,g+28560+(i<<4<>2]|0)+12>>2]|0;if((j|0)!=3){i=(w&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;n=i+49|0;ja=1<>2]&ja|0)!=0&1;if(!(Sn(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[215911+n>>0]|0)+(g+27824)>>0]=0;else Tn(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=v+1|0;i=0;s:while(1){if((i|0)==2)break o;p=i+1|0;q=(c[(c[ma>>2]|0)+173788+((c[la>>2]&7|0?0:3)+p<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4){i=p;continue s}k=j+i|0;n=d[215911+k>>0]|0;ka=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,(a[n+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Un(f,g,g+28560+(k<<4<>2]&ja|0)!=0&1;if(!(Sn(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[215911+n>>0]|0)+(g+27824)>>0]=0;else Vn(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}w=16<>2]|0)+173788+((c[la>>2]&7|0?0:3)+v<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(u<<4<>0]|0;ka=(a[r+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,(a[r+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+r>>0]=0;else Un(f,g,n,4,q,s,o,15);k=k+1|0;n=n+(w<<1)|0}i=i+(t<<1)|0;j=j+1|0}}}i=c[la>>2]|0;s=c[g+852>>2]|0;v:do if(!(i&2)){r=i&7|0?1:4;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break v;w:do if(!(1<>0]|0)+(g+27824)|0;b[ka>>1]=0;b[ka+8>>1]=0}else{if(!q){i=(p<<2)+16|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[215911+i>>0]|0;ka=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[k+-8+(g+27824)>>0]|0?ka|2:ka)|1016)+(g+32904)|0)|0)){ka=g+27824+k|0;b[ka>>1]=0;b[ka+8>>1]=0;break}else{Un(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+16|0;i=0;while(1){if((i|0)==4)break w;n=k+i|0;o=d[215911+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|468)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Un(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Sn(x,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else Tn(f,g,i,6,49,v,16);if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ma>>2]|0)+173792>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break v;n=i+16|0;o=d[215911+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|464)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Un(f,g,g+28560+(n<<4<>2]|0;s=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Sn(x,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else Tn(f,g,i,10,50,v,16);if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=(c[(c[ma>>2]|0)+173796>>2]|0)+(s<<6)|0;j=v+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;n=d[215911+k>>0]|0;ma=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[n+-8+(g+27824)>>0]|0?ma|2:ma)|476)+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Un(f,g,g+28560+(k<<4<>0]|0)+(g+27824)|0;b[la>>1]=0;b[la+8>>1]=0}else{if(!q){i=(p<<2)+32|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[215911+i>>0]|0;la=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[k+-8+(g+27824)>>0]|0?la|2:la)|1020)+(g+32904)|0)|0)){la=g+27824+k|0;b[la>>1]=0;b[la+8>>1]=0;break}else{Un(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+32|0;i=0;while(1){if((i|0)==4)break x;n=k+i|0;o=d[215911+n>>0]|0;la=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Sn(x,((a[o+-8+(g+27824)>>0]|0?la|2:la)|480)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Un(f,g,g+28560+(n<<4<>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function Gm(a,b){a=a|0;b=b|0;if((c[(c[a+28216>>2]|0)+12>>2]|0)==3)pn(a,b);else qn(a,b);return}function Hm(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){nn(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function Im(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+26380|0;h=(c[i>>2]|0)!=3&1;k=c[b+21792>>2]>>h<<4;h=c[a+27008>>2]<<4>>h;g=c[a+26376>>2]|0;d=16<>2]|0)==0;d=(j|(k+d|0)<(h|0)?0:g)+d|0;g=k-(j?0:g)|0;if((!((h|0)<=(g|0)|(d+g|0)<0)?(f=h-g|0,e=(g|0)<0,f=((d|0)>(f|0)?f:d)+(e?g:0)|0,e=e?0:g,mn(a,b,e,f),(c[a+25684>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)Mk((c[a+24312>>2]|0)+4|0,e+-1+f|0,(c[i>>2]|0)==2&1);return}function Jm(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27016>>2]|0;g=(N(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26372>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return} -function gY(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;g=h?c[d+4>>2]|0:g&255;if(g>>>0>>0)$X(b);else{g=g-e|0;aY(b,(h?c[d>>2]|0:d)+e|0,g>>>0>>0?g:f);return}}function hY(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;if((-18-d|0)>>>0>>0)_X(b);if((a[b+11>>0]|0)<0)o=c[b>>2]|0;else o=b;if(d>>>0<2147483623){k=e+d|0;n=d<<1;k=k>>>0>>0?n:k;k=k>>>0<11?11:k+16&-16}else k=-17;n=UX(k)|0;if(g|0)bY(n,o,g)|0;if(i|0)bY(n+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)bY(n+g+i|0,o+g+h|0,f)|0;if((d|0)!=10)VX(o);c[b>>2]=n;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[p>>0]=0;cY(n+i|0,p);l=q;return}function iY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;cY(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;cY(b+d|0,g);a[h>>0]=d;break}else jY(b,d-f|0,e)|0;while(0);l=j;return}function jY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0>>0){kY(b,g,h+d-g|0,h,h,0,0);f=a[j>>0]|0}if(f<<24>>24<0)g=c[b>>2]|0;else g=b;eY(g+h|0,d,e)|0;f=h+d|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;cY(g+f|0,i)}l=k;return b|0}function kY(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)_X(b);if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=UX(j)|0;if(g|0)bY(k,l,g)|0;e=f-h-g|0;if(e|0)bY(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)VX(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function lY(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;f=e<<24>>24<0;if(f)e=c[b+4>>2]|0;else e=e&255;if(e>>>0<=d>>>0)$X(b);if(f)b=c[b>>2]|0;return b+d|0}function mY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;j=b+11|0;f=a[j>>0]|0;h=f<<24>>24<0;if(h){g=(c[b+8>>2]&2147483647)+-1|0;f=c[b+4>>2]|0}else{g=10;f=f&255}if((g-f|0)>>>0>=e>>>0){if(e|0){if(h)g=c[b>>2]|0;else g=b;bY(g+f|0,d,e)|0;f=f+e|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;cY(g+f|0,i)}}else hY(b,g,f+e-g|0,f,f,0,e,d);l=k;return b|0}function nY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if(f>>>0>4294967279)_X(b);if(f>>>0<11)a[b+11>>0]=e;else{i=f+16&-16;f=UX(i)|0;c[b>>2]=f;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=f}bY(b,d,e)|0;a[g>>0]=0;cY(b+e|0,g);l=h;return}function oY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[b+(f<<2)>>2]=0;f=f+1|0}h=dY(d)|0;g=e+11|0;f=a[g>>0]|0;f=f<<24>>24<0?c[e+4>>2]|0:f&255;nY(b,d,h,f+h|0);mY(b,(a[g>>0]|0)<0?c[e>>2]|0:e,f)|0;return}function pY(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;a=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=a+32|0;d=a+24|0;i=a+16|0;g=a;e=a+36|0;a=qY()|0;if(a|0?(f=c[a>>2]|0,f|0):0){a=f+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=251892;rY(251842,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[f+44>>2]|0;else a=f+80|0;c[e>>2]=a;f=c[f>>2]|0;a=c[f+4>>2]|0;if(Nd[c[(c[13160]|0)+16>>2]&15](52640,f,e)|0){i=c[e>>2]|0;i=Ld[c[(c[i>>2]|0)+8>>2]&31](i)|0;c[g>>2]=251892;c[g+4>>2]=a;c[g+8>>2]=i;rY(251756,g)}else{c[i>>2]=251892;c[i+4>>2]=a;rY(251801,i)}}rY(251880,h)}function qY(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Dc(255952,6)|0)){b=yc(c[63989]|0)|0;l=a;return b|0}else rY(252031,a);return 0}function rY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=b;d=c[42497]|0;$V(d,a,e)|0;KX(10,d)|0;Tb()}function sY(a){a=a|0;return}function tY(a){a=a|0;sY(a);VX(a);return}function uY(a){a=a|0;return}function vY(a){a=a|0;return}function wY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=h;if(!(AY(a,b,0)|0))if((b|0)!=0?(g=EY(b,52664,52648,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Vd[c[(c[g>>2]|0)+28>>2]&255](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function xY(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(AY(a,c[b+8>>2]|0,g)|0)DY(0,b,d,e,f);return}function yY(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(AY(b,c[d+8>>2]|0,g)|0)){if(AY(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else CY(0,d,e,f);while(0);return}function zY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(AY(a,c[b+8>>2]|0,0)|0)BY(0,b,d,e);return}function AY(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function BY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function CY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function DY(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function EY(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;if((l|0)>=(m|0))W(64);p=r;o=c[d>>2]|0;q=d+(c[o+-8>>2]|0)|0;o=c[o+-4>>2]|0;c[p>>2]=f;c[p+4>>2]=d;c[p+8>>2]=e;c[p+12>>2]=g;d=p+16|0;e=p+20|0;g=p+24|0;h=p+28|0;i=p+32|0;j=p+40|0;k=d;n=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(AY(o,f,0)|0){c[p+48>>2]=1;Xd[c[(c[o>>2]|0)+20>>2]&63](o,p,q,q,1,0);d=(c[g>>2]|0)==1?q:0}else{Wd[c[(c[o>>2]|0)+24>>2]&127](o,p,q,1,0);switch(c[p+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=r;return d|0}function FY(a){a=a|0;sY(a);VX(a);return}function GY(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(AY(a,c[b+8>>2]|0,g)|0)DY(0,b,d,e,f);else{a=c[a+8>>2]|0;Xd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e,f,g)}return}function HY(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if(!(AY(b,c[d+8>>2]|0,g)|0)){if(!(AY(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Wd[c[(c[i>>2]|0)+24>>2]&127](i,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;j=d+53|0;a[j>>0]=0;b=c[b+8>>2]|0;Xd[c[(c[b>>2]|0)+20>>2]&63](b,d,e,e,1,g);if(a[j>>0]|0)if(!(a[f>>0]|0)){f=1;b=11}else b=15;else{f=0;b=11}do if((b|0)==11){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(f){b=15;break}else{f=4;break}}if(f)b=15;else f=4}while(0);if((b|0)==15)f=3;c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else CY(0,d,e,f);while(0);return}function IY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(AY(a,c[b+8>>2]|0,0)|0)BY(0,b,d,e);else{a=c[a+8>>2]|0;Vd[c[(c[a>>2]|0)+28>>2]&255](a,b,d,e)}return}function JY(a){a=a|0;return}function KY(){var a=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Ac(255956,33)|0)){l=a;return}else rY(252080,a)}function LY(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);oV(a);if(!(Ec(c[63989]|0,0)|0)){l=b;return}else rY(252130,b)}function MY(){var a=0,b=0;a=qY()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)NY(c[b+12>>2]|0);NY(OY()|0)}function NY(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);Rd[a&7]();rY(252183,b)}function OY(){var a=0;a=c[42663]|0;c[42663]=a+0;return a|0}function PY(a){a=a|0;return}function QY(a){a=a|0;c[a>>2]=170744;UY(a+4|0);return}function RY(a){a=a|0;QY(a);VX(a);return}function SY(a){a=a|0;return TY(a+4|0)|0}function TY(a){a=a|0;return c[a>>2]|0}function UY(a){a=a|0;var b=0,d=0;if(ZX(a)|0?(b=VY(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)VX(b);return}function VY(a){a=a|0;return a+-12|0}function WY(a){a=a|0;QY(a);VX(a);return}function XY(a){a=a|0;sY(a);VX(a);return}function YY(a,b,c){a=a|0;b=b|0;c=c|0;return AY(a,b,0)|0}function ZY(a){a=a|0;sY(a);VX(a);return}function _Y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=j;c[d>>2]=c[c[d>>2]>>2];if(!($Y(a,b,0)|0))if(((b|0)!=0?(e=EY(b,52664,52752,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(AY(c[a>>2]|0,c[b>>2]|0,0)|0)?!(AY(c[a>>2]|0,52784,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=EY(a,52664,52648,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=EY(f,52664,52648,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Vd[c[(c[i>>2]|0)+28>>2]&255](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function $Y(a,b,c){a=a|0;b=b|0;c=c|0;if(AY(a,b,0)|0)a=1;else a=AY(b,52792,0)|0;return a|0}function aZ(a){a=a|0;sY(a);VX(a);return}function bZ(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(AY(b,c[d+8>>2]|0,h)|0)DY(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;fZ(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;fZ(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function cZ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(AY(b,c[d+8>>2]|0,g)|0)){if(!(AY(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;gZ(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;gZ(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;gZ(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;gZ(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;fZ(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else CY(0,d,e,f);while(0);return}function dZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(AY(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;eZ(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{eZ(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else BY(0,d,e,f);while(0);return}function eZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Vd[c[(c[a>>2]|0)+28>>2]&255](a,b,d+f|0,(g&2|0)==0?2:e);return}function fZ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Xd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function gZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Wd[c[(c[a>>2]|0)+24>>2]&127](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function hZ(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function iZ(a){a=a|0;return}function jZ(a){a=a|0;return}function kZ(){var a=0;a=c[63990]|0;c[63990]=a+0;return a|0}function lZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&15](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function mZ(a){a=a|0;if(!a)a=0;else a=(EY(a,52664,52752,0)|0)!=0&1;return a|0}function nZ(){}function oZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (y=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function pZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (y=d,a-c>>>0|0)|0}function qZ(a){a=a|0;return (a?31-(Q(a^a-1)|0)|0:32)|0}function rZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (y=n,f)|0}else{if(!g){n=0;f=0;return (y=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (y=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (y=n,f)|0}g=h-1|0;if(g&h|0){i=(Q(h|0)|0)+33-(Q(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (y=o,p)|0}else{p=qZ(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (y=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (y=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (y=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((qZ(i|0)|0)>>>0);return (y=o,p)|0}g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (y=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=oZ(m|0,l|0,-1,-1)|0;d=y;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;pZ(k|0,d|0,e|0,n|0)|0;p=y;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=pZ(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=y;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (y=o,p)|0}function sZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=pZ(j^a|0,i^b|0,j|0,i|0)|0;g=y;a=f^j;b=e^i;return pZ((rZ(h,g,pZ(f^c|0,e^d|0,f|0,e|0)|0,y,0)|0)^a|0,y^b|0,a|0,b|0)|0}function tZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=N(e,f)|0;d=a>>>16;a=(c>>>16)+(N(e,d)|0)|0;e=b>>>16;b=N(e,f)|0;return (y=(a>>>16)+(N(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function uZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=tZ(e,f)|0;a=y;return (y=(N(b,f)|0)+(N(d,e)|0)+a|a&0,c|0|0)|0}function vZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=pZ(h^a|0,g^b|0,h|0,g|0)|0;b=y;rZ(a,b,pZ(k^d|0,j^e|0,k|0,j|0)|0,y,i)|0;e=pZ(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=y;l=f;return (y=d,e)|0}function wZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return rZ(a,b,c,d,0)|0}function xZ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>c;return a>>>c|(b&(1<>c-32|0}function yZ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>>c;return a>>>c|(b&(1<>>c-32|0}function zZ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b<>>32-c;return a<>8&255|0}function BZ(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function CZ(a){a=+a;return a>=0.0?+z(a+.5):+M(a-.5)}function DZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return bc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function EZ(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else DZ(b,c,d)|0;return b|0}function FZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function GZ(a){a=a|0;return 0}function HZ(a){a=a|0;return 0}function IZ(a){a=a|0;return 0}function JZ(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){V()|0;cb(12);return -1}c[i>>2]=b;if((b|0)>(U()|0)?(T()|0)==0:0){c[i>>2]=d;cb(12);return -1}return d|0}function KZ(a,b){a=a|0;b=+b;return +Id[a&15](+b)}function LZ(a,b,c){a=a|0;b=b|0;c=+c;return +Jd[a&0](b|0,+c)}function MZ(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Kd[a&0](b|0,+c,+d)}function NZ(a,b){a=a|0;b=b|0;return Ld[a&31](b|0)|0}function OZ(a,b,c){a=a|0;b=b|0;c=c|0;return Md[a&15](b|0,c|0)|0}function PZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&15](b|0,c|0,d|0)|0}function QZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Od[a&1](b|0,c|0,d|0,e|0)|0}function RZ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Pd[a&63](b|0,c|0,d|0,e|0,f|0)|0}function SZ(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Qd[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function TZ(a){a=a|0;Rd[a&7]()}function UZ(a,b){a=a|0;b=b|0;Sd[a&63](b|0)}function VZ(a,b,c){a=a|0;b=b|0;c=c|0;Td[a&255](b|0,c|0)}function WZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ud[a&1023](b|0,c|0,d|0)}function XZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Vd[a&255](b|0,c|0,d|0,e|0)}function YZ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Wd[a&127](b|0,c|0,d|0,e|0,f|0)}function ZZ(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Xd[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function _Z(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Yd[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function $Z(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Zd[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function a_(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;_d[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function b_(a){a=+a;X(0);return 0.0}function c_(a){a=+a;return +Fc(+a)}function d_(a){a=+a;return +Yb(+a)}function e_(a){a=+a;return +Hc(+a)}function f_(a){a=+a;return +Wb(+a)}function g_(a){a=+a;return +Vb(+a)}function h_(a){a=+a;return +Ub(+a)}function i_(a){a=+a;return +cc(+a)}function j_(a){a=+a;return +rc(+a)}function k_(a){a=+a;return +dc(+a)}function l_(a,b){a=a|0;b=+b;Y(1);return 0.0}function m_(a,b,c){a=a|0;b=+b;c=+c;Z(2);return 0.0}function n_(a){a=a|0;_(3);return 0}function o_(a,b){a=a|0;b=b|0;$(4);return 0}function p_(a,b,c){a=a|0;b=b|0;c=c|0;aa(5);return 0}function q_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(6);return 0}function r_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(7);return 0}function s_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;da(8);return 0}function t_(){ea(9)}function u_(){Za()}function v_(a){a=a|0;fa(10)}function w_(a,b){a=a|0;b=b|0;ga(11)}function x_(a,b,c){a=a|0;b=b|0;c=c|0;ha(12)}function y_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ia(13)}function z_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ja(14)}function A_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(15)}function B_(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;la(16)}function C_(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ma(17)}function D_(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;na(18)} +function eu(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=d[b+((N(((c|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;p=d[b+(f+-1)>>0]|0;r=(r+2+(q<<1)+p|0)>>>2;l=f<<1;o=d[b+(l+-1)>>0]|0;q=(q+2+(p<<1)+o|0)>>>2;j=f*3|0;n=d[b+(j+-1)>>0]|0;p=(p+2+(o<<1)+n|0)>>>2;h=f<<2;m=d[b+(h+-1)>>0]|0;o=(o+2+(n<<1)+m|0)>>>2;g=f*5|0;k=d[b+(g+-1)>>0]|0;n=(n+2+(m<<1)+k|0)>>>2;c=f*6|0;s=d[b+(c+-1)>>0]|0;m=(m+2+(k<<1)+s|0)>>>2;e=f*7|0;i=d[b+(e+-1)>>0]|0;k=(k+2+(s<<1)+i|0)>>>2;i=(s+2+(i*3|0)|0)>>>2;a[b>>0]=(r+1+q|0)>>>1;a[b+1>>0]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&255;a[b+2>>0]=r;a[b+f>>0]=r;q=(q+2+(p<<1)+o|0)>>>2&255;a[b+3>>0]=q;a[b+(f+1)>>0]=q;q=(p+1+o|0)>>>1&255;a[b+4>>0]=q;a[b+(f+2)>>0]=q;a[b+l>>0]=q;p=(p+2+(o<<1)+n|0)>>>2&255;a[b+5>>0]=p;a[b+(f+3)>>0]=p;a[b+(l|1)>>0]=p;p=(o+1+n|0)>>>1&255;a[b+6>>0]=p;a[b+(f+4)>>0]=p;a[b+(l+2)>>0]=p;a[b+j>>0]=p;o=(o+2+(n<<1)+m|0)>>>2&255;a[b+7>>0]=o;a[b+(f+5)>>0]=o;a[b+(l+3)>>0]=o;a[b+(j+1)>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(f+6)>>0]=o;a[b+(l+4)>>0]=o;a[b+(j+2)>>0]=o;a[b+h>>0]=o;n=(n+2+(m<<1)+k|0)>>>2&255;a[b+(f+7)>>0]=n;a[b+(l+5)>>0]=n;a[b+(j+3)>>0]=n;a[b+(h|1)>>0]=n;f=(m+1+k|0)>>>1&255;a[b+(l+6)>>0]=f;a[b+(j+4)>>0]=f;a[b+(h|2)>>0]=f;a[b+g>>0]=f;f=(m+2+i+(k<<1)|0)>>>2&255;a[b+(l+7)>>0]=f;a[b+(j+5)>>0]=f;a[b+(h|3)>>0]=f;a[b+(g+1)>>0]=f;f=(i+1+k|0)>>>1&255;a[b+(j+6)>>0]=f;a[b+(h+4)>>0]=f;a[b+(g+2)>>0]=f;a[b+c>>0]=f;f=(k+2+(i*3|0)|0)>>>2&255;a[b+(j+7)>>0]=f;a[b+(h+5)>>0]=f;a[b+(g+3)>>0]=f;a[b+(c|1)>>0]=f;f=i&255;a[b+(e+7)>>0]=f;a[b+(c+7)>>0]=f;a[b+(g+7)>>0]=f;a[b+(h+7)>>0]=f;a[b+(e+6)>>0]=f;a[b+(c+6)>>0]=f;a[b+(g+6)>>0]=f;a[b+(h+6)>>0]=f;a[b+(e+5)>>0]=f;a[b+(c+5)>>0]=f;a[b+(g+5)>>0]=f;a[b+(e+4)>>0]=f;a[b+(c+4)>>0]=f;a[b+(g+4)>>0]=f;a[b+(e+3)>>0]=f;a[b+(c+3)>>0]=f;a[b+(e+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+(e+1)>>0]=f;a[b+e>>0]=f;return}function fu(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;l=d[a+-1>>0]|0;k=d[a+(f+-1)>>0]|0;j=d[a+((f<<1)+-1)>>0]|0;i=d[a+((f*3|0)+-1)>>0]|0;h=d[a+((f<<2)+-1)>>0]|0;g=d[a+((f*5|0)+-1)>>0]|0;b=d[a+((f*6|0)+-1)>>0]|0;e=d[a+((f*7|0)+-1)>>0]|0;e=N(((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(b<<1)+e|0)>>>2)+((b+2+(e*3|0)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function gu(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[a+(0-f)>>0]|0;m=d[a+(1-f)>>0]|0;l=d[a+(2-f)>>0]|0;k=d[a+(3-f)>>0]|0;j=d[a+(4-f)>>0]|0;i=d[a+(5-f)>>0]|0;h=d[a+(6-f)>>0]|0;g=d[a+(7-f)>>0]|0;e=N((((d[a+((((b|0)!=0)<<31>>31)-f)>>0]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(d[a+((e|0?8:7)-f)>>0]|0)+(g<<1)|0)>>>2)>>3,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function hu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;b=b+1|0;a=a+e|0}return}function iu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==8)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function ju(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+(0-b)|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=0;while(1){if((d|0)==16)break;g=a+(N(d,b)|0)|0;c[g>>2]=e;c[g+4>>2]=f;d=d+1|0}return}function ku(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==8)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function lu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;e=e+1|0}return}function mu(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0-c|0;j=b+3+i|0;g=b+(c<<2)+-1|0;f=g+(0-(c<<1))|0;p=(c*7|0)+-1|0;q=~c;k=(d[g>>0]|0)-(d[f>>0]|0)|0;e=(d[j+1>>0]|0)-(d[j+-1>>0]|0)|0;h=2;while(1){if((h|0)==5)break;o=g+c|0;n=f+i|0;m=(N((d[j+h>>0]|0)-(d[j+(0-h)>>0]|0)|0,h)|0)+e|0;k=(N((d[o>>0]|0)-(d[n>>0]|0)|0,h)|0)+k|0;e=m;f=n;g=o;h=h+1|0}o=(e*17|0)+16>>5;h=(k*17|0)+16>>5;i=o<<1;j=o*3|0;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=8;f=(N(h+o|0,-3)|0)+16+((d[b+q+8>>0]|0)+(d[b+p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function nu(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=0-c|0;i=b+3+m|0;h=b+(c<<3)+-1|0;g=h+(0-(c<<1))|0;k=(c*11|0)+-1|0;j=(c*3|0)+-1|0;e=2;f=(d[h>>0]|0)-(d[g>>0]|0)|0;l=(d[i+1>>0]|0)-(d[i+-1>>0]|0)|0;while(1){if((e|0)==5)break;q=h+c|0;p=g+m|0;o=(N((d[i+e>>0]|0)-(d[i+(0-e)>>0]|0)|0,e)|0)+l|0;n=(N((d[q>>0]|0)-(d[p>>0]|0)|0,e)|0)+f|0;e=e+1|0;f=n;l=o;g=p;h=q}e=5;q=b+j|0;p=b+k|0;while(1){if((e|0)>=9)break;o=p+c|0;n=q+m|0;f=(N((d[o>>0]|0)-(d[n>>0]|0)|0,e)|0)+f|0;e=e+1|0;q=n;p=o}o=(l*17|0)+16>>5;h=(f*5|0)+32>>6;i=o*3|0;j=o<<1;k=o<<2;l=o*5|0;m=o*6|0;n=o*7|0;g=16;f=16-i+(N(h,-7)|0)+((d[q+8>>0]|0)+(d[p>>0]|0)<<4)|0;e=b;while(1){if((g|0)<=0)break;b=f>>5;a[e>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+o>>5;a[e+1>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+j>>5;a[e+2>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+i>>5;a[e+3>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+k>>5;a[e+4>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+l>>5;a[e+5>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+m>>5;a[e+6>>0]=b>>>0>255?(b^-2147483648)>>31:b;b=f+n>>5;a[e+7>>0]=b>>>0>255?(b^-2147483648)>>31:b;g=g+-1|0;f=f+h|0;e=e+c|0}return}function ou(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=0;f=0;g=0;h=0;while(1){if((e|0)==4)break;j=d[a+((N(e,b)|0)+-1)>>0]|0;j=f+j+(d[a+(e-b)>>0]|0)|0;k=e+4|0;e=e+1|0;f=j;g=g+(d[a+(k-b)>>0]|0)|0;h=h+(d[a+((N(k,b)|0)+-1)>>0]|0)|0}i=N(f+4>>3,16843009)|0;j=N(g+2>>2,16843009)|0;k=h+2>>2;f=h+4+g>>3;e=0;while(1){if((e|0)==4)break;h=a+(N(e,b)|0)|0;c[h>>2]=i;c[h+4>>2]=j;e=e+1|0}g=N(k,16843009)|0;f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;k=a+(N(e,b)|0)|0;c[k>>2]=g;c[k+4>>2]=f;e=e+1|0}return}function pu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;g=0;while(1){if((e|0)==4)break;i=f+(d[a+((N(e,b)|0)+-1)>>0]|0)|0;h=g+(d[a+((N(e+4|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=i;g=h}h=N(f+2>>2,16843009)|0;f=g+2>>2;e=0;while(1){if((e|0)==4)break;i=a+(N(e,b)|0)|0;c[i>>2]=h;c[i+4>>2]=h;e=e+1|0}f=N(f,16843009)|0;e=4;while(1){if((e|0)==8)break;i=a+(N(e,b)|0)|0;c[i>>2]=f;c[i+4>>2]=f;e=e+1|0}return}function qu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function ru(a,b){a=a|0;b=b|0;qu(a,b);Mt(a,0,b);return}function su(a,b){a=a|0;b=b|0;ou(a,b);Wt(a,0,b);return}function tu(a,b){a=a|0;b=b|0;pu(a,b);a=a+(b<<2)|0;Xt(a,0,b);Xt(a+4|0,0,b);return}function uu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=0;f=0;i=0;g=0;h=0;j=0;while(1){if((e|0)==4)break;k=d[a+((N(e,b)|0)+-1)>>0]|0;k=f+k+(d[a+(e-b)>>0]|0)|0;l=e+4|0;m=g+(d[a+((N(l,b)|0)+-1)>>0]|0)|0;n=h+(d[a+((N(e+8|0,b)|0)+-1)>>0]|0)|0;o=j+(d[a+((N(e+12|0,b)|0)+-1)>>0]|0)|0;e=e+1|0;f=k;i=i+(d[a+(l-b)>>0]|0)|0;g=m;h=n;j=o}f=N(f+4>>3,16843009)|0;k=N(i+2>>2,16843009)|0;l=g+2>>2;g=g+4+i>>3;m=h+2>>2;h=h+4+i>>3;o=j+2>>2;n=j+4+i>>3;e=0;while(1){if((e|0)==4)break;j=a+(N(e,b)|0)|0;c[j>>2]=f;c[j+4>>2]=k;e=e+1|0}k=N(l,16843009)|0;i=N(g,16843009)|0;j=N(m,16843009)|0;g=N(h,16843009)|0;h=N(o,16843009)|0;f=N(n,16843009)|0;e=4;while(1){if((e|0)==8){e=8;break}o=a+(N(e,b)|0)|0;c[o>>2]=k;c[o+4>>2]=i;e=e+1|0}while(1){if((e|0)==12){e=12;break}o=a+(N(e,b)|0)|0;c[o>>2]=j;c[o+4>>2]=g;e=e+1|0}while(1){if((e|0)==16)break;o=a+(N(e,b)|0)|0;c[o>>2]=h;c[o+4>>2]=f;e=e+1|0}return}function vu(a,b){a=a|0;b=b|0;pu(a,b);pu(a+(b<<3)|0,b);return}function wu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=4-b|0;e=0;f=0;h=0;while(1){if((e|0)==4)break;j=f+(d[a+(e-b)>>0]|0)|0;i=h+(d[a+(g+e)>>0]|0)|0;e=e+1|0;f=j;h=i}g=N(f+2>>2,16843009)|0;f=N(h+2>>2,16843009)|0;e=0;while(1){if((e|0)==16)break;j=a+(N(e,b)|0)|0;c[j>>2]=g;c[j+4>>2]=f;e=e+1|0}return}function xu(a,b){a=a|0;b=b|0;wu(a,b);Mt(a,0,b);return}function yu(a,b){a=a|0;b=b|0;uu(a,b);Wt(a,0,b);return}function zu(a,b){a=a|0;b=b|0;vu(a,b);a=a+(b<<2)|0;Xt(a,0,b);Xt(a+4|0,0,b);return}function Au(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=2139062143;c[e+4>>2]=2139062143;d=d+1|0}return}function Bu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2122219135;c[e+4>>2]=-2122219135;d=d+1|0}return}function Cu(a,b){a=a|0;b=b|0;vu(a,b);Xt(a,0,b);Xt(a+4|0,0,b);return}function Du(a,b){a=a|0;b=b|0;pu(a,b);Xt(a,0,b);Xt(a+4|0,0,b);return}function Eu(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)==8)break;e=a+(N(d,b)|0)|0;c[e>>2]=-2139062144;c[e+4>>2]=-2139062144;d=d+1|0}return}function Fu(a,b){a=a|0;b=b|0;Eu(a,b);Eu(a+(b<<3)|0,b);return}function Gu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16){f=0;break}e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+16>>5,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+(0-b)|0;f=c[e>>2]|0;g=c[e+4>>2]|0;h=c[e+8>>2]|0;e=c[e+12>>2]|0;d=0;while(1){if((d|0)==16)break;i=a+(N(d,b)|0)|0;c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=h;c[i+12>>2]=e;d=d+1|0}return}function Iu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16)break;f=N(e,b)|0;g=N(d[a+(f+-1)>>0]|0,16843009)|0;f=a+f|0;c[f>>2]=g;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=g;e=e+1|0}return}function Ju(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=2139062143;c[a+4>>2]=2139062143;c[a+8>>2]=2139062143;c[a+12>>2]=2139062143;a=a+b|0;d=d+1|0}return}function Ku(a,b){a=a|0;b=b|0;hv(a,b,0,0);return}function Lu(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2122219135;c[a+4>>2]=-2122219135;c[a+8>>2]=-2122219135;c[a+12>>2]=-2122219135;a=a+b|0;d=d+1|0}return}function Mu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Nu(a,b){a=a|0;b=b|0;var e=0,f=0;e=0;f=0;while(1){if((f|0)==16)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N(e+8>>4,16843009)|0;e=0;while(1){if((e|0)==16)break;c[a>>2]=f;c[a+4>>2]=f;c[a+8>>2]=f;c[a+12>>2]=f;a=a+b|0;e=e+1|0}return}function Ou(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)==16)break;c[a>>2]=-2139062144;c[a+4>>2]=-2139062144;c[a+8>>2]=-2139062144;c[a+12>>2]=-2139062144;a=a+b|0;d=d+1|0}return}function Pu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=g<<1;k=g*3|0;l=g<<2;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==4)break;m=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=m;m=m+(e[i+8>>1]|0)|0;a[c+j>>0]=m;m=m+(e[i+16>>1]|0)|0;a[c+k>>0]=m;a[c+l>>0]=m+(e[i+24>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Qu(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;a[c+3>>0]=j+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Ru(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;j=g*7|0;k=g<<3;i=f;c=c+(0-g)|0;h=0;while(1){if((h|0)==8)break;q=(e[i>>1]|0)+(d[c>>0]|0)|0;a[c+g>>0]=q;q=q+(e[i+16>>1]|0)|0;a[c+l>>0]=q;q=q+(e[i+32>>1]|0)|0;a[c+m>>0]=q;q=q+(e[i+48>>1]|0)|0;a[c+n>>0]=q;q=q+(e[i+64>>1]|0)|0;a[c+o>>0]=q;q=q+(e[i+80>>1]|0)|0;a[c+p>>0]=q;q=q+(e[i+96>>1]|0)|0;a[c+j>>0]=q;a[c+k>>0]=q+(e[i+112>>1]|0);i=i+2|0;c=c+1|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Su(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;j=(e[i>>1]|0)+(d[c+-1>>0]|0)|0;a[c>>0]=j;j=j+(e[i+2>>1]|0)|0;a[c+1>>0]=j;j=j+(e[i+4>>1]|0)|0;a[c+2>>0]=j;j=j+(e[i+6>>1]|0)|0;a[c+3>>0]=j;j=j+(e[i+8>>1]|0)|0;a[c+4>>0]=j;j=j+(e[i+10>>1]|0)|0;a[c+5>>0]=j;j=j+(e[i+12>>1]|0)|0;a[c+6>>0]=j;a[c+7>>0]=j+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function Tu(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;v=d[c+(0-i)>>0]|0;u=d[c+(1-i)>>0]|0;j=d[c+(2-i)>>0]|0;r=d[c+(3-i)>>0]|0;q=d[c+(4-i)>>0]|0;p=d[c+(5-i)>>0]|0;o=d[c+(6-i)>>0]|0;n=d[c+(7-i)>>0]|0;k=(o+2+(d[c+((h|0?8:7)-i)>>0]|0)+(n<<1)|0)>>>2;a[s>>0]=((d[c+((((g|0)!=0)<<31>>31)-i)>>0]|0)+2+(v<<1)+u|0)>>>2;a[s+1>>0]=(v+2+(u<<1)+j|0)>>>2;a[s+2>>0]=(u+2+(j<<1)+r|0)>>>2;a[s+3>>0]=(j+2+(r<<1)+q|0)>>>2;a[s+4>>0]=(r+2+(q<<1)+p|0)>>>2;a[s+5>>0]=(q+2+(p<<1)+o|0)>>>2;a[s+6>>0]=(p+2+(o<<1)+n|0)>>>2;a[s+7>>0]=k;k=i<<1;n=i*3|0;o=i<<2;p=i*5|0;q=i*6|0;r=i*7|0;j=0;g=c;h=f;while(1){if((j|0)==8)break;v=(e[h>>1]|0)+(d[s+j>>0]|0)|0;a[g>>0]=v;v=v+(e[h+16>>1]|0)|0;a[g+i>>0]=v;v=v+(e[h+32>>1]|0)|0;a[g+k>>0]=v;v=v+(e[h+48>>1]|0)|0;a[g+n>>0]=v;v=v+(e[h+64>>1]|0)|0;a[g+o>>0]=v;v=v+(e[h+80>>1]|0)|0;a[g+p>>0]=v;v=v+(e[h+96>>1]|0)|0;a[g+q>>0]=v;a[g+r>>0]=v+(e[h+112>>1]|0);j=j+1|0;g=g+1|0;h=h+2|0}g=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(g|0));l=t;return}function Uu(c,f,g,h,i){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;t=d[c+((N(((g|0)!=0)<<31>>31,i)|0)+-1)>>0]|0;s=d[c+-1>>0]|0;r=d[c+(i+-1)>>0]|0;q=d[c+((i<<1)+-1)>>0]|0;p=d[c+((i*3|0)+-1)>>0]|0;o=d[c+((i<<2)+-1)>>0]|0;g=d[c+((i*5|0)+-1)>>0]|0;h=d[c+((i*6|0)+-1)>>0]|0;j=d[c+((i*7|0)+-1)>>0]|0;a[k>>0]=(t+2+(s<<1)+r|0)>>>2;a[k+1>>0]=(s+2+(r<<1)+q|0)>>>2;a[k+2>>0]=(r+2+(q<<1)+p|0)>>>2;a[k+3>>0]=(q+2+(p<<1)+o|0)>>>2;a[k+4>>0]=(p+2+(o<<1)+g|0)>>>2;a[k+5>>0]=(o+2+(g<<1)+h|0)>>>2;a[k+6>>0]=(g+2+(h<<1)+j|0)>>>2;a[k+7>>0]=(h+2+(j*3|0)|0)>>>2;j=0;h=c;g=f;while(1){if((j|0)==8)break;t=(e[g>>1]|0)+(d[k+j>>0]|0)|0;a[h>>0]=t;t=t+(e[g+2>>1]|0)|0;a[h+1>>0]=t;t=t+(e[g+4>>1]|0)|0;a[h+2>>0]=t;t=t+(e[g+6>>1]|0)|0;a[h+3>>0]=t;t=t+(e[g+8>>1]|0)|0;a[h+4>>0]=t;t=t+(e[g+10>>1]|0)|0;a[h+5>>0]=t;t=t+(e[g+12>>1]|0)|0;a[h+6>>0]=t;a[h+7>>0]=t+(e[g+14>>1]|0);j=j+1|0;h=h+i|0;g=g+16|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));l=n;return}function Vu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Wu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Pu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Xu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Qu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Yu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Qu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Qu(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function Zu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Pu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function _u(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;At(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function $u(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;ls(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function av(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Yq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function bv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Jp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function cv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Qu(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<4<<1)|0,e);f=f+1|0}return}function dv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Bt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ev(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;ms(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Zq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function gv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==16)break;Kp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function hv(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=0-c|0;l=b+7+k|0;i=b+(c<<3)+-1|0;h=i+(0-(c<<1))|0;j=(c*15|0)+-1|0;m=~c;g=2;n=(d[i>>0]|0)-(d[h>>0]|0)|0;o=(d[l+1>>0]|0)-(d[l+-1>>0]|0)|0;while(1){if((g|0)==9)break;p=i+c|0;q=h+k|0;r=(N((d[l+g>>0]|0)-(d[l+(0-g)>>0]|0)|0,g)|0)+o|0;s=(N((d[p>>0]|0)-(d[q>>0]|0)|0,g)|0)+n|0;g=g+1|0;n=s;o=r;h=q;i=p}h=b+j|0;g=b+m|0;do if(!e)if(!f){f=(n*5|0)+32>>6;k=(o*5|0)+32>>6;break}else{f=(n>>2)+n>>4;k=(o>>2)+o>>4;break}else{f=(((o|0)/4|0)*5|0)/16|0;k=(((n|0)/4|0)*5|0)/16|0}while(0);l=k<<1;m=k*3|0;e=k<<2;i=(N(f+k|0,-7)|0)+16+((d[g+16>>0]|0)+(d[h>>0]|0)<<4)|0;j=16;while(1){if((j|0)>0){g=i;h=-16}else break;while(1){if((h|0)>=0)break;s=g>>5;a[b+(h+16)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+k>>5;a[b+(h+17)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+l>>5;a[b+(h+18)>>0]=s>>>0>255?(s^-2147483648)>>31:s;s=g+m>>5;a[b+(h+19)>>0]=s>>>0>255?(s^-2147483648)>>31:s;g=g+e|0;h=h+4|0}i=i+f|0;j=j+-1|0;b=b+c|0}return}function iv(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function jv(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function kv(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function lv(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c>>1;h=0-p|0;i=a+14+(h<<1)|0;g=a+(p<<3<<1)+-2|0;o=p<<1;f=g+(0-o<<1)|0;n=a+((p*30|0)+-2)|0;o=a+(-2-o)|0;c=2;j=(e[g>>1]|0)-(e[f>>1]|0)|0;d=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;while(1){if((c|0)==9)break;m=g+(p<<1)|0;l=f+(h<<1)|0;k=(N((e[i+(c<<1)>>1]|0)-(e[i+(0-c<<1)>>1]|0)|0,c)|0)+d|0;q=(N((e[m>>1]|0)-(e[l>>1]|0)|0,c)|0)+j|0;c=c+1|0;j=q;d=k;f=l;g=m}m=(d*5|0)+32>>6;i=(j*5|0)+32>>6;j=m<<1;k=m*3|0;l=m<<2;g=(N(i+m|0,-7)|0)+16+((e[o+32>>1]|0)+(e[n>>1]|0)<<4)|0;h=16;f=a;while(1){if((h|0)>0){c=g;d=-16}else break;while(1){if((d|0)>=0)break;q=c>>5;b[f+(d+16<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+m>>5;b[f+(d+17<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+j>>5;b[f+(d+18<<1)>>1]=q>>>0<512?q:0-q>>31&511;q=c+k>>5;b[f+(d+19<<1)>>1]=q>>>0<512?q:0-q>>31&511;c=c+l|0;d=d+4|0}g=g+i|0;h=h+-1|0;f=f+(p<<1)|0}return}function mv(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d[b+(0-e)>>0]|0;n=d[b+(1-e)>>0]|0;m=d[b+(2-e)>>0]|0;l=d[b+(3-e)>>0]|0;k=d[c>>0]|0;j=d[c+1>>0]|0;c=d[c+2>>0]|0;o=n<<1;a[b>>0]=(f+4+h+o+(p+g<<1)|0)>>>3;q=(n+1+m|0)>>>1&255;f=e<<1;a[b+f>>0]=q;a[b+1>>0]=q;q=(m+1+l|0)>>>1&255;a[b+(f|1)>>0]=q;a[b+2>>0]=q;q=(l+1+k|0)>>>1&255;a[b+(f+2)>>0]=q;a[b+3>>0]=q;a[b+(f+3)>>0]=(k+1+j|0)>>>1;a[b+e>>0]=(g+4+(h<<1)+i+p+o+m|0)>>>3;h=(n+2+(m<<1)+l|0)>>>2&255;i=e*3|0;a[b+i>>0]=h;a[b+(e+1)>>0]=h;h=(m+2+(l<<1)+k|0)>>>2&255;a[b+(i+1)>>0]=h;a[b+(e+2)>>0]=h;h=(l+2+(k<<1)+j|0)>>>2&255;a[b+(i+2)>>0]=h;a[b+(e+3)>>0]=h;a[b+(i+3)>>0]=(k+2+(j<<1)+c|0)>>>2;return}function nv(a,b,c){a=a|0;b=b|0;c=c|0;nJ(a,b,c);return}function ov(a,b,c){a=a|0;b=b|0;c=c|0;mJ(a,b,c);return}function pv(a,b,c){a=a|0;b=b|0;c=c|0;lJ(a,b,c);return}function qv(a,b,c){a=a|0;b=b|0;c=c|0;kJ(a,b,c);return}function rv(a,b,c){a=a|0;b=b|0;c=c|0;jJ(a,b,c);return}function sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;HH(e,b,32,c);iJ(a,b,e,c,c);l=d;return}function tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;DH(e,b,32,c);hJ(a,b,e,c,c);l=d;return}function uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;zH(e,b,32,c);gJ(a,b,e,c,c);l=d;return}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;vH(e,b,16,c);fJ(a,b,e,c,c);l=d;return}function wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);eJ(a,b,e,c,c);l=d;return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;HH(a,b,c,c);return}function yv(a,b,c){a=a|0;b=b|0;c=c|0;DH(a,b,c,c);return}function zv(a,b,c){a=a|0;b=b|0;c=c|0;zH(a,b,c,c);return}function Av(a,b,c){a=a|0;b=b|0;c=c|0;vH(a,b,c,c);return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;rH(a,b,c,c);return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;HH(e,b,32,c);iJ(a,b+2|0,e,c,c);l=d;return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;DH(e,b,32,c);hJ(a,b+2|0,e,c,c);l=d;return}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;zH(e,b,32,c);gJ(a,b+2|0,e,c,c);l=d;return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;vH(e,b,16,c);fJ(a,b+1|0,e,c,c);l=d;return}function Gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);eJ(a,b+2|0,e,c,c);l=d;return}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;IH(g,b+(0-(c<<1))|0,c);JH(e,f,32);iJ(a,f,e,c,32);l=d;return}function Iv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;EH(g,b+(0-(c<<1))|0,c);FH(e,f,32);hJ(a,f,e,c,32);l=d;return}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;AH(g,b+(0-(c<<1))|0,c);BH(e,f,32);gJ(a,f,e,c,32);l=d;return}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;wH(g,b+(0-(c<<1))|0,c);xH(e,f,16);fJ(a,f,e,c,16);l=d;return}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;sH(g,b+(0-(c<<1))|0,c);tH(e,f,32);eJ(a,f,e,c,32);l=d;return}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b,32,c);IH(g,b+(0-(c<<1))|0,c);JH(e,g+64|0,32);iJ(a,f,e,c,32);l=d;return}function Nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b,32,c);EH(g,b+(0-(c<<1))|0,c);FH(e,g+64|0,32);hJ(a,f,e,c,32);l=d;return}function Ov(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b,32,c);AH(g,b+(0-(c<<1))|0,c);BH(e,g+64|0,32);gJ(a,f,e,c,32);l=d;return}function Pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b,16,c);wH(g,b+(0-(c<<1))|0,c);xH(e,g+32|0,16);fJ(a,f,e,c,16);l=d;return}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);eJ(a,f,e,c,32);l=d;return}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;HH(f,b,32,c);PH(e,d,b,32,c);iJ(a,f,e,c,32);l=d;return}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;DH(f,b,32,c);OH(e,d,b,32,c);hJ(a,f,e,c,32);l=d;return}function Tv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;zH(f,b,32,c);NH(e,d,b,32,c);gJ(a,f,e,c,32);l=d;return}function Uv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;vH(f,b,16,c);MH(e,d,b,16,c);fJ(a,f,e,c,16);l=d;return}function Vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;rH(f,b,32,c);LH(e,d,b,32,c);eJ(a,f,e,c,32);l=d;return}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b,32,c);IH(g,b+(0-(c<<1))+2|0,c);JH(e,g+64|0,32);iJ(a,f,e,c,32);l=d;return}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b,32,c);EH(g,b+(0-(c<<1))+2|0,c);FH(e,g+64|0,32);hJ(a,f,e,c,32);l=d;return}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b,32,c);AH(g,b+(0-(c<<1))+2|0,c);BH(e,g+64|0,32);gJ(a,f,e,c,32);l=d;return}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b,16,c);wH(g,b+(0-(c<<1))+1|0,c);xH(e,g+32|0,16);fJ(a,f,e,c,16);l=d;return}function _v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);eJ(a,f,e,c,32);l=d;return}function $v(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;IH(e,b+(0-(c<<1))|0,c);JH(a,e+64|0,c);l=d;return}function aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;EH(e,b+(0-(c<<1))|0,c);FH(a,e+64|0,c);l=d;return}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;AH(e,b+(0-(c<<1))|0,c);BH(a,e+64|0,c);l=d;return}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;wH(e,b+(0-(c<<1))|0,c);xH(a,e+32|0,c);l=d;return}function dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;sH(e,b+(0-(c<<1))|0,c);tH(a,e+64|0,c);l=d;return}function ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;IH(g,b+(0-(c<<1))|0,c);JH(f,g+64|0,32);PH(e,d,b,32,c);iJ(a,f,e,c,32);l=d;return}function fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;EH(g,b+(0-(c<<1))|0,c);FH(f,g+64|0,32);OH(e,d,b,32,c);hJ(a,f,e,c,32);l=d;return}function gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;AH(g,b+(0-(c<<1))|0,c);BH(f,g+64|0,32);NH(e,d,b,32,c);gJ(a,f,e,c,32);l=d;return}function hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;wH(g,b+(0-(c<<1))|0,c);xH(f,g+32|0,16);MH(e,d,b,16,c);fJ(a,f,e,c,16);l=d;return}function iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;sH(g,b+(0-(c<<1))|0,c);tH(f,g+64|0,32);LH(e,d,b,32,c);eJ(a,f,e,c,32);l=d;return}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);PH(a,d,b,c,c);l=d;return}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);OH(a,d,b,c,c);l=d;return}function lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);NH(a,d,b,c,c);l=d;return}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);MH(a,d,b,c,c);l=d;return}function nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);LH(a,d,b,c,c);l=d;return}function ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;IH(g,b+(0-(c<<1))+2|0,c);JH(f,g+64|0,32);PH(e,d,b,32,c);iJ(a,f,e,c,32);l=d;return}function pw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;EH(g,b+(0-(c<<1))+2|0,c);FH(f,g+64|0,32);OH(e,d,b,32,c);hJ(a,f,e,c,32);l=d;return}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;AH(g,b+(0-(c<<1))+2|0,c);BH(f,g+64|0,32);NH(e,d,b,32,c);gJ(a,f,e,c,32);l=d;return}function rw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;wH(g,b+(0-(c<<1))+1|0,c);xH(f,g+32|0,16);MH(e,d,b,16,c);fJ(a,f,e,c,16);l=d;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;sH(g,b+(0-(c<<1))+2|0,c);tH(f,g+64|0,32);LH(e,d,b,32,c);eJ(a,f,e,c,32);l=d;return}function tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;IH(f,b+(0-(c<<1))|0,c);JH(e,f+64|0,32);iJ(a,f+96|0,e,c,32);l=d;return}function uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;EH(f,b+(0-(c<<1))|0,c);FH(e,f+64|0,32);hJ(a,f+96|0,e,c,32);l=d;return}function vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;AH(f,b+(0-(c<<1))|0,c);BH(e,f+64|0,32);gJ(a,f+96|0,e,c,32);l=d;return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;wH(f,b+(0-(c<<1))|0,c);xH(e,f+32|0,16);fJ(a,f+48|0,e,c,16);l=d;return}function xw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;sH(f,b+(0-(c<<1))|0,c);tH(e,f+64|0,32);eJ(a,f+96|0,e,c,32);l=d;return}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b+c|0,32,c);IH(g,b+(0-(c<<1))|0,c);JH(e,g+64|0,32);iJ(a,f,e,c,32);l=d;return}function zw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b+c|0,32,c);EH(g,b+(0-(c<<1))|0,c);FH(e,g+64|0,32);hJ(a,f,e,c,32);l=d;return}function Aw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b+c|0,32,c);AH(g,b+(0-(c<<1))|0,c);BH(e,g+64|0,32);gJ(a,f,e,c,32);l=d;return}function Bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b+c|0,16,c);wH(g,b+(0-(c<<1))|0,c);xH(e,g+32|0,16);fJ(a,f,e,c,16);l=d;return}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);eJ(a,f,e,c,32);l=d;return}function Dw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;HH(f,b+c|0,32,c);PH(e,d,b,32,c);iJ(a,f,e,c,32);l=d;return}function Ew(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;DH(f,b+c|0,32,c);OH(e,d,b,32,c);hJ(a,f,e,c,32);l=d;return}function Fw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;zH(f,b+c|0,32,c);NH(e,d,b,32,c);gJ(a,f,e,c,32);l=d;return}function Gw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;vH(f,b+c|0,16,c);MH(e,d,b,16,c);fJ(a,f,e,c,16);l=d;return}function Hw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;rH(f,b+c|0,32,c);LH(e,d,b,32,c);eJ(a,f,e,c,32);l=d;return}function Iw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b+c|0,32,c);IH(g,b+(0-(c<<1))+2|0,c);JH(e,g+64|0,32);iJ(a,f,e,c,32);l=d;return}function Jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b+c|0,32,c);EH(g,b+(0-(c<<1))+2|0,c);FH(e,g+64|0,32);hJ(a,f,e,c,32);l=d;return}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b+c|0,32,c);AH(g,b+(0-(c<<1))+2|0,c);BH(e,g+64|0,32);gJ(a,f,e,c,32);l=d;return}function Lw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b+c|0,16,c);wH(g,b+(0-(c<<1))+1|0,c);xH(e,g+32|0,16);fJ(a,f,e,c,16);l=d;return}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);eJ(a,f,e,c,32);l=d;return}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;dJ(a,b,c,8);return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;cJ(a,b,c,8);return}function Pw(a,b,c){a=a|0;b=b|0;c=c|0;bJ(a,b,c,8);return}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;aJ(a,b,c,8);return}function Rw(a,b,c){a=a|0;b=b|0;c=c|0;$I(a,b,c,8);return}function Sw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;QG(e,b,16,c);_I(a,b,e,c,c,16,8);l=d;return}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;MG(e,b,16,c);ZI(a,b,e,c,c,16,8);l=d;return}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;IG(e,b,16,c);YI(a,b,e,c,c,16,8);l=d;return}function Vw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;EG(e,b,8,c);XI(a,b,e,c,c,8,8);l=d;return}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);WI(a,b,e,c,c,16,8);l=d;return}function Xw(a,b,c){a=a|0;b=b|0;c=c|0;QG(a,b,c,c);return}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;MG(a,b,c,c);return}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;IG(a,b,c,c);return}function _w(a,b,c){a=a|0;b=b|0;c=c|0;EG(a,b,c,c);return}function $w(a,b,c){a=a|0;b=b|0;c=c|0;AG(a,b,c,c);return}function ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;QG(e,b,16,c);_I(a,b+2|0,e,c,c,16,8);l=d;return}function bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;MG(e,b,16,c);ZI(a,b+2|0,e,c,c,16,8);l=d;return}function cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;IG(e,b,16,c);YI(a,b+2|0,e,c,c,16,8);l=d;return}function dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;EG(e,b,8,c);XI(a,b+1|0,e,c,c,8,8);l=d;return}function ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);WI(a,b+2|0,e,c,c,16,8);l=d;return}function fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;RG(g,b+(0-(c<<1))|0,c);SG(e,f,16,16);_I(a,f,e,c,16,16,8);l=d;return}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;NG(g,b+(0-(c<<1))|0,c);OG(e,f,16,16);ZI(a,f,e,c,16,16,8);l=d;return}function hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;JG(g,b+(0-(c<<1))|0,c);KG(e,f,16,16);YI(a,f,e,c,16,16,8);l=d;return}function ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;FG(g,b+(0-(c<<1))|0,c);GG(e,f,8,8);XI(a,f,e,c,8,8,8);l=d;return}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;BG(g,b+(0-(c<<1))|0,c);CG(e,f,16,16);WI(a,f,e,c,16,16,8);l=d;return}function kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b,16,c);RG(g,b+(0-(c<<1))|0,c);SG(e,g+32|0,16,16);_I(a,f,e,c,16,16,8);l=d;return}function lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b,16,c);NG(g,b+(0-(c<<1))|0,c);OG(e,g+32|0,16,16);ZI(a,f,e,c,16,16,8);l=d;return}function mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b,16,c);JG(g,b+(0-(c<<1))|0,c);KG(e,g+32|0,16,16);YI(a,f,e,c,16,16,8);l=d;return}function nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b,8,c);FG(g,b+(0-(c<<1))|0,c);GG(e,g+16|0,8,8);XI(a,f,e,c,8,8,8);l=d;return}function ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);WI(a,f,e,c,16,16,8);l=d;return}function px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;QG(f,b,16,c);YG(e,d,b,16,16,c);_I(a,f,e,c,16,16,8);l=d;return}function qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;MG(f,b,16,c);XG(e,d,b,16,16,c);ZI(a,f,e,c,16,16,8);l=d;return}function rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;IG(f,b,16,c);WG(e,d,b,16,16,c);YI(a,f,e,c,16,16,8);l=d;return}function sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;EG(f,b,8,c);VG(e,d,b,8,8,c);XI(a,f,e,c,8,8,8);l=d;return}function tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;AG(f,b,16,c);UG(e,d,b,16,16,c);WI(a,f,e,c,16,16,8);l=d;return}function ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b,16,c);RG(g,b+(0-(c<<1))+2|0,c);SG(e,g+32|0,16,16);_I(a,f,e,c,16,16,8);l=d;return}function vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b,16,c);NG(g,b+(0-(c<<1))+2|0,c);OG(e,g+32|0,16,16);ZI(a,f,e,c,16,16,8);l=d;return}function wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b,16,c);JG(g,b+(0-(c<<1))+2|0,c);KG(e,g+32|0,16,16);YI(a,f,e,c,16,16,8);l=d;return}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b,8,c);FG(g,b+(0-(c<<1))+1|0,c);GG(e,g+16|0,8,8);XI(a,f,e,c,8,8,8);l=d;return}function yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);WI(a,f,e,c,16,16,8);l=d;return}function zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;RG(e,b+(0-(c<<1))|0,c);SG(a,e+32|0,c,16);l=d;return}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;NG(e,b+(0-(c<<1))|0,c);OG(a,e+32|0,c,16);l=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;JG(e,b+(0-(c<<1))|0,c);KG(a,e+32|0,c,16);l=d;return}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;FG(e,b+(0-(c<<1))|0,c);GG(a,e+16|0,c,8);l=d;return}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;BG(e,b+(0-(c<<1))|0,c);CG(a,e+32|0,c,16);l=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;RG(g,b+(0-(c<<1))|0,c);SG(f,g+32|0,16,16);YG(e,d,b,16,16,c);_I(a,f,e,c,16,16,8);l=d;return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;NG(g,b+(0-(c<<1))|0,c);OG(f,g+32|0,16,16);XG(e,d,b,16,16,c);ZI(a,f,e,c,16,16,8);l=d;return}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;JG(g,b+(0-(c<<1))|0,c);KG(f,g+32|0,16,16);WG(e,d,b,16,16,c);YI(a,f,e,c,16,16,8);l=d;return}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;FG(g,b+(0-(c<<1))|0,c);GG(f,g+16|0,8,8);VG(e,d,b,8,8,c);XI(a,f,e,c,8,8,8);l=d;return}function Ix(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;BG(g,b+(0-(c<<1))|0,c);CG(f,g+32|0,16,16);UG(e,d,b,16,16,c);WI(a,f,e,c,16,16,8);l=d;return}function Jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);YG(a,d,b,c,16,c);l=d;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);XG(a,d,b,c,16,c);l=d;return}function Lx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);WG(a,d,b,c,16,c);l=d;return}function Mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);VG(a,d,b,c,8,c);l=d;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);UG(a,d,b,c,16,c);l=d;return}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;RG(g,b+(0-(c<<1))+2|0,c);SG(f,g+32|0,16,16);YG(e,d,b,16,16,c);_I(a,f,e,c,16,16,8);l=d;return}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;NG(g,b+(0-(c<<1))+2|0,c);OG(f,g+32|0,16,16);XG(e,d,b,16,16,c);ZI(a,f,e,c,16,16,8);l=d;return}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;JG(g,b+(0-(c<<1))+2|0,c);KG(f,g+32|0,16,16);WG(e,d,b,16,16,c);YI(a,f,e,c,16,16,8);l=d;return}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;FG(g,b+(0-(c<<1))+1|0,c);GG(f,g+16|0,8,8);VG(e,d,b,8,8,c);XI(a,f,e,c,8,8,8);l=d;return}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;BG(g,b+(0-(c<<1))+2|0,c);CG(f,g+32|0,16,16);UG(e,d,b,16,16,c);WI(a,f,e,c,16,16,8);l=d;return}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;RG(f,b+(0-(c<<1))|0,c);SG(e,f+32|0,16,16);_I(a,f+48|0,e,c,16,16,8);l=d;return}function Ux(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;NG(f,b+(0-(c<<1))|0,c);OG(e,f+32|0,16,16);ZI(a,f+48|0,e,c,16,16,8);l=d;return}function Vx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;JG(f,b+(0-(c<<1))|0,c);KG(e,f+32|0,16,16);YI(a,f+48|0,e,c,16,16,8);l=d;return}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;FG(f,b+(0-(c<<1))|0,c);GG(e,f+16|0,8,8);XI(a,f+24|0,e,c,8,8,8);l=d;return}function Xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;BG(f,b+(0-(c<<1))|0,c);CG(e,f+32|0,16,16);WI(a,f+48|0,e,c,16,16,8);l=d;return}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b+c|0,16,c);RG(g,b+(0-(c<<1))|0,c);SG(e,g+32|0,16,16);_I(a,f,e,c,16,16,8);l=d;return}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b+c|0,16,c);NG(g,b+(0-(c<<1))|0,c);OG(e,g+32|0,16,16);ZI(a,f,e,c,16,16,8);l=d;return}function _x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b+c|0,16,c);JG(g,b+(0-(c<<1))|0,c);KG(e,g+32|0,16,16);YI(a,f,e,c,16,16,8);l=d;return}function $x(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b+c|0,8,c);FG(g,b+(0-(c<<1))|0,c);GG(e,g+16|0,8,8);XI(a,f,e,c,8,8,8);l=d;return}function ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);WI(a,f,e,c,16,16,8);l=d;return}function by(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;QG(f,b+c|0,16,c);YG(e,d,b,16,16,c);_I(a,f,e,c,16,16,8);l=d;return}function cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;MG(f,b+c|0,16,c);XG(e,d,b,16,16,c);ZI(a,f,e,c,16,16,8);l=d;return}function dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;IG(f,b+c|0,16,c);WG(e,d,b,16,16,c);YI(a,f,e,c,16,16,8);l=d;return}function ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;EG(f,b+c|0,8,c);VG(e,d,b,8,8,c);XI(a,f,e,c,8,8,8);l=d;return}function fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;AG(f,b+c|0,16,c);UG(e,d,b,16,16,c);WI(a,f,e,c,16,16,8);l=d;return}function gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b+c|0,16,c);RG(g,b+(0-(c<<1))+2|0,c);SG(e,g+32|0,16,16);_I(a,f,e,c,16,16,8);l=d;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b+c|0,16,c);NG(g,b+(0-(c<<1))+2|0,c);OG(e,g+32|0,16,16);ZI(a,f,e,c,16,16,8);l=d;return}function iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b+c|0,16,c);JG(g,b+(0-(c<<1))+2|0,c);KG(e,g+32|0,16,16);YI(a,f,e,c,16,16,8);l=d;return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b+c|0,8,c);FG(g,b+(0-(c<<1))+1|0,c);GG(e,g+16|0,8,8);XI(a,f,e,c,8,8,8);l=d;return}function ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);WI(a,f,e,c,16,16,8);l=d;return}function ly(a,b,c){a=a|0;b=b|0;c=c|0;VI(a,b,c);return}function my(a,b,c){a=a|0;b=b|0;c=c|0;UI(a,b,c);return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;TI(a,b,c);return}function oy(a,b,c){a=a|0;b=b|0;c=c|0;SI(a,b,c);return}function py(a,b,c){a=a|0;b=b|0;c=c|0;RI(a,b,c);return}function qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;ZF(e,b,8,c);QI(a,b,e,c,c);l=d;return}function ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;VF(e,b,8,c);PI(a,b,e,c,c);l=d;return}function sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;RF(e,b,8,c);OI(a,b,e,c,c);l=d;return}function ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;MF(e,b,4,c);NI(a,b,e,c,c);l=d;return}function uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);MI(a,b,e,c,c);l=d;return}function vy(a,b,c){a=a|0;b=b|0;c=c|0;ZF(a,b,c,c);return}function wy(a,b,c){a=a|0;b=b|0;c=c|0;VF(a,b,c,c);return}function xy(a,b,c){a=a|0;b=b|0;c=c|0;RF(a,b,c,c);return}function yy(a,b,c){a=a|0;b=b|0;c=c|0;MF(a,b,c,c);return}function zy(a,b,c){a=a|0;b=b|0;c=c|0;HF(a,b,c,c);return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;ZF(e,b,8,c);QI(a,b+2|0,e,c,c);l=d;return}function By(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;VF(e,b,8,c);PI(a,b+2|0,e,c,c);l=d;return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;RF(e,b,8,c);OI(a,b+2|0,e,c,c);l=d;return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;MF(e,b,4,c);NI(a,b+1|0,e,c,c);l=d;return}function Ey(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);MI(a,b+2|0,e,c,c);l=d;return}function Fy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;_F(g,b+(0-(c<<1))|0,c);$F(e,f,8);QI(a,f,e,c,8);l=d;return}function Gy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;WF(g,b+(0-(c<<1))|0,c);XF(e,f,8);PI(a,f,e,c,8);l=d;return}function Hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;SF(g,b+(0-(c<<1))|0,c);TF(e,f,8);OI(a,f,e,c,8);l=d;return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;NF(g,b+(0-(c<<1))|0,c);OF(e,f,4);NI(a,f,e,c,4);l=d;return}function Jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;IF(g,b+(0-(c<<1))|0,c);JF(e,f,8);MI(a,f,e,c,8);l=d;return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b,8,c);_F(g,b+(0-(c<<1))|0,c);$F(e,g+16|0,8);QI(a,f,e,c,8);l=d;return}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b,8,c);WF(g,b+(0-(c<<1))|0,c);XF(e,g+16|0,8);PI(a,f,e,c,8);l=d;return}function My(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b,8,c);SF(g,b+(0-(c<<1))|0,c);TF(e,g+16|0,8);OI(a,f,e,c,8);l=d;return}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b,4,c);NF(g,b+(0-(c<<1))|0,c);OF(e,g+8|0,4);NI(a,f,e,c,4);l=d;return}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);MI(a,f,e,c,8);l=d;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;ZF(f,b,8,c);fG(e,d,b,8,c);QI(a,f,e,c,8);l=d;return}function Qy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;VF(f,b,8,c);eG(e,d,b,8,c);PI(a,f,e,c,8);l=d;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;RF(f,b,8,c);dG(e,d,b,8,c);OI(a,f,e,c,8);l=d;return}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;MF(f,b,4,c);cG(e,d,b,4,c);NI(a,f,e,c,4);l=d;return}function Ty(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;HF(f,b,8,c);bG(e,d,b,8,c);MI(a,f,e,c,8);l=d;return}function Uy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b,8,c);_F(g,b+(0-(c<<1))+2|0,c);$F(e,g+16|0,8);QI(a,f,e,c,8);l=d;return}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b,8,c);WF(g,b+(0-(c<<1))+2|0,c);XF(e,g+16|0,8);PI(a,f,e,c,8);l=d;return}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b,8,c);SF(g,b+(0-(c<<1))+2|0,c);TF(e,g+16|0,8);OI(a,f,e,c,8);l=d;return}function Xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b,4,c);NF(g,b+(0-(c<<1))+1|0,c);OF(e,g+8|0,4);NI(a,f,e,c,4);l=d;return}function Yy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);MI(a,f,e,c,8);l=d;return}function Zy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;_F(e,b+(0-(c<<1))|0,c);$F(a,e+16|0,c);l=d;return}function _y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;WF(e,b+(0-(c<<1))|0,c);XF(a,e+16|0,c);l=d;return}function $y(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;SF(e,b+(0-(c<<1))|0,c);TF(a,e+16|0,c);l=d;return}function az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;NF(e,b+(0-(c<<1))|0,c);OF(a,e+8|0,c);l=d;return}function bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;IF(e,b+(0-(c<<1))|0,c);JF(a,e+16|0,c);l=d;return}function cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;_F(g,b+(0-(c<<1))|0,c);$F(f,g+16|0,8);fG(e,d,b,8,c);QI(a,f,e,c,8);l=d;return}function dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;WF(g,b+(0-(c<<1))|0,c);XF(f,g+16|0,8);eG(e,d,b,8,c);PI(a,f,e,c,8);l=d;return}function ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;SF(g,b+(0-(c<<1))|0,c);TF(f,g+16|0,8);dG(e,d,b,8,c);OI(a,f,e,c,8);l=d;return}function fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;NF(g,b+(0-(c<<1))|0,c);OF(f,g+8|0,4);cG(e,d,b,4,c);NI(a,f,e,c,4);l=d;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;IF(g,b+(0-(c<<1))|0,c);JF(f,g+16|0,8);bG(e,d,b,8,c);MI(a,f,e,c,8);l=d;return}function hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);fG(a,d,b,c,c);l=d;return}function iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);eG(a,d,b,c,c);l=d;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);dG(a,d,b,c,c);l=d;return}function kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);cG(a,d,b,c,c);l=d;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);bG(a,d,b,c,c);l=d;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;_F(g,b+(0-(c<<1))+2|0,c);$F(f,g+16|0,8);fG(e,d,b,8,c);QI(a,f,e,c,8);l=d;return}function nz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;WF(g,b+(0-(c<<1))+2|0,c);XF(f,g+16|0,8);eG(e,d,b,8,c);PI(a,f,e,c,8);l=d;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;SF(g,b+(0-(c<<1))+2|0,c);TF(f,g+16|0,8);dG(e,d,b,8,c);OI(a,f,e,c,8);l=d;return}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;NF(g,b+(0-(c<<1))+1|0,c);OF(f,g+8|0,4);cG(e,d,b,4,c);NI(a,f,e,c,4);l=d;return}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;IF(g,b+(0-(c<<1))+2|0,c);JF(f,g+16|0,8);bG(e,d,b,8,c);MI(a,f,e,c,8);l=d;return}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;_F(f,b+(0-(c<<1))|0,c);$F(e,f+16|0,8);QI(a,f+24|0,e,c,8);l=d;return}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;WF(f,b+(0-(c<<1))|0,c);XF(e,f+16|0,8);PI(a,f+24|0,e,c,8);l=d;return}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;SF(f,b+(0-(c<<1))|0,c);TF(e,f+16|0,8);OI(a,f+24|0,e,c,8);l=d;return}function uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;NF(f,b+(0-(c<<1))|0,c);OF(e,f+8|0,4);NI(a,f+12|0,e,c,4);l=d;return}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;IF(f,b+(0-(c<<1))|0,c);JF(e,f+16|0,8);MI(a,f+24|0,e,c,8);l=d;return}function wz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b+c|0,8,c);_F(g,b+(0-(c<<1))|0,c);$F(e,g+16|0,8);QI(a,f,e,c,8);l=d;return}function xz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b+c|0,8,c);WF(g,b+(0-(c<<1))|0,c);XF(e,g+16|0,8);PI(a,f,e,c,8);l=d;return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b+c|0,8,c);SF(g,b+(0-(c<<1))|0,c);TF(e,g+16|0,8);OI(a,f,e,c,8);l=d;return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b+c|0,4,c);NF(g,b+(0-(c<<1))|0,c);OF(e,g+8|0,4);NI(a,f,e,c,4);l=d;return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);MI(a,f,e,c,8);l=d;return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;ZF(f,b+c|0,8,c);fG(e,d,b,8,c);QI(a,f,e,c,8);l=d;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;VF(f,b+c|0,8,c);eG(e,d,b,8,c);PI(a,f,e,c,8);l=d;return}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;RF(f,b+c|0,8,c);dG(e,d,b,8,c);OI(a,f,e,c,8);l=d;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;MF(f,b+c|0,4,c);cG(e,d,b,4,c);NI(a,f,e,c,4);l=d;return}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;HF(f,b+c|0,8,c);bG(e,d,b,8,c);MI(a,f,e,c,8);l=d;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b+c|0,8,c);_F(g,b+(0-(c<<1))+2|0,c);$F(e,g+16|0,8);QI(a,f,e,c,8);l=d;return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b+c|0,8,c);WF(g,b+(0-(c<<1))+2|0,c);XF(e,g+16|0,8);PI(a,f,e,c,8);l=d;return}function Iz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b+c|0,8,c);SF(g,b+(0-(c<<1))+2|0,c);TF(e,g+16|0,8);OI(a,f,e,c,8);l=d;return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b+c|0,4,c);NF(g,b+(0-(c<<1))+1|0,c);OF(e,g+8|0,4);NI(a,f,e,c,4);l=d;return}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);MI(a,f,e,c,8);l=d;return}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;LI(a,b,c);return}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;KI(a,b,c);return}function Nz(a,b,c){a=a|0;b=b|0;c=c|0;JI(a,b,c);return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;II(a,b,c);return}function Pz(a,b,c){a=a|0;b=b|0;c=c|0;HI(a,b,c);return}function Qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yI(e,b,4,c);BI(a,b,e,c,c);l=d;return}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;uI(e,b,4,c);xI(a,b,e,c,c);l=d;return}function Sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;qI(e,b,4,c);tI(a,b,e,c,c);l=d;return}function Tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;mI(e,b,2,c);pI(a,b,e,c,c);l=d;return}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;iI(e,b,4,c);lI(a,b,e,c,c);l=d;return}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;yI(a,b,c,c);return}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;uI(a,b,c,c);return}function Xz(a,b,c){a=a|0;b=b|0;c=c|0;qI(a,b,c,c);return}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;mI(a,b,c,c);return}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;iI(a,b,c,c);return}function _z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;yI(e,b,4,c);BI(a,b+2|0,e,c,c);l=d;return}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;uI(e,b,4,c);xI(a,b+2|0,e,c,c);l=d;return}function aA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;qI(e,b,4,c);tI(a,b+2|0,e,c,c);l=d;return}function bA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;mI(e,b,2,c);pI(a,b+1|0,e,c,c);l=d;return}function cA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;iI(e,b,4,c);lI(a,b+2|0,e,c,c);l=d;return}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;zI(g,b+(0-(c<<1))|0,c);AI(e,f,4);BI(a,f,e,c,4);l=d;return}function eA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;vI(g,b+(0-(c<<1))|0,c);wI(e,f,4);xI(a,f,e,c,4);l=d;return}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;rI(g,b+(0-(c<<1))|0,c);sI(e,f,4);tI(a,f,e,c,4);l=d;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+4|0;e=d;f=g+4|0;nI(g,b+(0-(c<<1))|0,c);oI(e,f,2);pI(a,f,e,c,2);l=d;return}function hA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+8|0;e=d;f=g+8|0;jI(g,b+(0-(c<<1))|0,c);kI(e,f,4);lI(a,f,e,c,4);l=d;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;yI(f,b,4,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+8|0,4);BI(a,f,e,c,4);l=d;return}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;uI(f,b,4,c);vI(g,b+(0-(c<<1))|0,c);wI(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;qI(f,b,4,c);rI(g,b+(0-(c<<1))|0,c);sI(e,g+8|0,4);tI(a,f,e,c,4);l=d;return}function lA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;mI(f,b,2,c);nI(g,b+(0-(c<<1))|0,c);oI(e,g+4|0,2);pI(a,f,e,c,2);l=d;return}function mA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b,4,c);jI(g,b+(0-(c<<1))|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function nA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;yI(f,b,4,c);GI(e,d,b,4,c);BI(a,f,e,c,4);l=d;return}function oA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;uI(f,b,4,c);FI(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function pA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;qI(f,b,4,c);EI(e,d,b,4,c);tI(a,f,e,c,4);l=d;return}function qA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;mI(f,b,2,c);DI(e,d,b,2,c);pI(a,f,e,c,2);l=d;return}function rA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;iI(f,b,4,c);CI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function sA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;yI(f,b,4,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+8|0,4);BI(a,f,e,c,4);l=d;return}function tA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;uI(f,b,4,c);vI(g,b+(0-(c<<1))+2|0,c);wI(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function uA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;qI(f,b,4,c);rI(g,b+(0-(c<<1))+2|0,c);sI(e,g+8|0,4);tI(a,f,e,c,4);l=d;return}function vA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;mI(f,b,2,c);nI(g,b+(0-(c<<1))+1|0,c);oI(e,g+4|0,2);pI(a,f,e,c,2);l=d;return}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b,4,c);jI(g,b+(0-(c<<1))+2|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;zI(e,b+(0-(c<<1))|0,c);AI(a,e+8|0,c);l=d;return}function yA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;vI(e,b+(0-(c<<1))|0,c);wI(a,e+8|0,c);l=d;return}function zA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;rI(e,b+(0-(c<<1))|0,c);sI(a,e+8|0,c);l=d;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;nI(e,b+(0-(c<<1))|0,c);oI(a,e+4|0,c);l=d;return}function BA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;jI(e,b+(0-(c<<1))|0,c);kI(a,e+8|0,c);l=d;return}function CA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;zI(g,b+(0-(c<<1))|0,c);AI(f,g+8|0,4);GI(e,d,b,4,c);BI(a,f,e,c,4);l=d;return}function DA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;vI(g,b+(0-(c<<1))|0,c);wI(f,g+8|0,4);FI(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function EA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;rI(g,b+(0-(c<<1))|0,c);sI(f,g+8|0,4);EI(e,d,b,4,c);tI(a,f,e,c,4);l=d;return}function FA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;nI(g,b+(0-(c<<1))|0,c);oI(f,g+4|0,2);DI(e,d,b,2,c);pI(a,f,e,c,2);l=d;return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;jI(g,b+(0-(c<<1))|0,c);kI(f,g+8|0,4);CI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function HA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);GI(a,d,b,c,c);l=d;return}function IA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);FI(a,d,b,c,c);l=d;return}function JA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);EI(a,d,b,c,c);l=d;return}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);DI(a,d,b,c,c);l=d;return}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);CI(a,d,b,c,c);l=d;return}function MA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;zI(g,b+(0-(c<<1))+2|0,c);AI(f,g+8|0,4);GI(e,d,b,4,c);BI(a,f,e,c,4);l=d;return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+160|0;if((l|0)>=(m|0))W(160);g=d+128|0;f=d+120|0;e=d+112|0;vI(g,b+(0-(c<<1))+2|0,c);wI(f,g+8|0,4);FI(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function OA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;rI(g,b+(0-(c<<1))+2|0,c);sI(f,g+8|0,4);EI(e,d,b,4,c);tI(a,f,e,c,4);l=d;return}function PA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+36|0;f=d+32|0;e=d+28|0;nI(g,b+(0-(c<<1))+1|0,c);oI(f,g+4|0,2);DI(e,d,b,2,c);pI(a,f,e,c,2);l=d;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+72|0;f=d+64|0;e=d+56|0;jI(g,b+(0-(c<<1))+2|0,c);kI(f,g+8|0,4);CI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;zI(f,b+(0-(c<<1))|0,c);AI(e,f+8|0,4);BI(a,f+12|0,e,c,4);l=d;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;vI(f,b+(0-(c<<1))|0,c);wI(e,f+8|0,4);xI(a,f+12|0,e,c,4);l=d;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;rI(f,b+(0-(c<<1))|0,c);sI(e,f+8|0,4);tI(a,f+12|0,e,c,4);l=d;return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=d+4|0;e=d;nI(f,b+(0-(c<<1))|0,c);oI(e,f+4|0,2);pI(a,f+6|0,e,c,2);l=d;return}function VA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+8|0;e=d;jI(f,b+(0-(c<<1))|0,c);kI(e,f+8|0,4);lI(a,f+12|0,e,c,4);l=d;return}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;yI(f,b+c|0,4,c);zI(g,b+(0-(c<<1))|0,c);AI(e,g+8|0,4);BI(a,f,e,c,4);l=d;return}function XA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;uI(f,b+c|0,4,c);vI(g,b+(0-(c<<1))|0,c);wI(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function YA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;qI(f,b+c|0,4,c);rI(g,b+(0-(c<<1))|0,c);sI(e,g+8|0,4);tI(a,f,e,c,4);l=d;return}function ZA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;mI(f,b+c|0,2,c);nI(g,b+(0-(c<<1))|0,c);oI(e,g+4|0,2);pI(a,f,e,c,2);l=d;return}function _A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b+c|0,4,c);jI(g,b+(0-(c<<1))|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function $A(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;yI(f,b+c|0,4,c);GI(e,d,b,4,c);BI(a,f,e,c,4);l=d;return}function aB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);f=d+120|0;e=d+112|0;uI(f,b+c|0,4,c);FI(e,d,b,4,c);xI(a,f,e,c,4);l=d;return}function bB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;qI(f,b+c|0,4,c);EI(e,d,b,4,c);tI(a,f,e,c,4);l=d;return}function cB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);f=d+32|0;e=d+28|0;mI(f,b+c|0,2,c);DI(e,d,b,2,c);pI(a,f,e,c,2);l=d;return}function dB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);f=d+64|0;e=d+56|0;iI(f,b+c|0,4,c);CI(e,d,b,4,c);lI(a,f,e,c,4);l=d;return}function eB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;yI(f,b+c|0,4,c);zI(g,b+(0-(c<<1))+2|0,c);AI(e,g+8|0,4);BI(a,f,e,c,4);l=d;return}function fB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;uI(f,b+c|0,4,c);vI(g,b+(0-(c<<1))+2|0,c);wI(e,g+8|0,4);xI(a,f,e,c,4);l=d;return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;qI(f,b+c|0,4,c);rI(g,b+(0-(c<<1))+2|0,c);sI(e,g+8|0,4);tI(a,f,e,c,4);l=d;return}function hB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=d+8|0;f=d+4|0;e=d;mI(f,b+c|0,2,c);nI(g,b+(0-(c<<1))+1|0,c);oI(e,g+4|0,2);pI(a,f,e,c,2);l=d;return}function iB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=d+16|0;f=d+8|0;e=d;iI(f,b+c|0,4,c);jI(g,b+(0-(c<<1))+2|0,c);kI(e,g+8|0,4);lI(a,f,e,c,4);l=d;return}function jB(a,b,c){a=a|0;b=b|0;c=c|0;hI(a,b,c);return}function kB(a,b,c){a=a|0;b=b|0;c=c|0;gI(a,b,c);return}function lB(a,b,c){a=a|0;b=b|0;c=c|0;fI(a,b,c);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;eI(a,b,c);return}function nB(a,b,c){a=a|0;b=b|0;c=c|0;dI(a,b,c);return}function oB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;HH(e,b,32,c);KH(a,b,e,c,c);l=d;return}function pB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;DH(e,b,32,c);GH(a,b,e,c,c);l=d;return}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;zH(e,b,32,c);CH(a,b,e,c,c);l=d;return}function rB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;vH(e,b,16,c);yH(a,b,e,c,c);l=d;return}function sB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);uH(a,b,e,c,c);l=d;return}function tB(a,b,c){a=a|0;b=b|0;c=c|0;cI(a,b,c,c);return}function uB(a,b,c){a=a|0;b=b|0;c=c|0;bI(a,b,c,c);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;aI(a,b,c,c);return}function wB(a,b,c){a=a|0;b=b|0;c=c|0;$H(a,b,c,c);return}function xB(a,b,c){a=a|0;b=b|0;c=c|0;_H(a,b,c,c);return}function yB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;HH(e,b,32,c);KH(a,b+2|0,e,c,c);l=d;return}function zB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;DH(e,b,32,c);GH(a,b+2|0,e,c,c);l=d;return}function AB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;zH(e,b,32,c);CH(a,b+2|0,e,c,c);l=d;return}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+256|0;if((l|0)>=(m|0))W(256);e=d;vH(e,b,16,c);yH(a,b+1|0,e,c,c);l=d;return}function CB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+512|0;if((l|0)>=(m|0))W(512);e=d;rH(e,b,32,c);uH(a,b+2|0,e,c,c);l=d;return}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;IH(g,b+(0-(c<<1))|0,c);JH(e,f,32);KH(a,f,e,c,32);l=d;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;EH(g,b+(0-(c<<1))|0,c);FH(e,f,32);GH(a,f,e,c,32);l=d;return}function FB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;AH(g,b+(0-(c<<1))|0,c);BH(e,f,32);CH(a,f,e,c,32);l=d;return}function GB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);g=d+256|0;e=d;f=g+32|0;wH(g,b+(0-(c<<1))|0,c);xH(e,f,16);yH(a,f,e,c,16);l=d;return}function HB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);g=d+512|0;e=d;f=g+64|0;sH(g,b+(0-(c<<1))|0,c);tH(e,f,32);uH(a,f,e,c,32);l=d;return}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b,32,c);IH(g,b+(0-(c<<1))|0,c);JH(e,g+64|0,32);KH(a,f,e,c,32);l=d;return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b,32,c);EH(g,b+(0-(c<<1))|0,c);FH(e,g+64|0,32);GH(a,f,e,c,32);l=d;return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b,32,c);AH(g,b+(0-(c<<1))|0,c);BH(e,g+64|0,32);CH(a,f,e,c,32);l=d;return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b,16,c);wH(g,b+(0-(c<<1))|0,c);xH(e,g+32|0,16);yH(a,f,e,c,16);l=d;return}function MB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;HH(f,b,32,c);PH(e,d,b,32,c);KH(a,f,e,c,32);l=d;return}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;DH(f,b,32,c);OH(e,d,b,32,c);GH(a,f,e,c,32);l=d;return}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;zH(f,b,32,c);NH(e,d,b,32,c);CH(a,f,e,c,32);l=d;return}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;vH(f,b,16,c);MH(e,d,b,16,c);yH(a,f,e,c,16);l=d;return}function RB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;rH(f,b,32,c);LH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function SB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b,32,c);IH(g,b+(0-(c<<1))+2|0,c);JH(e,g+64|0,32);KH(a,f,e,c,32);l=d;return}function TB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b,32,c);EH(g,b+(0-(c<<1))+2|0,c);FH(e,g+64|0,32);GH(a,f,e,c,32);l=d;return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b,32,c);AH(g,b+(0-(c<<1))+2|0,c);BH(e,g+64|0,32);CH(a,f,e,c,32);l=d;return}function VB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b,16,c);wH(g,b+(0-(c<<1))+1|0,c);xH(e,g+32|0,16);yH(a,f,e,c,16);l=d;return}function WB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;IH(e,b+(0-(c<<1))|0,c);ZH(a,e+64|0,c);l=d;return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;EH(e,b+(0-(c<<1))|0,c);YH(a,e+64|0,c);l=d;return}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;AH(e,b+(0-(c<<1))|0,c);XH(a,e+64|0,c);l=d;return}function _B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);e=d;wH(e,b+(0-(c<<1))|0,c);WH(a,e+32|0,c);l=d;return}function $B(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);e=d;sH(e,b+(0-(c<<1))|0,c);VH(a,e+64|0,c);l=d;return}function aC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;IH(g,b+(0-(c<<1))|0,c);JH(f,g+64|0,32);PH(e,d,b,32,c);KH(a,f,e,c,32);l=d;return}function bC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;EH(g,b+(0-(c<<1))|0,c);FH(f,g+64|0,32);OH(e,d,b,32,c);GH(a,f,e,c,32);l=d;return}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;AH(g,b+(0-(c<<1))|0,c);BH(f,g+64|0,32);NH(e,d,b,32,c);CH(a,f,e,c,32);l=d;return}function dC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;wH(g,b+(0-(c<<1))|0,c);xH(f,g+32|0,16);MH(e,d,b,16,c);yH(a,f,e,c,16);l=d;return}function eC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;sH(g,b+(0-(c<<1))|0,c);tH(f,g+64|0,32);LH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);UH(a,d,b,c,c);l=d;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+2688|0;if((l|0)>=(m|0))W(2688);TH(a,d,b,c,c);l=d;return}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);SH(a,d,b,c,c);l=d;return}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);RH(a,d,b,c,c);l=d;return}function jC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+1344|0;if((l|0)>=(m|0))W(1344);QH(a,d,b,c,c);l=d;return}function kC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;IH(g,b+(0-(c<<1))+2|0,c);JH(f,g+64|0,32);PH(e,d,b,32,c);KH(a,f,e,c,32);l=d;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+4384|0;if((l|0)>=(m|0))W(4384);g=d+3712|0;f=d+3200|0;e=d+2688|0;EH(g,b+(0-(c<<1))+2|0,c);FH(f,g+64|0,32);OH(e,d,b,32,c);GH(a,f,e,c,32);l=d;return}function mC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;AH(g,b+(0-(c<<1))+2|0,c);BH(f,g+64|0,32);NH(e,d,b,32,c);CH(a,f,e,c,32);l=d;return}function nC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1520|0;if((l|0)>=(m|0))W(1520);g=d+1184|0;f=d+928|0;e=d+672|0;wH(g,b+(0-(c<<1))+1|0,c);xH(f,g+32|0,16);MH(e,d,b,16,c);yH(a,f,e,c,16);l=d;return}function oC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+3040|0;if((l|0)>=(m|0))W(3040);g=d+2368|0;f=d+1856|0;e=d+1344|0;sH(g,b+(0-(c<<1))+2|0,c);tH(f,g+64|0,32);LH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function pC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;IH(f,b+(0-(c<<1))|0,c);JH(e,f+64|0,32);KH(a,f+96|0,e,c,32);l=d;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;EH(f,b+(0-(c<<1))|0,c);FH(e,f+64|0,32);GH(a,f+96|0,e,c,32);l=d;return}function rC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;AH(f,b+(0-(c<<1))|0,c);BH(e,f+64|0,32);CH(a,f+96|0,e,c,32);l=d;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+592|0;if((l|0)>=(m|0))W(592);f=d+256|0;e=d;wH(f,b+(0-(c<<1))|0,c);xH(e,f+32|0,16);yH(a,f+48|0,e,c,16);l=d;return}function tC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+512|0;e=d;sH(f,b+(0-(c<<1))|0,c);tH(e,f+64|0,32);uH(a,f+96|0,e,c,32);l=d;return}function uC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b+c|0,32,c);IH(g,b+(0-(c<<1))|0,c);JH(e,g+64|0,32);KH(a,f,e,c,32);l=d;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b+c|0,32,c);EH(g,b+(0-(c<<1))|0,c);FH(e,g+64|0,32);GH(a,f,e,c,32);l=d;return}function wC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b+c|0,32,c);AH(g,b+(0-(c<<1))|0,c);BH(e,g+64|0,32);CH(a,f,e,c,32);l=d;return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b+c|0,16,c);wH(g,b+(0-(c<<1))|0,c);xH(e,g+32|0,16);yH(a,f,e,c,16);l=d;return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;HH(f,b+c|0,32,c);PH(e,d,b,32,c);KH(a,f,e,c,32);l=d;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+3712|0;if((l|0)>=(m|0))W(3712);f=d+3200|0;e=d+2688|0;DH(f,b+c|0,32,c);OH(e,d,b,32,c);GH(a,f,e,c,32);l=d;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;zH(f,b+c|0,32,c);NH(e,d,b,32,c);CH(a,f,e,c,32);l=d;return}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1184|0;if((l|0)>=(m|0))W(1184);f=d+928|0;e=d+672|0;vH(f,b+c|0,16,c);MH(e,d,b,16,c);yH(a,f,e,c,16);l=d;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+2368|0;if((l|0)>=(m|0))W(2368);f=d+1856|0;e=d+1344|0;rH(f,b+c|0,32,c);LH(e,d,b,32,c);uH(a,f,e,c,32);l=d;return}function EC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;HH(f,b+c|0,32,c);IH(g,b+(0-(c<<1))+2|0,c);JH(e,g+64|0,32);KH(a,f,e,c,32);l=d;return}function FC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;DH(f,b+c|0,32,c);EH(g,b+(0-(c<<1))+2|0,c);FH(e,g+64|0,32);GH(a,f,e,c,32);l=d;return}function GC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;zH(f,b+c|0,32,c);AH(g,b+(0-(c<<1))+2|0,c);BH(e,g+64|0,32);CH(a,f,e,c,32);l=d;return}function HC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+848|0;if((l|0)>=(m|0))W(848);g=d+512|0;f=d+256|0;e=d;vH(f,b+c|0,16,c);wH(g,b+(0-(c<<1))+1|0,c);xH(e,g+32|0,16);yH(a,f,e,c,16);l=d;return}function IC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1696|0;if((l|0)>=(m|0))W(1696);g=d+1024|0;f=d+512|0;e=d;rH(f,b+c|0,32,c);sH(g,b+(0-(c<<1))+2|0,c);tH(e,g+64|0,32);uH(a,f,e,c,32);l=d;return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;qH(a,b,c,8);return}function KC(a,b,c){a=a|0;b=b|0;c=c|0;pH(a,b,c,8);return}function LC(a,b,c){a=a|0;b=b|0;c=c|0;oH(a,b,c,8);return}function MC(a,b,c){a=a|0;b=b|0;c=c|0;nH(a,b,c,8);return}function NC(a,b,c){a=a|0;b=b|0;c=c|0;mH(a,b,c,8);return}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;QG(e,b,16,c);TG(a,b,e,c,c,16,8);l=d;return}function PC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;MG(e,b,16,c);PG(a,b,e,c,c,16,8);l=d;return}function QC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;IG(e,b,16,c);LG(a,b,e,c,c,16,8);l=d;return}function RC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;EG(e,b,8,c);HG(a,b,e,c,c,8,8);l=d;return}function SC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);DG(a,b,e,c,c,16,8);l=d;return}function TC(a,b,c){a=a|0;b=b|0;c=c|0;lH(a,b,c,c);return}function UC(a,b,c){a=a|0;b=b|0;c=c|0;kH(a,b,c,c);return}function VC(a,b,c){a=a|0;b=b|0;c=c|0;jH(a,b,c,c);return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;iH(a,b,c,c);return}function XC(a,b,c){a=a|0;b=b|0;c=c|0;hH(a,b,c,c);return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;QG(e,b,16,c);TG(a,b+2|0,e,c,c,16,8);l=d;return}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;MG(e,b,16,c);PG(a,b+2|0,e,c,c,16,8);l=d;return}function _C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;IG(e,b,16,c);LG(a,b+2|0,e,c,c,16,8);l=d;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=d;EG(e,b,8,c);HG(a,b+1|0,e,c,c,8,8);l=d;return}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=d;AG(e,b,16,c);DG(a,b+2|0,e,c,c,16,8);l=d;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;RG(g,b+(0-(c<<1))|0,c);SG(e,f,16,16);TG(a,f,e,c,16,16,8);l=d;return}function cD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;NG(g,b+(0-(c<<1))|0,c);OG(e,f,16,16);PG(a,f,e,c,16,16,8);l=d;return}function dD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;JG(g,b+(0-(c<<1))|0,c);KG(e,f,16,16);LG(a,f,e,c,16,16,8);l=d;return}function eD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);g=d+64|0;e=d;f=g+16|0;FG(g,b+(0-(c<<1))|0,c);GG(e,f,8,8);HG(a,f,e,c,8,8,8);l=d;return}function fD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);g=d+128|0;e=d;f=g+32|0;BG(g,b+(0-(c<<1))|0,c);CG(e,f,16,16);DG(a,f,e,c,16,16,8);l=d;return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b,16,c);RG(g,b+(0-(c<<1))|0,c);SG(e,g+32|0,16,16);TG(a,f,e,c,16,16,8);l=d;return}function hD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b,16,c);NG(g,b+(0-(c<<1))|0,c);OG(e,g+32|0,16,16);PG(a,f,e,c,16,16,8);l=d;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b,16,c);JG(g,b+(0-(c<<1))|0,c);KG(e,g+32|0,16,16);LG(a,f,e,c,16,16,8);l=d;return}function jD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b,8,c);FG(g,b+(0-(c<<1))|0,c);GG(e,g+16|0,8,8);HG(a,f,e,c,8,8,8);l=d;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function lD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;QG(f,b,16,c);YG(e,d,b,16,16,c);TG(a,f,e,c,16,16,8);l=d;return}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;MG(f,b,16,c);XG(e,d,b,16,16,c);PG(a,f,e,c,16,16,8);l=d;return}function nD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;IG(f,b,16,c);WG(e,d,b,16,16,c);LG(a,f,e,c,16,16,8);l=d;return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;EG(f,b,8,c);VG(e,d,b,8,8,c);HG(a,f,e,c,8,8,8);l=d;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;AG(f,b,16,c);UG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function qD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b,16,c);RG(g,b+(0-(c<<1))+2|0,c);SG(e,g+32|0,16,16);TG(a,f,e,c,16,16,8);l=d;return}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b,16,c);NG(g,b+(0-(c<<1))+2|0,c);OG(e,g+32|0,16,16);PG(a,f,e,c,16,16,8);l=d;return}function sD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b,16,c);JG(g,b+(0-(c<<1))+2|0,c);KG(e,g+32|0,16,16);LG(a,f,e,c,16,16,8);l=d;return}function tD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b,8,c);FG(g,b+(0-(c<<1))+1|0,c);GG(e,g+16|0,8,8);HG(a,f,e,c,8,8,8);l=d;return}function uD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function vD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;RG(e,b+(0-(c<<1))|0,c);gH(a,e+32|0,c,16);l=d;return}function wD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;NG(e,b+(0-(c<<1))|0,c);fH(a,e+32|0,c,16);l=d;return}function xD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;JG(e,b+(0-(c<<1))|0,c);eH(a,e+32|0,c,16);l=d;return}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);e=d;FG(e,b+(0-(c<<1))|0,c);dH(a,e+16|0,c,8);l=d;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);e=d;BG(e,b+(0-(c<<1))|0,c);cH(a,e+32|0,c,16);l=d;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;RG(g,b+(0-(c<<1))|0,c);SG(f,g+32|0,16,16);YG(e,d,b,16,16,c);TG(a,f,e,c,16,16,8);l=d;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;NG(g,b+(0-(c<<1))|0,c);OG(f,g+32|0,16,16);XG(e,d,b,16,16,c);PG(a,f,e,c,16,16,8);l=d;return}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;JG(g,b+(0-(c<<1))|0,c);KG(f,g+32|0,16,16);WG(e,d,b,16,16,c);LG(a,f,e,c,16,16,8);l=d;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;FG(g,b+(0-(c<<1))|0,c);GG(f,g+16|0,8,8);VG(e,d,b,8,8,c);HG(a,f,e,c,8,8,8);l=d;return}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;BG(g,b+(0-(c<<1))|0,c);CG(f,g+32|0,16,16);UG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function FD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);bH(a,d,b,c,16,c);l=d;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+832|0;if((l|0)>=(m|0))W(832);aH(a,d,b,c,16,c);l=d;return}function HD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);$G(a,d,b,c,16,c);l=d;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);_G(a,d,b,c,8,c);l=d;return}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+416|0;if((l|0)>=(m|0))W(416);ZG(a,d,b,c,16,c);l=d;return}function KD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;RG(g,b+(0-(c<<1))+2|0,c);SG(f,g+32|0,16,16);YG(e,d,b,16,16,c);TG(a,f,e,c,16,16,8);l=d;return}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+1296|0;if((l|0)>=(m|0))W(1296);g=d+1088|0;f=d+960|0;e=d+832|0;NG(g,b+(0-(c<<1))+2|0,c);OG(f,g+32|0,16,16);XG(e,d,b,16,16,c);PG(a,f,e,c,16,16,8);l=d;return}function MD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;JG(g,b+(0-(c<<1))+2|0,c);KG(f,g+32|0,16,16);WG(e,d,b,16,16,c);LG(a,f,e,c,16,16,8);l=d;return}function ND(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+448|0;if((l|0)>=(m|0))W(448);g=d+336|0;f=d+272|0;e=d+208|0;FG(g,b+(0-(c<<1))+1|0,c);GG(f,g+16|0,8,8);VG(e,d,b,8,8,c);HG(a,f,e,c,8,8,8);l=d;return}function OD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+880|0;if((l|0)>=(m|0))W(880);g=d+672|0;f=d+544|0;e=d+416|0;BG(g,b+(0-(c<<1))+2|0,c);CG(f,g+32|0,16,16);UG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function PD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;RG(f,b+(0-(c<<1))|0,c);SG(e,f+32|0,16,16);TG(a,f+48|0,e,c,16,16,8);l=d;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;NG(f,b+(0-(c<<1))|0,c);OG(e,f+32|0,16,16);PG(a,f+48|0,e,c,16,16,8);l=d;return}function RD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;JG(f,b+(0-(c<<1))|0,c);KG(e,f+32|0,16,16);LG(a,f+48|0,e,c,16,16,8);l=d;return}function SD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+176|0;if((l|0)>=(m|0))W(176);f=d+64|0;e=d;FG(f,b+(0-(c<<1))|0,c);GG(e,f+16|0,8,8);HG(a,f+24|0,e,c,8,8,8);l=d;return}function TD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+128|0;e=d;BG(f,b+(0-(c<<1))|0,c);CG(e,f+32|0,16,16);DG(a,f+48|0,e,c,16,16,8);l=d;return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b+c|0,16,c);RG(g,b+(0-(c<<1))|0,c);SG(e,g+32|0,16,16);TG(a,f,e,c,16,16,8);l=d;return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b+c|0,16,c);NG(g,b+(0-(c<<1))|0,c);OG(e,g+32|0,16,16);PG(a,f,e,c,16,16,8);l=d;return}function WD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b+c|0,16,c);JG(g,b+(0-(c<<1))|0,c);KG(e,g+32|0,16,16);LG(a,f,e,c,16,16,8);l=d;return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b+c|0,8,c);FG(g,b+(0-(c<<1))|0,c);GG(e,g+16|0,8,8);HG(a,f,e,c,8,8,8);l=d;return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;QG(f,b+c|0,16,c);YG(e,d,b,16,16,c);TG(a,f,e,c,16,16,8);l=d;return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+1088|0;if((l|0)>=(m|0))W(1088);f=d+960|0;e=d+832|0;MG(f,b+c|0,16,c);XG(e,d,b,16,16,c);PG(a,f,e,c,16,16,8);l=d;return}function $D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;IG(f,b+c|0,16,c);WG(e,d,b,16,16,c);LG(a,f,e,c,16,16,8);l=d;return}function aE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+336|0;if((l|0)>=(m|0))W(336);f=d+272|0;e=d+208|0;EG(f,b+c|0,8,c);VG(e,d,b,8,8,c);HG(a,f,e,c,8,8,8);l=d;return}function bE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+672|0;if((l|0)>=(m|0))W(672);f=d+544|0;e=d+416|0;AG(f,b+c|0,16,c);UG(e,d,b,16,16,c);DG(a,f,e,c,16,16,8);l=d;return}function cE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;QG(f,b+c|0,16,c);RG(g,b+(0-(c<<1))+2|0,c);SG(e,g+32|0,16,16);TG(a,f,e,c,16,16,8);l=d;return}function dE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;MG(f,b+c|0,16,c);NG(g,b+(0-(c<<1))+2|0,c);OG(e,g+32|0,16,16);PG(a,f,e,c,16,16,8);l=d;return}function eE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;IG(f,b+c|0,16,c);JG(g,b+(0-(c<<1))+2|0,c);KG(e,g+32|0,16,16);LG(a,f,e,c,16,16,8);l=d;return}function fE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+240|0;if((l|0)>=(m|0))W(240);g=d+128|0;f=d+64|0;e=d;EG(f,b+c|0,8,c);FG(g,b+(0-(c<<1))+1|0,c);GG(e,g+16|0,8,8);HG(a,f,e,c,8,8,8);l=d;return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+464|0;if((l|0)>=(m|0))W(464);g=d+256|0;f=d+128|0;e=d;AG(f,b+c|0,16,c);BG(g,b+(0-(c<<1))+2|0,c);CG(e,g+32|0,16,16);DG(a,f,e,c,16,16,8);l=d;return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;zG(a,b,c);return}function iE(a,b,c){a=a|0;b=b|0;c=c|0;yG(a,b,c);return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;xG(a,b,c);return}function kE(a,b,c){a=a|0;b=b|0;c=c|0;wG(a,b,c);return}function lE(a,b,c){a=a|0;b=b|0;c=c|0;vG(a,b,c);return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;ZF(e,b,8,c);aG(a,b,e,c,c);l=d;return}function nE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;VF(e,b,8,c);YF(a,b,e,c,c);l=d;return}function oE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;RF(e,b,8,c);UF(a,b,e,c,c);l=d;return}function pE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;MF(e,b,4,c);PF(a,b,e,c,c);l=d;return}function qE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);KF(a,b,e,c,c);l=d;return}function rE(a,b,c){a=a|0;b=b|0;c=c|0;uG(a,b,c,c);return}function sE(a,b,c){a=a|0;b=b|0;c=c|0;tG(a,b,c,c);return}function tE(a,b,c){a=a|0;b=b|0;c=c|0;sG(a,b,c,c);return}function uE(a,b,c){a=a|0;b=b|0;c=c|0;rG(a,b,c,c);return}function vE(a,b,c){a=a|0;b=b|0;c=c|0;qG(a,b,c,c);return}function wE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;ZF(e,b,8,c);aG(a,b+2|0,e,c,c);l=d;return}function xE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;VF(e,b,8,c);YF(a,b+2|0,e,c,c);l=d;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;RF(e,b,8,c);UF(a,b+2|0,e,c,c);l=d;return}function zE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;MF(e,b,4,c);PF(a,b+1|0,e,c,c);l=d;return}function AE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=d;HF(e,b,8,c);KF(a,b+2|0,e,c,c);l=d;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;_F(g,b+(0-(c<<1))|0,c);$F(e,f,8);aG(a,f,e,c,8);l=d;return}function CE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;WF(g,b+(0-(c<<1))|0,c);XF(e,f,8);YF(a,f,e,c,8);l=d;return}function DE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;SF(g,b+(0-(c<<1))|0,c);TF(e,f,8);UF(a,f,e,c,8);l=d;return}function EE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=d+16|0;e=d;f=g+8|0;NF(g,b+(0-(c<<1))|0,c);OF(e,f,4);PF(a,f,e,c,4);l=d;return}function FE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);g=d+32|0;e=d;f=g+16|0;IF(g,b+(0-(c<<1))|0,c);JF(e,f,8);KF(a,f,e,c,8);l=d;return}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b,8,c);_F(g,b+(0-(c<<1))|0,c);$F(e,g+16|0,8);aG(a,f,e,c,8);l=d;return}function HE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b,8,c);WF(g,b+(0-(c<<1))|0,c);XF(e,g+16|0,8);YF(a,f,e,c,8);l=d;return}function IE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b,8,c);SF(g,b+(0-(c<<1))|0,c);TF(e,g+16|0,8);UF(a,f,e,c,8);l=d;return}function JE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b,4,c);NF(g,b+(0-(c<<1))|0,c);OF(e,g+8|0,4);PF(a,f,e,c,4);l=d;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function LE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;ZF(f,b,8,c);fG(e,d,b,8,c);aG(a,f,e,c,8);l=d;return}function ME(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;VF(f,b,8,c);eG(e,d,b,8,c);YF(a,f,e,c,8);l=d;return}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;RF(f,b,8,c);dG(e,d,b,8,c);UF(a,f,e,c,8);l=d;return}function OE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;MF(f,b,4,c);cG(e,d,b,4,c);PF(a,f,e,c,4);l=d;return}function PE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;HF(f,b,8,c);bG(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b,8,c);_F(g,b+(0-(c<<1))+2|0,c);$F(e,g+16|0,8);aG(a,f,e,c,8);l=d;return}function RE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b,8,c);WF(g,b+(0-(c<<1))+2|0,c);XF(e,g+16|0,8);YF(a,f,e,c,8);l=d;return}function SE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b,8,c);SF(g,b+(0-(c<<1))+2|0,c);TF(e,g+16|0,8);UF(a,f,e,c,8);l=d;return}function TE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b,4,c);NF(g,b+(0-(c<<1))+1|0,c);OF(e,g+8|0,4);PF(a,f,e,c,4);l=d;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function VE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;_F(e,b+(0-(c<<1))|0,c);pG(a,e+16|0,c);l=d;return}function WE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;WF(e,b+(0-(c<<1))|0,c);oG(a,e+16|0,c);l=d;return}function XE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;SF(e,b+(0-(c<<1))|0,c);nG(a,e+16|0,c);l=d;return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=d;NF(e,b+(0-(c<<1))|0,c);mG(a,e+8|0,c);l=d;return}function ZE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=d;IF(e,b+(0-(c<<1))|0,c);lG(a,e+16|0,c);l=d;return}function _E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;_F(g,b+(0-(c<<1))|0,c);$F(f,g+16|0,8);fG(e,d,b,8,c);aG(a,f,e,c,8);l=d;return}function $E(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;WF(g,b+(0-(c<<1))|0,c);XF(f,g+16|0,8);eG(e,d,b,8,c);YF(a,f,e,c,8);l=d;return}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;SF(g,b+(0-(c<<1))|0,c);TF(f,g+16|0,8);dG(e,d,b,8,c);UF(a,f,e,c,8);l=d;return}function bF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;NF(g,b+(0-(c<<1))|0,c);OF(f,g+8|0,4);cG(e,d,b,4,c);PF(a,f,e,c,4);l=d;return}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;IF(g,b+(0-(c<<1))|0,c);JF(f,g+16|0,8);bG(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);kG(a,d,b,c,c);l=d;return}function eF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);jG(a,d,b,c,c);l=d;return}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);iG(a,d,b,c,c);l=d;return}function gF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);hG(a,d,b,c,c);l=d;return}function hF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);gG(a,d,b,c,c);l=d;return}function iF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;_F(g,b+(0-(c<<1))+2|0,c);$F(f,g+16|0,8);fG(e,d,b,8,c);aG(a,f,e,c,8);l=d;return}function jF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+432|0;if((l|0)>=(m|0))W(432);g=d+352|0;f=d+320|0;e=d+288|0;WF(g,b+(0-(c<<1))+2|0,c);XF(f,g+16|0,8);eG(e,d,b,8,c);YF(a,f,e,c,8);l=d;return}function kF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;SF(g,b+(0-(c<<1))+2|0,c);TF(f,g+16|0,8);dG(e,d,b,8,c);UF(a,f,e,c,8);l=d;return}function lF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+104|0;f=d+88|0;e=d+72|0;NF(g,b+(0-(c<<1))+1|0,c);OF(f,g+8|0,4);cG(e,d,b,4,c);PF(a,f,e,c,4);l=d;return}function mF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+288|0;if((l|0)>=(m|0))W(288);g=d+208|0;f=d+176|0;e=d+144|0;IF(g,b+(0-(c<<1))+2|0,c);JF(f,g+16|0,8);bG(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function nF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;_F(f,b+(0-(c<<1))|0,c);$F(e,f+16|0,8);aG(a,f+24|0,e,c,8);l=d;return}function oF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;WF(f,b+(0-(c<<1))|0,c);XF(e,f+16|0,8);YF(a,f+24|0,e,c,8);l=d;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;SF(f,b+(0-(c<<1))|0,c);TF(e,f+16|0,8);UF(a,f+24|0,e,c,8);l=d;return}function qF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=d+16|0;e=d;NF(f,b+(0-(c<<1))|0,c);OF(e,f+8|0,4);PF(a,f+12|0,e,c,4);l=d;return}function rF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+32|0;e=d;IF(f,b+(0-(c<<1))|0,c);JF(e,f+16|0,8);KF(a,f+24|0,e,c,8);l=d;return}function sF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b+c|0,8,c);_F(g,b+(0-(c<<1))|0,c);$F(e,g+16|0,8);aG(a,f,e,c,8);l=d;return}function tF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b+c|0,8,c);WF(g,b+(0-(c<<1))|0,c);XF(e,g+16|0,8);YF(a,f,e,c,8);l=d;return}function uF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b+c|0,8,c);SF(g,b+(0-(c<<1))|0,c);TF(e,g+16|0,8);UF(a,f,e,c,8);l=d;return}function vF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b+c|0,4,c);NF(g,b+(0-(c<<1))|0,c);OF(e,g+8|0,4);PF(a,f,e,c,4);l=d;return}function wF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function xF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;ZF(f,b+c|0,8,c);fG(e,d,b,8,c);aG(a,f,e,c,8);l=d;return}function yF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+352|0;if((l|0)>=(m|0))W(352);f=d+320|0;e=d+288|0;VF(f,b+c|0,8,c);eG(e,d,b,8,c);YF(a,f,e,c,8);l=d;return}function zF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;RF(f,b+c|0,8,c);dG(e,d,b,8,c);UF(a,f,e,c,8);l=d;return}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+112|0;if((l|0)>=(m|0))W(112);f=d+88|0;e=d+72|0;MF(f,b+c|0,4,c);cG(e,d,b,4,c);PF(a,f,e,c,4);l=d;return}function BF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+208|0;if((l|0)>=(m|0))W(208);f=d+176|0;e=d+144|0;HF(f,b+c|0,8,c);bG(e,d,b,8,c);KF(a,f,e,c,8);l=d;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;ZF(f,b+c|0,8,c);_F(g,b+(0-(c<<1))+2|0,c);$F(e,g+16|0,8);aG(a,f,e,c,8);l=d;return}function DF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;VF(f,b+c|0,8,c);WF(g,b+(0-(c<<1))+2|0,c);XF(e,g+16|0,8);YF(a,f,e,c,8);l=d;return}function EF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;RF(f,b+c|0,8,c);SF(g,b+(0-(c<<1))+2|0,c);TF(e,g+16|0,8);UF(a,f,e,c,8);l=d;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+80|0;if((l|0)>=(m|0))W(80);g=d+32|0;f=d+16|0;e=d;MF(f,b+c|0,4,c);NF(g,b+(0-(c<<1))+1|0,c);OF(e,g+8|0,4);PF(a,f,e,c,4);l=d;return}function GF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);g=d+64|0;f=d+32|0;e=d;HF(f,b+c|0,8,c);IF(g,b+(0-(c<<1))+2|0,c);JF(e,g+16|0,8);KF(a,f,e,c,8);l=d;return}function HF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function IF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function JF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<512?p:0-p>>31&511;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<512?o:0-o>>31&511;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function KF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=LF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function LF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=rX(c^a|0,d^b|0,1)|0;d=iX(c|a|0,d|b|0,e&2147450879|0,y&2147450879|0)|0;return d|0}function MF(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=0;while(1){if((g|0)==4)break;i=c+1|0;l=c+-1|0;h=c+2|0;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+3|0;m=(((d[i>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[j>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[c>>0]|0)|0,-5)|0;k=c+4|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+5|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[l>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+6>>0]|0)>>5;a[b+3>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function NF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==9)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function OF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;p=d[c+-4>>0]|0;o=d[c>>0]|0;n=d[c+4>>0]|0;i=d[c+8>>0]|0;k=d[c+12>>0]|0;l=d[c+16>>0]|0;j=d[c+20>>0]|0;m=d[c+24>>0]|0;q=(d[c+-8>>0]|0)+16+k+((n+o|0)*20|0)+(N(i+p|0,-5)|0)>>5;a[b>>0]=q>>>0>255?(q^-2147483648)>>31:q;p=p+16+l+((i+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;a[b+e>>0]=p>>>0>255?(p^-2147483648)>>31:p;o=o+16+j+((k+i|0)*20|0)+(N(l+n|0,-5)|0)>>5;a[b+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;i=n+16+m+((l+k|0)*20|0)+(N(j+i|0,-5)|0)>>5;a[b+h>>0]=i>>>0>255?(i^-2147483648)>>31:i;f=f+1|0;b=b+1|0;c=c+1|0}return}function PF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;j=e+(h<<2)|0;i=a+(N(h,f)|0)|0;l=c[i>>2]|0;c[i>>2]=QF(l,QF(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0)|0;h=h+1|0}return}function QF(a,b){a=a|0;b=b|0;return (b|a)-((b^a)>>>1&2139062143)|0}function RF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function SF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function TF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<1024?q:0-q>>31&1023;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<1024?p:0-p>>31&1023;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function UF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=LF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function VF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function WF(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function XF(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<4096?q:0-q>>31&4095;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<4096?o:0-o>>31&4095;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function YF(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=LF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function ZF(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;i=c+2|0;l=c+-2|0;a=c+4|0;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+6|0;m=(((e[i>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[j>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[c>>1]|0)|0,-5)|0;k=c+8|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+10|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[l>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+12>>1]|0)>>5;b[d+6>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function _F(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==9)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function $F(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;p=e[d+-8>>1]|0;o=e[d>>1]|0;n=e[d+8>>1]|0;c=e[d+16>>1]|0;k=e[d+24>>1]|0;l=e[d+32>>1]|0;j=e[d+40>>1]|0;m=e[d+48>>1]|0;q=(e[d+-16>>1]|0)+16+k+((n+o|0)*20|0)+(N(c+p|0,-5)|0)>>5;b[a>>1]=q>>>0<16384?q:0-q>>31&16383;p=p+16+l+((c+n|0)*20|0)+(N(k+o|0,-5)|0)>>5;b[a+(g<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;o=o+16+j+((k+c|0)*20|0)+(N(l+n|0,-5)|0)>>5;b[a+(h<<1)>>1]=o>>>0<16384?o:0-o>>31&16383;c=n+16+m+((l+k|0)*20|0)+(N(j+c|0,-5)|0)>>5;b[a+(i<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function aG(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=0;while(1){if((h|0)==4)break;n=b+(N(h,g)|0)|0;o=n;n=n+4|0;j=e+(h<<3)|0;m=j;j=j+4|0;i=a+(N(h,f)|0)|0;k=i;l=c[k>>2]|0;k=c[k+4>>2]|0;j=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;j=LF(l,k,j,y)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function bG(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;p=b[g+-16>>1]|0;f=b[g>>1]|0;c=b[g+16>>1]|0;o=b[g+32>>1]|0;m=b[g+48>>1]|0;l=b[g+64>>1]|0;n=b[g+80>>1]|0;k=b[g+96>>1]|0;q=(b[g+-32>>1]|0)+512+m+((c+f|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a>>1]=q>>>0<512?q:0-q>>31&511;p=p+512+l+((o+c|0)*20|0)+(N(m+f|0,-5)|0)>>10;b[a+(i<<1)>>1]=p>>>0<512?p:0-p>>31&511;f=f+512+n+((m+o|0)*20|0)+(N(l+c|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<512?f:0-f>>31&511;o=c+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<512?o:0-o>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function cG(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;q=b[f+-8>>1]|0;e=b[f>>1]|0;k=b[f+8>>1]|0;p=b[f+16>>1]|0;n=b[f+24>>1]|0;m=b[f+32>>1]|0;o=b[f+40>>1]|0;l=b[f+48>>1]|0;r=(b[f+-16>>1]|0)+512+n+((k+e|0)*20|0)+(N(p+q|0,-5)|0)>>10;a[c>>0]=r>>>0>255?(r^-2147483648)>>31:r;q=q+512+m+((p+k|0)*20|0)+(N(n+e|0,-5)|0)>>10;a[c+g>>0]=q>>>0>255?(q^-2147483648)>>31:q;e=e+512+o+((n+p|0)*20|0)+(N(m+k|0,-5)|0)>>10;a[c+j>>0]=e>>>0>255?(e^-2147483648)>>31:e;p=k+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;a[c+h>>0]=p>>>0>255?(p^-2147483648)>>31:p;c=c+1|0;f=f+2|0;i=i+1|0}return}function dG(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;r=b[g+-16>>1]|0;p=b[g>>1]|0;q=p+10230|0;c=b[g+16>>1]|0;f=c+10230|0;o=(b[g+32>>1]|0)+10230|0;m=(b[g+48>>1]|0)+10230|0;l=(b[g+64>>1]|0)+10230|0;n=(b[g+80>>1]|0)+10230|0;k=b[g+96>>1]|0;s=(b[g+-32>>1]|0)+10742+m+((f+q|0)*20|0)+(N(o+(r+10230)|0,-5)|0)>>10;b[a>>1]=s>>>0<1024?s:0-s>>31&1023;q=r+10742+l+((o+f|0)*20|0)+(N(m+q|0,-5)|0)>>10;b[a+(i<<1)>>1]=q>>>0<1024?q:0-q>>31&1023;f=p+10742+n+((m+o|0)*20|0)+(N(l+f|0,-5)|0)>>10;b[a+(d<<1)>>1]=f>>>0<1024?f:0-f>>31&1023;o=c+20972+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;b[a+(j<<1)>>1]=o>>>0<1024?o:0-o>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function eG(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<4096?r:0-r>>31&4095;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<4096?g:0-g>>31&4095;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<4096?q:0-q>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function fG(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;g=c[h+-32>>2]|0;d=c[h>>2]|0;l=c[h+32>>2]|0;q=c[h+64>>2]|0;o=c[h+96>>2]|0;n=c[h+128>>2]|0;p=c[h+160>>2]|0;m=c[h+192>>2]|0;r=(c[h+-64>>2]|0)+512+o+((l+d|0)*20|0)+(N(q+g|0,-5)|0)>>10;b[a>>1]=r>>>0<16384?r:0-r>>31&16383;g=g+512+n+((q+l|0)*20|0)+(N(o+d|0,-5)|0)>>10;b[a+(j<<1)>>1]=g>>>0<16384?g:0-g>>31&16383;d=d+512+p+((o+q|0)*20|0)+(N(n+l|0,-5)|0)>>10;b[a+(f<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;q=l+512+m+((n+o|0)*20|0)+(N(p+q|0,-5)|0)>>10;b[a+(k<<1)>>1]=q>>>0<16384?q:0-q>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function gG(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;q=b[g+-16>>1]|0;p=b[g>>1]|0;f=b[g+16>>1]|0;n=b[g+32>>1]|0;l=b[g+48>>1]|0;k=b[g+64>>1]|0;m=b[g+80>>1]|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+512+l+((f+p|0)*20|0)+(N(n+q|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<512?o:0-o>>31&511)|0)>>>1;o=a+(i<<1)|0;q=q+512+k+((n+f|0)*20|0)+(N(l+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;o=a+(d<<1)|0;p=p+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;o=a+(j<<1)|0;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function hG(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==9)break;l=f+1|0;o=f+-1|0;k=f+2|0;p=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;m=f+3|0;b[i>>1]=(((d[l>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+p+(d[m>>0]|0);p=N((d[m>>0]|0)+(d[f>>0]|0)|0,-5)|0;n=f+4|0;b[i+2>>1]=(((d[k>>0]|0)+(d[l>>0]|0)|0)*20|0)+(d[o>>0]|0)+p+(d[n>>0]|0);p=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;o=f+5|0;b[i+4>>1]=(((d[m>>0]|0)+(d[k>>0]|0)|0)*20|0)+(d[f>>0]|0)+p+(d[o>>0]|0);k=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;b[i+6>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+6>>0]|0);i=i+8|0;j=j+1|0;f=f+h|0}j=g<<1;h=g*3|0;f=e+16|0;i=0;while(1){if((i|0)==4)break;r=b[f+-8>>1]|0;q=b[f>>1]|0;e=b[f+8>>1]|0;o=b[f+16>>1]|0;m=b[f+24>>1]|0;l=b[f+32>>1]|0;n=b[f+40>>1]|0;k=b[f+48>>1]|0;p=(b[f+-16>>1]|0)+512+m+((e+q|0)*20|0)+(N(o+r|0,-5)|0)>>10;a[c>>0]=((d[c>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;p=c+g|0;r=r+512+l+((o+e|0)*20|0)+(N(m+q|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((r>>>0>255?(r^-2147483648)>>31:r)&255)|0)>>>1;p=c+j|0;q=q+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;p=c+h|0;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[p>>0]=((d[p>>0]|0)+1+((o>>>0>255?(o^-2147483648)>>31:o)&255)|0)>>>1;c=c+1|0;f=f+2|0;i=i+1|0}return}function iG(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==9)break;k=g+2|0;n=g+-2|0;d=g+4|0;o=N((e[d>>1]|0)+(e[n>>1]|0)|0,-5)|0;l=g+6|0;b[h>>1]=(((e[k>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+o+(e[l>>1]|0);o=N((e[l>>1]|0)+(e[g>>1]|0)|0,-5)|0;m=g+8|0;b[h+2>>1]=(((e[d>>1]|0)+(e[k>>1]|0)|0)*20|0)+55306+(e[n>>1]|0)+o+(e[m>>1]|0);o=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;n=g+10|0;b[h+4>>1]=(((e[l>>1]|0)+(e[d>>1]|0)|0)*20|0)+55306+(e[g>>1]|0)+o+(e[n>>1]|0);d=N((e[n>>1]|0)+(e[d>>1]|0)|0,-5)|0;b[h+6>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+12>>1]|0);h=h+16|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;d=i<<1;j=i*3|0;g=c+32|0;h=0;while(1){if((h|0)==4)break;s=b[g+-16>>1]|0;q=b[g>>1]|0;r=q+10230|0;f=b[g+16>>1]|0;p=f+10230|0;n=(b[g+32>>1]|0)+10230|0;l=(b[g+48>>1]|0)+10230|0;k=(b[g+64>>1]|0)+10230|0;m=(b[g+80>>1]|0)+10230|0;c=b[g+96>>1]|0;o=(b[g+-32>>1]|0)+10742+l+((p+r|0)*20|0)+(N(n+(s+10230)|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(o>>>0<1024?o:0-o>>31&1023)|0)>>>1;o=a+(i<<1)|0;r=s+10742+k+((n+p|0)*20|0)+(N(l+r|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(r>>>0<1024?r:0-r>>31&1023)|0)>>>1;o=a+(d<<1)|0;p=q+10742+m+((l+n|0)*20|0)+(N(k+p|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;o=a+(j<<1)|0;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[o>>1]=((e[o>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=a+2|0;g=g+2|0;h=h+1|0}return}function jG(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<4096?r:0-r>>31&4095)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<4096?g:0-g>>31&4095)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function kG(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==9)break;q=e[h>>1]|0;l=e[h+2>>1]|0;o=e[h+-2>>1]|0;f=e[h+4>>1]|0;p=N(f+o|0,-5)|0;m=e[h+6>>1]|0;c[i>>2]=((l+q|0)*20|0)+(e[h+-4>>1]|0)+p+m;p=N(m+q|0,-5)|0;n=e[h+8>>1]|0;c[i+4>>2]=((f+l|0)*20|0)+o+p+n;p=N(n+l|0,-5)|0;o=e[h+10>>1]|0;c[i+8>>2]=((m+f|0)*20|0)+q+p+o;f=N(o+f|0,-5)|0;c[i+12>>2]=((n+m|0)*20|0)+l+f+(e[h+12>>1]|0);i=i+32|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;f=j<<1;k=j*3|0;h=d+64|0;i=0;while(1){if((i|0)==4)break;r=c[h+-32>>2]|0;g=c[h>>2]|0;d=c[h+32>>2]|0;p=c[h+64>>2]|0;n=c[h+96>>2]|0;m=c[h+128>>2]|0;o=c[h+160>>2]|0;l=c[h+192>>2]|0;q=(c[h+-64>>2]|0)+512+n+((d+g|0)*20|0)+(N(p+r|0,-5)|0)>>10;b[a>>1]=((e[a>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;q=a+(j<<1)|0;r=r+512+m+((p+d|0)*20|0)+(N(n+g|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(r>>>0<16384?r:0-r>>31&16383)|0)>>>1;q=a+(f<<1)|0;g=g+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(g>>>0<16384?g:0-g>>31&16383)|0)>>>1;q=a+(k<<1)|0;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[q>>1]=((e[q>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;a=a+2|0;h=h+4|0;i=i+1|0}return}function lG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<512?q:0-q>>31&511)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<512?p:0-p>>31&511)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<512?j:0-j>>31&511)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function mG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=e<<1;h=e*3|0;f=0;while(1){if((f|0)==4)break;q=d[c+-4>>0]|0;p=d[c>>0]|0;o=d[c+4>>0]|0;j=d[c+8>>0]|0;l=d[c+12>>0]|0;m=d[c+16>>0]|0;k=d[c+20>>0]|0;n=d[c+24>>0]|0;i=(d[c+-8>>0]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;i=b+e|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((q>>>0>255?(q^-2147483648)>>31:q)&255)|0)>>>1;i=b+g|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((p>>>0>255?(p^-2147483648)>>31:p)&255)|0)>>>1;i=b+h|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;a[i>>0]=((d[i>>0]|0)+1+((j>>>0>255?(j^-2147483648)>>31:j)&255)|0)>>>1;f=f+1|0;b=b+1|0;c=c+1|0}return}function nG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<1024?q:0-q>>31&1023)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<1024?p:0-p>>31&1023)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<1024?j:0-j>>31&1023)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function oG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<4096?q:0-q>>31&4095)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<4096?p:0-p>>31&4095)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<4096?j:0-j>>31&4095)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function pG(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=d>>1;h=g<<1;i=g*3|0;f=0;d=c;while(1){if((f|0)==4)break;q=e[d+-8>>1]|0;p=e[d>>1]|0;o=e[d+8>>1]|0;j=e[d+16>>1]|0;l=e[d+24>>1]|0;m=e[d+32>>1]|0;k=e[d+40>>1]|0;n=e[d+48>>1]|0;c=(e[d+-16>>1]|0)+16+l+((o+p|0)*20|0)+(N(j+q|0,-5)|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=a+(g<<1)|0;q=q+16+m+((j+o|0)*20|0)+(N(l+p|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(q>>>0<16384?q:0-q>>31&16383)|0)>>>1;c=a+(h<<1)|0;p=p+16+k+((l+j|0)*20|0)+(N(m+o|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(p>>>0<16384?p:0-p>>31&16383)|0)>>>1;c=a+(i<<1)|0;j=o+16+n+((m+l|0)*20|0)+(N(k+j|0,-5)|0)>>5;b[c>>1]=((e[c>>1]|0)+1+(j>>>0<16384?j:0-j>>31&16383)|0)>>>1;f=f+1|0;a=a+2|0;d=d+2|0}return}function qG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function rG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==4)break;j=c+1|0;m=c+-1|0;i=c+2|0;h=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+3|0;h=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[k>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[k>>0]|0)+(d[c>>0]|0)|0,-5)|0;l=c+4|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+5|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+6>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function sG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function tG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function uG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==4)break;j=c+2|0;m=c+-2|0;i=c+4|0;a=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+6|0;a=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[k>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[k>>1]|0)+(e[c>>1]|0)|0,-5)|0;l=c+8|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+10|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+12>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function vG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=LF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function wG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=QF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;f=f+1|0;a=a+e|0;b=b+e|0}return}function xG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=LF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function yG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=LF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function zG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;i=a;h=b;g=h;h=h+4|0;h=LF(c[i>>2]|0,c[i+4>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)|0;g=a;c[g>>2]=h;c[g+4>>2]=y;f=f+1|0;a=a+e|0;b=b+e|0}return}function AG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<512?m:0-m>>31&511;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<512?m:0-m>>31&511;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function BG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function CG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<512?K:0-K>>31&511;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<512?c:0-c>>31&511;g=g+1|0;f=f+2|0;d=d+2|0}return}function DG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=LF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=LF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=LF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=LF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function EG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=0;while(1){if((g|0)==8)break;j=c+1|0;i=c+-1|0;k=c+2|0;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+3|0;m=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+m+(d[l>>0]|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[l>>0]|0)+(d[c>>0]|0)|0,-5)|0;n=c+4|0;m=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+m+(d[n>>0]|0)>>5;a[b+1>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[n>>0]|0)+(d[j>>0]|0)|0,-5)|0;i=c+5|0;m=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+m+(d[i>>0]|0)>>5;a[b+2>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[i>>0]|0)+(d[k>>0]|0)|0,-5)|0;h=c+6|0;m=(((d[n>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+m+(d[h>>0]|0)>>5;a[b+3>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[h>>0]|0)+(d[l>>0]|0)|0,-5)|0;j=c+7|0;m=(((d[i>>0]|0)+(d[n>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+m+(d[j>>0]|0)>>5;a[b+4>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[j>>0]|0)+(d[n>>0]|0)|0,-5)|0;k=c+8|0;m=(((d[h>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+m+(d[k>>0]|0)>>5;a[b+5>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;l=c+9|0;m=(((d[j>>0]|0)+(d[h>>0]|0)|0)*20|0)+16+(d[n>>0]|0)+m+(d[l>>0]|0)>>5;a[b+6>>0]=m>>>0>255?(m^-2147483648)>>31:m;h=N((d[l>>0]|0)+(d[h>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+10>>0]|0)>>5;a[b+7>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function FG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==13)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+8|0;c=c+e|0}return}function GG(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;J=d[c+t>>0]|0;I=d[c>>0]|0;H=d[c+f>>0]|0;G=d[c+u>>0]|0;F=d[c+v>>0]|0;E=d[c+w>>0]|0;D=d[c+x>>0]|0;y=d[c+h>>0]|0;A=d[c+i>>0]|0;B=d[c+j>>0]|0;z=d[c+k>>0]|0;C=d[c+l>>0]|0;K=(d[c+s>>0]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[b>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[b+e>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[b+m>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+16+y+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;a[b+n>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+16+A+((D+E|0)*20|0)+(N(y+F|0,-5)|0)>>5;a[b+o>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+16+B+((y+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;a[b+p>>0]=F>>>0>255?(F^-2147483648)>>31:F;E=E+16+z+((A+y|0)*20|0)+(N(B+D|0,-5)|0)>>5;a[b+q>>0]=E>>>0>255?(E^-2147483648)>>31:E;y=D+16+C+((B+A|0)*20|0)+(N(z+y|0,-5)|0)>>5;a[b+r>>0]=y>>>0>255?(y^-2147483648)>>31:y;g=g+1|0;b=b+1|0;c=c+1|0}return}function HG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;p=b+m|0;l=N(j,h)|0;o=e+l|0;k=N(j,f)|0;n=a+k|0;q=c[n>>2]|0;c[n>>2]=QF(q,QF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)|0;m=b+(m+4)|0;l=e+(l+4)|0;k=a+(k+4)|0;n=c[k>>2]|0;c[k>>2]=QF(n,QF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0)|0;j=j+1|0}return} +function RM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function SM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<2;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==4)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function TM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=0;while(1){if((h|0)==4)break;q=a[g+h>>0]|0;p=q<<24>>24;a:do if(q<<24>>24>=1){q=0-p|0;i=0;j=b;while(1){if((i|0)==1)break a;k=j+-1|0;l=d[k>>0]|0;m=d[j+-2>>0]|0;n=d[j>>0]|0;o=d[j+1>>0]|0;r=l-n|0;if(((((r|0)>-1?r:0-r|0)|0)<(e|0)?(r=m-l|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0)?(r=o-n|0,(((r|0)>-1?r:0-r|0)|0)<(f|0)):0){r=m+4-o+(n-l<<2)>>3;r=(r|0)<(q|0)?q:(r|0)>(p|0)?p:r;o=r+l|0;a[k>>0]=o>>>0>255?(o^-2147483648)>>31:o;r=n-r|0;a[j>>0]=r>>>0>255?(r^-2147483648)>>31:r}i=i+1|0;j=j+c|0}}while(0);b=b+c|0;h=h+1|0}return}function UM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=c<<1;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+-1|0;m=d[l>>0]|0;n=d[j+-2>>0]|0;o=d[j>>0]|0;p=d[j+1>>0]|0;s=m-o|0;if(((((s|0)>-1?s:0-s|0)|0)<(e|0)?(s=n-m|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0)?(s=p-o|0,(((s|0)>-1?s:0-s|0)|0)<(f|0)):0){s=n+4-p+(o-m<<2)>>3;s=(s|0)<(k|0)?k:(s|0)>(q|0)?q:s;p=s+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;s=o-s|0;a[j>>0]=s>>>0>255?(s^-2147483648)>>31:s}i=i+1|0;j=j+c|0}}while(0);b=b+r|0;h=h+1|0}return}function VM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=0-c|0;n=N(c,-2)|0;l=0;while(1){if((l|0)==8)break;j=b+m|0;k=d[j>>0]|0;g=d[b+n>>0]|0;h=d[b>>0]|0;i=d[b+c>>0]|0;o=k-h|0;if(((((o|0)>-1?o:0-o|0)|0)<(e|0)?(o=g-k|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0)?(o=i-h|0,(((o|0)>-1?o:0-o|0)|0)<(f|0)):0){a[j>>0]=(k+2+(g<<1)+i|0)>>>2;a[b>>0]=(g+2+h+(i<<1)|0)>>>2}l=l+1|0;b=b+1|0}return}function WM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function XM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==16)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function YM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==4)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function ZM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=0;while(1){if((l|0)==8)break;i=b+-1|0;j=d[i>>0]|0;k=d[b+-2>>0]|0;g=d[b>>0]|0;h=d[b+1>>0]|0;m=j-g|0;if(((((m|0)>-1?m:0-m|0)|0)<(e|0)?(m=k-j|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0)?(m=h-g|0,(((m|0)>-1?m:0-m|0)|0)<(f|0)):0){a[i>>0]=(j+2+(k<<1)+h|0)>>>2;a[b>>0]=(k+2+g+(h<<1)|0)>>>2}l=l+1|0;b=b+c|0}return}function _M(b,c){b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(c|0))break;if(!(a[b+d>>0]|0))break;d=d+1|0}return d|0}function $M(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!((b|0)==0&(c|0)==0)){if(!((e|0)==0&(f|0)==0)){l=iX(0,0,b|0,c|0)|0;l=nX(l&b|0,y&c|0,-862635923,36691299)|0;l=rX(l|0,y|0,58)|0;l=a[146754+l>>0]|0;g=l&255;j=iX(0,0,e|0,f|0)|0;j=nX(j&e|0,y&f|0,-862635923,36691299)|0;j=rX(j|0,y|0,58)|0;j=a[146754+j>>0]|0;h=j&255;i=g>>>0>h>>>0;l=qX(b|0,c|0,l&255|0)|0;k=y;m=(k|0)>-1|(k|0)==-1&l>>>0>4294967295;b=iX(0,0,l|0,k|0)|0;k=m?k:y;f=qX(e|0,f|0,j&255|0)|0;e=y;j=(e|0)>-1|(e|0)==-1&f>>>0>4294967295;c=iX(0,0,f|0,e|0)|0;b=m?l:b;c=j?f:c;f=k;e=j?e:y;while(1){if((b|0)==(c|0)&(f|0)==(e|0))break;n=(f|0)>(e|0)|(f|0)==(e|0)&b>>>0>c>>>0;k=n?c:b;m=n?e:f;n=iX((n?b:c)|0,(n?f:e)|0,k|0,m|0)|0;j=y;l=iX(0,0,n|0,j|0)|0;l=nX(n&l|0,j&y|0,-862635923,36691299)|0;l=rX(l|0,y|0,58)|0;l=qX(n|0,j|0,d[146754+l>>0]|0|0)|0;b=k;c=l;f=m;e=y}b=sX(b|0,f|0,(i?h:g)|0)|0;c=y}}else{c=f;b=e}y=c;return b|0}function aN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=h;f=c[(c[a+28>>2]|0)+20>>2]|0;do if(((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)?(c[a+120>>2]|0)!=10:0){e=f+300|0;if((c[e>>2]|0)!=1){ig(a,16,146956,d);a=-1;break}d=f+184|0;AX(d|0)|0;c[f+324>>2]=b;c[e>>2]=3;a=f+60|0;zX(a|0)|0;while(1){if((c[e>>2]|0)==1)break;uc(a|0,d|0)|0}a=c[f+328>>2]|0;BX(d|0)|0}else g=4;while(0);if((g|0)==4)a=cN(a,b)|0;l=h;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+880>>2]|0;a:do if((d|0)!=0?(i=c[(c[a+12>>2]|0)+124>>2]|0,(i|0)!=0):0){g=(c[d+4>>2]|0)+8|0;f=0;while(1){h=c[i+(f<<2)>>2]|0;if(!h){d=0;j=11;break a}b:do if(c[h+4>>2]&1|0?(c[g>>2]|0)==(c[h+8>>2]|0):0){e=0;while(1){d=c[b+(e<<2)>>2]|0;if((d|0)==-1)break b;if((c[h>>2]|0)==(d|0))break a;else e=e+1|0}}while(0);f=f+1|0}}else{d=0;j=11}while(0);c:do if((j|0)==11){while(1)if((c[b+(d<<2)>>2]|0)==-1)break;else{d=d+1|0;j=11}d=b+(d+-1<<2)|0;j=c[(Dh(c[d>>2]|0)|0)+8>>2]|0;if((j&8|0)==0&0==0){d=c[d>>2]|0;break}g=a+12|0;f=0;d:while(1){h=b+(f<<2)|0;if((c[h>>2]|0)==-1){d=-1;break c}else e=0;while(1){i=fN(c[g>>2]|0,e)|0;if(!i)break d;d=c[i>>2]|0;if((d|0)==(c[h>>2]|0))break;else e=e+1|0}if(!(c[i+4>>2]&4))f=f+1|0;else break c}d=c[h>>2]|0}while(0);return d|0}function cN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+80|0;if((l|0)>=(m|0))W(80);v=B+72|0;u=B+64|0;t=B+56|0;s=B+48|0;r=B+40|0;y=B+32|0;x=B+24|0;w=B+16|0;d=B;z=B+76|0;f=0;while(1){e=f+1|0;if((c[b+(f<<2)>>2]|0)==-1)break;else f=e}if((f|0)<=0){c[d>>2]=147018;c[d+4>>2]=124842;c[d+8>>2]=1310;ig(0,0,159900,d);Tb()}d=b+(f+-1<<2)|0;o=c[(Dh(c[d>>2]|0)|0)+8>>2]|0;if((o&8|0)==0&0==0)c[a+768>>2]=c[d>>2];d=Zh(e,4)|0;c[z>>2]=d;if(!d)d=-1;else{wX(d|0,b|0,e<<2|0)|0;j=a+120|0;k=a+12|0;n=a+880|0;o=a+860|0;i=d;a:while(1){dN(a);d=Kd[c[j>>2]&15](a,i)|0;if((d|0)==-1){d=-1;break}h=Dh(d)|0;if(!h){A=11;break}c[x>>2]=c[h>>2];ig(a,48,147076,x);b=0;while(1){if((b|0)>=(f|0))break;if((c[i+(b<<2)>>2]|0)==(d|0))break;b=b+1|0}if((b|0)==(f|0)){A=17;break}e=c[(c[k>>2]|0)+124>>2]|0;if(!e)break;else b=0;while(1){g=c[e+(b<<2)>>2]|0;if(!g)break a;if((c[g>>2]|0)==(d|0))break;else b=b+1|0}b=c[g+4>>2]|0;if((b&2|0)!=0?(p=c[o>>2]|0,(p|0)!=0):0)if((c[(c[p+4>>2]|0)+36>>2]|0)==(d|0))A=31;else{c[r>>2]=c[h>>2];ig(a,16,147171,r)}else A=25;do if((A|0)==25){A=0;if(b&1|0?(q=c[n>>2]|0,q|0):0){if((c[(c[q+4>>2]|0)+8>>2]|0)==(c[g+8>>2]|0)){A=31;break}c[s>>2]=c[h>>2];ig(a,16,147259,s);break}if(!(b&12)){c[t>>2]=c[h>>2];ig(a,16,147345,t)}else A=31}while(0);if((A|0)==31){A=0;if(!(c[g+12>>2]|0))break;c[u>>2]=c[h>>2];ig(a,48,147398,u);if((eN(a,g)|0)>=0)break}c[v>>2]=c[h>>2];ig(a,48,147442,v);b=0;while(1){if((b|0)>=(f|0)){d=b;break}if((c[i+(b<<2)>>2]|0)==(d|0)){d=b;break}b=b+1|0}while(1){b=d+1|0;if((b|0)>=(f|0))break;i=c[z>>2]|0;c[i+(d<<2)>>2]=c[i+(b<<2)>>2];d=b}f=f+-1|0;i=c[z>>2]|0}if((A|0)==11){ig(a,16,147025,w);d=-1}else if((A|0)==17){c[y>>2]=c[h>>2];ig(a,16,147111,y);d=0}eg(z)}l=B;return d|0}function dN(a){a=a|0;var b=0,d=0,e=0;b=a+592|0;d=c[b>>2]|0;if(d|0?(e=c[d+52>>2]|0,e|0):0)Jd[e&31](a)|0;eg((c[a+28>>2]|0)+60|0);c[b>>2]=0;Pg(a+860|0);return}function eN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i+8|0;e=i;g=c[b+12>>2]|0;if((c[g+16>>2]&512|0)!=0?(c[a+568>>2]|0)>-2:0){c[e>>2]=c[g>>2];ig(a,24,147499,e);d=-1163346256}else f=4;do if((f|0)==4){e=c[g+56>>2]|0;if(e|0?(f=$g(e)|0,c[(c[a+28>>2]|0)+60>>2]=f,(f|0)==0):0){d=-12;break}f=a+592|0;c[f>>2]=g;e=c[g+48>>2]|0;if((e|0)!=0?(d=Jd[e&31](a)|0,(d|0)<0):0){c[h>>2]=Eh(c[b>>2]|0)|0;ig(a,16,147534,h);eg((c[a+28>>2]|0)+60|0);c[f>>2]=0}else d=0}while(0);l=i;return d|0}function fN(a,b){a=a|0;b=b|0;var d=0;d=c[a+124>>2]|0;a:do if((b|0)<0|(d|0)==0)a=0;else{a=0;while(1){if((a|0)>(b|0))break;if(!(c[d+(a<<2)>>2]|0)){a=0;break a}else a=a+1|0}a=c[d+(b<<2)>>2]|0}while(0);return a|0}function gN(a){a=a|0;var b=0,c=0,e=0;e=CN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;DN(a,b);return (EN(a,b+1|0)|0)+-1|0}function hN(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122258+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122770+a>>0]|0|0}function iN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116289+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){ig(0,16,151648,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122258+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122770+a>>0]|0}while(0);l=i;return a|0}function jN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function kN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function lN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122258+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123282+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116289+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function mN(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[b>>2]=c[e+20>>2];j=b+4|0;c[j>>2]=c[e+24>>2];do if((f|0)!=1){i=(g|0)==3?15:31;if(AN(d)|0){c[b>>2]=(zN(d)|0)+1;if((f|0)==3)e=(zN(d)|0)+1|0;else e=1;c[j>>2]=e}g=(c[b>>2]|0)+-1|0;e=c[j>>2]|0;if(g>>>0>i>>>0|(e+-1|0)>>>0>i>>>0){c[k>>2]=g;c[k+4>>2]=i;c[k+8>>2]=e+-1;c[k+12>>2]=i;ig(h,16,148165,k);c[a>>2]=0;c[b>>2]=0;c[j>>2]=0;e=-1094995529;break}else{e=(f|0)==3?2:1;n=9;break}}else{c[j>>2]=0;c[b>>2]=0;e=0;n=9}while(0);if((n|0)==9){c[a>>2]=e;e=0}l=o;return e|0}function nN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q+8|0;n=q;c[b+27768>>2]=0;c[b+27772>>2]=0;j=b+23412|0;k=b+4|0;f=0;a:while(1){if(f>>>0>=(c[j>>2]|0)>>>0){e=0;break}b:do if(rN(k)|0){g=b+23404+(f<<2)|0;h=b+27768+(f<<2)|0;e=0;while(1){i=sN(k)|0;if((i|0)==3)break b;if(e>>>0>=(c[g>>2]|0)>>>0){p=7;break a}if(i>>>0>2){p=9;break a}c[b+27256+(f<<8)+(e<<3)+4>>2]=tN(k)|0;a[b+27256+(f<<8)+(e<<3)>>0]=i;c[h>>2]=(c[h>>2]|0)+1;e=e+1|0}}while(0);f=f+1|0}if((p|0)==7){ig(d,16,148098,n);e=-1094995529}else if((p|0)==9){c[o>>2]=i;ig(d,16,148124,o);e=-1094995529}l=q;return e|0}function oN(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;if((l|0)>=(m|0))W(32);z=B+16|0;n=B+8|0;k=B;c[f>>2]=0;y=f+4|0;c[y>>2]=0;i=zN(a)|0;j=f+8|0;c[j>>2]=i;if(i>>>0>7){c[k>>2]=i;ig(h,16,147989,k);c[j>>2]=0;i=0}v=1<>2]|0))t=0;else{i=zN(a)|0;j=f+12|0;c[j>>2]=i;if(i>>>0>7){c[n>>2]=i;ig(h,16,148032,n);c[j>>2]=0;i=0}t=1<=2){A=35;break}p=f+16+(g<<2)|0;c[p>>2]=0;q=f+24+(g<<2)|0;c[q>>2]=0;r=d+(g<<2)|0;e=0;while(1){if((e|0)>=(c[r>>2]|0))break;if(AN(a)|0){j=f+32+(e<<4)+(g<<3)|0;c[j>>2]=BN(a)|0;i=BN(a)|0;c[f+32+(e<<4)+(g<<3)+4>>2]=i;j=c[j>>2]|0;if((j<<24>>24|0)!=(j|0)){A=38;break a}if((i<<24>>24|0)!=(i|0)){A=38;break a}if(!((i|0)==0&(j|0)==(v|0))){c[f>>2]=1;i=1;j=p;A=17}}else{c[f+32+(e<<4)+(g<<3)>>2]=v;i=0;j=f+32+(e<<4)+(g<<3)+4|0;A=17}if((A|0)==17){A=0;c[j>>2]=i}b:do if(c[u>>2]|0){if(!(AN(a)|0)){i=0;while(1){if((i|0)==2)break b;c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]=t;c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]=0;i=i+1|0}}else i=0;while(1){if((i|0)>=2)break b;j=f+800+(e<<5)+(g<<4)+(i<<3)|0;c[j>>2]=BN(a)|0;k=BN(a)|0;b=f+800+(e<<5)+(g<<4)+(i<<3)+4|0;c[b>>2]=k;n=c[j>>2]|0;if((n<<24>>24|0)!=(n|0)){A=26;break a}if((k<<24>>24|0)!=(k|0)){A=26;break a}if(!((k|0)==0&(n|0)==(t|0))){c[y>>2]=1;c[q>>2]=1}i=i+1|0}}while(0);c:do if(s?(n=c[f+32+(e<<4)+(g<<3)>>2]|0,x=e<<1,w=x+16|0,x=x+17|0,c[f+32+(x<<4)+(g<<3)>>2]=n,c[f+32+(w<<4)+(g<<3)>>2]=n,n=c[f+32+(e<<4)+(g<<3)+4>>2]|0,c[f+32+(x<<4)+(g<<3)+4>>2]=n,c[f+32+(w<<4)+(g<<3)+4>>2]=n,c[u>>2]|0):0){i=0;while(1){if((i|0)==2)break c;n=c[f+800+(e<<5)+(g<<4)+(i<<3)>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)>>2]=n;n=c[f+800+(e<<5)+(g<<4)+(i<<3)+4>>2]|0;c[f+800+(x<<5)+(g<<4)+(i<<3)+4>>2]=n;c[f+800+(w<<5)+(g<<4)+(i<<3)+4>>2]=n;i=i+1|0}}while(0);e=e+1|0}if(o)g=g+1|0;else{A=35;break}}if((A|0)==26){c[j>>2]=t;c[b>>2]=0;A=38}else if((A|0)==35){if(!(c[f>>2]|0))i=(c[y>>2]|0)!=0&1;else i=1;c[f>>2]=i;i=0}if((A|0)==38){$i(h,148077,z);i=-1094995529}l=B;return i|0}function pN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+8|0;o=p;a:do if((c[d+44>>2]|0)!=5){k=rN(b)|0;c[a+34728>>2]=k;if(k){f=a+34752|0;g=a+34756|0;h=a+21824|0;d=0;b:while(1){if((d|0)>=66){f=21;break a}k=sN(b)|0;c[a+33932+(d*12|0)>>2]=k;if((k|2|0)==3){j=c[f>>2]|0;j=j+-1-(tN(b)|0)|0;c[a+33932+(d*12|0)+4>>2]=j&(c[g>>2]|0)+-1}i=(k|0)==2;switch(k|0){case 2:case 3:case 4:case 6:{j=sN(b)|0;if(j>>>0>31){d=k;f=16;break b}if(!(j>>>0<16|(k|0)==4&(j|0)==16)){if(!i){d=k;f=16;break b}if((c[h>>2]|0)==3){d=2;f=16;break b}}c[a+33932+(d*12|0)+8>>2]=j;break}default:{if(k>>>0>6){f=18;break b}if(!k){f=21;break a}}}d=d+1|0}if((f|0)==16){c[o>>2]=d;ig(e,16,147929,o);d=-1;break}else if((f|0)==18){c[n>>2]=k;ig(e,16,151238,n);d=-1;break}}else{d=0;f=21}}else{qN(b);if(!(rN(b)|0))d=0;else{c[a+33932>>2]=6;c[a+33940>>2]=0;d=1}c[a+34728>>2]=1;f=21}while(0);if((f|0)==21){c[a+34724>>2]=d;d=0}l=p;return d|0}function qN(a){a=a|0;yN(a);return}function rN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function sN(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122258+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122770+a>>0]|0|0}function tN(a){a=a|0;var b=0,c=0,e=0;e=uN(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;vN(a,b);return (wN(a,b+1|0)|0)+-1|0}function uN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=wN(d,32)|0;l=b;return a|0}function vN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function wN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=xN(a,b)|0;break}else{b=b+-16|0;c=(xN(a,16)|0)<>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function yN(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function zN(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116289+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){ig(0,16,151648,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122258+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122770+a>>0]|0}while(0);l=i;return a|0}function AN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function BN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122258+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123282+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116289+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function CN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=EN(d,32)|0;l=b;return a|0}function DN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function EN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=jN(a,b)|0;break}else{b=b+-16|0;c=(jN(a,16)|0)<>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;HN(a,b);return (IN(a,b+1|0)|0)+-1|0}function GN(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=IN(d,32)|0;l=b;return a|0}function HN(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function IN(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=JN(a,b)|0;break}else{b=b+-16|0;c=(JN(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function KN(b,d,e){b=b|0;d=d|0;e=e|0;if(e>>>0<=4294967231){if(!(ZN(b,d,e+64|0)|0)){b=(c[b>>2]|0)+e|0;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0))}}else{eg(b);c[d>>2]=0}return}function LN(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;ig(g,16,151286,k);h=-1094995529}}else h=-11;l=n;return h|0}function MN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;if((b+3|0)>>>0>>0){d=0;while(1){f=b+d|0;if((f+3|0)>>>0>=c>>>0)break;e=d+1|0;if(a[f>>0]|0){d=e;continue}if(a[b+e>>0]|0){d=e;continue}if((a[b+(d+2)>>0]|0)==1)break;else d=e}d=d+3|0}else d=c-b|0;return d|0}function NN(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=0?(2147483647/(c>>>0)|0)>>>0>b>>>0:0)a=pg(a,N(c,b)|0)|0;else a=0;return a|0}function ON(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=x;s=f+52|0;c[s>>2]=0;h=0;while(1){if((h+1|0)>=(d|0))break;if(!(a[b+h>>0]|0)){i=h+-1|0;if((h|0)>0)h=(a[b+i>>0]|0)==0?i:h;i=h+2|0;if(((i|0)<(d|0)?(a[b+(h+1)>>0]|0)==0:0)?(j=a[b+i>>0]|0,(j&255)<4):0){v=9;break}}h=h+2|0}a:do if((v|0)==9){switch(j<<24>>24){case 0:case 3:break a;default:{}}d=h}while(0);b:do if((g|0)!=0&(h|0)>=(d+-1|0)){c[f+20>>2]=b;c[f+8>>2]=b;c[f+16>>2]=d;c[f+4>>2]=d}else{i=(h|0)>(d|0)?d:h;r=e+8|0;q=(c[e>>2]|0)+(c[r>>2]|0)|0;c[f>>2]=q;wX(q|0,b|0,i|0)|0;o=f+60|0;p=f+56|0;h=i;while(1){j=i+2|0;if((j|0)>=(d|0)){v=30;break}e=b+j|0;g=a[e>>0]|0;if((g&255)<=3){j=a[b+i>>0]|0;if(!(j<<24>>24))if(g<<24>>24==0?1:(a[b+(i+1)>>0]|0)!=0)j=0;else{if(g<<24>>24!=3){w=h;u=i;break}n=h+1|0;a[q+h>>0]=0;h=h+2|0;a[q+n>>0]=0;i=i+3|0;j=c[o>>2]|0;if(!j)continue;k=c[s>>2]|0;g=k+1|0;c[s>>2]=g;e=c[p>>2]|0;if((e|0)<=(k|0)){j=e<<1;c[p>>2]=j;if((j|0)<=(k|0)){v=24;break}WN(o,j,4)|0;j=c[o>>2]|0;if(!j){v=27;break}g=c[s>>2]|0}c[j+(g+-1<<2)>>2]=n;continue}}else{a[q+h>>0]=a[b+i>>0]|0;a[q+(h+1)>>0]=a[b+(i+1)>>0]|0;h=h+2|0;i=j;j=a[e>>0]|0}a[q+h>>0]=j;h=h+1|0;i=i+1|0}c:do if((v|0)==24){c[t>>2]=148666;c[t+4>>2]=148716;c[t+8>>2]=114;ig(0,0,159900,t);Tb()}else if((v|0)==27){c[p>>2]=0;d=-12;break b}else if((v|0)==30)while(1){if((i|0)>=(d|0)){w=h;u=i;break c}a[q+h>>0]=a[b+i>>0]|0;h=h+1|0;i=i+1|0;v=30}while(0);d=q+w|0;h=d+64|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));c[f+8>>2]=q;c[f+4>>2]=w;c[f+20>>2]=b;c[f+16>>2]=u;c[r>>2]=(c[r>>2]|0)+u;d=u}while(0);l=x;return d|0}function PN(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=(e|0)!=0;g=b+8|0;h=c[b+4>>2]|0;while(1){if(!(f&(h|0)>0)){b=4;break}b=h+-1|0;e=a[(c[g>>2]|0)+b>>0]|0;if(!(e<<24>>24))h=b;else{f=e;b=6;break}}if((b|0)==4)if(!h)e=0;else{f=a[(c[g>>2]|0)+(h+-1)>>0]|0;b=6}if((b|0)==6){b=f&255;if((h|0)<=268435455){e=h<<3;if(f<<24>>24)e=e+-1-(d[157043+((N(0-b&b,125613361)|0)>>>27)>>0]|0)|0}else e=-34}return e|0}function QN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function RN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;d=a+24|0;if((TN(d)|0)==0?(e=a+44|0,c[e>>2]=UN(d,6)|0,f=UN(d,6)|0,g=(UN(d,3)|0)+-1|0,c[a+48>>2]=g,(g|0)>=0):0){e=c[e>>2]|0;a=VN(e)|0;c[h>>2]=e;c[h+4>>2]=a;c[h+8>>2]=f;c[h+12>>2]=g;ig(b,48,148418,h);a=(f|0)==0&1}else a=-1094995529;l=i;return a|0}function SN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=a+24|0;if(!(TN(d)|0)){g=a+64|0;c[g>>2]=UN(d,2)|0;d=UN(d,5)|0;c[a+44>>2]=d;a=c[g>>2]|0;c[e>>2]=d;c[e+4>>2]=a;ig(b,48,148382,e);a=1}else a=-1094995529;l=f;return a|0}function TN(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function UN(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function VN(a){a=a|0;do switch(a|0){case 0:{a=148658;break}case 1:{a=148650;break}case 2:{a=148644;break}case 3:{a=148638;break}case 4:{a=148631;break}case 5:{a=148624;break}case 6:{a=148617;break}case 7:{a=148610;break}case 8:{a=148603;break}case 9:{a=148596;break}case 16:{a=148587;break}case 17:{a=148576;break}case 18:{a=148567;break}case 19:{a=148556;break}case 20:{a=148547;break}case 21:{a=148539;break}case 32:{a=148535;break}case 33:{a=148531;break}case 34:{a=148527;break}case 35:{a=148523;break}case 36:{a=148515;break}case 37:{a=148507;break}case 38:{a=148500;break}case 39:{a=148489;break}case 40:{a=148478;break}default:a=148476}while(0);return a|0}function WN(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=XN(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c,e)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;return ((e|0)!=0&((c|0)!=0&(f|0)==0)?-12:0)|0}function XN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(!((YN(d,b,f)|0)==0?(e=pg(a,c[f>>2]|0)|0,(e|0)!=0):0)){fg(a);e=0}l=g;return e|0}function YN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=N(b,a)|0;if((a|0)!=0&(b|a)>>>0>65535?((e>>>0)/(a>>>0)|0|0)!=(b|0):0)a=-22;else{c[d>>2]=e;a=0}return a|0}function ZN(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0)if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148741;c[h+4>>2]=148758;c[h+8>>2]=33;ig(0,0,159900,h);Tb()}else g=0;else{g=f+32+(f>>>4)|0;g=g>>>0>f>>>0?g:f;eg(b);h=$g(g)|0;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;c[e>>2]=(h|0)==0?0:g;g=1}l=i;return g|0}function _N(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;if((l|0)>=(m|0))W(48);n=u+24|0;j=u+8|0;s=u+36|0;do if((g&8|0)==0&($N(b,e,f,1,h)|0)<0){ig(h,24,148872,u);if((e|0)<=21801){i=e*3|0;k=((i|0)/2|0)+64|0;g=$g(k)|0;c[s>>2]=g;if(!g)g=-12;else{if((e|0)<=-1){c[j>>2]=155428;c[j+4>>2]=155442;c[j+8>>2]=137;ig(0,0,159900,j);Tb()}q=b+e|0;if((i|0)<=-130){c[n>>2]=155428;c[n+4>>2]=155442;c[n+8>>2]=147;ig(0,0,159900,n);Tb()}p=g;o=g+k|0;g=p;i=b;e=0;a:while(1){k=o-g|0;n=(k|0)<1;while(1){j=q-i|0;if(!j)break a;b=i;if(j>>>0>2){if((j|0)<3)break;i=b+1|0;if(((d[i>>0]|0)<<8|(d[b>>0]|0)<<16|(d[b+2>>0]|0))>>>0<4)break}else i=b+1|0;if(!((e|0)!=0|n)){t=20;break}else e=1}if((t|0)==20){t=0;e=g;a[e>>0]=a[b>>0]|0;g=e+1|0;e=0;continue}if((e|0)==0?(r=g,(k|0)>2):0){a[r+2>>0]=3;a[r+1>>0]=0;a[r>>0]=0;g=r+3|0;e=0}else e=1;i=b+2|0}g=g-p|0;r=tX(g+65534&65535|0)|0;t=c[s>>2]|0;a[t>>0]=r;a[t+1>>0]=r>>8;$N(c[s>>2]|0,g,f,1,h)|0;eg(s);g=0;break}}else g=-34}else g=0;while(0);l=u;return g|0}function $N(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=k;j=k+8|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;a=Wi(j,a,b,f,e,2,27,1)|0;a:do if((a|0)<0)a=0;else{h=j+16|0;g=0;while(1){if((g|0)>=(c[h>>2]|0))break a;b=c[j>>2]|0;e=c[b+(g*68|0)+44>>2]|0;switch(e|0){case 7:{a=cj(b+(g*68|0)+24|0,f,d,0)|0;if((a|0)<0)break a;break}case 8:{a=ej(b+(g*68|0)+24|0,f,d,c[b+(g*68|0)+12>>2]|0)|0;if((a|0)<0)break a;break}default:{c[i>>2]=e;ig(f,40,155545,i)}}g=g+1|0}}while(0);Ci(j);l=k;return a|0}function aO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[b+4>>2]=a;c[b+29592>>2]=-1;c[b+29664>>2]=c[a+92>>2];c[b+29668>>2]=c[a+96>>2];c[b+26380>>2]=3;c[b+25700>>2]=c[a+564>>2];c[b+25696>>2]=c[a+60>>2];c[b+28248>>2]=65536;c[b+29572>>2]=-1;c[b+29576>>2]=0;c[b+28264>>2]=-1;c[b+29860>>2]=-1;c[b+29712>>2]=-1;c[b+28744>>2]=-2147483648;d=0;while(1){if((d|0)==16)break;c[b+28676+(d<<2)>>2]=-2147483648;d=d+1|0}hh(b+29676|0);c[a+332>>2]=1;if(!(c[a+696>>2]&2))d=1;else d=c[a+688>>2]|0;e=b+25632|0;c[e>>2]=d;a=xh(d,34768)|0;f=b+25628|0;c[f>>2]=a;a:do if(a){d=0;while(1){a=Sh()|0;if((d|0)>=36)break;c[b+696+(d*656|0)>>2]=a;if(!a){d=-12;break a}else d=d+1|0}c[b+24316>>2]=a;if((a|0)!=0?(a=Sh()|0,c[b+24972>>2]=a,(a|0)!=0):0){a=c[e>>2]|0;d=0;while(1){if((d|0)>=(a|0)){d=0;break a}c[(c[f>>2]|0)+(d*34768|0)>>2]=b;d=d+1|0}}else d=-12}else{c[e>>2]=0;d=-12}while(0);return d|0}function bO(){var a=0,b=0,d=0;if(!(c[45959]|0)){c[45959]=1;c[45790]=186544;c[45792]=256;cO(183156,8,20,149073,1,1,149093,1,1,0,0,0,4)|0;c[45794]=187568;c[45796]=8192;cO(183172,13,36,149113,1,1,149149,1,1,0,0,0,4)|0;a=0;b=0;while(1){if((b|0)==4){a=0;break}c[183188+(b<<4)+4>>2]=220336+(a<<2);d=c[105088+(b<<2)>>2]|0;c[183188+(b<<4)+12>>2]=d;cO(183188+(b<<4)|0,8,68,149185+(b*68|0)|0,1,1,149457+(b*68|0)|0,1,1,0,0,0,4)|0;a=d+a|0;b=b+1|0}while(1){if((a|0)==3){a=0;break}d=a+1|0;c[183252+(d<<4)+4>>2]=225888+(a<<5);c[183252+(d<<4)+12>>2]=8;cO(183252+(d<<4)|0,3,4,149729+(a<<2)|0,1,1,149741+(a<<2)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==7){a=0;break}d=a+1|0;c[183316+(d<<4)+4>>2]=225984+(a<<7);c[183316+(d<<4)+12>>2]=32;cO(183316+(d<<4)|0,5,8,149753+(a<<3)|0,1,1,149809+(a<<3)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==15){a=0;break}d=a+1|0;c[183444+(d<<4)+4>>2]=226880+(a<<11);c[183444+(d<<4)+12>>2]=512;cO(183444+(d<<4)|0,9,16,149865+(a<<4)|0,1,1,150121+(a<<4)|0,1,1,0,0,0,4)|0;a=d}while(1){if((a|0)==6)break;d=a+1|0;c[183700+(d<<4)+4>>2]=257600+(a<<5);c[183700+(d<<4)+12>>2]=8;cO(183700+(d<<4)|0,3,7,150377+(a<<4)|0,1,1,150489+(a<<4)|0,1,1,0,0,0,4)|0;a=d}c[45954]=257792;c[45956]=96;cO(183812,6,16,150473,1,1,150585,1,1,0,0,0,4)|0;dO()}return}function cO(f,g,h,i,j,k,n,o,p,q,r,s,t){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;V=l;l=l+12624|0;if((l|0)>=(m|0))W(12624);U=V+72|0;T=V+64|0;P=V+56|0;O=V+48|0;C=V+40|0;D=V+32|0;x=V+16|0;v=V;u=V+616|0;w=V+600|0;I=V+88|0;c[f>>2]=g;R=(t&4|0)!=0;do if(R)if((h+1|0)>>>0<1501){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+8>>2]=0;M=w;Q=6;break}else{c[v>>2]=150601;c[v+4>>2]=150660;c[v+8>>2]=282;ig(0,0,159900,v);Tb()}else{c[f+4>>2]=0;c[f+12>>2]=0;c[f+8>>2]=0;u=Zh(h+1|0,8)|0;if(!u)S=-12;else{M=f;Q=6}}while(0);do if((Q|0)==6){L=(q|0)!=0;if(L&(s|0)>2){c[x>>2]=150683;c[x+4>>2]=150660;c[x+8>>2]=298;ig(0,0,159900,x);Tb()}J=g*3|0;K=(t&2|0)==0;B=0;v=0;while(1){if((B|0)>=(h|0)){Q=41;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=15;break}case 2:{w=b[w>>1]&255;Q=15;break}case 4:{w=c[w>>2]&255;Q=15;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==15){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if((A|0)>(g|0)){if((w&255)>32|(J|0)<(A|0)){Q=18;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=25;break}case 2:{x=e[x>>1]|0;Q=25;break}case 4:{x=c[x>>2]|0;Q=25;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==25){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}H=sX(1,0,w&255|0)|0;G=y;if(!((G|0)>0|(G|0)==0&H>>>0>x>>>0)){Q=27;break}if(K)w=x<<32-A;else w=(d[116545+(x>>>8&255)>>0]|0)<<16|(d[116545+(x&255)>>0]|0)<<24|(d[116545+(x>>>16&255)>>0]|0)<<8|(d[116545+(x>>>24)>>0]|0);c[z>>2]=w;a:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=38;break a}case 2:{w=b[w>>1]|0;Q=38;break a}case 4:{w=c[w>>2]&65535;Q=38;break a}default:break a}}else{w=B&65535;Q=38}while(0);if((Q|0)==38){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==18){c[D>>2]=A;ig(0,16,150713,D);if(R){S=-1;break}fg(u);S=-1;break}else if((Q|0)==27){c[C>>2]=x;c[C+4>>2]=B;ig(0,16,150744,C);if(R){S=-1;break}fg(u);S=-1;break}else if((Q|0)==41){c[I>>2]=u;c[I+4>>2]=u+(v<<3)+-8;w=1;b:while(1){if(!w)break;w=w+-1|0;H=c[I+(w<<3)+4>>2]|0;x=c[I+(w<<3)>>2]|0;while(1){if(x>>>0>=H>>>0)continue b;C=H+-8|0;if(x>>>0>=C>>>0)break;z=H+-16|0;B=x+8|0;F=H;G=x;D=x+(F-G>>4<<3)|0;do if((eO(x,H)|0)>0)if((eO(H,D)|0)>0){E=D;X=c[E>>2]|0;E=c[E+4>>2]|0;Z=x;Y=c[Z+4>>2]|0;A=D;c[A>>2]=c[Z>>2];c[A+4>>2]=Y;A=x;c[A>>2]=X;c[A+4>>2]=E;A=0;break}else{Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0;break}else if((eO(x,D)|0)>0){Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=x;X=c[E+4>>2]|0;A=D;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=x;c[A>>2]=Y;c[A+4>>2]=Z;A=0}else A=1;while(0);if((eO(D,H)|0)>0){Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;E=D;X=c[E+4>>2]|0;A=H;c[A>>2]=c[E>>2];c[A+4>>2]=X;A=D;c[A>>2]=Y;c[A+4>>2]=Z;A=0}if((x|0)==(z|0))continue b;Z=D;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;_=C;X=c[_+4>>2]|0;E=D;c[E>>2]=c[_>>2];c[E+4>>2]=X;E=C;c[E>>2]=Y;c[E+4>>2]=Z;E=B;c:while(1){if(E>>>0>z>>>0)break;else B=E;while(1){if(B>>>0>z>>>0)break;if((eO(B,C)|0)>=0)break;B=B+8|0}while(1){if(B>>>0>z>>>0){E=B;continue c}if((eO(z,C)|0)<=0)break;z=z+-8|0}_=z;Z=c[_>>2]|0;_=c[_+4>>2]|0;X=B;Y=c[X+4>>2]|0;E=z;c[E>>2]=c[X>>2];c[E+4>>2]=Y;E=B;c[E>>2]=Z;c[E+4>>2]=_;E=B+8|0;z=z+-8|0}Z=E;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;B=C;X=c[B+4>>2]|0;_=E;c[_>>2]=c[B>>2];c[_+4>>2]=X;_=C;c[_>>2]=Y;c[_+4>>2]=Z;if(A|0?(D|0)==(E|0)|(D|0)==(E+-8|0):0){A=x;while(1){if(A>>>0>=H>>>0)break;if((eO(A,A+8|0)|0)>=1)break;A=A+8|0}if((A|0)==(H|0))continue b}_=E;if((F-_|0)<(_-G|0)){A=H;B=E+8|0}else{A=z;B=x;z=H;x=E+8|0}c[I+(w<<3)>>2]=x;c[I+(w<<3)+4>>2]=z;H=A;x=B;w=w+1|0}if((eO(x,H)|0)<=0)continue;Z=H;Y=c[Z>>2]|0;Z=c[Z+4>>2]|0;G=x;X=c[G+4>>2]|0;_=H;c[_>>2]=c[G>>2];c[_+4>>2]=X;_=x;c[_>>2]=Y;c[_+4>>2]=Z}B=0;while(1){if((B|0)>=(h|0)){Q=109;break}w=i+(N(B,j)|0)|0;switch(k|0){case 1:{w=a[w>>0]|0;Q=83;break}case 2:{w=b[w>>1]&255;Q=83;break}case 4:{w=c[w>>2]&255;Q=83;break}default:w=a[u+(v<<3)>>0]|0}if((Q|0)==83){Q=0;a[u+(v<<3)>>0]=w}A=w&255;if(!(w<<24>>24==0|(A|0)>(g|0))){if((w&255)>32|(J|0)<(A|0)){Q=86;break}x=n+(N(B,o)|0)|0;switch(p|0){case 1:{x=d[x>>0]|0;Q=93;break}case 2:{x=e[x>>1]|0;Q=93;break}case 4:{x=c[x>>2]|0;Q=93;break}default:{x=u+(v<<3)+4|0;z=x;x=c[x>>2]|0}}if((Q|0)==93){Q=0;z=u+(v<<3)+4|0;c[z>>2]=x}_=sX(1,0,w&255|0)|0;Z=y;if(!((Z|0)>0|(Z|0)==0&_>>>0>x>>>0)){Q=95;break}if(K)w=x<<32-A;else w=(d[116545+(x>>>8&255)>>0]|0)<<16|(d[116545+(x&255)>>0]|0)<<24|(d[116545+(x>>>16&255)>>0]|0)<<8|(d[116545+(x>>>24)>>0]|0);c[z>>2]=w;d:do if(L){w=q+(N(B,r)|0)|0;switch(s|0){case 1:{w=d[w>>0]|0;Q=106;break d}case 2:{w=b[w>>1]|0;Q=106;break d}case 4:{w=c[w>>2]&65535;Q=106;break d}default:break d}}else{w=B&65535;Q=106}while(0);if((Q|0)==106){Q=0;b[u+(v<<3)+2>>1]=w}v=v+1|0}B=B+1|0}if((Q|0)==86){c[O>>2]=A;ig(0,16,150713,O);if(R){S=-1;break}fg(u);S=-1;break}else if((Q|0)==95){c[P>>2]=x;c[P+4>>2]=B;ig(0,16,150744,P);if(R){S=-1;break}fg(u);S=-1;break}else if((Q|0)==109){w=fO(M,g,v,u,t)|0;if(!R){fg(u);if((w|0)>=0){S=0;break}eg(M+4|0);S=w;break}u=c[M+8>>2]|0;v=c[M+12>>2]|0;if((u|0)!=(v|0)){c[T>>2]=u;c[T+4>>2]=v;ig(0,16,150780,T)}if((w|0)>-1){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];S=0;break}else{c[U>>2]=159930;c[U+4>>2]=150660;c[U+8>>2]=341;ig(0,0,159900,U);Tb()}}}}while(0);l=V;return S|0}function dO(){var b=0,c=0,e=0,f=0,g=0,h=0,i=0;g=0;while(1){if((g|0)==7)break;i=-1<>>7&16777215)>>0]|0)|0;f=8-e|0;b=f+1|0;c=b+g|0;do if((c|0)>=9)if(!e){a[259200+(g<<9)+(h<<1)>>0]=108;b=8;break}else{a[259200+(g<<9)+(h<<1)>>0]=f+100;b=b&255;break}else{b=(h&65280|0)==0;f=(f<>>((b?0:8)-g+(d[116289+(b?h:h>>>8)>>0]|0)|0))|0;b=f&1;a[259200+(g<<9)+(h<<1)>>0]=((f+2|0)>>>1^0-b)+b;b=c&255}while(0);a[259200+(g<<9)+(h<<1)+1>>0]=b;h=h+1|0}g=g+1|0}return}function eO(a,b){a=a|0;b=b|0;return ((c[a+4>>2]|0)>>>1)-((c[b+4>>2]|0)>>>1)|0}function fO(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D;z=D+4|0;A=1<>2]=(c[v>>2]|0)+(B<<2);w=32-f|0;x=(i&2|0)==0;j=0;b:while(1){if((j|0)>=(g|0)){j=0;break}u=h+(j<<3)|0;o=a[u>>0]|0;s=o&255;n=h+(j<<3)+4|0;p=c[n>>2]|0;t=b[h+(j<<3)+2>>1]|0;c:do if((s|0)>(f|0)){t=s-f|0;k=p>>>w;a[u>>0]=t;c[n>>2]=p<=(g|0))break;o=h+(s<<3)|0;p=(d[o>>0]|0)-f|0;if((p|0)<1)break;q=h+(s<<3)+4|0;r=c[q>>2]|0;if((r>>>w|0)!=(k|0))break;a[o>>0]=p;c[q>>2]=r<(p|0)?n:p;t=s}n=(n|0)>(f|0)?f:n;if(!x)k=(d[116545+(k>>>8&255)>>0]<<16|d[116545+(k&255)>>0]<<24|d[116545+(k>>>16&255)>>0]<<8|d[116545+(k>>>24)>>0])>>>w;b[(c[z>>2]|0)+(k<<2)+2>>1]=0-n;j=fO(e,n,s-j|0,u,i)|0;if((j|0)<0)break a;c[z>>2]=(c[v>>2]|0)+(B<<2);b[(c[z>>2]|0)+(k<<2)>>1]=j;j=t}else{r=1<>>w}else{q=1<>>8&255)>>0]<<16|d[116545+(p&255)>>0]<<24|d[116545+(p>>>16&255)>>0]<<8|d[116545+(p>>>24)>>0]}o=o&255;n=0;while(1){if((n|0)>=(r|0))break c;u=b[(c[z>>2]|0)+(k<<2)+2>>1]|0;if(!(u<<16>>16==0|(u<<16>>16|0)==(s|0))){C=11;break b}b[(c[z>>2]|0)+(k<<2)+2>>1]=o;b[(c[z>>2]|0)+(k<<2)>>1]=t;n=n+1|0;k=k+q|0}}while(0);j=j+1|0}if((C|0)==11){ig(0,16,150798,y);j=-1094995529;break}while(1){if((j|0)>=(A|0)){j=B;break a}if(!(b[(c[z>>2]|0)+(j<<2)+2>>1]|0))b[(c[z>>2]|0)+(j<<2)>>1]=-1;j=j+1|0}}}else j=-1;while(0);l=D;return j|0}function gO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+8|0;e=c[g>>2]|0;h=e+b|0;c[g>>2]=h;f=a+12|0;b=c[f>>2]|0;do if((h|0)>(b|0)){if(d|0)Tb();b=(1<>2])+b|0;c[f>>2]=b;h=a+4|0;b=XN(c[h>>2]|0,b,4)|0;c[h>>2]=b;if(!b){c[f>>2]=0;c[g>>2]=0;e=-12;break}else{h=c[a>>2]|0;yX(b+(c[f>>2]<<2)+(-1<=(d|0))break;f=c[b+(g<<2)>>2]|0;if((f|0)!=0?f>>>0>=j>>>0&f>>>0>>0:0)f=e+696+(((f-i|0)/656|0)*656|0)|0;else f=0;c[a+(g<<2)>>2]=f;g=g+1|0}return}function iO(a){a=a|0;var b=0;a=c[a>>2]|0;b=a+1672|0;c[b>>2]=0;c[b+4>>2]=-2147483648;c[a+1680>>2]=2147483647;bo(a+1208|0,8,1);return 0}function jO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=x+32|0;j=x+24|0;u=x+20|0;v=x+16|0;n=x+8|0;o=x;c[u>>2]=f;c[v>>2]=g;q=c[a>>2]|0;h=q+1644|0;if((c[h>>2]|0)==0?(c[h>>2]=1,i=c[b+72>>2]|0,i|0):0)Gi(c[b+68>>2]|0,i,q+40|0,q+1636|0,q+1640|0,c[b+580>>2]|0,b)|0;i=a+176|0;do if(!(c[i>>2]&1)){g=nO(q,f,g,b)|0;if((gg(q,g,u,v)|0)<0){c[d>>2]=0;c[e>>2]=0;g=c[v>>2]|0;break}if((g|0)<0&(g|0)!=-100){nO(q,(c[q>>2]|0)+((c[q+8>>2]|0)+g)|0,0-g|0,b)|0;w=9}else w=9}else w=9;while(0);if((w|0)==9){oO(a,b,c[u>>2]|0,c[v>>2]|0);h=b+760|0;if(c[h>>2]|0){c[o>>2]=c[b+84>>2];c[o+4>>2]=1;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];pO(n,j,k);p=c[n>>2]|0;r=b+76|0;c[r>>2]=c[n+4>>2];c[r+4>>2]=p}h=c[q+1404>>2]|0;if((h|0)>-1){r=c[q+1432>>2]|0;k=h;p=c[q+1400>>2]|0}else{r=-2147483648;k=-2147483648;p=-2147483648}c[a+240>>2]=r;c[a+244>>2]=k;c[a+248>>2]=p;h=c[i>>2]|0;if(h&2|0)c[i>>2]=h&1;if((r|0)>-1?(s=c[b+80>>2]|0,t=c[b+772>>2]|0,s=nX(t|0,((t|0)<0)<<31>>31|0,s|0,((s|0)<0)<<31>>31|0)|0,t=y,(t|0)>0|(t|0)==0&s>>>0>0):0){n=c[b+76>>2]|0;o=c[b+776>>2]|0;n=nX(o|0,((o|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y;j=a+48|0;h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;if((i|0)==0&(h|0)==-2147483648){f=q+1672|0;i=f;h=c[i>>2]|0;i=c[i+4>>2]|0;if((h|0)==0&(i|0)==-2147483648){i=0;h=-2147483648}else{w=qO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;i=hX(w|0,y|0,h|0,i|0)|0;h=y;w=j;c[w>>2]=i;c[w+4>>2]=h;w=21}}else{k=qO(k,((k|0)<0)<<31>>31,n,o,s,t)|0;k=iX(i|0,h|0,k|0,y|0)|0;b=y;f=q+1672|0;q=f;c[q>>2]=k;c[q+4>>2]=b;if(!((k|0)==0&(b|0)==-2147483648))w=21}if((w|0)==21){j=a+40|0;w=j;if((c[w>>2]|0)==0?(c[w+4>>2]|0)==-2147483648:0){t=qO(p,((p|0)<0)<<31>>31,n,o,s,t)|0;t=hX(t|0,y|0,i|0,h|0)|0;w=j;c[w>>2]=t;c[w+4>>2]=y}}if((r|0)>0){w=f;c[w>>2]=i;c[w+4>>2]=h}}c[d>>2]=c[u>>2];c[e>>2]=c[v>>2]}l=x;return g|0}function kO(a){a=a|0;a=c[a>>2]|0;eg(a);hh(a+1388|0);Bi(a+40|0);return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;c[k>>2]=-1;j=d+e|0;b=0;e=d;i=0;a:while(1)b:while(1){h=(b|0)!=0;while(1){if(e>>>0>=j>>>0){b=0;break a}e=mO(e,j,k)|0;g=c[k>>2]|0;if((g&-256|0)!=256){b=0;break a}f=g&31;switch(g&31){case 8:{i=1;continue a}case 7:{b=1;continue b}default:{}}if(h&((f|0)!=15&((f|4|0)!=13&(i|(f|0)!=6)))){n=8;break a}}}if((n|0)==8){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;n=8}else break}b=b-d|0}l=o;return b|0}function mO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;if(b>>>0>e>>>0){c[g>>2]=151023;c[g+4>>2]=127302;c[g+8>>2]=1892;ig(0,0,159900,g);Tb()}a:do if(b>>>0>>0){h=0;while(1){if((h|0)>=3)break;j=c[f>>2]<<8;g=b+1|0;c[f>>2]=j|d[b>>0];if((g|0)==(e|0)|(j|0)==256){e=g;break a}else{h=h+1|0;b=g}}while(1){if(b>>>0>=e>>>0)break;g=a[b+-1>>0]|0;if((g&255)>1){b=b+3|0;continue}if(!(a[b+-2>>0]|0)){h=b+1|0;if(!((g&255)+-1|d[b+-3>>0])){b=h;break}else{b=h;continue}}else{b=b+2|0;continue}}e=b>>>0>e>>>0?e:b;j=e+-4|0;c[f>>2]=uX(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24|0)|0}while(0);l=i;return e|0}function nO(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=z+8|0;h=z;t=z+16|0;x=b+1636|0;y=b+16|0;j=c[y>>2]|0;j=j>>>0>13?7:j;s=b+1640|0;if(c[x>>2]|0)if(!(c[s>>2]|0)){ig(g,16,151320,h);i=0}else i=0;else i=f;o=b+1340|0;p=b+1660|0;q=b+1664|0;r=b+1652|0;w=b+20|0;h=0;a:while(1){if((h|0)>=(f|0)){v=31;break}b:do if((i|0)>(h|0)){if((j|0)==7){j=(Kd[c[o>>2]&15](e+h|0,i-h|0)|0)+h|0;n=i;h=j;j=(j|0)<(i|0)?2:7;break}if(j>>>0<3)switch(a[e+h>>0]|0){case 1:{n=i;j=j^5;break b}case 0:{n=i;j=j>>>1;break b}default:{n=i;j=7;break b}}k=a[e+h>>0]|0;if(j>>>0>=6){n=c[p>>2]|0;c[p>>2]=n+1;a[b+1652+n>>0]=k;k=c[p>>2]|0;if((k|0)>5){n=c[q>>2]|0;EO(t,r,k<<3)|0;c[p>>2]=0;k=wO(t)|0;c[q>>2]=k;if(c[w>>2]|0){if(k>>>0<=n>>>0){v=29;break a}}else c[w>>2]=1;n=i;j=7}else n=i}else{n=i;i=k;v=20}}else{j=c[s>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;h=h+1|0;k=k<<8|d[e+i>>0];i=i+1|0}h=f-i|0;if((k|0)<1|(k|0)>(h|0)){v=12;break a}h=i;n=i+k|0;j=5;i=a[e+i>>0]|0;v=20}while(0);c:do if((v|0)==20){v=0;if(((i&31)+-6&255)<4){k=(c[w>>2]|0)==0;h=h+((k^1)&1)|0;if(k){j=7;break}else{i=n;f=j;v=32;break a}}switch(i&31){case 1:case 2:case 5:break;default:{j=7;break c}}j=j+8|0}while(0);h=h+1|0;i=n}if((v|0)==12){c[u>>2]=k;c[u+4>>2]=h;ig(g,16,151357,u);v=33}else if((v|0)==29){f=j;v=32}else if((v|0)==31){c[y>>2]=j;f=(c[x>>2]|0)==0?-100:i;v=33}if((v|0)==32){c[y>>2]=7;c[w>>2]=0;l=z;return ((c[x>>2]|0)==0?h-(f&5)+(f>>>0>7?-5:0)|0:i)|0}else if((v|0)==33){l=z;return f|0}return 0}function oO(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+128|0;if((l|0)>=(m|0))W(128);w=L+24|0;B=L+16|0;y=L+8|0;x=L;K=L+112|0;u=L+44|0;v=L+40|0;H=L+32|0;J=c[b>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;h=u;i=h+68|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if((g|0)>3)p=(YT(151032,f,4)|0)==0;else p=0;z=b+32|0;c[z>>2]=1;A=b+224|0;c[A>>2]=0;G=b+312|0;c[G>>2]=0;F=J+1388|0;hh(F);c[J+1572>>2]=-1;a:do if(g|0?(KN(K,K+4|0,g),c[K>>2]|0):0){c[v>>2]=0;C=u+24|0;o=u+8|0;q=u+4|0;E=u+64|0;D=u+44|0;r=J+40|0;s=u+12|0;t=J+1640|0;i=c[J+1636>>2]|0?0:g;h=0;b:while(1){while(1){if((h|0)>=(i|0)){I=8;break}h=sO(f,g,h,i)|0;if((h|0)>=(g|0)){I=103;break b}if((h|0)<(i|0)){I=12;break}}if((I|0)==8){I=0;c[v>>2]=h;h=rO(c[t>>2]|0,f,g,v,e)|0;if((h|0)<0){I=104;break}k=c[v>>2]|0;n=k+h|0;h=k}else if((I|0)==12){I=0;c[v>>2]=h;n=i}i=n-h|0;k=f+h|0;M=a[k>>0]|0;j=M&255;c:do switch(M&31){case 5:case 1:if((j&31|0)==5|(j&96|0)==0){i=(i|0)<60?i:60;break c}else{i=(i|0)<1e3?i:1e3;break c}default:{}}while(0);i=ON(k,i,K,u,1)|0;if((i|0)<0){I=104;break}h=h+i|0;c[v>>2]=h;if((tO(C,c[o>>2]|0,c[q>>2]|0)|0)<0)break;uO(C)|0;c[E>>2]=vO(C,2)|0;M=vO(C,5)|0;c[D>>2]=M;switch(M|0){case 5:{I=23;break b}case 1:{I=24;break b}case 7:{cj(C,e,r,0)|0;i=n;continue b}case 8:{ej(C,e,r,c[s>>2]|0)|0;i=n;continue b}case 6:{aj(F,C,r,e)|0;i=n;continue b}default:{i=n;continue b}}}if((I|0)==23){c[A>>2]=1;c[J+1384>>2]=0;c[J+1380>>2]=0;c[J+1372>>2]=0;c[J+1368>>2]=0;I=24}else if((I|0)==103){c[v>>2]=h;I=104}d:do if((I|0)==24){wO(C)|0;c[z>>2]=d[123794+(((xO(C)|0)>>>0)%5|0)>>0];if((c[J+1428>>2]|0)>-1)c[A>>2]=1;h=yO(C)|0;if(h>>>0>255){c[x>>2]=h;ig(e,16,151037,x);break}i=J+168+(h<<2)|0;if(!(c[i>>2]|0)){c[y>>2]=h;ig(e,16,151061,y);break}M=J+1192|0;Pg(M);j=J+1196|0;Pg(j);q=J+1200|0;c[q>>2]=0;k=J+1204|0;c[k>>2]=0;h=Rh(c[i>>2]|0)|0;c[M>>2]=h;if(h|0){h=c[h+4>>2]|0;c[q>>2]=h;h=c[h>>2]|0;i=c[J+40+(h<<2)>>2]|0;if(!i){c[B>>2]=h;ig(e,16,151093,B);break}h=Rh(i)|0;c[j>>2]=h;if(h|0){o=c[h+4>>2]|0;c[k>>2]=o;if(((c[o+48>>2]|0)<2?(c[(c[q>>2]|0)+20>>2]|0)>>>0<2:0)?(c[z>>2]|0)==1:0)c[A>>2]=1;n=J+1344|0;p=J+1364|0;c[p>>2]=vO(C,c[o+20>>2]|0)|0;h=c[o+56>>2]<<4;c[b+328>>2]=h;i=c[o+60>>2]<<4;c[b+332>>2]=i;M=h-(c[o+84>>2]|0)-(c[o+80>>2]|0)|0;j=b+320|0;c[j>>2]=M;B=i-(c[o+88>>2]|0)-(c[o+92>>2]|0)|0;k=b+324|0;c[k>>2]=B;if((B|0)<1|(M|0)<1){c[j>>2]=h;c[k>>2]=i}e:do switch(c[o+1184>>2]|0){case 9:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=68;break e}else{c[b+336>>2]=(h|0)==2?72:62;break e}}case 10:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=70;break e}else{c[b+336>>2]=(h|0)==2?66:64;break e}}case 8:{h=c[o+12>>2]|0;if((h|0)==3){c[b+336>>2]=5;break e}else{c[b+336>>2]=(h|0)==2?4:0;break e}}default:c[b+336>>2]=-1}while(0);c[e+716>>2]=Vn(o)|0;c[e+720>>2]=c[o+8>>2];if((c[o+64>>2]|0)==0?(uO(C)|0)!=0:0)h=(uO(C)|0)+1|0;else h=3;k=J+1648|0;c[k>>2]=h;if((c[D>>2]|0)==5)wO(C)|0;i=o+24|0;h=c[i>>2]|0;if(!h){c[n>>2]=vO(C,c[o+28>>2]|0)|0;if((c[(c[q>>2]|0)+8>>2]|0)==1?(c[k>>2]|0)==3:0)c[J+1352>>2]=zO(C)|0;h=c[i>>2]|0}do if(((h|0)==1?(c[o+32>>2]|0)==0:0)?(c[J+1356>>2]=zO(C)|0,(c[(c[q>>2]|0)+8>>2]|0)==1):0){if((c[k>>2]|0)!=3)break;c[J+1360>>2]=zO(C)|0}while(0);j=H+4|0;c[j>>2]=2147483647;c[H>>2]=2147483647;if((Bm(H,b+316|0,o,n,c[k>>2]|0,c[E>>2]|0)|0)>=0){do if((c[E>>2]|0)==0|(c[D>>2]|0)==5)I=70;else{h=AO(b,C,e)|0;if((h|0)<0)break d;if(!h){I=70;break}c[J+1384>>2]=0;h=0;i=1}while(0);if((I|0)==70){c[J+1384>>2]=c[p>>2];h=c[J+1376>>2]|0;i=0}c[J+1380>>2]=h;if(c[E>>2]|0){if(i){i=0;h=(c[k>>2]|0)==2?0:c[H>>2]|0}else{i=c[J+1348>>2]|0;h=c[n>>2]|0}c[J+1368>>2]=i;c[J+1372>>2]=h}i=(c[o+1160>>2]|0)==0;f:do if(i)I=85;else{if(!(c[F>>2]|0)){I=85;break}switch(c[J+1392>>2]|0){case 2:case 1:{h=0;break f}case 4:case 3:case 0:{h=1;break f}case 6:case 5:{h=2;break f}case 7:{h=3;break f}case 8:{h=5;break f}default:{h=(c[k>>2]|0)==3&1;break f}}}while(0);if((I|0)==85)h=(c[k>>2]|0)==3&1;c[b+36>>2]=h;h=c[k>>2]|0;g:do if((h|0)==3){c[G>>2]=3;do if(!i){if(!(c[F>>2]|0))break;switch(c[J+1392>>2]|0){case 5:case 3:{h=2;break}case 6:case 4:{h=3;break}default:h=1}c[b+308>>2]=h;break g}while(0);i=c[H>>2]|0;h=c[j>>2]|0;if((i|0)<(h|0)){c[b+308>>2]=2;break}else{c[b+308>>2]=(i|0)>(h|0)?3:1;break}}else{n=(h|0)==1?1:2;c[G>>2]=n;j=c[p>>2]|0;k=J+1680|0;h=J+1684|0;h:do if((j|0)==(c[k>>2]|0)){i=c[h>>2]|0;switch(i|0){case 3:case 0:{I=100;break h}default:{}}if((i|0)==(n|0)){I=100;break}c[b+308>>2]=(i|0)==1?2:3}else I=100;while(0);if((I|0)==100)c[b+308>>2]=0;c[h>>2]=n;c[k>>2]=j}while(0);eg(K);break a}}}}else if((I|0)==104)if(p){eg(K);break a}else{c[w>>2]=g;ig(e,16,151125,w);break}while(0);eg(K)}while(0);l=L;return}function pO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=b+4|0;g=c[b>>2]|0;f=c[d>>2]|0;g=nX(f|0,((f|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;f=y;e=c[h>>2]|0;d=c[d+4>>2]|0;e=nX(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;_n(b,h,g,f,e,y,2147483647,0)|0;e=b;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function qO(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;f=Qn(a,b,c,d,e,f,5)|0;return f|0}function rO(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;i=c[f>>2]|0;if((i|0)<(e-a|0)){h=0;j=0;while(1){if((j|0)>=(a|0))break;o=i+1|0;c[f>>2]=o;h=h<<8|(d[b+i>>0]|0);j=j+1|0;i=o}i=e-i|0;if((h|0)<1|(h|0)>(i|0)){c[k>>2]=h;c[k+4>>2]=i;ig(g,16,151286,k);h=-1094995529}}else h=-11;l=n;return h|0}function sO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=-1;e=(mO(a+d|0,a+e+1|0,g)|0)-a+-1|0;l=f;return ((e|0)>(b|0)?b:e)|0}function tO(a,b,c){a=a|0;b=b|0;c=c|0;return EO(a,b,c>>>0>268435455?-8:c<<3)|0}function uO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function vO(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function wO(a){a=a|0;var b=0,c=0,e=0;e=BO(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;CO(a,b);return (DO(a,b+1|0)|0)+-1|0}function xO(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[122258+a>>0]|0);return d[122770+a>>0]|0|0}function yO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116289+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){ig(0,16,151648,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[122258+a>>0]|0);a=d[122770+a>>0]|0}while(0);l=h;return a|0}function zO(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(uX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[122258+b>>0]|0);b=a[123282+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116289+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function AO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+20816|0;if((l|0)>=(m|0))W(20816);t=u+16|0;k=u+8|0;j=u;q=u+40|0;i=u+32|0;r=u+24|0;s=c[a+32>>2]&3;p=c[a>>2]|0;g=p+1200|0;if(c[(c[g>>2]|0)+60>>2]|0)yO(b)|0;n=(s|0)==3;if(n)uO(b)|0;o=p+1648|0;a:do if((mN(i,r,b,c[g>>2]|0,s,c[o>>2]|0,d)|0)>=0){if((s|0)!=1){f=0;while(1){if((f|0)>=(c[i>>2]|0))break;b:do if(uO(b)|0){h=r+(f<<2)|0;e=0;c:while(1){a=xO(b)|0;if(a>>>0<3){wO(b)|0;if((e|0)<(c[h>>2]|0))a=0;else{c[k>>2]=e;ig(d,16,151209,k);a=1}}else if((a|0)==3)a=5;else{c[j>>2]=a;ig(d,16,151170,j);a=1}switch(a&7){case 5:break b;case 0:break;default:break c}e=e+1|0}if(a|0){a=-1094995529;break a}}while(0);f=f+1|0}a=c[g>>2]|0;if((s|0)==2&(c[a+28>>2]|0)!=0)f=22;else f=21}else{a=c[g>>2]|0;f=21}if((f|0)==21?n&(c[a+32>>2]|0)==1:0)f=22;if((f|0)==22)oN(b,c[p+1204>>2]|0,r,s,q,c[o>>2]|0,d)|0;if(uO(b)|0){a=0;d:while(1){if((a|0)>=66){f=33;break}e=xO(b)|0;if(e>>>0>6){f=26;break}switch(e|0){case 5:{a=1;break a}case 0:{f=33;break d}default:{}}if((e|2|0)==3)wO(b)|0;switch(e|0){case 2:case 3:case 4:case 6:{xO(b)|0;break}default:{}}a=a+1|0}if((f|0)==26){c[t>>2]=e;ig(d,16,151238,t);a=-1094995529;break}else if((f|0)==33){a=0;break}}else a=0}else a=-1094995529;while(0);l=u;return a|0}function BO(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=DO(d,32)|0;l=b;return a|0}function CO(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function DO(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=vO(a,b)|0;break}else{b=b+-16|0;c=(vO(a,16)|0)<>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function FO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=p+4|0;n=p;c[k>>2]=f;c[n>>2]=g;j=c[a>>2]|0;h=c[b+68>>2]|0;if(h|0?(i=j+1708|0,(c[i>>2]|0)==0):0){KO(h,c[b+72>>2]|0,j+64|0,j+460|0,j+1700|0,j+1704|0,c[b+580>>2]|0,1,b)|0;c[i>>2]=1}do if(!(c[a+176>>2]&1)){h=LO(a,f,g)|0;if((gg(j,h,k,n)|0)<0){c[d>>2]=0;c[e>>2]=0;h=c[n>>2]|0;break}else{f=c[k>>2]|0;i=c[n>>2]|0;o=8;break}}else{h=g;i=g;o=8}while(0);if((o|0)==8){MO(a,f,i,b);c[d>>2]=c[k>>2];c[e>>2]=c[n>>2]}l=p;return h|0}function GO(a){a=a|0;a=c[a>>2]|0;IO(a+64|0);Ci(a+40|0);JO(a+460|0);eg(a);return}function HO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p;k=d+e|0;c[n>>2]=-1;b=0;f=0;j=0;e=d;a:while(1)b:while(1){i=j&(f|0)!=0;c:while(1){h=(b|0)!=0;while(1){if(e>>>0>=k>>>0){b=0;break a}e=mO(e,k,n)|0;g=c[n>>2]|0;if((g&-256|0)!=256){b=0;break a}q=g>>>1;g=q&63;switch(q&63){case 32:{j=1;continue a}case 33:{f=1;continue b}case 34:{b=1;continue c}default:{}}if((g|0)!=35&(h|(g|0)!=39)&i){o=9;break a}}}}if((o|0)==9){while(1){b=e+-4|0;if(b>>>0<=d>>>0)break;if(!(a[e+-5>>0]|0)){e=e+-1|0;o=9}else break}b=b-d|0}l=p;return b|0}function IO(a){a=a|0;var b=0;b=0;while(1){if((b|0)==16){b=0;break}Pg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==16){b=0;break}Pg(a+64+(b<<2)|0);b=b+1|0}while(1){if((b|0)==64)break;Pg(a+128+(b<<2)|0);b=b+1|0}c[a+388>>2]=0;c[a+392>>2]=0;c[a+384>>2]=0;return}function JO(a){a=a|0;c[a+92>>2]=0;eg(a+96|0);return}function KO(b,e,f,g,h,i,j,k,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+32|0;if((l|0)>=(m|0))W(32);y=z+24|0;x=z+16|0;o=z;if((e|0)<=-1){c[o>>2]=155428;c[o+4>>2]=155442;c[o+8>>2]=137;ig(0,0,159900,o);Tb()}w=b+e|0;do if((e|0)>3){if(((a[b>>0]|0)==0?(a[b+1>>0]|0)==0:0)?(d[b+2>>0]|0)<=1:0){p=28;break}c[h>>2]=1;v=e>>>0<21?e:21;o=b+v|0;if((e-v|0)<1){v=1;o=w}else{v=(a[o>>0]&3)+1&255;o=o+1|0}b=o;if((w-o|0)<1){t=0;b=w}else{t=d[b>>0]|0;b=b+1|0}c[i>>2]=2;o=0;u=0;a:while(1){if((u|0)>=(t|0)){p=27;break}e=b;if((w-b|0)<1){s=0;b=w}else{s=a[e>>0]&63;b=e+1|0}if((w-b|0)<2){r=0;b=w}else{r=b;r=(tX(d[r>>0]|d[r+1>>0]<<8|0)|0)&65535;b=b+2|0}q=0;while(1){if((q|0)>=(r|0))break;e=b;p=w-b|0;if((p|0)<2)o=0;else{o=b;o=(tX(d[o>>0]|d[o+1>>0]<<8|0)|0)&65535}b=o+2|0;if(p>>>0>>0){p=22;break a}o=XP(e,b,f,g,c[h>>2]|0,c[i>>2]|0,j,k,n)|0;if((o|0)<0){p=24;break a}q=q+1|0;b=e+(p>>>0>b>>>0?b:p)|0}u=u+1|0}if((p|0)==22){ig(n,16,155466,x);o=-1094995529;break}else if((p|0)==24){c[y>>2]=s;c[y+4>>2]=u;ig(n,16,155503,y);break}else if((p|0)==27){c[i>>2]=v;break}}else p=28;while(0);if((p|0)==28){c[h>>2]=0;o=XP(b,e,f,g,0,c[i>>2]|0,j,k,n)|0}l=z;return o|0}function LO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=c[b>>2]|0;j=k+32|0;k=k+20|0;h=0;a:while(1){if((h|0)>=(f|0)){b=-100;break}b=j;g=c[b>>2]|0;b=c[b+4>>2]|0;n=sX(g|0,b|0,8)|0;i=e+h|0;m=j;c[m>>2]=n|d[i>>0];c[m+4>>2]=y;b:do if((g&-65536|0)==65536&(b&255|0)==0){b=rX(g|0,b|0,9)|0;g=b&63;switch(b&63){case 32:case 33:case 34:case 35:case 36:case 37:case 39:break;default:if(!((b&56|0)==48|(g+-41|0)>>>0<4)){if(!(g>>>0<10|(g+-16|0)>>>0<6))break b;if((a[i>>0]|0)>=0)break b;if(c[k>>2]|0){l=12;break a}c[k>>2]=1;break b}}if(c[k>>2]|0){l=12;break a}}while(0);h=h+1|0}if((l|0)==12){c[k>>2]=0;b=h+-5|0}return b|0}function MO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o;f=c[a>>2]|0;j=f+64|0;k=f+460|0;c[a+32>>2]=1;c[a+224>>2]=0;c[a+312>>2]=0;JO(k);i=f+40|0;a:do if((Wi(i,b,d,e,c[f+1700>>2]|0,c[f+1704>>2]|0,173,1)|0)>=0){d=f+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;f=c[i>>2]|0;g=f+(b*68|0)+24|0;h=c[f+(b*68|0)+44>>2]|0;switch(h|0){case 32:{NO(g,e,j)|0;break}case 33:{OO(g,e,j,1)|0;break}case 34:{PO(g,e,j)|0;break}case 40:case 39:{QO(g,e,k,j,h)|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 1:case 0:{if(RO(a,f+(b*68|0)|0,e)|0)break a;break}default:{}}b=b+1|0}ig(e,16,151555,n)}while(0);l=o;return}function NO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+96|0;if((l|0)>=(m|0))W(96);x=D+80|0;v=D+72|0;s=D+64|0;q=D+56|0;p=D+48|0;o=D+40|0;n=D+32|0;k=D+24|0;j=D+16|0;i=D+8|0;B=D+84|0;z=Jh(4568)|0;c[B>>2]=z;C=z;a:do if(!z)f=-12;else{A=z+4|0;u=c[A>>2]|0;ig(d,48,155062,D);f=c[b>>2]|0;g=(c[b+4>>2]|0)-f|0;if(g>>>0>4096){c[i>>2]=g;c[i+4>>2]=4096;ig(d,24,155076,i);g=4096;f=c[b>>2]|0}c[u+4564>>2]=g;wX(u+468|0,f|0,g|0)|0;w=xP(b,4)|0;b:do if((w|0)<=15){if((xP(b,2)|0)!=3){ig(d,16,155121,k);break}c[u+4>>2]=(xP(b,6)|0)+1;t=u+8|0;c[t>>2]=(xP(b,3)|0)+1;a[u>>0]=wP(b)|0;if((xP(b,16)|0)!=65535){ig(d,16,155160,n);break}f=c[t>>2]|0;if((f|0)>7){c[o>>2]=f;ig(d,16,155200,o);break}if((NP(b,d,u+12|0,f)|0)>=0){o=wP(b)|0;c[u+348>>2]=o;if(!o)f=(c[t>>2]|0)+-1|0;else f=0;j=d+580|0;while(1){if((f|0)>=(c[t>>2]|0))break;i=u+352+(f<<2)|0;c[i>>2]=(vP(b)|0)+1;g=u+380+(f<<2)|0;c[g>>2]=vP(b)|0;c[u+408+(f<<2)>>2]=(vP(b)|0)+-1;i=(c[i>>2]|0)+-1|0;if(i>>>0>15){r=18;break}g=c[g>>2]|0;if(g>>>0>i>>>0?(c[q>>2]=g,ig(d,24,155288,q),c[j>>2]&8|0):0)break b;f=f+1|0}if((r|0)==18){c[p>>2]=i;ig(d,16,155237,p);break}j=u+436|0;c[j>>2]=xP(b,6)|0;r=vP(b)|0;f=r+1|0;k=u+440|0;c[k>>2]=f;if(r>>>0<=1023?(o=hX(f|0,((f|0)<0)<<31>>31|0,-1,-1)|0,q=y,h=c[j>>2]|0,r=hX(h|0,((h|0)<0)<<31>>31|0,1,0)|0,q=nX(r|0,y|0,o|0,q|0)|0,o=y,r=DP(b)|0,p=((r|0)<0)<<31>>31,!((o|0)>(p|0)|(o|0)==(p|0)&q>>>0>r>>>0)):0){i=1;while(1){if((i|0)<(f|0)){g=0;f=h}else break;while(1){if((g|0)>(f|0))break;RP(b,1);g=g+1|0;f=c[j>>2]|0}i=i+1|0;h=f;f=c[k>>2]|0}s=(wP(b)|0)&255;a[u+444>>0]=s;c:do if(s<<24>>24){c[u+448>>2]=JP(b,32)|0;c[u+452>>2]=JP(b,32)|0;s=(wP(b)|0)&255;a[u+456>>0]=s;if(s<<24>>24)c[u+460>>2]=(vP(b)|0)+1;f=vP(b)|0;h=u+464|0;c[h>>2]=f;if(f>>>0>(c[k>>2]|0)>>>0){c[v>>2]=f;ig(d,16,155365,v);break b}else g=0;while(1){if((g|0)>=(f|0))break c;vP(b)|0;if(!g)f=1;else f=wP(b)|0;SP(b,f,c[t>>2]|0);g=g+1|0;f=c[h>>2]|0}}while(0);wP(b)|0;f=DP(b)|0;if((f|0)<0){c[x>>2]=0-f;ig(d,16,155403,x);f=e+(w<<2)|0;if(c[f>>2]|0)break}else{f=e+(w<<2)|0;g=c[f>>2]|0;if((g|0)!=0?(YT(c[g+4>>2]|0,c[A>>2]|0,c[z+8>>2]|0)|0)==0:0){Pg(B);f=0;break a}}WP(e,w);c[f>>2]=C;f=0;break a}ig(d,16,155331,s)}}else{c[j>>2]=w;ig(d,16,152826,j)}while(0);Pg(B);f=-1094995529}while(0);l=D;return f|0}function OO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=r+16|0;h=r+8|0;n=r+44|0;i=r+40|0;o=Jh(17552)|0;c[n>>2]=o;p=o;do if(!o)f=-12;else{q=o+4|0;j=c[q>>2]|0;ig(b,48,152611,r);f=c[a>>2]|0;g=(c[a+4>>2]|0)-f|0;if(g>>>0>4096){c[h>>2]=g;c[h+4>>2]=4096;ig(b,24,152625,h);g=4096;f=c[a>>2]|0}c[j+17548>>2]=g;wX(j+13452|0,f|0,g|0)|0;f=LP(j,a,i,e,d,b)|0;if((f|0)<0){Pg(n);break}h=c[i>>2]|0;if(c[b+576>>2]&4|0){g=c[j+13376>>2]|0;a=c[j+13380>>2]|0;e=g-(c[j+12>>2]|0)-(c[j+16>>2]|0)|0;i=a-(c[j+20>>2]|0)-(c[j+24>>2]|0)|0;j=Eh(c[j+56>>2]|0)|0;c[k>>2]=h;c[k+4>>2]=g;c[k+8>>2]=a;c[k+12>>2]=e;c[k+16>>2]=i;c[k+20>>2]=j;ig(b,48,152670,k)}f=d+64+(h<<2)|0;g=c[f>>2]|0;if(g|0?(YT(c[g+4>>2]|0,c[q>>2]|0,c[o+8>>2]|0)|0)==0:0){Pg(n);f=0;break}MP(d,h);c[f>>2]=p;f=0}while(0);l=r;return f|0}function PO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+144|0;if((l|0)>=(m|0))W(144);I=K+120|0;G=K+112|0;E=K+104|0;D=K+96|0;B=K+88|0;z=K+80|0;w=K+72|0;v=K+64|0;t=K+56|0;s=K+48|0;r=K+40|0;o=K+32|0;n=K+24|0;k=K+16|0;j=K+8|0;h=K;J=K+128|0;x=K+124|0;g=$g(5792)|0;c[x>>2]=g;a:do if(!g)f=-12;else{C=Ah(g,5792,200,0,0)|0;c[J>>2]=C;H=C;if(!C){eg(x);f=-12;break}ig(d,48,151824,h);h=c[b>>2]|0;i=(c[b+4>>2]|0)-h|0;if(i>>>0>4096){c[j>>2]=i;c[j+4>>2]=4096;ig(d,24,151838,j);i=4096;h=c[b>>2]|0}c[g+5788>>2]=i;wX(g+1692|0,h|0,i|0)|0;a[g+53>>0]=1;u=g+44|0;c[u>>2]=1;p=g+48|0;c[p>>2]=1;q=g+52|0;a[q>>0]=1;a[g+57>>0]=0;c[g+60>>2]=0;c[g+64>>2]=0;a[g+1629>>0]=2;C=vP(b)|0;b:do if(C>>>0<=63){i=vP(b)|0;c[g>>2]=i;if(i>>>0>15){c[n>>2]=i;ig(d,16,151908,n);f=-1094995529;break}h=c[e+64+(i<<2)>>2]|0;if(!h){c[o>>2]=i;ig(d,16,151933,o);f=-1094995529;break}A=c[h+4>>2]|0;a[g+41>>0]=wP(b)|0;a[g+39>>0]=wP(b)|0;c[g+1624>>2]=xP(b,3)|0;a[g+4>>0]=wP(b)|0;a[g+5>>0]=wP(b)|0;c[g+8>>2]=(vP(b)|0)+1;c[g+12>>2]=(vP(b)|0)+1;c[g+16>>2]=yP(b)|0;a[g+20>>0]=wP(b)|0;a[g+21>>0]=wP(b)|0;o=(wP(b)|0)&255;a[g+22>>0]=o;h=g+24|0;c[h>>2]=0;do if(o<<24>>24){i=vP(b)|0;c[h>>2]=i;if((i|0)>=0?i>>>0<=(c[A+13324>>2]|0)>>>0:0)break;c[r>>2]=i;ig(d,16,151957,r);f=-1094995529;break b}while(0);h=yP(b)|0;c[g+28>>2]=h;if((h+12|0)>>>0>24){c[s>>2]=h;ig(d,16,151995,s);f=-1094995529;break}h=yP(b)|0;c[g+32>>2]=h;if((h+12|0)>>>0>24){c[t>>2]=h;ig(d,16,152030,t);f=-1094995529;break}a[g+36>>0]=wP(b)|0;a[g+37>>0]=wP(b)|0;a[g+38>>0]=wP(b)|0;a[g+40>>0]=wP(b)|0;t=g+42|0;a[t>>0]=wP(b)|0;a[g+43>>0]=wP(b)|0;do if(a[t>>0]|0){c[u>>2]=(vP(b)|0)+1;h=vP(b)|0;i=h+1|0;c[p>>2]=i;j=c[u>>2]|0;if((j|0)>=1?(j|0)<(c[A+13376>>2]|0):0){if((i|0)>=1?(i|0)<(c[A+13380>>2]|0):0){n=g+1648|0;c[n>>2]=Zh(j,4)|0;w=Zh(c[p>>2]|0,4)|0;c[g+1652>>2]=w;if((c[n>>2]|0)==0|(w|0)==0){f=-12;break b}w=(wP(b)|0)&255;a[q>>0]=w;do if(!(w<<24>>24)){g=0;j=0;k=0;while(1){i=(c[u>>2]|0)+-1|0;if((g|0)>=(i|0))break;w=(vP(b)|0)+1|0;c[(c[n>>2]|0)+(g<<2)>>2]=w;w=hX(j|0,k|0,w|0,0)|0;g=g+1|0;j=w;k=y}g=c[A+13384>>2]|0;h=((g|0)<0)<<31>>31;if(!(k>>>0>>0|(k|0)==(h|0)&j>>>0>>0)){ig(d,16,152146,z);f=-1094995529;break b}g=iX(g|0,h|0,j|0,k|0)|0;c[(c[n>>2]|0)+(i<<2)>>2]=g;g=c[x>>2]|0;i=g+48|0;j=g+1652|0;h=0;n=0;o=0;while(1){k=(c[i>>2]|0)+-1|0;if((h|0)>=(k|0))break;z=(vP(b)|0)+1|0;c[(c[j>>2]|0)+(h<<2)>>2]=z;z=hX(n|0,o|0,z|0,0)|0;h=h+1|0;n=z;o=y}h=c[A+13388>>2]|0;i=((h|0)<0)<<31>>31;if(o>>>0>>0|(o|0)==(i|0)&n>>>0>>0){B=iX(h|0,i|0,n|0,o|0)|0;c[(c[j>>2]|0)+(k<<2)>>2]=B;break}else{ig(d,16,152168,B);f=-1094995529;break b}}while(0);a[g+53>>0]=wP(b)|0;break}c[w>>2]=h;ig(d,16,152107,w);f=-1094995529;break b}c[v>>2]=j+-1;ig(d,16,152065,v);f=-1094995529;break b}while(0);a[g+54>>0]=wP(b)|0;B=(wP(b)|0)&255;a[g+55>>0]=B;do if(B<<24>>24?(a[g+56>>0]=wP(b)|0,B=(wP(b)|0)&255,a[g+57>>0]=B,B<<24>>24==0):0){h=yP(b)|0;i=yP(b)|0;if((h+6|0)>>>0>12){c[D>>2]=h;ig(d,16,152191,D);f=-1094995529;break b}if((i+6|0)>>>0>12){c[E>>2]=i;ig(d,16,152230,E);f=-1094995529;break b}else{c[g+60>>2]=h<<1;c[g+64>>2]=i<<1;break}}while(0);E=(wP(b)|0)&255;a[g+68>>0]=E;if(E<<24>>24?(zP(g+69|0),f=AP(b,d,g+69|0,A)|0,(f|0)<0):0)break;a[g+1617>>0]=wP(b)|0;f=vP(b)|0;if(f>>>0>(c[A+13336>>2]|0)>>>0){c[G>>2]=f;ig(d,16,152267,G);f=-1094995529;break}c[g+1620>>2]=f+2;a[g+1628>>0]=wP(b)|0;if((wP(b)|0?(G=wP(b)|0,xP(b,7)|0,(G|0)!=0&(a[A+302>>0]|0)==4):0)?(F=BP(b,d,g,A)|0,(F|0)<0):0){f=F;break}f=CP(g,A)|0;if((f|0)>=0){g=DP(b)|0;if((g|0)<0){c[I>>2]=0-g;ig(d,16,152318,I);break}else{EP(e,C);c[e+128+(C<<2)>>2]=H;f=0;break a}}}else{c[k>>2]=C;ig(d,16,151883,k);f=-1094995529}while(0);Pg(J)}while(0);l=K;return f|0}function QO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;while(1){f=XO(a,b,c,d,e)|0;if((f|0)<0)break;if(!(YO(a)|0)){f=1;break}}return f|0}function RO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;if((l|0)>=(m|0))W(32);w=A+24|0;u=A+16|0;j=A+8|0;i=A;y=c[b>>2]|0;v=e+24|0;q=y+628|0;a[q>>0]=SO(v)|0;x=c[y+548>>2]|0;c[b+312>>2]=x;c[b+308>>2]=x;x=e+44|0;if((c[x>>2]&-8|0)==16){c[b+224>>2]=1;a[y+1242>>0]=SO(v)|0}g=TO(v)|0;c[y+608>>2]=g;a:do if(g>>>0<=63?(h=c[y+192+(g<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;t=y+456|0;c[t>>2]=g;g=c[g>>2]|0;if(g>>>0<=15?(k=c[y+128+(g<<2)>>2]|0,k|0):0){s=y+452|0;h=c[s>>2]|0;g=c[k+4>>2]|0;if((h|0)==(g|0)){g=h;h=c[y+448>>2]|0}else{c[s>>2]=g;h=c[(c[y+64+(c[g>>2]<<2)>>2]|0)+4>>2]|0;c[y+448>>2]=h}j=c[g+13376>>2]|0;c[b+328>>2]=j;k=c[g+13380>>2]|0;c[b+332>>2]=k;c[b+320>>2]=j-(c[g+12>>2]|0)-(c[g+16>>2]|0);c[b+324>>2]=k-(c[g+20>>2]|0)-(c[g+24>>2]|0);c[b+336>>2]=c[g+56>>2];c[f+716>>2]=d[g+302>>0];c[f+720>>2]=d[g+335>>0];if(!(a[h+444>>0]|0)){if(c[g+240>>2]|0){o=g+244|0;p=g+248|0;z=16}}else{o=h+448|0;p=h+452|0;z=16}if((z|0)==16?(n=c[o>>2]|0,r=c[p>>2]|0,(n|0)!=0&(r|0)!=0):0)_n(f+764|0,f+760|0,n,((n|0)<0)<<31>>31,r,((r|0)<0)<<31>>31,1073741824,0)|0;do if(!(a[q>>0]|0)){if(!(a[(c[t>>2]|0)+41>>0]|0))g=0;else g=(SO(v)|0)&255;k=y+629|0;a[k>>0]=g;h=c[s>>2]|0;i=c[h+13384>>2]|0;h=c[h+13388>>2]|0;g=(N(i<<1,h)|0)+-2|0;q=g>>>0>65535;g=q?g>>>16:g;q=q?16:0;r=(g&65280|0)==0;g=(r?q:q|8)+(d[116289+(r?g:g>>>8)>>0]|0)|0;if(!g){j=0;g=i}else{j=UO(v,g)|0;g=c[s>>2]|0;h=c[g+13388>>2]|0;g=c[g+13384>>2]|0}c[y+612>>2]=j;if(j>>>0<(N(h,g)|0)>>>0)if(!(a[k>>0]|0)){g=0;break}else{g=0;break a}else{c[u>>2]=j;ig(f,16,151587,u);g=-1094995529;break a}}else{a[y+629>>0]=0;g=0}while(0);while(1){if((g|0)>=(c[(c[t>>2]|0)+1624>>2]|0))break;VO(v);g=g+1|0}g=TO(v)|0;c[y+620>>2]=g;if(g>>>0>=3){c[w>>2]=g;ig(f,16,151623,w);g=-1094995529;break}c[b+32>>2]=(g|0)==0?3:(g|0)==1?2:1;if(a[(c[t>>2]|0)+39>>0]|0)a[y+630>>0]=SO(v)|0;if(a[(c[s>>2]|0)+8>>0]|0)a[y+631>>0]=UO(v,2)|0;if(((c[x>>2]|0)+-19|0)>>>0<2)g=0;else{g=UO(v,c[(c[s>>2]|0)+60>>2]|0)|0;c[y+624>>2]=g;g=WO(c[s>>2]|0,c[y+1716>>2]|0,g,c[x>>2]|0)|0}c[y+1712>>2]=g;c[b+316>>2]=g;if(c[e+48>>2]|0){g=1;break}switch(c[x>>2]|0){case 9:case 7:case 8:case 6:case 4:case 2:case 0:{g=1;break a}default:{}}c[y+1716>>2]=g;g=1;break}c[j>>2]=g;ig(f,16,151908,j);g=-1094995529}else z=5;while(0);if((z|0)==5){c[i>>2]=g;ig(f,16,151883,i);g=-1094995529}l=A;return g|0}function SO(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function TO(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116289+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){ig(0,16,151648,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122258+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122770+a>>0]|0}while(0);l=i;return a|0}function UO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function VO(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+1|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function WO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=1<>2];g=(b|0)%(f|0)|0;a=b-g|0;if((g|0)>(d|0)?(g-d|0)>=((f|0)/2|0|0):0)a=a+f|0;else if((g|0)<(d|0))a=a-((d-g|0)>((f|0)/2|0|0)?f:0)|0;return ((e+-16|0)>>>0<3?0:a)+d|0}function XO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);ig(b,48,151672,j);f=255;h=0;while(1){if((f|0)!=255){f=0;g=255;i=5;break}if((h|0)>2147483392|(ZO(a)|0)<16){f=-1094995529;break}g=aP(a,8)|0;f=g;h=g+h|0}a:do if((i|0)==5){while(1){if((g|0)!=255)break;i=ZO(a)|0;k=((i|0)<0)<<31>>31;g=sX(f|0,((f|0)<0)<<31>>31|0,3)|0;g=hX(g|0,y|0,8,0)|0;n=y;if((n|0)>(k|0)|(n|0)==(k|0)&g>>>0>i>>>0){f=-1094995529;break a}g=aP(a,8)|0;f=g+f|0;i=5}if((e|0)==39){f=bP(a,b,c,d,h,f)|0;break}else{cP(a,b,c,h,f);f=0;break}}while(0);l=j;return f|0}function YO(a){a=a|0;if((ZO(a)|0)>0)a=(_O(a)|0)!=128&1;else a=0;return a|0}function ZO(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-($O(a)|0)|0}function _O(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>24|0}function $O(a){a=a|0;return c[a+8>>2]|0}function aP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function bP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;do switch(f|0){case 256:{dP(d,a);a=0;break}case 45:{gP(d+52|0,a);a=0;break}case 47:{hP(d+72|0,a);a=0;break}case 1:{a=iP(d,a,e,b,g)|0;break}case 137:{jP(d+100|0,a);a=0;break}case 144:{kP(d+128|0,a);a=0;break}case 129:{a=lP(d,a,b)|0;break}case 4:{a=mP(d,a,g)|0;break}case 147:{nP(d+140|0,a);a=0;break}default:{c[h>>2]=f;ig(b,48,151709,h);eP(a,g<<3);a=0}}while(0);l=i;return a|0}function cP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if((e|0)==132)dP(d,a);else{c[g>>2]=e;ig(b,48,151686,g);eP(a,f<<3)}l=h;return}function dP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=(aP(c,8)|0)&255;f=b+48|0;d=0;while(1){if((d|0)==3)break;a:do switch(g<<24>>24){case 0:{a[f>>0]=1;e=0;while(1){if((e|0)==16)break a;a[b+(d<<4)+e>>0]=aP(c,8)|0;e=e+1|0}}case 1:{fP(c,16);break}case 2:{fP(c,32);break}default:{}}while(0);d=d+1|0}return}function eP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function fP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function gP(a,b){a=a|0;b=b|0;var d=0,e=0;qP(b)|0;d=(tP(b)|0)==0;c[a>>2]=d&1;if(d){d=a+4|0;c[d>>2]=aP(b,7)|0;e=a+12|0;c[e>>2]=tP(b)|0;c[a+8>>2]=aP(b,6)|0;fP(b,3);c[a+16>>2]=tP(b)|0;fP(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)fP(b,16);fP(b,8);sP(b)}sP(b);return}function hP(a,b){a=a|0;b=b|0;var d=0;d=(tP(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=tP(b)|0;c[a+12>>2]=tP(b)|0;c[a+4>>2]=aP(b,16)|0;sP(b)}return}function iP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j+8|0;g=j;d=c[d+64+(c[a+136>>2]<<2)>>2]|0;if(!d)f=-12;else{if(c[(c[d+4>>2]|0)+216>>2]|0){d=aP(b,4)|0;a=a+88|0;c[a>>2]=0;switch(d|0){case 2:case 10:case 12:{ig(e,48,151799,g);d=2;i=6;break}case 1:case 9:case 11:{ig(e,48,151813,h);d=1;i=6;break}default:{}}if((i|0)==6)c[a>>2]=d;aP(b,2)|0;aP(b,1)|0;sP(b);f=f+-1|0}eP(b,f<<3);f=0}l=j;return f|0}function jP(a,d){a=a|0;d=d|0;var e=0,f=0;e=0;while(1){f=(aP(d,16)|0)&65535;if((e|0)==3)break;b[a+4+(e<<2)>>1]=f;b[a+4+(e<<2)+2>>1]=aP(d,16)|0;e=e+1|0}b[a+16>>1]=f;b[a+18>>1]=aP(d,16)|0;c[a+20>>2]=oP(d,32)|0;c[a+24>>2]=oP(d,32)|0;c[a>>2]=2;return}function kP(a,d){a=a|0;d=d|0;b[a+4>>1]=oP(d,16)|0;b[a+6>>1]=oP(d,16)|0;c[a>>2]=2;return}function lP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h+8|0;e=h;aP(b,4)|0;aP(b,1)|0;aP(b,1)|0;g=qP(b)|0;a:do if(g>>>0>15){c[e>>2]=g;ig(d,16,151732,e);e=-1094995529}else{e=qP(b)|0;if(e>>>0>15){c[f>>2]=e;ig(d,16,151763,f);e=-1094995529;break}c[a+136>>2]=e;e=1;while(1){if((e|0)>(g|0)){e=0;break a}qP(b)|0;e=e+1|0}}while(0);l=h;return e|0}function mP(a,b,c){a=a|0;b=b|0;c=c|0;do if((c|0)>=7){if((aP(b,8)|0)==255){fP(b,8);c=c+-8|0}else c=c+-7|0;fP(b,8);fP(b,8);if((oP(b,32)|0)==1195456820){c=pP(a+92|0,b,c)|0;break}else{eP(b,c<<3);c=0;break}}else c=-22;while(0);return c|0}function nP(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=aP(b,8)|0;return}function oP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=aP(a,b)|0;break}else{b=b+-16|0;c=(aP(a,16)|0)<=3){if((aP(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}fP(d,8);e=e+1|0}}fP(d,1);if(((aP(d,1)|0)!=0?(fP(d,1),g=aP(d,5)|0,fP(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=nX(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=hX(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=tk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(aP(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(aP(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(aP(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}fP(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function qP(a){a=a|0;var b=0,c=0,e=0;e=rP(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;eP(a,b);return (oP(a,b+1|0)|0)+-1|0}function rP(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=oP(d,32)|0;l=b;return a|0}function sP(a){a=a|0;fP(a,1);return}function tP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function uP(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=a;c[d>>2]=b;eg(b+1648|0);eg(b+1652|0);eg(b+1656|0);eg(b+1660|0);eg(b+1664|0);eg(b+1668|0);eg(b+1672|0);eg(b+1680|0);eg(b+1676|0);eg(b+1688|0);eg(d);l=a;return}function vP(a){a=a|0;var b=0,c=0,e=0;e=HP(a,32)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;IP(a,b);return (JP(a,b+1|0)|0)+-1|0}function wP(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function xP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function yP(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122258+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123282+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116289+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function zP(b){b=b|0;var c=0,d=0,e=0;c=0;while(1){if((c|0)==6)break;d=b+(c<<6)|0;e=d+16|0;do{a[d>>0]=16;d=d+1|0}while((d|0)<(e|0));a[b+1536+c>>0]=16;a[b+1542+c>>0]=16;c=c+1|0}d=b+384|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+448|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+512|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+576|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+640|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+704|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+768|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+832|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+896|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+960|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1024|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1088|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1152|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1216|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1280|0;c=152483;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1344|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1408|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));d=b+1472|0;c=152547;e=d+64|0;do{a[d>>0]=a[c>>0]|0;d=d+1|0;c=c+1|0}while((d|0)<(e|0));return}function AP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);v=w;o=0;a:while(1){if((o|0)>=4){i=20;break}s=(o|0)==3?3:1;t=(o|0)>0?64:16;u=(o|0)>1;q=o+-2|0;n=1<<(o<<1)+4;n=(n|0)<64?n:64;r=(o|0)==0;p=0;while(1){if((p|0)>=6)break;b:do if(!(((wP(b)|0)&255)<<24>>24)){h=vP(b)|0;if(h|0){h=N(h,s)|0;if(p>>>0>>0){i=8;break a}h=p-h|0;wX(f+(o*384|0)+(p<<6)|0,f+(o*384|0)+(h<<6)|0,t|0)|0;if(u)a[f+1536+(q*6|0)+p>>0]=a[f+1536+(q*6|0)+h>>0]|0}}else{if(u){i=(yP(b)|0)+8|0;a[f+1536+(q*6|0)+p>>0]=i;h=0}else{h=0;i=8}while(1){if((h|0)>=(n|0))break b;if(r){j=(d[151411+h>>0]|0)<<2;k=151395+h|0}else{j=(d[151491+h>>0]|0)<<3;k=151427+h|0}j=j+(d[k>>0]|0)|0;k=(yP(b)|0)+i|0;a[f+(o*384|0)+(p<<6)+j>>0]=k;h=h+1|0;i=k&255}}while(0);p=p+s|0}o=o+1|0}if((i|0)==8){c[v>>2]=h;ig(e,16,152442,v);h=-1094995529}else if((i|0)==20)if((c[g+4>>2]|0)==3){h=0;while(1){if((h|0)==64)break;a[f+1216+h>>0]=a[f+832+h>>0]|0;a[f+1280+h>>0]=a[f+896+h>>0]|0;a[f+1408+h>>0]=a[f+1024+h>>0]|0;a[f+1472+h>>0]=a[f+1088+h>>0]|0;h=h+1|0}a[f+1543>>0]=a[f+1537>>0]|0;a[f+1544>>0]=a[f+1538>>0]|0;a[f+1546>>0]=a[f+1540>>0]|0;a[f+1547>>0]=a[f+1541>>0]|0;h=0}else h=0;l=w;return h|0}function BP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);p=q+16|0;o=q+8|0;i=q;if(a[f+21>>0]|0)a[f+1629>>0]=(vP(b)|0)+2;a[f+1630>>0]=wP(b)|0;k=(wP(b)|0)&255;a[f+1631>>0]=k;a:do if(!(k<<24>>24))j=12;else{a[f+1632>>0]=vP(b)|0;r=vP(b)|0;h=r&255;k=f+1633|0;a[k>>0]=h;if((r&254)>>>0>5){ig(e,16,152343,i);break}else i=0;while(1){if((i|0)>(h&255|0)){j=12;break a}r=(GP(b)|0)&255;a[f+1634+i>>0]=r;if(r<<24>>24)ig(e,24,152407,o);r=(GP(b)|0)&255;a[f+1640+i>>0]=r;if(r<<24>>24)ig(e,24,152407,p);i=i+1|0;h=a[k>>0]|0}}while(0);if((j|0)==12?(r=f+1646|0,a[r>>0]=vP(b)|0,n=vP(b)|0,a[f+1647>>0]=n,p=c[g+44>>2]|0,(((p|0)>10?p+-10|0:0)|0)>=(d[r>>0]|0)):0){r=c[g+48>>2]|0;l=q;return ((((r|0)>10?r+-10|0:0)|0)<(n&255|0)?-1094995529:0)|0}l=q;return -1094995529}function CP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=b+44|0;x=b+1656|0;c[x>>2]=Zh((c[w>>2]|0)+1|0,4)|0;y=b+48|0;v=b+1660|0;c[v>>2]=Zh((c[y>>2]|0)+1|0,4)|0;z=d+13384|0;t=Zh(c[z>>2]|0,4)|0;i=b+1664|0;c[i>>2]=t;e=c[x>>2]|0;a:do if((e|0)!=0?!((t|0)==0|(c[v>>2]|0)==0):0){q=b+1648|0;if(a[b+52>>0]|0){e=c[q>>2]|0;if(!e){c[q>>2]=Zh(c[w>>2]|0,4)|0;f=Zh(c[y>>2]|0,4)|0;c[b+1652>>2]=f;e=c[q>>2]|0;if(!e){e=-12;break}}else f=c[b+1652>>2]|0;if(!f){e=-12;break}else g=0;while(1){h=c[w>>2]|0;if((g|0)>=(h|0))break;t=g+1|0;s=c[z>>2]|0;c[e+(g<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,g)|0)/(h|0)|0);g=t}g=d+13388|0;e=0;while(1){h=c[y>>2]|0;if((e|0)>=(h|0))break;t=e+1|0;s=c[g>>2]|0;c[f+(e<<2)>>2]=((N(s,t)|0)/(h|0)|0)-((N(s,e)|0)/(h|0)|0);e=t}e=c[x>>2]|0}c[e>>2]=0;f=0;g=0;while(1){if((f|0)>=(c[w>>2]|0))break;t=(c[(c[q>>2]|0)+(f<<2)>>2]|0)+g|0;s=f+1|0;c[e+(s<<2)>>2]=t;f=s;g=t}g=c[v>>2]|0;c[g>>2]=0;n=b+1652|0;f=0;h=0;while(1){if((f|0)>=(c[y>>2]|0)){f=0;g=0;break}t=(c[(c[n>>2]|0)+(f<<2)>>2]|0)+h|0;s=f+1|0;c[g+(s<<2)>>2]=t;f=s;h=t}while(1){h=c[z>>2]|0;if((g|0)>=(h|0))break;t=f+(g>>>0>(c[e+(f<<2)>>2]|0)>>>0&1)|0;c[(c[i>>2]|0)+(g<<2)>>2]=t;f=t;g=g+1|0}m=N(c[d+13388>>2]|0,h)|0;s=b+1668|0;c[s>>2]=Zh(m,4)|0;e=b+1672|0;c[e>>2]=Zh(m,4)|0;f=b+1676|0;c[f>>2]=Zh(m,4)|0;t=d+13420|0;g=(c[t>>2]|0)+2|0;g=Zh(N(g,g)|0,4)|0;p=b+1688|0;c[p>>2]=g;o=c[s>>2]|0;if(((o|0)!=0?(r=c[e>>2]|0,(r|0)!=0):0)?(u=c[f>>2]|0,!((g|0)==0|(u|0)==0)):0){i=0;while(1){if((i|0)>=(m|0)){e=0;l=0;break}j=c[z>>2]|0;k=(i|0)%(j|0)|0;l=(i|0)/(j|0)|0;f=c[w>>2]|0;e=0;while(1){if((e|0)>=(f|0)){e=0;break}g=e+1|0;if(k>>>0<(c[(c[x>>2]|0)+(g<<2)>>2]|0)>>>0)break;else e=g}g=c[y>>2]|0;f=0;while(1){if((f|0)>=(g|0)){h=0;break}h=f+1|0;if(l>>>0<(c[(c[v>>2]|0)+(h<<2)>>2]|0)>>>0){h=f;break}else f=h}f=0;g=0;while(1){if((g|0)>=(e|0)){g=0;break}f=(N(c[(c[q>>2]|0)+(g<<2)>>2]|0,c[(c[n>>2]|0)+(h<<2)>>2]|0)|0)+f|0;g=g+1|0}while(1){if((g|0)>=(h|0))break;f=(N(c[(c[n>>2]|0)+(g<<2)>>2]|0,j)|0)+f|0;g=g+1|0}l=N(c[(c[q>>2]|0)+(e<<2)>>2]|0,l-(c[(c[v>>2]|0)+(h<<2)>>2]|0)|0)|0;l=f+k+l-(c[(c[x>>2]|0)+(e<<2)>>2]|0)|0;c[o+(i<<2)>>2]=l;c[r+(l<<2)>>2]=i;i=i+1|0}b:while(1){if((l|0)>=(c[y>>2]|0))break;m=l+1|0;h=0;while(1){if((h|0)>=(c[w>>2]|0)){l=m;continue b}g=c[v>>2]|0;i=g+(m<<2)|0;j=h+1|0;g=c[g+(l<<2)>>2]|0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;f=c[x>>2]|0;k=f+(j<<2)|0;f=c[f+(h<<2)>>2]|0;while(1){if(f>>>0>=(c[k>>2]|0)>>>0)break;c[u+(c[o+((N(c[z>>2]|0,g)|0)+f<<2)>>2]<<2)>>2]=e;f=f+1|0}g=g+1|0}e=e+1|0;h=j}}g=Zh(e,4)|0;c[b+1680>>2]=g;if(g){f=0;while(1){if((f|0)<(c[y>>2]|0))e=0;else break;while(1){h=c[w>>2]|0;if((e|0)>=(h|0))break;u=N(c[z>>2]|0,c[(c[v>>2]|0)+(f<<2)>>2]|0)|0;c[g+((N(h,f)|0)+e<<2)>>2]=(c[(c[x>>2]|0)+(e<<2)>>2]|0)+u;e=e+1|0}f=f+1|0}i=c[d+13336>>2]|0;h=c[d+13328>>2]|0;g=c[p>>2]|0;j=c[t>>2]|0;n=g+(j+3<<2)|0;c[b+1684>>2]=n;e=0;while(1){f=j+2|0;if((e|0)>=(f|0))break;c[g+((N(f,e)|0)<<2)>>2]=-1;c[g+(e<<2)>>2]=-1;e=e+1|0;j=c[t>>2]|0}l=i-h|0;m=l<<1;k=0;e=j;while(1){if((k|0)>(e|0)){e=0;break a}i=k>>l;h=0;while(1){if((h|0)>(e|0))break;f=(N(c[z>>2]|0,i)|0)+(h>>l)|0;f=c[(c[s>>2]|0)+(f<<2)>>2]<=(l|0))break;b=1<>2]=f;h=h+1|0;e=c[t>>2]|0}k=k+1|0}}else e=-12}else e=-12}else e=-12;while(0);return e|0}function DP(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(FP(a)|0)|0}function EP(a,b){a=a|0;b=b|0;var d=0,e=0;b=a+128+(b<<2)|0;d=c[b>>2]|0;if(d|0?(e=a+392|0,(c[e>>2]|0)==(c[d+4>>2]|0)):0)c[e>>2]=0;Pg(b);return}function FP(a){a=a|0;return c[a+8>>2]|0}function GP(a){a=a|0;a=vP(a)|0;return ((a&1)+-1^a>>>1)+1|0}function HP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=e;if((b|0)<26)a=KP(a,b)|0;else{c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=JP(d,b)|0}l=e;return a|0}function IP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function JP(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=xP(a,b)|0;break}else{b=b+-16|0;c=(xP(a,16)|0)<>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function LP(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0;_=l;l=l+272|0;if((l|0)>=(m|0))W(272);Z=_+256|0;Y=_+248|0;X=_+240|0;V=_+232|0;U=_+224|0;T=_+216|0;S=_+208|0;R=_+200|0;P=_+192|0;O=_+176|0;M=_+168|0;L=_+160|0;K=_+152|0;H=_+144|0;F=_+136|0;E=_+120|0;D=_+112|0;C=_+104|0;B=_+96|0;A=_+88|0;x=_+80|0;w=_+72|0;u=_+64|0;t=_+56|0;r=_+40|0;q=_+32|0;p=_+24|0;o=_+16|0;n=_+8|0;k=_;j=xP(e,4)|0;c[d>>2]=j;a:do if(j>>>0<=15){if(h|0?(c[h+(j<<2)>>2]|0)==0:0){c[n>>2]=j;ig(i,16,152851,n);h=-1094995529;break}h=(xP(e,3)|0)+1|0;v=d+68|0;c[v>>2]=h;if((h|0)>7){c[o>>2]=h;ig(i,16,152874,o);h=-1094995529;break}a[d+156>>0]=xP(e,1)|0;h=NP(e,i,d+300|0,c[v>>2]|0)|0;if((h|0)>=0){h=vP(e)|0;c[f>>2]=h;if(h>>>0>15){c[p>>2]=h;ig(i,16,151908,p);h=-1094995529;break}h=vP(e)|0;o=d+4|0;c[o>>2]=h;if(h>>>0>3){c[q>>2]=h;ig(i,16,152911,q);h=-1094995529;break}if((h|0)==3){h=(wP(e)|0)&255;a[d+8>>0]=h}else h=a[d+8>>0]|0;if(h<<24>>24)c[o>>2]=0;I=d+13376|0;c[I>>2]=vP(e)|0;h=vP(e)|0;J=d+13380|0;c[J>>2]=h;h=ji(c[I>>2]|0,h,0,i)|0;if((h|0)>=0){if(wP(e)|0){k=c[o>>2]|0;n=(k|0)<2?2:1;k=(k|0)<3?2:1;h=d+28|0;c[h>>2]=N(k,vP(e)|0)|0;j=d+32|0;c[j>>2]=N(vP(e)|0,k)|0;k=d+36|0;c[k>>2]=N(vP(e)|0,n)|0;n=N(vP(e)|0,n)|0;c[d+40>>2]=n;if(c[i+64>>2]&65536|0){z=c[j>>2]|0;G=c[k>>2]|0;c[r>>2]=c[h>>2];c[r+4>>2]=z;c[r+8>>2]=G;c[r+12>>2]=n;ig(i,48,152944,r);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}G=d+12|0;c[G>>2]=c[h>>2];c[G+4>>2]=c[h+4>>2];c[G+8>>2]=c[h+8>>2];c[G+12>>2]=c[h+12>>2]}G=d+44|0;c[G>>2]=(vP(e)|0)+8;h=(vP(e)|0)+8|0;if(c[o>>2]|0?(s=c[G>>2]|0,(h|0)!=(s|0)):0){c[t>>2]=s;c[t+4>>2]=h;ig(i,16,153020,t);h=-1094995529;break}c[d+48>>2]=h;h=OP(i,d)|0;if((h|0)>=0){h=vP(e)|0;z=h+4|0;y=d+60|0;c[y>>2]=z;if(z>>>0>16){c[u>>2]=h;ig(i,16,153103,u);h=-1094995529;break}o=(wP(e)|0)!=0;if(o)p=0;else p=(c[v>>2]|0)+-1|0;z=i+580|0;n=p;while(1){if((n|0)>=(c[v>>2]|0))break;f=d+72+(n*12|0)|0;c[f>>2]=(vP(e)|0)+1;j=d+72+(n*12|0)+4|0;c[j>>2]=vP(e)|0;c[d+72+(n*12|0)+8>>2]=(vP(e)|0)+-1;k=c[f>>2]|0;if(k>>>0>16){Q=34;break}h=c[j>>2]|0;if((h|0)>=(k|0)){c[x>>2]=h;ig(i,24,153203,x);if(c[z>>2]&8|0){h=-1094995529;break a}h=c[j>>2]|0;if((h|0)>15){h=-1094995529;break a}c[f>>2]=h+1}n=n+1|0}if((Q|0)==34){c[w>>2]=k+-1;ig(i,16,153152,w);h=-1094995529;break}b:do if(!o){j=d+72+(p*12|0)|0;k=d+72+(p*12|0)+4|0;n=d+72+(p*12|0)+8|0;h=0;while(1){if((h|0)>=(p|0))break b;c[d+72+(h*12|0)>>2]=c[j>>2];c[d+72+(h*12|0)+4>>2]=c[k>>2];c[d+72+(h*12|0)+8>>2]=c[n>>2];h=h+1|0}}while(0);r=d+13320|0;c[r>>2]=(vP(e)|0)+3;s=d+13324|0;c[s>>2]=vP(e)|0;t=d+13328|0;c[t>>2]=(vP(e)|0)+2;j=vP(e)|0;k=c[t>>2]|0;u=d+13332|0;c[u>>2]=k+j;n=c[r>>2]|0;if((n+-3|0)>>>0>27){c[A>>2]=n;ig(i,16,153246,A);h=-1094995529;break}h=c[s>>2]|0;if(h>>>0>30){c[B>>2]=h;ig(i,16,153284,B);h=-1094995529;break}if(k>>>0>=n>>>0|k>>>0<2){ig(i,16,153341,C);h=-1094995529;break}if(j>>>0>30){c[D>>2]=j;ig(i,16,153376,D);h=-1094995529;break}p=d+13344|0;c[p>>2]=vP(e)|0;q=d+13348|0;c[q>>2]=vP(e)|0;D=(wP(e)|0)&255;a[d+634>>0]=D;do if(D<<24>>24){h=d+635|0;zP(h);if(!(wP(e)|0))break;h=AP(e,i,h,d)|0;if((h|0)<0)break a}while(0);a[d+13196>>0]=wP(e)|0;a[d+13197>>0]=wP(e)|0;D=wP(e)|0;c[d+64>>2]=D;do if(D|0){h=d+13300|0;a[h>>0]=(xP(e,4)|0)+1;j=d+13301|0;a[j>>0]=(xP(e,4)|0)+1;k=(vP(e)|0)+3|0;c[d+13304>>2]=k;c[d+13308>>2]=(vP(e)|0)+k;h=a[h>>0]|0;j=a[j>>0]|0;k=c[G>>2]|0;if((k|0)<(((h&255)>(j&255)?h:j)&255|0)){c[E>>2]=h&255;c[E+4>>2]=j&255;c[E+8>>2]=k;ig(i,16,153436,E);h=-1094995529;break a}else{a[d+13312>>0]=wP(e)|0;break}}while(0);h=vP(e)|0;k=d+2184|0;c[k>>2]=h;if(h>>>0>64){c[F>>2]=h;ig(i,16,153498,F);h=-1094995529;break}else j=0;while(1){if(j>>>0>=h>>>0)break;h=PP(e,i,d+2188+(j*172|0)|0,d,0)|0;if((h|0)<0)break a;j=j+1|0;h=c[k>>2]|0}F=(wP(e)|0)&255;a[d+13198>>0]=F;c:do if(F<<24>>24){j=vP(e)|0;h=j&255;k=d+13296|0;a[k>>0]=h;j=j&255;if(j>>>0>32){c[H>>2]=j;ig(i,16,153528,H);h=-1094995529;break a}else j=0;while(1){if((j|0)>=(h&255|0))break c;b[d+13200+(j<<1)>>1]=xP(e,c[y>>2]|0)|0;a[d+13264+j>>0]=wP(e)|0;j=j+1|0;h=a[k>>0]|0}}while(0);a[d+13316>>0]=wP(e)|0;a[d+13317>>0]=wP(e)|0;c[d+160>>2]=0;c[d+164>>2]=1;if(wP(e)|0)QP(e,i,g,d);do if(wP(e)|0){h=0;j=0;while(1){if((h|0)==1)break;h=h+1|0;j=wP(e)|0}RP(e,7);if(!j)break;c[d+13352>>2]=wP(e)|0;c[d+13356>>2]=wP(e)|0;c[d+13360>>2]=wP(e)|0;c[d+13364>>2]=wP(e)|0;if(wP(e)|0)ig(i,24,153562,K);c[d+13368>>2]=wP(e)|0;if(wP(e)|0)ig(i,24,153618,L);c[d+13372>>2]=wP(e)|0;if(!(wP(e)|0))break;ig(i,24,153675,M)}while(0);if(!g){n=d+12|0;k=d+16|0;h=n;j=k;k=c[k>>2]|0;n=c[n>>2]|0}else{j=d+12|0;n=(c[j>>2]|0)+(c[d+224>>2]|0)|0;c[j>>2]=n;j=d+16|0;k=(c[j>>2]|0)+(c[d+228>>2]|0)|0;c[j>>2]=k;h=d+20|0;c[h>>2]=(c[h>>2]|0)+(c[d+232>>2]|0);h=d+24|0;c[h>>2]=(c[h>>2]|0)+(c[d+236>>2]|0);h=d+12|0}o=c[d+20>>2]|0;f=c[d+24>>2]|0;do if(n>>>0<(2147483647-k|0)>>>0&o>>>0<(2147483647-f|0)>>>0){if((k+n|0)>>>0>=(c[I>>2]|0)>>>0){Q=87;break}if((f+o|0)>>>0>=(c[J>>2]|0)>>>0)Q=87}else Q=87;while(0);if((Q|0)==87){Q=c[j>>2]|0;c[O>>2]=n;c[O+4>>2]=Q;c[O+8>>2]=o;c[O+12>>2]=f;ig(i,24,153732,O);if(c[z>>2]&8|0){h=-1094995529;break}ig(i,24,153771,P);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Q=d+28|0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0}k=c[r>>2]|0;n=(c[s>>2]|0)+k|0;h=d+13336|0;c[h>>2]=n;j=k+-1|0;c[d+13340>>2]=j;if(n>>>0>6){c[R>>2]=n;ig(i,16,153808,R);h=-1094995529;break}if(n>>>0<4){c[S>>2]=n;ig(i,16,153837,S);c[T>>2]=c[h>>2];$i(i,153900,T);h=-1094995529;break}S=c[I>>2]|0;Q=1<>n;c[d+13384>>2]=R;T=c[J>>2]|0;Q=T+-1+Q>>n;c[d+13388>>2]=Q;c[d+13392>>2]=N(Q,R)|0;c[d+13396>>2]=S>>k;c[d+13400>>2]=T>>k;R=c[t>>2]|0;c[d+13404>>2]=S>>R;c[d+13408>>2]=T>>R;c[d+13412>>2]=S>>j;c[d+13416>>2]=T>>j;j=n-R|0;c[d+13420>>2]=(1<>2]=((c[G>>2]|0)*6|0)+-48;if((1<>2]|0;if(h>>>0>j>>>0){c[V>>2]=h;ig(i,16,153950,V);h=-1094995529;break}h=c[q>>2]|0;if(h>>>0>j>>>0){c[X>>2]=h;ig(i,16,154004,X);h=-1094995529;break}h=c[u>>2]|0;if(h>>>0>(n>>>0<5?n:5)>>>0){c[Y>>2]=h;ig(i,16,154058,Y);h=-1094995529;break}h=DP(e)|0;if((h|0)>=0){h=0;break}c[Z>>2]=0-h;ig(i,16,154101,Z);h=-1094995529}}}}else{c[k>>2]=j;ig(i,16,152826,k);h=-1094995529}while(0);l=_;return h|0}function MP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+64+(b<<2)|0;d=c[e>>2]|0;if(d|0){f=a+388|0;if((c[f>>2]|0)==(c[d+4>>2]|0)){c[f>>2]=0;d=0}else d=0;while(1){if((d|0)==64)break;i=c[a+128+(d<<2)>>2]|0;if(i|0?(c[c[i+4>>2]>>2]|0)==(b|0):0)EP(a,d);d=d+1|0}i=c[e>>2]|0;if(i|0?(c[f>>2]|0)==(c[i+4>>2]|0):0){c[g>>2]=152741;c[g+4>>2]=152805;c[g+8>>2]=92;ig(0,0,159900,g);Tb()}}Pg(e);l=h;return}function NP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o+16|0;j=o+8|0;g=o;a:do if((VP(b,d,e)|0)>=0?(i=f+-1|0,h=(f|0)>1,(DP(b)|0)>=((h&1)<<4|8|0)):0){a[e+35>>0]=xP(b,8)|0;f=0;while(1){if((f|0)>=(i|0))break;a[e+320+f>>0]=wP(b)|0;a[e+327+f>>0]=wP(b)|0;f=f+1|0}b:do if(h){f=i;while(1){if((f|0)>=8){f=0;break b}RP(b,2);f=f+1|0}}else f=0;while(0);while(1){if((f|0)>=(i|0)){f=0;break a}if(a[e+320+f>>0]|0?(VP(b,d,e+40+(f*40|0)|0)|0)<0:0){n=13;break}if(a[e+327+f>>0]|0){if((DP(b)|0)<8){n=16;break}a[e+40+(f*40|0)+35>>0]=xP(b,8)|0}f=f+1|0}if((n|0)==13){c[j>>2]=f;ig(d,16,154826,j);f=-1;break}else if((n|0)==16){c[k>>2]=f;ig(d,16,154869,k);f=-1;break}}else n=3;while(0);if((n|0)==3){ig(d,16,154799,g);f=-1}l=o;return f|0}function OP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;h=b+44|0;e=c[h>>2]|0;a:do switch(e|0){case 8:{switch(c[b+4>>2]|0){case 0:{a=8;break}case 1:{a=0;break}case 2:{c[b+56>>2]=4;g=23;break a}case 3:{c[b+56>>2]=5;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 9:{switch(c[b+4>>2]|0){case 0:{a=30;break}case 1:{a=62;break}case 2:{c[b+56>>2]=72;g=23;break a}case 3:{c[b+56>>2]=68;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 10:{switch(c[b+4>>2]|0){case 0:{a=171;break}case 1:{a=64;break}case 2:{c[b+56>>2]=66;g=23;break a}case 3:{c[b+56>>2]=70;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}case 12:{switch(c[b+4>>2]|0){case 0:{a=169;break}case 1:{a=125;break}case 2:{c[b+56>>2]=129;g=23;break a}case 3:{c[b+56>>2]=133;g=23;break a}default:{g=23;break a}}c[b+56>>2]=a;g=23;break}default:{c[f>>2]=c[b+4>>2];c[f+4>>2]=e;ig(a,16,154689,f);a=-1094995529}}while(0);if((g|0)==23){a=Dh(c[b+56>>2]|0)|0;if(!a)a=-22;else{c[b+13436>>2]=0;c[b+13424>>2]=0;g=d[a+5>>0]|0;c[b+13428>>2]=g;c[b+13432>>2]=g;a=d[a+6>>0]|0;c[b+13440>>2]=a;c[b+13444>>2]=a;c[b+52>>2]=(c[h>>2]|0)>8&1;a=0}}l=i;return a|0}function PP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);p=s+40|0;o=s+32|0;k=s+24|0;q=s+16|0;n=s+8|0;j=s;h=f+2188|0;a:do if(((h|0)!=(e|0)?(i=f+2184|0,(c[i>>2]|0)!=0):0)?((wP(b)|0)&255)<<24>>24!=0:0){do if(g){h=(vP(b)|0)+1|0;g=c[i>>2]|0;if(g>>>0>>0){c[j>>2]=h;c[j+4>>2]=g;ig(d,16,154499,j);g=-1094995529;break a}else{o=g-h|0;c[e+8>>2]=c[f+2188+(o*172|0)+4>>2];break}}else o=((e-h|0)/172|0)+-1|0;while(0);g=wP(b)|0;p=vP(b)|0;h=p+1|0;if(p>>>0>32767){c[n>>2]=h;ig(d,16,154557,n);g=-1094995529;break}k=N(1-(g<<1&510)|0,h)|0;n=f+2188+(o*172|0)+4|0;h=0;g=0;j=0;while(1){if((j|0)>(c[n>>2]|0))break;p=wP(b)|0;a[e+140+g>>0]=p;if(!((p&255|0)==0?((wP(b)|0)&255)<<24>>24==0:0)){if((j|0)<(c[n>>2]|0))i=(c[f+2188+(o*172|0)+12+(j<<2)>>2]|0)+k|0;else i=k;c[e+12+(g<<2)>>2]=i;g=g+1|0;h=(i>>>31)+h|0}j=j+1|0}if(g>>>0>31){c[q>>2]=g;ig(d,16,154593,q);g=-1094995529;break}p=e+4|0;c[p>>2]=g;c[e>>2]=h;if(g){o=1;while(1){if((o|0)>=(g|0))break;i=c[e+12+(o<<2)>>2]|0;j=a[e+140+o>>0]|0;h=o;while(1){g=h+-1|0;if((h|0)<=0)break;k=e+12+(g<<2)|0;n=c[k>>2]|0;if((i|0)>=(n|0)){h=g;continue}c[e+12+(h<<2)>>2]=n;d=e+140+g|0;a[e+140+h>>0]=a[d>>0]|0;c[k>>2]=i;a[d>>0]=j;h=g}o=o+1|0;g=c[p>>2]|0}h=c[e>>2]|0}if(h>>>0>1){i=0;g=h;while(1){g=g+-1|0;if(i>>>0>=h>>>1>>>0){g=0;break a}h=e+12+(i<<2)|0;q=c[h>>2]|0;f=e+140+i|0;d=a[f>>0]|0;b=e+12+(g<<2)|0;c[h>>2]=c[b>>2];h=e+140+g|0;a[f>>0]=a[h>>0]|0;c[b>>2]=q;a[h>>0]=d;i=i+1|0;h=c[e>>2]|0}}else g=0}else r=32;while(0);b:do if((r|0)==32){c[e>>2]=vP(b)|0;j=vP(b)|0;g=c[e>>2]|0;if((g|j)>>>0>15){ig(d,16,154621,k);g=-1094995529;break}q=g+j|0;c[e+4>>2]=q;if(!q)g=0;else{h=0;i=0;while(1){if(i>>>0>=g>>>0){h=0;i=0;break}q=vP(b)|0;g=q+1|0;if(q>>>0>32767){r=37;break}g=h-g|0;c[e+12+(i<<2)>>2]=g;a[e+140+i>>0]=wP(b)|0;h=g;i=i+1|0;g=c[e>>2]|0}if((r|0)==37){c[o>>2]=g;ig(d,16,154657,o);g=-1094995529;break}while(1){if(i>>>0>=j>>>0){g=0;break b}r=vP(b)|0;g=r+1|0;if(r>>>0>32767)break;r=g+h|0;c[e+12+((c[e>>2]|0)+i<<2)>>2]=r;q=(wP(b)|0)&255;a[(c[e>>2]|0)+i+(e+140)>>0]=q;h=r;i=i+1|0}c[p>>2]=g;ig(d,16,154657,p);g=-1094995529}}while(0);l=s;return g|0}function QP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+240|0;if((l|0)>=(m|0))W(240);H=I+64|0;G=I+56|0;F=I+48|0;E=I+40|0;r=I+24|0;k=I+16|0;i=I+8|0;B=I+88|0;C=I+68|0;D=g+160|0;ig(e,48,154126,I);do if(wP(b)|0){h=(xP(b,8)|0)&255;if(h>>>0<17){y=105192+(h<<3)|0;z=c[y+4>>2]|0;A=D;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}if((h|0)==255){c[D>>2]=xP(b,16)|0;c[g+164>>2]=xP(b,16)|0;break}else{c[i>>2]=h;ig(e,24,154140,i);break}}while(0);A=wP(b)|0;c[g+168>>2]=A;if(A|0)c[g+172>>2]=wP(b)|0;A=wP(b)|0;c[g+176>>2]=A;a:do if(A|0){c[g+180>>2]=xP(b,3)|0;A=g+184|0;c[A>>2]=wP(b)|0;h=wP(b)|0;c[g+188>>2]=h;if(c[A>>2]|0?(j=g+56|0,(c[j>>2]|0)==0):0)c[j>>2]=12;if(h|0){h=g+192|0;a[h>>0]=xP(b,8)|0;i=g+193|0;a[i>>0]=xP(b,8)|0;j=g+194|0;a[j>>0]=xP(b,8)|0;if(!(Nj(d[h>>0]|0)|0))a[h>>0]=2;if(!(Oj(d[i>>0]|0)|0))a[i>>0]=2;if(!(Pj(d[j>>0]|0)|0)){a[j>>0]=2;break}if(!(a[j>>0]|0)){i=g+56|0;switch(c[i>>2]|0){case 5:{h=73;break}case 70:{h=77;break}case 133:{h=137;break}default:break a}c[i>>2]=h}}}while(0);A=wP(b)|0;c[g+196>>2]=A;if(A|0){c[g+200>>2]=vP(b)|0;c[g+204>>2]=vP(b)|0}c[g+208>>2]=wP(b)|0;c[g+212>>2]=wP(b)|0;c[g+216>>2]=wP(b)|0;c[C>>2]=c[b>>2];c[C+4>>2]=c[b+4>>2];c[C+8>>2]=c[b+8>>2];c[C+12>>2]=c[b+12>>2];c[C+16>>2]=c[b+16>>2];wX(B|0,D|0,140)|0;if((DP(b)|0)>67?(HP(b,21)|0)==1048576:0){h=g+220|0;c[h>>2]=0;ig(e,24,154164,k);h=c[h>>2]|0}else{h=wP(b)|0;c[g+220>>2]=h}if((h|0?(p=c[g+4>>2]|0,q=(p|0)<2?2:1,p=(p|0)<3?2:1,n=g+224|0,c[n>>2]=N(p,vP(b)|0)|0,o=g+228|0,c[o>>2]=N(vP(b)|0,p)|0,p=g+232|0,c[p>>2]=N(vP(b)|0,q)|0,q=N(vP(b)|0,q)|0,c[g+236>>2]=q,f|0):0)?c[e+64>>2]&65536|0:0){z=c[o>>2]|0;A=c[p>>2]|0;c[r>>2]=c[n>>2];c[r+4>>2]=z;c[r+8>>2]=A;c[r+12>>2]=q;ig(e,48,154196,r);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0}n=g+240|0;o=g+264|0;p=g+268|0;q=g+272|0;f=g+276|0;r=g+280|0;s=g+284|0;t=g+288|0;u=g+292|0;v=g+296|0;w=g+244|0;x=g+248|0;y=g+252|0;z=g+260|0;A=g+68|0;i=g+256|0;h=0;b:while(1){g=wP(b)|0;c[n>>2]=g;if(g|0){j=(h|0)!=0;if(!(j|(DP(b)|0)>65)){ig(e,24,154276,E);wX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue}c[w>>2]=JP(b,32)|0;k=JP(b,32)|0;c[x>>2]=k;if(j){g=c[w>>2]|0;c[F>>2]=k;c[F+4>>2]=g;ig(e,32,154321,F)}g=wP(b)|0;c[y>>2]=g;if(g|0)c[i>>2]=vP(b)|0;g=wP(b)|0;c[z>>2]=g;if(g|0)SP(b,1,c[A>>2]|0)}g=wP(b)|0;c[o>>2]=g;do if(g|0)if((h|0)!=0|(DP(b)|0)>7){c[p>>2]=wP(b)|0;c[q>>2]=wP(b)|0;c[f>>2]=wP(b)|0;c[r>>2]=vP(b)|0;c[s>>2]=vP(b)|0;c[t>>2]=vP(b)|0;c[u>>2]=vP(b)|0;c[v>>2]=vP(b)|0;break}else{ig(e,24,154342,G);wX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1;continue b}while(0);if((h|0)!=0|(DP(b)|0)>0)break;ig(e,24,154426,H);wX(D|0,B|0,140)|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[b+16>>2]=c[C+16>>2];h=1}l=I;return}function RP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function SP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(b){b=wP(a)|0;f=wP(a)|0;if(!(f|b))e=0;else{e=wP(a)|0;if(!e){RP(a,4);RP(a,4)}else{RP(a,8);RP(a,5);RP(a,1);RP(a,5);RP(a,4);RP(a,4);RP(a,4)}RP(a,5);RP(a,5);RP(a,5)}}else{e=0;f=0;b=0}h=(b|0)==0;g=(f|0)==0;f=0;while(1){if((f|0)>=(d|0))break;if((wP(a)|0)==0?(wP(a)|0)==0:0)if(!(wP(a)|0))j=13;else b=1;else{vP(a)|0;j=13}if((j|0)==13){j=0;n=vP(a)|0;b=n+1|0;if(n>>>0>31){j=14;break}}if(!h)TP(a,b,e);if(!g)TP(a,b,e);f=f+1|0}if((j|0)==14){c[i>>2]=b;ig(0,16,154480,i)}l=k;return}function TP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(c|0)==0;c=0;while(1){if((c|0)==(b|0))break;vP(a)|0;vP(a)|0;if(!d){vP(a)|0;vP(a)|0}UP(a);c=c+1|0}return}function UP(a){a=a|0;RP(a,1);return}function VP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=j+32|0;g=j+24|0;if((DP(b)|0)<88)d=-1;else{a[e>>0]=xP(b,2)|0;a[e+1>>0]=wP(b)|0;f=xP(b,5)|0;k=f&255;i=e+2|0;a[i>>0]=k;f=f&255;a:do switch(k<<24>>24){case 1:{ig(d,48,154912,j);d=0;break}case 2:{ig(d,48,154936,j+8|0);d=0;break}case 3:{ig(d,48,154963,j+16|0);d=0;break}default:if((f|0)==4){ig(d,48,155001,g);d=0;break a}else{c[h>>2]=f;ig(d,24,155036,h);d=0;break a}}while(0);while(1){f=wP(b)|0;g=f&255;if((d|0)==32)break;a[e+3+d>>0]=g;if(!((f&255|0)==0|((d|0)<1|(a[i>>0]|0)!=0)))a[i>>0]=d;d=d+1|0}a[e+36>>0]=g;a[e+37>>0]=wP(b)|0;a[e+38>>0]=wP(b)|0;a[e+39>>0]=wP(b)|0;RP(b,16);RP(b,16);RP(b,12);d=0}l=j;return d|0}function WP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+(b<<2)|0;d=c[f>>2]|0;a:do if(d|0){e=a+384|0;if((c[e>>2]|0)==(c[d+4>>2]|0)){c[e>>2]=0;d=0}else d=0;while(1){if((d|0)==16)break a;e=c[a+64+(d<<2)>>2]|0;if(e|0?(c[c[e+4>>2]>>2]|0)==(b|0):0)MP(a,d);d=d+1|0}}while(0);Pg(f);return}function XP(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=p;o=p+8|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;a=Wi(o,a,b,j,f,g,173,1)|0;a:do if((a|0)>=0){k=o+16|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break a;b=c[o>>2]|0;f=c[b+(g*68|0)+44>>2]|0;switch(f|0){case 32:{a=NO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 33:{a=OO(b+(g*68|0)+24|0,j,d,i)|0;if((a|0)<0)break a;break}case 34:{a=PO(b+(g*68|0)+24|0,j,d)|0;if((a|0)<0)break a;break}case 40:case 39:{a=QO(b+(g*68|0)+24|0,j,e,d,f)|0;if((a|0)<0)break a;break}default:{c[n>>2]=f;ig(j,40,155545,n)}}g=g+1|0}}while(0);Ci(o);l=p;return ((h&8|0)==0?0:a)|0}function YP(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;a=ZP(a,d)|0;if((a|0)>=0){Wg(b,c[d>>2]|0);Kg(d);a=0}l=e;return a|0}function ZP(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[d>>2]|0;do if(!(c[a+4>>2]|0)){a=c[a>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){a=-11;break}a=_P()|0;if(!a)a=-12;else{c[b>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=a;a=0}}else a=-541478725;while(0);return a|0}function _P(){var a=0;a=$g(72)|0;if(a|0)Ng(a);return a|0}function $P(){var a=0,b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);a=b;do if((aQ(a,155580)|0)!=4)if((aQ(a,155593)|0)==4){a=c[a>>2]|0;break}else{a=bQ()|0;break}else a=c[a>>2]|0;while(0);l=b;return a|0}function aQ(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=iQ(b,0,c)|0;if((b|0)==-1)b=-1;else{a=fV(b,a,4)|0;EU(b)|0;b=a}l=c;return b|0}function bQ(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+160|0;if((l|0)>=(m|0))W(160);a=n+120|0;h=n;i=n+132|0;k=183072;j=c[k>>2]|0;k=c[k+4>>2]|0;if((c[22257]|0)>>>0>=121){c[a>>2]=155605;c[a+4>>2]=155632;c[a+8>>2]=77;ig(0,0,159900,a);Tb()}e=(j|0)==0&(k|0)==0;a=0;b=0;d=0;a:while(1){f=Xb()|0;g=f-a|0;do if(((b<<1|1)+a|0)<(f|0)){a=183072;a=hX(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=y;o=183072;c[o>>2]=a;c[o+4>>2]=b;o=183840+((a&511)<<2)|0;c[o>>2]=(c[o>>2]|0)+(g>>>0<3294638521?g:g+1000328775|0);if((f-d|0)>31249){a=iX(a|0,b|0,j|0,k|0)|0;b=y;if(e)if(b>>>0>0|(b|0)==0&a>>>0>64)break a;else break;else if(b>>>0>0|(b|0)==0&a>>>0>4)break a;else break}}else{o=183840+((c[45768]&511)<<2)|0;b=N(c[o>>2]|0,1664525)|0;c[o>>2]=(g>>>0<3294638521?g:g+1000328775|0)+1013904223+b}while(0);a=f;b=g;d=(d|0)==0?f:d}cQ(h,160)|0;dQ(h,183840,2048);eQ(h,i);o=uX(c[i>>2]|0)|0;o=(uX(c[i+16>>2]|0)|0)+o|0;l=n;return o|0}function cQ(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=d>>>5;switch(d|0){case 160:{c[b+80>>2]=1732584193;c[b+84>>2]=-271733879;c[b+88>>2]=-1732584194;c[b+92>>2]=271733878;c[b+96>>2]=-1009589776;d=201;e=5;break}case 224:{c[b+80>>2]=-1056596264;c[b+84>>2]=914150663;c[b+88>>2]=812702999;c[b+92>>2]=-150054599;c[b+96>>2]=-4191439;c[b+100>>2]=1750603025;c[b+104>>2]=1694076839;c[b+108>>2]=-1090891868;d=202;e=5;break}case 256:{c[b+80>>2]=1779033703;c[b+84>>2]=-1150833019;c[b+88>>2]=1013904242;c[b+92>>2]=-1521486534;c[b+96>>2]=1359893119;c[b+100>>2]=-1694144372;c[b+104>>2]=528734635;c[b+108>>2]=1541459225;d=202;e=5;break}default:d=-22}if((e|0)==5){c[b+112>>2]=d;d=b+8|0;c[d>>2]=0;c[d+4>>2]=0;d=0}return d|0}function dQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=b+8|0;j=i;f=c[j>>2]|0;j=hX(f|0,c[j+4>>2]|0,e|0,0)|0;c[i>>2]=j;c[i+4>>2]=y;i=b+112|0;j=b+80|0;k=b+16|0;f=f&63;h=0;while(1){if((h|0)==(e|0))break;g=f+1|0;a[b+16+f>>0]=a[d+h>>0]|0;if((g|0)==64){Rd[c[i>>2]&255](j,k);f=0}else f=g;h=h+1|0}return}function eQ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=b+8|0;j=g;j=sX(c[j>>2]|0,c[j+4>>2]|0,3)|0;j=fQ(j,y)|0;i=f;c[i>>2]=j;c[i+4>>2]=y;dQ(b,155656,1);while(1){if(0==0?(c[g>>2]&63|0)==56:0)break;dQ(b,262784,1)}dQ(b,f,8);f=0;while(1){if((f|0)>=(d[b>>0]|0|0))break;i=uX(c[b+80+(f<<2)>>2]|0)|0;j=e+(f<<2)|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;f=f+1|0}l=h;return}function fQ(a,b){a=a|0;b=b|0;a=uX(a|0)|0;b=uX(b|0)|0;y=a;return b|0}function gQ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;G=l;l=l+256|0;if((l|0)>=(m|0))W(256);y=G;z=c[a>>2]|0;A=a+4|0;B=c[A>>2]|0;C=a+8|0;D=c[C>>2]|0;E=a+12|0;F=c[E>>2]|0;q=a+16|0;r=c[q>>2]|0;s=a+20|0;t=c[s>>2]|0;u=a+24|0;v=c[u>>2]|0;w=a+28|0;x=c[w>>2]|0;e=0;f=t;g=r;h=F;i=D;j=B;k=z;n=x;o=v;while(1){if((e|0)==64)break;if(e>>>0<16){p=b+(e<<2)|0;p=uX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0}else{H=c[y+(e+-15<<2)>>2]|0;p=c[y+(e+-2<<2)>>2]|0;p=(c[y+(e+-7<<2)>>2]|0)+(c[y+(e+-16<<2)>>2]|0)+((H<<14|H>>>18)^H>>>3^(H<<25|H>>>7))+((p<<13|p>>>19)^p>>>10^(p<<15|p>>>17))|0}c[y+(e<<2)>>2]=p;L=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+n+((o^f)&g^o)+p+(c[105356+(e<<2)>>2]|0)|0;K=o;J=k;I=j;p=i;H=g;e=e+1|0;g=L+h|0;k=((i|j)&k|i&j)+((k<<30|k>>>2)^(k<<19|k>>>13)^(k<<10|k>>>22))+L|0;o=f;n=K;j=J;i=I;h=p;f=H}c[a>>2]=z+k;c[A>>2]=B+j;c[C>>2]=D+i;c[E>>2]=F+h;c[q>>2]=r+g;c[s>>2]=t+f;c[u>>2]=v+o;c[w>>2]=x+n;l=G;return}function hQ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+320|0;if((l|0)>=(m|0))W(320);p=x;q=c[a>>2]|0;r=a+4|0;s=c[r>>2]|0;t=a+8|0;u=c[t>>2]|0;v=a+12|0;w=c[v>>2]|0;n=a+16|0;o=c[n>>2]|0;f=o;g=w;h=u;i=s;j=q;k=0;while(1){if((k|0)==80)break;if(k>>>0<16){e=b+(k<<2)|0;e=uX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0}else{e=c[p+(k+-8<<2)>>2]^c[p+(k+-3<<2)>>2]^c[p+(k+-14<<2)>>2]^c[p+(k+-16<<2)>>2];e=e<<1|e>>>31}c[p+(k<<2)>>2]=e;f=f+(j<<5|j>>>27)+e|0;do if(k>>>0<40)if(k>>>0<20){e=((g^h)&i^g)+1518500249|0;break}else{e=(h^i^g)+1859775393|0;break}else if(k>>>0<60){e=((h|i)&g|h&i)+-1894007588|0;break}else{e=(h^i^g)+-899497514|0;break}while(0);A=j;z=h;y=g;h=i<<30|i>>>2;j=f+e|0;k=k+1|0;i=A;g=z;f=y}c[a>>2]=q+j;c[r>>2]=s+i;c[t>>2]=u+h;c[v>>2]=w+g;c[n>>2]=o+f;l=x;return}function iQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=i+16|0;g=i+8|0;f=i;e=i+24|0;c[e>>2]=d;if(!(b&64))e=0;else{j=(c[e>>2]|0)+(4-1)&~(4-1);d=c[j>>2]|0;c[e>>2]=j+4;e=d}c[f>>2]=e;e=GU(a,b|524288,f)|0;if((e|0)!=-1?(c[g>>2]=1,(FU(e,2,g)|0)==-1):0)ig(0,48,155658,h);l=i;return e|0}function jQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=qg((RU(c[b>>2]|0)|0)+1|0)|0;f=c[b>>2]|0;if(!e)e=0;else{g=f+(CV(f,155687)|0)|0;k=e;f=e;a:while(1){b:while(1){h=a[g>>0]|0;if(!(h<<24>>24))break a;if(CV(g,d)|0)break a;i=g+1|0;switch(h<<24>>24){case 39:break b;case 92:{j=a[i>>0]|0;if(j<<24>>24){l=8;break b}break}default:{}}a[f>>0]=h;g=i;f=f+1|0}if((l|0)==8){l=0;i=f+1|0;a[f>>0]=j;g=g+2|0;k=i;f=i;continue}while(1){g=a[i>>0]|0;j=g<<24>>24==0;h=i+1|0;if(!(j^g<<24>>24!=39))break;a[f>>0]=g;i=h;f=f+1|0}g=j?i:h;k=j?k:f}do{a[f>>0]=0;f=f+-1|0;if(f>>>0>>0)break}while((CV(f,155687)|0)!=0);c[b>>2]=g}return e|0}function kQ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=b;while(1){d=lQ(a[e>>0]|0)|0;b=lQ(a[c>>0]|0)|0;d=d&255;if(!d){f=3;break}b=b&255;if((d|0)==(b|0)){e=e+1|0;c=c+1|0}else{c=d;break}}if((f|0)==3){c=0;b=b&255}return c-b|0}function lQ(a){a=a|0;return ((a+-65|0)>>>0<26?a^32:a)|0}function mQ(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=b+d|0;e=b;while(1){d=lQ(a[e>>0]|0)|0;e=e+1|0;b=lQ(a[c>>0]|0)|0;if(e>>>0>=f>>>0){g=3;break}d=d&255;b=b&255;if(!((d|0)!=0&(d|0)==(b|0)))break;else c=c+1|0}if((g|0)==3){b=b&255;d=d&255}return d-b|0}function nQ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if((b|0)!=0&(c|0)!=0){g=RU(b)|0;while(1){d=a[c>>0]|0;if(!(d<<24>>24)){c=0;break a}f=d<<24>>24==45;d=SU(c,44)|0;if(!d)d=c+(RU(c)|0)|0;c=c+(f&1)|0;e=d-c|0;if(!(mQ(b,c,(e|0)>(g|0)?e:g)|0))break;if(!(ZT(155692,c,(e|0)>3?e:3)|0))break;c=d+((a[d>>0]|0)==44&1)|0}c=(f^1)&1}else c=0;while(0);return c|0}function oQ(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d<<24>>24;a:while(1){if(!b){b=0;break}if(!(a[b>>0]|0)){b=0;break}else h=c;while(1){if(!h)break;e=a[h>>0]|0;if(!(e<<24>>24))break;else g=0;while(1){f=a[b+g>>0]|0;j=f<<24>>24;k=e<<24>>24;if(f<<24>>24!=e<<24>>24?!((N(k,j)|0)==0&(k+j|0)==(i|0)):0)break;if(g|0?(f<<24>>24==0?1:f<<24>>24==d<<24>>24):0){b=1;break a}e=g+1|0;g=e;e=a[h+e>>0]|0}k=SU(h,i)|0;h=k+((k|0)!=0&1)|0}k=SU(b,i)|0;b=k+((k|0)!=0&1)|0}return b|0}function pQ(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=d;c[b+4>>2]=0;c[b+8>>2]=e;c[b+12>>2]=e;a[d>>0]=0;return}function qQ(a){a=a|0;if(!(c[(c[a>>2]|0)+20>>2]&1))a=(c[(c[a>>2]|0)+8>>2]|0)==1&1;else a=0;return a|0}function rQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;g=c[a>>2]|0;do if(g){f=g+8|0;if((c[f>>2]|0)==(b|0))d=0;else{if((c[(c[g>>2]|0)+20>>2]&2|0?qQ(g)|0:0)?(e=g+4|0,d=c[e>>2]|0,(d|0)==(c[c[g>>2]>>2]|0)):0){d=pg(d,b)|0;if(!d){d=-12;break}c[e>>2]=d;h=c[g>>2]|0;c[h>>2]=d;c[f>>2]=b;c[h+4>>2]=b;d=0;break}c[h>>2]=0;rQ(h,b)|0;d=c[h>>2]|0;if(!d)d=-12;else{f=c[f>>2]|0;wX(c[d+4>>2]|0,c[g+4>>2]|0,((f|0)<(b|0)?f:b)|0)|0;Rg(a,h);d=0}}}else{d=pg(0,b)|0;c[h>>2]=d;do if(d){d=Ah(d,b,16,0,0)|0;if(!d){eg(h);d=-12;break}else{h=(c[d>>2]|0)+20|0;c[h>>2]=c[h>>2]|2;c[a>>2]=d;d=0;break}}else d=-12;while(0)}while(0);l=i;return d|0}function sQ(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=b+(RU(b)|0)|0;g=0;c=0;while(1){if(b>>>0>>0)d=b;else{b=g;break}a:while(1){if(d>>>0>=h>>>0)break;switch(a[d>>0]|0){case 124:case 43:break a;default:{}}d=d+1|0}e=tQ(b,d-b|0)|0;f=y;if((e|0)==0&(f|0)==0){c=0;b=0;break}b=d+1|0;g=e|g;c=f|c}y=c;return b|0}function tQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;f=0;while(1){if(f>>>0>=28){e=0;i=7;break}e=c[28256+(f<<4)>>2]|0;if((RU(e)|0)==(d|0)?(YT(e,b,d)|0)==0:0){i=5;break}f=f+1|0}do if((i|0)==5){e=28256+(f<<4)+8|0;f=c[e+4>>2]|0;e=c[e>>2]|0}else if((i|0)==7){while(1){i=0;if(e>>>0>=36)break;if(((e+-18|0)>>>0>10?(g=c[105612+(e<<3)>>2]|0,(RU(g)|0)==(d|0)):0)?(YT(g,b,d)|0)==0:0){i=11;break}e=e+1|0;i=7}if((i|0)==11){e=sX(1,0,e|0)|0;f=y;break}c[(CT()|0)>>2]=0;e=OT(b,j,10)|0;if(((c[(CT()|0)>>2]|0)==0?(h=c[j>>2]|0,(h+1-b|0)==(d|0)):0)?(a[h>>0]|0)==99:0){e=uQ(e)|0;f=y;break}c[(CT()|0)>>2]=0;g=MT(b,j,0)|0;e=y;if(!(c[(CT()|0)>>2]|0)){j=((e|0)>0|(e|0)==0&g>>>0>0)&((c[j>>2]|0)-b|0)==(d|0);f=j?e:0;e=j?g:0}else{f=0;e=0}}while(0);y=f;l=k;return e|0}function uQ(a){a=a|0;var b=0,d=0;b=0;while(1){if(b>>>0>=28){b=0;a=0;break}if((c[28256+(b<<4)+4>>2]|0)==(a|0)){d=4;break}b=b+1|0}if((d|0)==4){a=28256+(b<<4)+8|0;b=c[a+4>>2]|0;a=c[a>>2]|0}y=b;return a|0}function vQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=p+40|0;o=p+32|0;n=p+24|0;j=p+16|0;i=p+8|0;h=p;if((b|0)<1)b=ii(d,e)|0;f=0;while(1){if(f>>>0>=28){g=9;break}if((b|0)==(c[28256+(f<<4)+4>>2]|0)?(g=28256+(f<<4)+8|0,(c[g>>2]|0)==(d|0)?(c[g+4>>2]|0)==(e|0):0):0){g=7;break}f=f+1|0}if((g|0)==7){c[h>>2]=c[28256+(f<<4)>>2];tg(a,156354,h)}else if((g|0)==9?(c[i>>2]=b,tg(a,156357,i),!((d|0)==0&(e|0)==0)):0){tg(a,156369,j);b=0;g=0;while(1){if((g|0)==64)break;j=sX(1,0,g|0)|0;if(!((j&d|0)==0&(y&e|0)==0)){f=wQ(g)|0;if(f|0){if((b|0)>0)tg(a,156372,n);c[o>>2]=f;tg(a,156354,o)}b=b+1|0}g=g+1|0}tg(a,156374,k)}l=p;return}function wQ(a){a=a|0;if(a>>>0>35)a=0;else a=c[105612+(a<<3)>>2]|0;return a|0}function xQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+1024|0;if((l|0)>=(m|0))W(1024);g=f;pQ(g,a,b);vQ(g,c,d,e);l=f;return}function yQ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+1072|0;if((l|0)>=(m|0))W(1072);J=K+792|0;I=K+784|0;H=K+528|0;j=K+1060|0;k=K+1056|0;F=K+520|0;G=K+512|0;D=K;E=K+800|0;c[H>>2]=j;c[H+4>>2]=k;c[H+8>>2]=K+1064;if(!((oV(f,156376,H)|0)==2?(i=c[j>>2]|0,i=zQ(b,e,g,1.0,c[k>>2]|0,i,((i|0)<0)<<31>>31)|0,(i|0)>-1):0)){v=e+12|0;w=e+44|0;x=e+16|0;y=e+32|0;B=e+24|0;C=e+16|0;i=0;while(1){u=G;c[u>>2]=1;c[u+4>>2]=0;if(!(c[v>>2]|0)){j=a[f>>0]|0;switch(j<<24>>24){case 45:case 43:{n=j<<24>>24;j=f+1|0;break}default:{n=0;j=f}}f=0;a:while(1){if(f>>>0>=255)break;k=a[j+f>>0]|0;switch(k<<24>>24){case 45:case 43:case 0:break a;default:{}}a[H+f>>0]=k;f=f+1|0}a[H+f>>0]=0;t=f}else{n=0;t=0;j=f}s=(t|0)!=0;r=s?H:j;k=AQ(d,r,c[w>>2]|0,0,0)|0;if((k|0)!=0?(c[k+12>>2]|0)==10:0){u=k+16|0;h[F>>3]=+((c[u>>2]|0)>>>0)+4294967296.0*+(c[u+4>>2]|0);u=30}else u=15;do if((u|0)==15){u=0;q=c[w>>2]|0;b:do if(!q){k=0;u=24}else{k=0;f=0;while(1){while(1){f=Sg(d,f)|0;if(!f){u=24;break b}if((c[f+12>>2]|0)!=10)continue;p=c[f+44>>2]|0;if(!p)continue;if(!(XT(p,q)|0))break}if((k+6|0)>>>0>63)break;c[E+(k<<2)>>2]=c[f>>2];p=f+16|0;h[D+(k<<3)>>3]=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0);k=k+1|0}c[I>>2]=q;ig(b,16,156390,I);i=-1163346256}while(0);if((u|0)==24){u=0;c[E+(k<<2)>>2]=167700;switch(c[v>>2]|0){case 1:case 0:case 10:case 9:case 2:{q=C;o=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0);break}default:o=+h[x>>3]}p=k+1|0;h[D+(k<<3)>>3]=o;c[E+(p<<2)>>2]=156690;q=k+2|0;h[D+(p<<3)>>3]=+h[y>>3];c[E+(q<<2)>>2]=156694;p=k+3|0;h[D+(q<<3)>>3]=+h[B>>3];c[E+(p<<2)>>2]=167678;q=k+4|0;h[D+(p<<3)>>3]=0.0;c[E+(q<<2)>>2]=167894;k=k+5|0;h[D+(q<<3)>>3]=-1.0;c[E+(k<<2)>>2]=0;h[D+(k<<3)>>3]=0.0;k=BQ(F,r,E,D,0,0,0,0,0,0,b)|0;if((k|0)>=0){u=30;break}c[J>>2]=j;ig(b,16,156427,J);i=k}f=1}while(0);if((u|0)==30){c:do if(!(c[v>>2]|0)){CQ(e,g,0,0,G)|0;switch(n|0){case 43:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]|~~o>>>0)>>>0)+4294967296.0*+(c[u+4>>2]|(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}case 45:{u=G;o=+h[F>>3];h[F>>3]=+((c[u>>2]&~(~~o>>>0))>>>0)+4294967296.0*+(c[u+4>>2]&~(+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0)|0);break c}default:break c}}while(0);k=zQ(b,e,g,+h[F>>3],1,1,0)|0;if((k|0)>=0){j=j+t|0;if(s){u=(a[j>>0]|0)==0;f=u&1;i=u?0:i}else{f=1;i=0}}else{f=1;i=k}}if(!f)f=j;else break}}l=K;return i|0}function zQ(a,b,d,e,f,i,j){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;i=i|0;j=j|0;var k=0,n=0,o=0.0,p=0.0,q=0.0,t=0,u=0,v=0,w=0;w=l;l=l+64|0;if((l|0)>=(m|0))W(64);k=w+40|0;u=w+8|0;t=w;n=c[b+12>>2]|0;a:do if(!n){o=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);if(!(o<-1.5|o>4294967295.5)?(u=cV(o*256.0)|0,(u&255|0)==0&0==0):0){v=14;break}d=c[b>>2]|0;h[k>>3]=o;c[k+8>>2]=d;ig(a,16,156945,k);k=-34}else{if(!f){p=e!=0.0&((i|0)!=0|(j|0)!=0)?s:r;o=+h[b+32>>3]}else{o=+h[b+32>>3];p=+(f|0);q=(+(i>>>0)+4294967296.0*+(j|0))*e;if(!(o*p>3]*p>q):0)switch(n|0){case 1:case 18:{v=14;break a}case 12:{c[d>>2]=nX(cV(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 13:{c[d>>2]=nX(cV(e/+(f|0))|0,y|0,i|0,j|0)|0;k=0;break a}case 6:case 14:{o=(+(i>>>0)+4294967296.0*+(j|0))*e;if(+(~~e|0)==e){c[d>>2]=~~o;c[d+4>>2]=f;k=0;break a}else{ZQ(t,o/+(f|0),16777216);i=t;j=c[i+4>>2]|0;k=d;c[k>>2]=c[i>>2];c[k+4>>2]=j;k=0;break a}}case 2:case 17:case 15:{o=e/+(f|0);if((i|0)==1&(j|0)==0&o==9223372036854775808.0){k=-1;n=2147483647}else{k=cV(o)|0;k=nX(k|0,y|0,i|0,j|0)|0;n=y}c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 9:{o=e/+(f|0);do if(!((i|0)==1&(j|0)==0&o==18446744073709551616.0))if(o>9223372036854775808.0){k=cV(o+-9223372036854775808.0)|0;k=nX(k|0,y^-2147483648|0,i|0,j|0)|0;n=y;break}else{k=cV(o)|0;k=nX(k|0,y|0,i|0,j|0)|0;n=y;break}else{k=-1;n=-1}while(0);c[d>>2]=k;c[d+4>>2]=n;k=0;break a}case 4:{g[d>>2]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}case 3:{h[d>>3]=(+(i>>>0)+4294967296.0*+(j|0))*e/+(f|0);k=0;break a}default:{k=-22;break a}}p=q/p}k=c[b>>2]|0;e=+h[b+24>>3];h[u>>3]=p;c[u+8>>2]=k;h[u+16>>3]=e;h[u+24>>3]=o;ig(a,16,156893,u);k=-34}while(0);if((v|0)==14){k=cV(e/+(f|0))|0;k=nX(k|0,y|0,i|0,j|0)|0;c[d>>2]=k;k=0}l=w;return k|0}function AQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return WQ(a,b,c,d,e,0)|0}function BQ(a,b,d,e,f,g,i,j,k,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;c[p>>2]=0;b=DQ(p,b,d,f,g,i,j,n,o)|0;if((b|0)<0)h[a>>3]=r;else{b=c[p>>2]|0;h[a>>3]=+EQ(b,e,k);FQ(b);b=GQ(+h[a>>3])|0;k=y&2147483647;b=k>>>0>2146435072|(k|0)==2146435072&b>>>0>0?-22:0}l=q;return b|0}function CQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(c[a+12>>2]|0){case 0:{a=f;c[a>>2]=c[b>>2];c[a+4>>2]=0;a=0;break}case 12:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 13:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 1:case 18:{e=c[b>>2]|0;a=f;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}case 9:case 2:case 15:case 17:{d=b;e=c[d+4>>2]|0;a=f;c[a>>2]=c[d>>2];c[a+4>>2]=e;a=0;break}case 4:{h[d>>3]=+g[b>>2];a=0;break}case 3:{h[d>>3]=+h[b>>3];a=0;break}case 6:{d=c[b>>2]|0;a=f;c[a>>2]=d;c[a+4>>2]=((d|0)<0)<<31>>31;c[e>>2]=c[b+4>>2];a=0;break}case 10:{h[d>>3]=+h[a+16>>3];a=0;break}default:a=-22}return a|0}function DQ(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;if((l|0)>=(m|0))W(64);s=u;r=u+12|0;t=u+8|0;n=r;o=n+52|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));c[t>>2]=0;q=qg((RU(d)|0)+1|0)|0;if(!q)n=-12;else{p=q;n=d;a:while(1){do{o=a[n>>0]|0;if(!(o<<24>>24))break a;n=n+1|0}while((IQ(o<<24>>24)|0)!=0);a[p>>0]=o;p=p+1|0}a[p>>0]=0;c[r>>2]=105900;c[r+4>>2]=100;o=r+8|0;c[o>>2]=q;c[r+16>>2]=e;c[r+20>>2]=g;c[r+24>>2]=f;c[r+28>>2]=i;c[r+32>>2]=h;c[r+40>>2]=j;c[r+44>>2]=k;n=JQ(t,r)|0;do if((n|0)>=0){o=c[o>>2]|0;if(a[o>>0]|0){c[s>>2]=o;c[s+4>>2]=d;ig(r,16,156466,s);n=-22;break}o=c[t>>2]|0;if(KQ(o)|0){s=$g(80)|0;c[o+32>>2]=s;if(!s)n=-12;else{c[b>>2]=o;c[t>>2]=0}}else n=-22}while(0);FQ(c[t>>2]|0);fg(q)}l=u;return n|0}function EQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;g=l;l=l+64|0;if((l|0)>=(m|0))W(64);e=g;f=e;h=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+48>>2]=c[a+32>>2];c[e+12>>2]=b;c[e+36>>2]=d;i=+HQ(e,a);l=g;return +i}function FQ(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=a;if(a|0){FQ(c[a+20>>2]|0);FQ(c[a+24>>2]|0);FQ(c[a+28>>2]|0);eg(a+32|0);eg(b)}l=d;return}function GQ(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function HQ(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,n=0,o=0,p=0.0,q=0.0,s=0.0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=t;a:do switch(c[b>>2]|0){case 0:{e=+h[b+8>>3];break}case 1:{e=+h[b+8>>3]*+h[(c[a+12>>2]|0)+(c[b+16>>2]<<3)>>3];break}case 2:{q=+h[b+8>>3];o=c[b+16>>2]|0;s=+HQ(a,c[b+20>>2]|0);s=q*+Gd[o&15](s);l=t;return +s}case 3:{q=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;s=+HQ(a,c[b+20>>2]|0);s=q*+Hd[n&0](o,s);l=t;return +s}case 4:{p=+h[b+8>>3];n=c[b+16>>2]|0;o=c[a+36>>2]|0;q=+HQ(a,c[b+20>>2]|0);s=+HQ(a,c[b+24>>2]|0);s=p*+Id[n&0](o,q,s);l=t;return +s}case 5:{s=1.0/(+K(+(+HQ(a,c[b+20>>2]|0)*4.0))+1.0);l=t;return +s}case 6:{s=+HQ(a,c[b+20>>2]|0);s=+K(+(s*s*-.5))/2.5066282746310002;l=t;return +s}case 7:{s=+h[b+8>>3];o=c[a+48>>2]|0;a=~~+HQ(a,c[b+20>>2]|0);l=t;return +(s*+h[o+(((a|0)>0?((a|0)<9?a:9):0)<<3)>>3])}case 8:{s=+h[b+8>>3];a=GQ(+HQ(a,c[b+20>>2]|0))|0;b=y&2147483647;l=t;return +(s*+((b>>>0>2146435072|(b|0)==2146435072&a>>>0>0)&1))}case 9:{s=+h[b+8>>3]*+((GQ(+HQ(a,c[b+20>>2]|0))|0)==0&(y&2147483647|0)==2146435072&1);l=t;return +s}case 27:{s=+h[b+8>>3]*+z(+(+HQ(a,c[b+20>>2]|0)));l=t;return +s}case 28:{s=+h[b+8>>3]*+M(+(+HQ(a,c[b+20>>2]|0)));l=t;return +s}case 29:{s=+h[b+8>>3]*+nc(+(+HQ(a,c[b+20>>2]|0)));l=t;return +s}case 30:{s=+h[b+8>>3]*+vX(+(+HQ(a,c[b+20>>2]|0)));l=t;return +s}case 31:{s=+h[b+8>>3]*+B(+(+HQ(a,c[b+20>>2]|0)));l=t;return +s}case 32:{s=+h[b+8>>3]*+(+HQ(a,c[b+20>>2]|0)==0.0&1);l=t;return +s}case 36:{g=+h[b+8>>3];if(!(+HQ(a,c[b+20>>2]|0)!=0.0)){f=c[b+28>>2]|0;if(!f)e=0.0;else o=22}else{f=c[b+24>>2]|0;o=22}if((o|0)==22)e=+HQ(a,f);e=g*e;break}case 37:{g=+h[b+8>>3];if(+HQ(a,c[b+20>>2]|0)!=0.0){f=c[b+28>>2]|0;if(!f)e=0.0;else o=27}else{f=c[b+24>>2]|0;o=27}if((o|0)==27)e=+HQ(a,f);e=g*e;break}case 42:{f=b+20|0;e=+HQ(a,c[f>>2]|0);g=+HQ(a,c[b+24>>2]|0);j=+HQ(a,c[b+28>>2]|0);o=GQ(g)|0;n=y&2147483647;if((!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)?(o=GQ(j)|0,n=y&2147483647,!(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0)):0)?(o=GQ(e)|0,n=y&2147483647,!(g>j|(n>>>0>2146435072|(n|0)==2146435072&o>>>0>0))):0){q=+h[b+8>>3];s=+HQ(a,c[f>>2]|0);l=t;return +(q*(sj?j:s))}else e=r;break}case 41:{e=+HQ(a,c[b+20>>2]|0);g=+h[b+8>>3];if(!(e>=+HQ(a,c[b+24>>2]|0)))e=0.0;else e=+(e<=+HQ(a,c[b+28>>2]|0)&1);e=g*e;break}case 44:{s=+HQ(a,c[b+20>>2]|0);s=s+(+HQ(a,c[b+24>>2]|0)-s)*+HQ(a,c[b+28>>2]|0);l=t;return +s}case 38:{e=+HQ(a,c[b+20>>2]|0);f=c[b+24>>2]|0;if(!f)f=32;else f=~~+HQ(a,f);h[i>>3]=e;ig(a,f,156462,i);break}case 33:{n=~~+HQ(a,c[b+20>>2]|0);a=(c[a+48>>2]|0)+(((n|0)>0?((n|0)<9?n:9):0)<<3)|0;s=+h[a>>3];n=GQ(s)|0;i=y&2147483647;o=hX(nX(~~s>>>0|0,(+A(s)>=1.0?(s>0.0?~~+O(+z(s/4294967296.0),4294967295.0)>>>0:~~+M((s-+(~~s>>>0))/4294967296.0)>>>0):0)|0,1664525,0)|0,y|0,1013904223,0)|0;s=i>>>0>2146435072|(i|0)==2146435072&n>>>0>0?1013904223.0:+(o>>>0)+4294967296.0*+(y>>>0);h[a>>3]=s;l=t;return +(+h[b+8>>3]*(s*5.421010862427522e-20))}case 24:{i=b+20|0;f=b+24|0;e=r;while(1){if(!(+HQ(a,c[i>>2]|0)!=0.0))break a;e=+HQ(a,c[f>>2]|0)}}case 25:{k=+HQ(a,c[b+24>>2]|0);f=c[b+28>>2]|0;if(!f)o=0;else{o=~~+HQ(a,f);o=(o|0)>0?((o|0)<9?o:9):0}n=a+48|0;p=+h[(c[n>>2]|0)+(o<<3)>>3];i=b+20|0;g=1.0;e=0.0;f=0;while(1){if((f|0)>=1e3)break;h[(c[n>>2]|0)+(o<<3)>>3]=+(f|0);s=+HQ(a,c[i>>2]|0);j=e+g*s;if(s!=0.0&e==j){e=j;break}b=f+1|0;g=g*(k/+(b|0));e=j;f=b}h[(c[n>>2]|0)+(o<<3)>>3]=p;break}case 26:{n=a+48|0;s=+h[c[n>>2]>>3];q=+HQ(a,c[b+24>>2]|0);i=b+20|0;k=1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;g=-1.0;e=-1.0;f=-1;while(1){if((f|0)>=1024)break;if((f|0)<255)h[c[n>>2]>>3]=q*+(d[116545+(f&255)>>0]|0)/255.0;else{p=q*+C(.9,+(+(f+-255|0)));h[c[n>>2]>>3]=(f&2|0?e:g)+((f&1|0)==0?p:-p)}p=+HQ(a,c[i>>2]|0);if(p<=0.0&p>j){j=p;e=+h[c[n>>2]>>3]}if(p>=0.0&p>2]>>3]}if(e>=0.0&g>=0.0){f=0;o=60;break}else f=f+1|0}b:do if((o|0)==60)while(1){if((f|0)>=1e3)break b;q=(e+g)*.5;h[c[n>>2]>>3]=q;if(e==q|g==q)break b;p=+HQ(a,c[i>>2]|0);if(p<=0.0)e=+h[c[n>>2]>>3];if(p>=0.0)g=+h[c[n>>2]>>3];b=GQ(p)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&b>>>0>0){g=p;e=p;break}else{f=f+1|0;o=60}}while(0);h[c[n>>2]>>3]=s;e=k>-j?e:g;break}default:{e=+HQ(a,c[b+20>>2]|0);g=+HQ(a,c[b+24>>2]|0);do switch(c[b>>2]|0){case 10:{e=(e-g*+z(+(e/g)))*+h[b+8>>3];break a}case 35:{e=+h[b+8>>3]*(+(($M(~~e>>>0,+A(e)>=1.0?(e>0.0?~~+O(+z(e/4294967296.0),4294967295.0)>>>0:~~+M((e-+(~~e>>>0))/4294967296.0)>>>0):0,~~g>>>0,+A(g)>=1.0?(g>0.0?~~+O(+z(g/4294967296.0),4294967295.0)>>>0:~~+M((g-+(~~g>>>0))/4294967296.0)>>>0):0)|0)>>>0)+4294967296.0*+(y|0));break a}case 11:{e=(e>g?e:g)*+h[b+8>>3];break a}case 12:{e=(e>3];break a}case 13:{e=(e==g?1.0:0.0)*+h[b+8>>3];break a}case 14:{e=(e>g?1.0:0.0)*+h[b+8>>3];break a}case 15:{e=(e>=g?1.0:0.0)*+h[b+8>>3];break a}case 17:{e=(e>3];break a}case 16:{e=(e<=g?1.0:0.0)*+h[b+8>>3];break a}case 18:{e=+C(+e,+g)*+h[b+8>>3];break a}case 19:{e=e*g*+h[b+8>>3];break a}case 20:{e=e/g*+h[b+8>>3];break a}case 21:{e=(e+g)*+h[b+8>>3];break a}case 22:{e=g*+h[b+8>>3];break a}case 23:{s=+h[b+8>>3];b=~~e;h[(c[a+48>>2]|0)+(((b|0)>0?((b|0)<9?b:9):0)<<3)>>3]=g;e=g*s;break a}case 34:{e=+h[b+8>>3]*+PT(e,g);break a}case 43:{e=+h[b+8>>3]*+J(+e,+g);break a}case 39:{a=GQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=GQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g&~~e|0);break a}case 40:{a=GQ(e)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}a=GQ(g)|0;o=y&2147483647;if(o>>>0>2146435072|(o|0)==2146435072&a>>>0>0){e=r;break a}e=+h[b+8>>3]*+(~~g|~~e|0);break a}default:{e=r;break a}}while(0)}}while(0);l=t;return +e}function IQ(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function JQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n+4|0;i=n;k=d+4|0;e=c[k>>2]|0;do if((e|0)>=1){c[k>>2]=e+-1;e=LQ(j,d)|0;if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;while(1){e=c[f>>2]|0;if((a[e>>0]|0)!=59){f=9;break}c[f>>2]=e+1;e=LQ(i,d)|0;if((e|0)<0){f=6;break}g=c[i>>2]|0;e=MQ(22,h,g)|0;if(!e){f=8;break}else h=e}if((f|0)==6){c[j>>2]=h;FQ(h);break}else if((f|0)==8){c[j>>2]=0;FQ(h);FQ(g);e=-12;break}else if((f|0)==9){c[j>>2]=h;c[k>>2]=(c[k>>2]|0)+1;c[b>>2]=h;e=0;break}}}else e=-22;while(0);l=n;return e|0}function KQ(a){a=a|0;a:do if(!a)a=0;else switch(c[a>>2]|0){case 1:case 0:{a=1;break a}case 33: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(!(KQ(c[a+20>>2]|0)|0)){a=0;break a}a=(c[a+24>>2]|0)==0;break a}case 38:{if(!(KQ(c[a+20>>2]|0)|0)){a=0;break a}a=c[a+24>>2]|0;if(!a){a=1;break a}a=(KQ(a)|0)!=0;break a}case 25:case 37:case 36:{if(!(KQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(KQ(c[a+24>>2]|0)|0)){a=0;break a}a=c[a+28>>2]|0;if(!a){a=1;break a}a=(KQ(a)|0)!=0;break a}case 44:case 42:case 41:{if(!(KQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(KQ(c[a+24>>2]|0)|0)){a=0;break a}a=(KQ(c[a+28>>2]|0)|0)!=0;break a}default:{if(!(KQ(c[a+20>>2]|0)|0)){a=0;break a}if(!(KQ(c[a+24>>2]|0)|0)){a=0;break a}a=(c[a+28>>2]|0)==0;break a}}while(0);return a&1|0}function LQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+4|0;i=k;e=NQ(j,d)|0;do if((e|0)>=0){f=d+8|0;h=c[j>>2]|0;a:while(1){switch(a[c[f>>2]>>0]|0){case 43:case 45:break;default:{f=8;break a}}e=NQ(i,d)|0;if((e|0)<0){f=5;break}g=c[i>>2]|0;e=MQ(21,h,g)|0;if(!e){f=7;break}else h=e}if((f|0)==5){c[j>>2]=h;FQ(h);break}else if((f|0)==7){c[j>>2]=0;FQ(h);FQ(g);e=-12;break}else if((f|0)==8){c[j>>2]=h;c[b>>2]=h;e=0;break}}while(0);l=k;return e|0}function MQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=$g(40)|0;if(!e)e=0;else{c[e>>2]=a;h[e+8>>3]=1.0;c[e+20>>2]=b;c[e+24>>2]=d}return e|0}function NQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n+4|0;j=n;e=OQ(k,d)|0;do if((e|0)>=0){h=d+8|0;i=c[k>>2]|0;a:while(1){e=c[h>>2]|0;switch(a[e>>0]|0){case 47:case 42:break;default:{f=8;break a}}c[h>>2]=e+1;f=a[e>>0]|0;e=OQ(j,d)|0;if((e|0)<0){f=5;break}g=c[j>>2]|0;e=MQ(f<<24>>24==42?19:20,i,g)|0;if(!e){f=7;break}else i=e}if((f|0)==5){c[k>>2]=i;FQ(i);break}else if((f|0)==7){c[k>>2]=0;FQ(i);FQ(g);e=-12;break}else if((f|0)==8){c[k>>2]=i;c[b>>2]=i;e=0;break}}while(0);l=n;return e|0}function OQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=p+12|0;j=p+8|0;k=p+4|0;o=p;e=PQ(k,d,n)|0;do if((e|0)>=0){i=d+8|0;g=c[k>>2]|0;while(1){e=c[i>>2]|0;if((a[e>>0]|0)!=94){f=10;break}c[i>>2]=e+1;e=PQ(o,d,j)|0;if((e|0)<0){f=5;break}f=MQ(18,g,c[o>>2]|0)|0;c[k>>2]=f;if(!f){f=7;break}e=c[f+24>>2]|0;if(!e){g=f;continue}g=e+8|0;h[g>>3]=+h[g>>3]*+(c[j>>2]|1|0);g=f}if((f|0)==5){FQ(g);break}else if((f|0)==7){FQ(g);FQ(c[o>>2]|0);e=-12;break}else if((f|0)==10){if(g|0){o=g+8|0;h[o>>3]=+h[o>>3]*+(c[n>>2]|1|0)}c[b>>2]=g;e=0;break}}while(0);l=p;return e|0}function PQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=d+8|0;h=c[g>>2]|0;do if((a[h>>0]|0)==45){+EV(h,f);h=c[f>>2]|0;if(((h|0)!=(c[g>>2]|0)?(a[h>>0]|0)==100:0)?(a[h+1>>0]|0)==66:0){c[e>>2]=0;b=QQ(b,d)|0;break}i=7}else i=7;while(0);if((i|0)==7)b=RQ(b,d,e)|0;l=j;return b|0}function QQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;if((l|0)>=(m|0))W(48);u=x+24|0;r=x+16|0;q=x+8|0;p=x;w=x+32|0;s=x+28|0;o=$g(40)|0;c[w>>2]=o;t=d+8|0;v=c[t>>2]|0;c[s>>2]=v;a:do if(!o)e=-12;else{j=o+8|0;h[j>>3]=+SQ(v,s);n=c[s>>2]|0;i=o;if((n|0)!=(c[t>>2]|0)){c[o>>2]=0;c[t>>2]=n;c[b>>2]=i;e=0;break}h[j>>3]=1.0;f=c[d+16>>2]|0;b:do if(!f)e=0;else{e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g){e=0;break b}if(TQ(n,g)|0)break;e=e+1|0}c[t>>2]=n+(RU(g)|0);c[o>>2]=1;c[o+16>>2]=e;c[b>>2]=i;e=0;break a}while(0);while(1){if(e>>>0>=4)break;f=c[28704+(e<<4)>>2]|0;if(TQ(n,f)|0){k=11;break}e=e+1|0}if((k|0)==11){c[t>>2]=n+(RU(f)|0);c[o>>2]=0;h[j>>3]=+h[28704+(e<<4)+8>>3];c[b>>2]=i;e=0;break}e=SU(n,40)|0;c[t>>2]=e;if(!e){c[p>>2]=v;ig(d,16,156516,p);c[t>>2]=c[s>>2];FQ(c[w>>2]|0);e=-22;break}c[t>>2]=e+1;if((a[n>>0]|0)==40){eg(w);e=JQ(w,d)|0;if((e|0)<0)break;e=c[t>>2]|0;if((a[e>>0]|0)==41){c[t>>2]=e+1;c[b>>2]=c[w>>2];e=0;break}else{c[q>>2]=v;ig(d,16,156559,q);FQ(c[w>>2]|0);e=-22;break}}e=JQ(o+20|0,d)|0;if((e|0)<0){FQ(c[w>>2]|0);break}f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;JQ((c[w>>2]|0)+24|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0;if(e<<24>>24==44){c[t>>2]=f+1;JQ((c[w>>2]|0)+28|0,d)|0;f=c[t>>2]|0;e=a[f>>0]|0}}if(e<<24>>24!=41){c[r>>2]=v;ig(d,16,156580,r);FQ(c[w>>2]|0);e=-22;break}c[t>>2]=f+1;k=c[w>>2]|0;c[k>>2]=2;i=c[s>>2]|0;j=k;do if(!(TQ(i,156618)|0)){if(TQ(i,156623)|0){c[k+16>>2]=2;break}if(TQ(i,156628)|0){c[k+16>>2]=3;break}if(TQ(i,156633)|0){c[k+16>>2]=4;break}if(TQ(i,156637)|0){c[k+16>>2]=5;break}if(TQ(i,156641)|0){c[k+16>>2]=6;break}if(TQ(i,156645)|0){c[k+16>>2]=7;break}if(TQ(i,156650)|0){c[k+16>>2]=8;break}if(TQ(i,156655)|0){c[k+16>>2]=9;break}if(TQ(i,156660)|0){c[k+16>>2]=10;break}if(TQ(i,169130)|0){c[k+16>>2]=11;break}if(TQ(i,156664)|0){c[k+16>>2]=12;break}if(TQ(i,156668)|0){c[k+16>>2]=13;break}if(TQ(i,156673)|0){c[k>>2]=5;break}if(TQ(i,156680)|0){c[k>>2]=6;break}if(TQ(i,156686)|0){c[k>>2]=10;break}if(TQ(i,156690)|0){c[k>>2]=11;break}if(TQ(i,156694)|0){c[k>>2]=12;break}if(TQ(i,156698)|0){c[k>>2]=13;break}if(TQ(i,156701)|0){c[k>>2]=15;break}if(TQ(i,156705)|0){c[k>>2]=14;break}if(TQ(i,156708)|0){c[k>>2]=16;break}if(TQ(i,156712)|0){c[k>>2]=17;break}if(TQ(i,156715)|0){c[k>>2]=7;break}if(TQ(i,156718)|0){c[k>>2]=8;break}if(TQ(i,156724)|0){c[k>>2]=9;break}if(TQ(i,156730)|0){c[k>>2]=23;break}if(TQ(i,156733)|0){c[k>>2]=24;break}if(TQ(i,156739)|0){c[k>>2]=25;break}if(TQ(i,156746)|0){c[k>>2]=26;break}if(TQ(i,156751)|0){c[k>>2]=27;break}if(TQ(i,156757)|0){c[k>>2]=28;break}if(TQ(i,162836)|0){c[k>>2]=29;break}if(TQ(i,156762)|0){c[k>>2]=30;break}if(TQ(i,156768)|0){c[k>>2]=31;break}if(TQ(i,156773)|0){c[k>>2]=32;break}if(TQ(i,156777)|0){c[k>>2]=18;break}if(TQ(i,156781)|0){c[k>>2]=38;break}if(TQ(i,157244)|0){c[k>>2]=33;break}if(TQ(i,156787)|0){c[k>>2]=34;break}if(TQ(i,156793)|0){c[k>>2]=35;break}if(TQ(i,156797)|0){c[k>>2]=36;break}if(TQ(i,156800)|0){c[k>>2]=37;break}if(TQ(i,156806)|0){c[k>>2]=39;break}if(TQ(i,156813)|0){c[k>>2]=40;break}if(TQ(i,156819)|0){c[k>>2]=41;break}if(TQ(i,156827)|0){c[k>>2]=42;break}if(TQ(i,156832)|0){c[k>>2]=43;break}if(TQ(i,156838)|0){c[k>>2]=44;break}f=c[d+24>>2]|0;c:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break c;if(TQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+20>>2]|0)+(e<<2)>>2];c[k>>2]=3;c[b>>2]=j;e=0;break a}while(0);f=c[d+32>>2]|0;d:do if(f|0){e=0;while(1){g=c[f+(e<<2)>>2]|0;if(!g)break d;if(TQ(i,g)|0)break;e=e+1|0}c[k+16>>2]=c[(c[d+28>>2]|0)+(e<<2)>>2];c[k>>2]=4;c[b>>2]=j;e=0;break a}while(0);c[u>>2]=v;ig(d,16,156843,u);FQ(c[w>>2]|0);e=-22;break a}else c[k+16>>2]=1;while(0);c[b>>2]=j;e=0}while(0);l=x;return e|0}function RQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d+8|0;h=c[f>>2]|0;g=a[h>>0]|0;g=(g<<24>>24==43&1)-(g<<24>>24==45&1)|0;c[e>>2]=g;c[f>>2]=h+(g&1);return QQ(b,d)|0}function SQ(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;if((a[b>>0]|0)==48?(a[b+1>>0]|32|0)==120:0)f=+((NT(b,k,16)|0)>>>0);else f=+EV(b,k);i=c[k>>2]|0;e=i;if((i|0)!=(b|0)){b=a[i>>0]|0;if(b<<24>>24==100)if((a[i+1>>0]|0)==66){f=+bV(f/20.0*3.321928094887362);b=i+2|0;c[k>>2]=b;e=b;j=14}else j=10;else if((b+-69&255)<54)j=10;else{g=b;b=i}do if((j|0)==10){b=(b<<24>>24)+-69|0;if(a[28768+(b*24|0)+16>>0]|0){g=i+1|0;if((a[g>>0]|0)==105){f=f*+h[28768+(b*24|0)>>3];b=i+2|0;c[k>>2]=b;e=b;j=14;break}else{f=f*+h[28768+(b*24|0)+8>>3];c[k>>2]=g;e=g;b=g;j=14;break}}else{b=i;j=14}}while(0);if((j|0)==14)g=a[b>>0]|0;if(g<<24>>24==66){e=b+1|0;c[k>>2]=e;f=f*8.0}}if(d|0)c[d>>2]=e;l=n;return +f}function TQ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=0;while(1){e=a[c+d>>0]|0;f=a[b+d>>0]|0;if(!(e<<24>>24)){g=4;break}if(e<<24>>24==f<<24>>24)d=d+1|0;else{d=0;break}}if((g|0)==4){d=f<<24>>24;d=f<<24>>24!=95&((d+-48|0)>>>0>9&((d&-33)+-65|0)>>>0>25)&1}return d|0}function UQ(a){a=+a;var b=0;b=VQ()|0;return +((+(b>>>0)+4294967296.0*+(y|0))*1.0e-06)}function VQ(){var a=0,b=0,d=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=a;fc(b|0,0)|0;d=c[b>>2]|0;d=nX(d|0,((d|0)<0)<<31>>31|0,1e6,0)|0;b=c[b+4>>2]|0;b=hX(d|0,y|0,b|0,((b|0)<0)<<31>>31|0)|0;l=a;return b|0}function WQ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;a:do if((a|0)!=0?(j=c[a>>2]|0,(j|0)!=0):0){b:do if(f&1|0){if(!(f&2)){i=0;while(1){i=YQ(a,i)|0;if(!i)break b;h=WQ(i,b,d,e,f,g)|0;if(h|0)break a}}c[i>>2]=0;h=0;while(1){h=XQ(j,h)|0;c[i>>2]=h;if(!h){i=7;break}h=WQ(i,b,d,e,f,0)|0;if(h|0){i=10;break}h=c[i>>2]|0}if((i|0)==7)break;else if((i|0)==10)break a}while(0);j=(d|0)==0;h=0;while(1){h=Sg(a,h)|0;if(!h){h=0;break a}if(XT(c[h>>2]|0,b)|0)continue;if((c[h+40>>2]&e|0)!=(e|0))continue;i=(c[h+12>>2]|0)==10;if(j)if(i)continue;else break;if(!i)continue;i=c[h+44>>2]|0;if(!i)continue;if(!(XT(i,d)|0))break}if(g)c[g>>2]=(f&2|0)==0?a:0}else h=0;while(0);l=k;return h|0}function XQ(a,b){a=a|0;b=b|0;a=c[a+28>>2]|0;if(!a)a=0;else a=Jd[a&31](b)|0;return a|0}function YQ(a,b){a=a|0;b=b|0;var d=0;d=c[(c[a>>2]|0)+24>>2]|0;if(!d)a=0;else a=Kd[d&15](a,b)|0;return a|0}function ZQ(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0.0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;e=n+8|0;i=_Q(b)|0;h=y&2147483647;do if(h>>>0>2146435072|(h|0)==2146435072&i>>>0>0){c[a>>2]=0;c[a+4>>2]=0}else{if(+A(+b)>2147483650.0){c[a>>2]=b<0.0?-1:1;c[a+4>>2]=0;break}+rU(b,e);f=(c[e>>2]|0)+-1|0;f=(f|0)>0?f:0;c[e>>2]=f;e=sX(1,0,61-f|0)|0;f=y;g=j+4|0;o=+z(+((+(e>>>0)+4294967296.0*+(f|0))*b+.5));h=~~o>>>0;i=+A(o)>=1.0?(o>0.0?~~+O(+z(o/4294967296.0),4294967295.0)>>>0:~~+M((o-+(~~o>>>0))/4294967296.0)>>>0):0;_n(j,g,h,i,e,f,d,((d|0)<0)<<31>>31)|0;if(!(c[j>>2]|0)){if((d|0)!=2147483647&(b!=0.0&(d|0)>0))k=8}else if((d|0)!=2147483647&((d|0)>0&(b!=0.0&(c[g>>2]|0)==0)))k=8;if((k|0)==8)_n(j,g,h,i,e,f,2147483647,0)|0;d=j;j=c[d+4>>2]|0;k=a;c[k>>2]=c[d>>2];c[k+4>>2]=j}while(0);l=n;return}function _Q(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function $Q(){var a=0,b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;a=Ec(84)|0;if(!(c[46472]|0)){c[b>>2]=a;ig(0,48,157016,b);c[46472]=1}l=d;return a|0}function aR(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=s;p=a+68|0;g=c[p>>2]|0;do if((g|0)>0?(q=a+72|0,h=c[q>>2]|0,(h|0)>0):0){r=a+392|0;e=c[r>>2]|0;j=a+396|0;f=c[j>>2]|0;if(e>>>0<(2147483647-f|0)>>>0?(k=a+384|0,t=c[k>>2]|0,n=a+388|0,i=c[n>>2]|0,(i+t|0)>>>0>>0&((f+e|0)>>>0>>0&t>>>0<(2147483647-i|0)>>>0)):0){i=Dh(c[a+80>>2]|0)|0;if(!i)e=-558323010;else{if(!(0==0?(c[i+8>>2]&12|0)==0:0)){c[p>>2]=(c[p>>2]|0)-(c[j>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[j>>2]=0;c[n>>2]=0;e=0;break}bR(o,a,i);if(!(b&1)){h=c[r>>2]|0;if(!h)b=2147483647;else b=d[157043+((N(h&0-h,125613361)|0)>>>27)>>0]|0;f=2147483647;g=0;while(1){if(!(c[a+(g<<2)>>2]|0))break;e=c[o+(g<<2)>>2]|0;if(!e)e=2147483647;else e=d[157043+((N(e&0-e,125613361)|0)>>>27)>>0]|0;f=(e|0)>(f|0)?f:e;g=g+1|0}if((b|0)<(f|0)){e=-558323010;break}if((f|0)<5){c[r>>2]=h&-1<>2]|0;if(!g)break;c[f>>2]=g+(c[o+(e<<2)>>2]|0);e=e+1|0}c[p>>2]=(c[p>>2]|0)-((c[j>>2]|0)+(c[r>>2]|0));c[q>>2]=(c[q>>2]|0)-((c[n>>2]|0)+(c[k>>2]|0));c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;e=0}}else e=-34}else e=-22;while(0);l=s;return e|0}function bR(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=e+5|0;k=e+6|0;m=e+8|0;n=e+4|0;o=b+384|0;p=b+392|0;f=0;a:while(1){if(!(c[b+(f<<2)>>2]|0))break;if((f+-1|0)>>>0<2){j=d[k>>0]|0;l=d[h>>0]|0}else{j=0;l=0}if((f|0)==1&((c[m>>2]&66|0)!=0|0!=0)){q=10;break}i=d[n>>0]|0;g=0;while(1){if((g|0)>=(i|0))break a;if((c[e+16+(g<<5)>>2]|0)==(f|0))break;g=g+1|0}j=N((c[o>>2]|0)>>>j,c[b+32+(f<<2)>>2]|0)|0;c[a+(f<<2)>>2]=(N((c[p>>2]|0)>>>l,c[e+16+(g<<5)+4>>2]|0)|0)+j;f=f+1|0}if((q|0)==10)c[a+4>>2]=0;return}function cR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[d>>2]|0;g=c[e+4>>2]|0;h=nX(g|0,((g|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;g=y;e=c[e>>2]|0;d=c[d+4>>2]|0;e=nX(d|0,((d|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Qn(a,b,h,g,e,y,f)|0;return f|0}function dR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f+8|0;h=f;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];e=cR(a,b,h,g,5)|0;l=f;return e|0}function eR(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=$g(N(b,a)|0)|0;else a=0;return a|0}function fR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=n+16|0;k=n+8|0;i=n;j=n+32|0;h=n+24|0;f=WQ(a,b,0,0,e,j)|0;e=c[j>>2]|0;a:do if((f|0)!=0&(e|0)!=0){b=(d|0)!=0;if(!b)switch(c[f+12>>2]|0){case 18:case 17:case 16:case 15:case 14:case 11:case 13:case 12:case 5:break;default:{b=-22;break a}}if(!(c[f+40>>2]&128)){j=e+(c[f+8>>2]|0)|0;do switch(c[f+12>>2]|0){case 18:{b=gR(a,f,d,j)|0;break a}case 5:{b=hR(d,j)|0;break a}case 7:{b=iR(d,j)|0;break a}case 6:case 3:case 4:case 9:case 2:case 1:case 0:{b=yQ(a,e,f,d,j)|0;break a}case 11:{b=jR(a,d,j)|0;break a}case 14:{b=kR(a,d,h)|0;if((b|0)>=0){b=c[h>>2]|0;b=zQ(a,f,j,1.0,c[h+4>>2]|0,b,((b|0)<0)<<31>>31)|0}break a}case 12:{b=lR(a,f,d,j)|0;break a}case 13:{b=mR(a,f,d,j)|0;break a}case 15:{if(!b){b=j;c[b>>2]=0;c[b+4>>2]=0;b=0;break a}b=nR(j,d,1)|0;if((b|0)>=0)break a;c[i>>2]=d;ig(a,16,157075,i);break a}case 16:{b=oR(a,d,j)|0;break a}case 17:{if(b?XT(d,167678)|0:0){e=sQ(d)|0;f=y;if((e|0)==0&(f|0)==0){c[k>>2]=d;ig(a,16,157122,k);b=-22}else b=0;a=j;c[a>>2]=e;c[a+4>>2]=f;break a}d=j;c[d>>2]=0;c[d+4>>2]=0;break}default:{}}while(0);ig(a,16,157175,g);b=-22}else b=-22}else b=-1414549496;while(0);l=n;return b|0}function gR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;j=o+4|0;do if(!d)f=0;else{if(XT(d,164115)|0)if(!(nQ(d,159491)|0))if(!(nQ(d,159520)|0)){c[j>>2]=0;g=OT(d,j,10)|0;p=d+(RU(d)|0)|0;if((p|0)==(c[j>>2]|0)){f=g;n=6}}else{f=0;n=6}else{f=1;n=6}else{f=-1;n=6}if(((n|0)==6?(i=+(f|0),!(+h[b+24>>3]>i)):0)?!(+h[b+32>>3]>2]=f;f=0;break}c[k>>2]=d;ig(a,16,159552,k);f=-22}while(0);l=o;return f|0}function hR(a,b){a=a|0;b=b|0;eg(b);a=ri(a)|0;c[b>>2]=a;return (a|0?0:-12)|0}function iR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=d+4|0;eg(d);c[j>>2]=0;do if((b|0)!=0?(e=RU(b)|0,(e|0)!=0):0)if(!(e&1)){h=(e|0)/2|0;i=qg(h)|0;if(i){g=i;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=9;break}e=ER(e)|0;f=ER(a[b+1>>0]|0)|0;if((f|e|0)<0){b=8;break}a[g>>0]=f|e<<4;b=b+2|0;g=g+1|0}if((b|0)==8){fg(i);e=-22;break}else if((b|0)==9){c[d>>2]=i;c[j>>2]=h;e=0;break}}else e=-12}else e=-22;else e=0;while(0);return e|0}function jR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if((b|0)!=0?(XT(b,167678)|0)!=0:0){d=DR(d,d+4|0,b)|0;if((d|0)<0){c[e>>2]=b;ig(a,16,159186,e)}}else{c[d+4>>2]=0;c[d>>2]=0;d=0}l=f;return d|0}function kR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;if(b){d=BR(d,b)|0;if((d|0)<0)f=3}else{d=-22;f=3}if((f|0)==3){c[e>>2]=b;ig(a,16,159088,e)}l=g;return d|0}function lR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return yR(a,b,c,d,183,20,159049)|0}function mR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return yR(a,b,c,d,12,21,158932)|0}function nR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;if((l|0)>=(m|0))W(144);o=s+132|0;p=s+88|0;q=s+44|0;r=s;f=p;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));j=b;c[j>>2]=0;c[j+4>>2]=-2147483648;j=(e|0)!=0;a:do if(j){g=(a[d>>0]|0)==45;d=g?d+1|0:d;g=g&1;f=rR(d,158781,p)|0;if(!f){f=rR(d,158790,p)|0;e=p+8|0;c[e>>2]=0;if(!f){c[p>>2]=OT(d,r,10)|0;f=c[r>>2]|0;if((f|0)==(d|0)){e=-22;break}else{c[p+4>>2]=0;c[e>>2]=0;e=g;d=0;k=18;break}}else{n=g;h=0;k=19}}else{n=g;h=0;k=19}}else{e=VQ()|0;f=y;n=lX(e|0,f|0,1e6,0)|0;c[o>>2]=n;if(!(kQ(d,158777)|0)){c[b>>2]=e;c[b+4>>2]=f;e=0;break}else f=0;while(1){if(f>>>0>=2){e=0;break}e=rR(d,c[107064+(f<<2)>>2]|0,p)|0;if(!e)f=f+1|0;else break}h=(e|0)==0;g=h?d:e;h=h&1;e=a[g>>0]|0;b:do switch(e<<24>>24){case 116:case 84:{d=g+1|0;break}default:{d=g;while(1){f=d+1|0;if(!(sR(e<<24>>24)|0))break b;d=f;e=a[f>>0]|0}}}while(0);e=0;f=g;while(1){if(e>>>0>=2){e=0;d=h;k=18;break a}f=rR(d,c[107072+(e<<2)>>2]|0,p)|0;if(!f){e=e+1|0;f=0}else{n=0;k=19;break}}}while(0);if((k|0)==18)if(!f)e=-22;else{n=e;h=d;k=19}c:do if((k|0)==19){e=a[f>>0]|0;if(e<<24>>24==46){g=1e5;d=0;while(1){f=f+1|0;if(!g)break;e=a[f>>0]|0;if(!(tR(e)|0))break;i=(N(e+-48|0,g)|0)+d|0;g=(g>>>0)/10|0;d=i}while(1){e=a[f>>0]|0;if(!(tR(e<<24>>24)|0)){i=f;g=e;break}else f=f+1|0}}else{d=0;i=f;g=e}d:do if(j){j=((c[p+4>>2]|0)*60|0)+((c[p+8>>2]|0)*3600|0)+(c[p>>2]|0)|0;e=((j|0)<0)<<31>>31;switch(g<<24>>24){case 109:{if((a[i+1>>0]|0)==115){i=i+2|0;d=(d|0)/1e3|0;g=1e3;h=0;f=j;break d}else k=28;break}case 117:{f=i+1|0;if((a[f>>0]|0)==115){i=i+2|0;d=0;g=1;h=0;f=j;break d}break}default:k=28}if((k|0)==28)f=i+1|0;i=g<<24>>24==115?f:i;g=1e6;h=0;f=j}else{j=(g|32)<<24>>24==122;e=j&1;i=i+e|0;h=(h|0)!=0;e:do if(h|j){f=0;g=0}else{switch(a[i>>0]|0){case 45:case 43:break;default:{f=0;g=0;break e}}f=r;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));g=(a[i>>0]|0)==43;f=i+1|0;i=f;e=0;while(1){if(e>>>0>=3){k=37;break}i=rR(f,c[107080+(e<<2)>>2]|0,r)|0;if(!i){i=0;e=e+1|0}else break}if((k|0)==37)if(!i){e=-22;break c}g=N(g?-60:60,((c[r+8>>2]|0)*60|0)+(c[r+4>>2]|0)|0)|0;e=1;f=g;g=((g|0)<0)<<31>>31}while(0);if(h){if(!e){q=(oc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}else{q=(gc(o|0,q|0)|0)+12|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];c[r+16>>2]=c[q+16>>2];c[r+20>>2]=c[q+20>>2];c[r+24>>2]=c[q+24>>2];c[r+28>>2]=c[q+28>>2]}q=p+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2]}r=(e|0)!=0;c[p+32>>2]=(r^1)<<31>>31;if(r)e=uR(p)|0;else e=qc(p|0)|0;f=hX(f|0,g|0,e|0,((e|0)<0)<<31>>31|0)|0;g=1e6;h=0;e=y}while(0);r=(a[i>>0]|0)==0;e=nX(g|0,h|0,f|0,e|0)|0;e=hX(e|0,y|0,d|0,((d|0)<0)<<31>>31|0)|0;f=y;if(r){r=(n|0)!=0;q=iX(0,0,e|0,f|0)|0;c[b>>2]=r?q:e;c[b+4>>2]=r?y:f;e=0}else e=-22}while(0);l=s;return e|0}function oR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;if(b){d=pR(d,b,-1,a)|0;if((d|0)<0){c[e>>2]=b;ig(a,16,157197,e)}}else d=0;l=f;return d|0}function pR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+160|0;if((l|0)>=(m|0))W(160);t=u+16|0;p=u+8|0;o=u;s=u+28|0;q=u+32|0;n=u+24|0;if((a[d>>0]|0)==35)i=1;else{i=(ZT(d,157241,2)|0)==0;i=i?2:0}if((e|0)<0)e=RU(d)|0;e=e-i+1|0;ti(q,d+i|0,e>>>0<128?e:128)|0;e=SU(q,64)|0;c[s>>2]=e;if(!e)k=0;else{k=e+1|0;c[s>>2]=k;a[e>>0]=0}h=RU(q)|0;j=b+3|0;a[j>>0]=-1;a:do if((kQ(q,157244)|0)!=0?(kQ(q,157251)|0)!=0:0){if((i|0)==0?(CV(q,157260)|0)!=(h|0):0){e=GV(q,105944,140,8,11)|0;if(!e){c[p>>2]=q;ig(f,16,157324,p);e=-22;break}else{r=e+4|0;a[b>>0]=a[r>>0]|0;a[b+1>>0]=a[r+1>>0]|0;a[b+2>>0]=a[r+2>>0]|0;r=20;break}}e=NT(q,n,16)|0;b:do if(!(a[c[n>>2]>>0]|0)){switch(h|0){case 8:{a[j>>0]=e;e=e>>>8;break}case 6:break;default:break b}a[b>>0]=e>>>16;a[b+1>>0]=e>>>8;a[b+2>>0]=e;r=20;break a}while(0);c[o>>2]=q;ig(f,16,157283,o);e=-22}else r=9;while(0);if((r|0)==9){q=$P()|0;a[b>>0]=q>>>24;a[b+1>>0]=q>>>16;a[b+2>>0]=q>>>8;a[j>>0]=q;r=20}do if((r|0)==20)if(!k)e=0;else{if(!(ZT(k,157241,2)|0))g=+((NT(k,s,16)|0)>>>0);else{g=+EV(k,s);g=g<0.0|g>1.0?256.0:g*255.0}s=c[s>>2]|0;if((s|0)!=(k|0)?!(g<0.0|(g>255.0|(a[s>>0]|0)!=0)):0){a[j>>0]=~~g;e=0;break}c[t>>2]=k;c[t+4>>2]=d;ig(f,16,157348,t);e=-22}while(0);l=u;return e|0}function qR(a,b){a=a|0;b=b|0;return kQ(a,c[b>>2]|0)|0}function rR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=q;c[o>>2]=b;h=e+8|0;i=e+4|0;j=e+20|0;k=e+16|0;n=e+12|0;a:while(1){g=d+1|0;f=a[d>>0]|0;switch(f<<24>>24){case 0:{p=27;break a}case 37:break;default:{d=(sR(f<<24>>24)|0)==0;b=c[o>>2]|0;if(d){if((a[b>>0]|0)!=f<<24>>24){b=0;break a}c[o>>2]=b+1;d=g;continue a}while(1){d=a[b>>0]|0;if(!(d<<24>>24))break;if(!(sR(d<<24>>24)|0))break;b=b+1|0}c[o>>2]=b;d=g;continue a}}d=d+2|0;b=a[g>>0]|0;switch(b<<24>>24|0){case 74:case 72:{b=vR(o,0,b<<24>>24==72?23:2147483647,2)|0;if((b|0)==-1){b=0;break a}c[h>>2]=b;continue a}case 77:{b=vR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[i>>2]=b;continue a}case 83:{b=vR(o,0,59,2)|0;if((b|0)==-1){b=0;break a}c[e>>2]=b;continue a}case 89:{b=vR(o,0,9999,4)|0;if((b|0)==-1){b=0;break a}c[j>>2]=b+-1900;continue a}case 109:{b=vR(o,1,12,2)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b+-1;continue a}case 100:{b=vR(o,1,31,2)|0;if((b|0)==-1){b=0;break a}c[n>>2]=b;continue a}case 84:{g=rR(c[o>>2]|0,158810,e)|0;c[o>>2]=g;if(!g){b=0;break a}else continue a}case 104:case 66:case 98:{b=wR(o)|0;if((b|0)==-1){b=0;break a}c[k>>2]=b;continue a}case 37:{g=c[o>>2]|0;c[o>>2]=g+1;if((a[g>>0]|0)==37)continue a;else{b=0;break a}}default:{b=0;break a}}}if((p|0)==27)b=c[o>>2]|0;l=q;return b|0}function sR(a){a=a|0;switch(a|0){case 9:case 10:case 12:case 13:case 32:{a=1;break}default:a=(a|0)==11&1}return a|0}function tR(a){a=a|0;return (a+-48|0)>>>0<10|0}function uR(a){a=a|0;var b=0,d=0,e=0;b=c[a+16>>2]|0;d=(b|0)<2;e=(d?1899:1900)+(c[a+20>>2]|0)|0;return ((c[a+8>>2]|0)*3600|0)+-2032579456+((c[a+4>>2]|0)*60|0)+(c[a>>2]|0)+(((e*365|0)+(c[a+12>>2]|0)+((e|0)/4|0)+((e|0)/-100|0)+((e|0)/400|0)+(((((d?13:1)+b|0)*153|0)+-457|0)/5|0)|0)*86400|0)|0}function vR(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=c[b>>2]|0;h=j;g=0;i=0;while(1){if((i|0)>=(f|0))break;k=a[h>>0]|0;if(!(tR(k)|0))break;h=h+1|0;g=(g*10|0)+-48+k|0;i=i+1|0}if((h|0)!=(j|0)?!((g|0)<(d|0)|(g|0)>(e|0)):0)c[b>>2]=h;else g=-1;return g|0}function wR(a){a=a|0;var b=0,d=0,e=0,f=0;b=0;while(1){if((b|0)>=12){b=-1;break}d=c[107092+(b<<2)>>2]|0;if(!(mQ(c[a>>2]|0,d,3)|0)){e=4;break}b=b+1|0}if((e|0)==4){e=d+3|0;f=RU(e)|0;d=(c[a>>2]|0)+3|0;c[a>>2]=d;if((f|0)>0?(mQ(d,e,f)|0)==0:0)c[a>>2]=(c[a>>2]|0)+f}return b|0}function xR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=12){b=-1;break}if(!(XT(101928+(b*20|0)|0,a)|0))break;b=b+1|0}return b|0}function yR(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);q=r+8|0;o=r;n=r+28|0;do if((e|0)!=0?(XT(e,167678)|0)!=0:0){k=Jd[i&31](e)|0;if((k|0)==-1){k=OT(e,n,0)|0;if(k>>>0>>0?(a[c[n>>2]>>0]|0)==0:0){p=7;break}else{c[o>>2]=e;c[o+4>>2]=j;ig(b,16,158946,o);i=-22;break}}else p=7}else{k=-1;p=7}while(0);do if((p|0)==7){s=+h[d+24>>3];e=~~(s>-1.0?s:-1.0);s=+h[d+32>>3];p=g+-1|0;t=+(p|0);i=~~(s>t?t:s);g=(i|e|0)==0;e=g?-1:e;i=g?p:i;if((k|0)<(e|0)|(k|0)>(i|0)){f=c[d>>2]|0;c[q>>2]=k;c[q+4>>2]=f;c[q+8>>2]=j;c[q+12>>2]=e;c[q+16>>2]=i;ig(b,16,158987,q);i=-34;break}else{c[f>>2]=k;i=0;break}}while(0);l=r;return i|0}function zR(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+48|0;if((l|0)>=(m|0))W(48);e=f;d=f+8|0;if(!(XT(a,159062)|0))b=125236;else{b=(XT(a,159068)|0)==0;b=b?125226:a}a=AR(b)|0;if((a|0)==-1){c[e>>2]=b;c[e+4>>2]=159079;_U(d,32,159074,e)|0;a=AR(d)|0;if((a|0)==-1){e=(XT(b,159082)|0)==0;l=f;return (e?46:-1)|0}}l=f;return a|0}function AR(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=183){b=-1;break}if(!(XT(c[200+(b*152|0)>>2]|0,a)|0))break;if(nQ(a,c[200+(b*152|0)+144>>2]|0)|0)break;b=b+1|0}return b|0}function BR(a,b){a=a|0;b=b|0;var d=0,e=0;d=0;while(1){if((d|0)>=8){e=6;break}if(!(XT(c[107140+(d*12|0)>>2]|0,b)|0)){e=4;break}d=d+1|0}if((e|0)==4){b=107140+(d*12|0)+4|0;e=c[b+4>>2]|0;d=a;c[d>>2]=c[b>>2];c[d+4>>2]=e;d=0}else if((e|0)==6){d=CR(a,b,1001e3,64,0)|0;if((d|0)>=0)if((c[a>>2]|0)<1)d=-22;else return ((c[a+4>>2]|0)<1?-22:0)|0}return d|0}function CR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=k+8|0;i=k;g=a+4|0;c[j>>2]=a;c[j+4>>2]=g;c[j+8>>2]=k+20;do if((oV(b,159137,j)|0)!=2){b=BQ(j,b,0,0,0,0,0,0,0,e,f)|0;if((b|0)<0)break;else{ZQ(i,+h[j>>3],d);j=c[i+4>>2]|0;b=a;c[b>>2]=c[i>>2];c[b+4>>2]=j;b=0;break}}else{j=c[a>>2]|0;b=c[g>>2]|0;_n(a,g,j,((j|0)<0)<<31>>31,b,((b|0)<0)<<31>>31,d,((d|0)<0)<<31>>31)|0;b=0}while(0);l=k;return b|0}function DR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=0;while(1){if((g|0)>=53){i=6;break}if(!(XT(c[107236+(g*12|0)>>2]|0,e)|0)){i=4;break}g=g+1|0}if((i|0)==4){f=c[107236+(g*12|0)+8>>2]|0;e=c[107236+(g*12|0)+4>>2]|0;i=10}else if((i|0)==6)if((g|0)==53){e=OT(e,h,10)|0;f=c[h>>2]|0;if(a[f>>0]|0){f=f+1|0;c[h>>2]=f}f=OT(f,h,10)|0;if(!(a[c[h>>2]>>0]|0))i=10;else e=-22}else e=-22;if((i|0)==10)if((e|0)<1|(f|0)<1)e=-22;else{c[b>>2]=e;c[d>>2]=f;e=0}l=j;return e|0}function ER(a){a=a|0;var b=0;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)<6)a=-87;else return ((a+-65&255)<6?b+-55|0:-1)|0;else a=-48;return a+b|0}function FR(a){a=a|0;return (a>>>0>11?0:101928+(a*20|0)|0)|0}function GR(a){a=a|0;HR(a,0,0);return}function HR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=n;j=n+8|0;i=j+4|0;e=0;a:while(1){e=Sg(a,e)|0;if(!e)break;g=a+(c[e+8>>2]|0)|0;f=c[e+40>>2]|0;if(!((f&b|0)==(d|0)&(f&128|0)==0))continue;f=c[e+12>>2]|0;switch(f|0){case 8:case 10:continue a;case 13:case 12:case 17:case 15:case 9:case 2:case 1:case 0:case 18:{f=e+16|0;zQ(a,e,g,1.0,1,c[f>>2]|0,c[f+4>>2]|0)|0;continue a}case 4:case 3:{zQ(a,e,g,+h[e+16>>3],1,1,0)|0;continue a}case 6:{ZQ(j,+h[e+16>>3],2147483647);f=c[j>>2]|0;zQ(a,e,g,1.0,c[i>>2]|0,f,((f|0)<0)<<31>>31)|0;continue a}case 16:{oR(a,c[e+16>>2]|0,g)|0;continue a}case 5:{hR(c[e+16>>2]|0,g)|0;continue a}case 11:{jR(a,c[e+16>>2]|0,g)|0;continue a}case 14:{kR(a,c[e+16>>2]|0,g)|0;continue a}case 7:{iR(c[e+16>>2]|0,g)|0;continue a}default:{g=c[e>>2]|0;c[k>>2]=f;c[k+4>>2]=g;ig(a,48,159598,k);continue a}}}l=n;return} +function ug(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;do if(((b|0)!=0?(e=c[b+12>>2]|0,!((e|0)<3357440|(e&252)>>>0<100)):0)?(d=c[b+32>>2]|0,d>>>0<=45):0){b=c[b+36>>2]|0;if(!b){b=d+16|0;break}else{b=(Jd[b&31](a)|0)+16|0;break}}else b=16;while(0);return b|0}function vg(a){a=a|0;a=a+8|0;switch(a>>>3|a<<29|0){case 0:{a=117179;break}case 7:{a=164921;break}case 6:{a=117171;break}case 5:{a=117166;break}case 4:{a=117158;break}case 3:{a=117152;break}case 2:{a=117146;break}case 1:{a=117140;break}default:a=262784}return a|0}function wg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=k;h=a+8|0;i=a+4|0;while(1){f=c[h>>2]|0;e=c[i>>2]|0;f=f-(e>>>0>f>>>0?f:e)|0;if(!f)e=0;else e=(c[a>>2]|0)+e|0;c[g>>2]=c[d>>2];e=$T(e,f,b,g)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(xg(a,e)|0){j=7;break}}if((j|0)==7)yg(a,e);l=k;return}function xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+8|0;d=c[f>>2]|0;e=c[a+12>>2]|0;if((d|0)!=(e|0))if(zg(a)|0){g=a+4|0;i=c[g>>2]|0;h=-2-i|0;h=i+1+(h>>>0>b>>>0?b:h)|0;b=d>>>0>e>>>1>>>0?e:d<<1;b=b>>>0>>0?(e>>>0>h>>>0?h:e):b;d=c[a>>2]|0;d=(d|0)==(a+16|0)?0:d;e=pg(d,b)|0;if(!e)b=-12;else{if(!d)wX(e|0,c[a>>2]|0,(c[g>>2]|0)+1|0)|0;c[a>>2]=e;c[f>>2]=b;b=0}}else b=-1094995529;else b=-5;return b|0}function yg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;e=c[f>>2]|0;g=-6-e|0;e=(g>>>0>>0?g:d)+e|0;c[f>>2]=e;f=c[b+8>>2]|0;d=f+-1|0;if(f|0)a[(c[b>>2]|0)+(e>>>0>d>>>0?d:e)>>0]=0;return}function zg(a){a=a|0;return (c[a+4>>2]|0)>>>0<(c[a+8>>2]|0)>>>0|0}function Ag(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=i+92|0;h=i+72|0;k=i;b=Bg(a,b)|0;a=k;c[a>>2]=b;c[a+4>>2]=y;Cg(j,k+1|0);a=Dg(j,h)|0;if((a|0)<0)a=0;else{c[f>>2]=0;c[g>>2]=1;c[e+56>>2]=c[h>>2];c[e+52>>2]=d[117185+(d[h+15>>0]|0)>>0];c[e+64>>2]=c[h+4>>2];c[e+60>>2]=c[h+8>>2]}l=i;return a|0}function Bg(a,b){a=a|0;b=b|0;a=uX(a|0)|0;b=uX(b|0)|0;y=a;return b|0}function Cg(a,b){a=a|0;b=b|0;var d=0;d=(b|0)==0?0:56;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d>>>3);c[a+8>>2]=0;return}function Dg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((Eg(b,12)|0)==4095){Fg(b);Gg(b,2);g=Hg(b)|0;h=Eg(b,2)|0;i=Eg(b,4)|0;j=c[89332+(i<<2)>>2]|0;if(j){Fg(b);f=Eg(b,3)|0;Fg(b);Fg(b);Fg(b);Fg(b);e=Eg(b,13)|0;if((e|0)<7)e=-67308554;else{Gg(b,11);b=Eg(b,2)|0;a[d+13>>0]=h+1;a[d+15>>0]=f;a[d+12>>0]=g;h=b+1|0;a[d+16>>0]=h;a[d+14>>0]=i;c[d>>2]=j;i=h<<10;c[d+4>>2]=i;c[d+8>>2]=((N(e<<3,j)|0)>>>0)/(i>>>0)|0}}else e=-50531338}else e=-16976906;return e|0}function Eg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function Fg(a){a=a|0;Gg(a,1);return}function Gg(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function Hg(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function Ig(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(g=c[a>>2]|0,g|0):0){b=g+4|0;d=c[b>>2]|0;e=c[d+24>>2]|0;if(e){Qd[e&63](g);d=c[b>>2]|0}b=g+12|0;if(c[d+8>>2]|0?(f=c[b>>2]|0,f|0):0)Jg(f);Jg(g);f=g+8|0;Kg(c[f>>2]|0);eg(f);eg(b);Lg(g+16|0);Lg(g+20|0);eg(a)}return}function Jg(a){a=a|0;var b=0;b=0;a:while(1){b=Sg(a,b)|0;if(!b)break;switch(c[b+12>>2]|0){case 7:case 5:{eg(a+(c[b+8>>2]|0)|0);continue a}case 8:{Tg(a+(c[b+8>>2]|0)|0);continue a}default:continue a}}return}function Kg(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Ng(b);eg(a)}return}function Lg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);eg(a)}return}function Mg(a){a=a|0;var b=0,d=0;eg(a+12|0);b=a+8|0;d=b+128|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=-1;c[a+4>>2]=0;c[a+20>>2]=-1;c[a+64>>2]=0;c[a+68>>2]=0;c[a+72>>2]=2;c[a+76>>2]=2;c[a+80>>2]=2;c[a+84>>2]=0;c[a+56>>2]=0;c[a+60>>2]=1;c[a+40>>2]=-99;c[a+44>>2]=-99;return}function Ng(a){a=a|0;Og(a);Pg(a);Qg(a);c[a+24>>2]=0;c[a+28>>2]=0;return}function Og(a){a=a|0;var b=0,d=0;d=a+44|0;b=a+40|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;eg((c[b>>2]|0)+(a*12|0)|0);a=a+1|0}eg(b);c[d>>2]=0;return}function Pg(a){a=a|0;if(a|0?c[a>>2]|0:0)Rg(a,0);return}function Qg(a){a=a|0;var b=0;b=a+8|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+16|0;c[b>>2]=0;c[b+4>>2]=-2147483648;b=a+56|0;c[b>>2]=-1;c[b+4>>2]=-1;b=a+64|0;c[b>>2]=0;c[b+4>>2]=0;b=a+32|0;c[a>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function Rg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=g;e=c[a>>2]|0;f=c[e>>2]|0;c[d>>2]=f;if(!b)eg(a);else{a=c[b>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];eg(b)}e=f+8|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)==1){f=c[d>>2]|0;Rd[c[f+12>>2]&255](c[f+16>>2]|0,c[f>>2]|0);eg(d)}l=g;return}function Sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;do if(!a)d=0;else{a=c[a>>2]|0;e=(b|0)==0;if((e&(a|0)!=0?(f=c[a+8>>2]|0,f|0):0)?c[f>>2]|0:0){d=f;break}if(!e?(d=b+48|0,c[d>>2]|0):0)break;d=0}while(0);return d|0}function Tg(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(b|0){d=b+4|0;while(1){f=c[b>>2]|0;e=f+-1|0;c[b>>2]=e;if(!f)break;eg((c[d>>2]|0)+(e<<3)|0);eg((c[d>>2]|0)+(c[b>>2]<<3)+4|0)}eg(d)}eg(a);return}function Ug(a,b){a=a|0;b=b|0;return Kd[c[(c[a+4>>2]|0)+20>>2]&15](a,b)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;do if(b){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0){f=4;break}d=c[a+8>>2]|0;if(c[d+4>>2]|0){ig(a,16,117193,e);a=-22;break}a=c[d>>2]|0;if((c[a+24>>2]|0)==0?(c[a+44>>2]|0)==0:0){Wg(a,b);a=0}else a=-11}else f=4;while(0);if((f|0)==4){c[(c[a+8>>2]|0)+4>>2]=1;a=0}l=g;return a|0}function Wg(a,b){a=a|0;b=b|0;var d=0,e=0;d=b;e=a+72|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));Qg(b);c[b+24>>2]=0;c[b+28>>2]=0;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;Mg(a);wX(a|0,b|0,136)|0;f=a+12|0;c[f>>2]=0;d=a+16|0;c[d>>2]=0;e=b+12|0;if(c[e>>2]|0){b=b+16|0;a=$g((c[b>>2]|0)+64|0)|0;c[f>>2]=a;if(!a)a=-12;else{f=c[b>>2]|0;wX(a|0,c[e>>2]|0,f|0)|0;c[d>>2]=f;a=0}}else a=0;return a|0}function Yg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=p+24|0;j=p+16|0;i=p;n=a+4|0;e=c[(c[n>>2]|0)+4>>2]|0;g=a+16|0;a:do if(!e)o=13;else{f=c[(c[g>>2]|0)+4>>2]|0;b=0;while(1){d=c[e+(b<<2)>>2]|0;if(!d)break;if((f|0)==(d|0)){o=13;break a}else b=b+1|0}b=Zg(f)|0;if(!b)b=166949;else b=c[b+8>>2]|0;h=c[(c[g>>2]|0)+4>>2]|0;d=c[c[n>>2]>>2]|0;c[i>>2]=b;c[i+4>>2]=h;c[i+8>>2]=d;ig(a,16,117231,i);d=0;while(1){b=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;if(!b)break;b=Zg(b)|0;if(!b)b=166949;else b=c[b+8>>2]|0;i=c[(c[(c[n>>2]|0)+4>>2]|0)+(d<<2)>>2]|0;c[j>>2]=b;c[j+4>>2]=i;ig(a,16,117317,j);d=d+1|0}ig(a,16,128788,k);b=-22}while(0);do if((o|0)==13){b=Xg(c[a+20>>2]|0,c[g>>2]|0)|0;if((b|0)>=0){k=a+24|0;o=c[k+4>>2]|0;b=a+32|0;c[b>>2]=c[k>>2];c[b+4>>2]=o;b=c[(c[n>>2]|0)+16>>2]|0;if(b|0?(h=Jd[b&31](a)|0,(h|0)<0):0){b=h;break}b=0}}while(0);l=p;return b|0}function Zg(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=a;a=GV(d,89396,436,28,7)|0;l=b;return a|0}function _g(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function $g(a){a=a|0;var b=0;b=qg(a)|0;if(b|0)yX(b|0,0,a|0)|0;return b|0}function ah(a){a=a|0;var b=0;b=c[a+24>>2]|0;if(c[c[a+28>>2]>>2]|0){yX(b|0,0,46324)|0;a=aO(a,b)|0;if((a|0)>=0){c[b+25692>>2]=0;a=0}}else a=0;return a|0}function bh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=u;s=c[a+24>>2]|0;t=c[b+24>>2]|0;k=s+25692|0;a:do if((a|0)!=(b|0)){j=(c[k>>2]|0)!=0;do if(j){if((((((((c[s+25668>>2]|0)==(c[t+25668>>2]|0)?(c[s+25672>>2]|0)==(c[t+25672>>2]|0):0)?(c[s+27012>>2]|0)==(c[t+27012>>2]|0):0)?(c[s+27008>>2]|0)==(c[t+27008>>2]|0):0)?(d=c[s+28216>>2]|0,d|0):0)?(e=c[t+28216>>2]|0,(c[d+1184>>2]|0)==(c[e+1184>>2]|0)):0)?(c[d+12>>2]|0)==(c[e+12>>2]|0):0)?(c[d+128>>2]|0)==(c[e+128>>2]|0):0){g=0;break}g=1}else g=0;while(0);h=s+25976|0;i=t+25976|0;wX(h|0,i|0,384)|0;a=0;while(1){if(a>>>0>=32){a=0;break}b=s+27052+(a<<2)|0;Pg(b);d=c[t+27052+(a<<2)>>2]|0;if(d|0?(p=Rh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}while(1){if(a>>>0>=256)break;b=s+27180+(a<<2)|0;Pg(b);d=c[t+27180+(a<<2)>>2]|0;if(d|0?(p=Rh(d)|0,c[b>>2]=p,(p|0)==0):0){a=-12;break a}a=a+1|0}b=s+28204|0;Pg(b);e=s+28208|0;Pg(e);d=s+28212|0;c[d>>2]=0;f=s+28216|0;c[f>>2]=0;a=c[t+28204>>2]|0;if(a|0){a=Rh(a)|0;c[b>>2]=a;if(!a){a=-12;break}c[d>>2]=c[a+4>>2]}a=c[t+28208>>2]|0;if(a|0){a=Rh(a)|0;c[e>>2]=a;if(!a){a=-12;break}c[f>>2]=c[a+4>>2]}if(j&(g|0)==0)a=0;else{c[s+25668>>2]=c[t+25668>>2];c[s+25672>>2]=c[t+25672>>2];c[s+27008>>2]=c[t+27008>>2];c[s+27012>>2]=c[t+27012>>2];c[s+27020>>2]=c[t+27020>>2];c[s+27016>>2]=c[t+27016>>2];c[s+26368>>2]=c[t+26368>>2];if((c[k>>2]|0)==0?(c[t+25692>>2]|0)==0:0)a=0;else{a=Xn(s)|0;if((a|0)<0){ig(c[s+4>>2]|0,16,150815,n);break}}wX(h|0,i|0,384)|0}p=c[t+4>>2]|0;f=c[s+4>>2]|0;c[f+104>>2]=c[p+104>>2];c[f+100>>2]=c[p+100>>2];c[f+92>>2]=c[p+92>>2];c[f+96>>2]=c[p+96>>2];c[s+29664>>2]=c[t+29664>>2];c[s+29668>>2]=c[t+29668>>2];c[s+25688>>2]=c[t+25688>>2];c[s+26384>>2]=c[t+26384>>2];c[s+26380>>2]=c[t+26380>>2];c[s+26376>>2]=c[t+26376>>2];f=t+25684|0;p=s+25684|0;c[p>>2]=c[f>>2];b=0;while(1){if((b|0)>=36)break;d=s+696+(b*656|0)|0;ih(s,d);e=t+696+(b*656|0)|0;if(c[(c[e>>2]|0)+248>>2]|0?(o=yi(s,d,e)|0,(o|0)<0):0){a=o;break a}b=b+1|0}b=c[t+24312>>2]|0;if((b|0)!=0?(q=t+696|0,b>>>0>=q>>>0&b>>>0<(t+24312|0)>>>0):0)b=s+696+(((b-q|0)/656|0)*656|0)|0;else b=0;o=s+24312|0;c[o>>2]=b;b=s+24316|0;ih(s,b);d=t+24316|0;if(c[(c[d>>2]|0)+248>>2]|0?(r=yi(s,b,d)|0,(r|0)<0):0){a=r;break}c[s+29672>>2]=c[t+29672>>2];c[s+25700>>2]=c[t+25700>>2];c[s+25704>>2]=c[t+25704>>2];c[p>>2]=c[f>>2];c[s+27036>>2]=c[t+27036>>2];c[s+27040>>2]=c[t+27040>>2];b=s+28224|0;j=b;k=t+28224|0;n=j+44|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));d=s+28348|0;e=t+28348|0;j=d;k=e;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));f=s+28476|0;g=t+28476|0;j=f;k=g;n=j+128|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));h=s+28604|0;i=t+28604|0;j=h;k=i;n=j+72|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));j=s+28676|0;k=t+28676|0;n=j+64|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));c[s+28740>>2]=c[t+28740>>2];c[s+28744>>2]=c[t+28744>>2];wX(s+28748|0,t+28748|0,792)|0;c[s+29540>>2]=c[t+29540>>2];c[s+29544>>2]=c[t+29544>>2];c[s+29548>>2]=c[t+29548>>2];c[s+29552>>2]=c[t+29552>>2];c[s+29556>>2]=c[t+29556>>2];hO(d,e,32,s,t);hO(f,g,32,s,t);hO(h,i,18,s,t);c[s+29576>>2]=c[t+29576>>2];if(c[o>>2]|0){if(!(c[p>>2]|0)){a=Ni(s)|0;c[s+28248>>2]=c[s+28228>>2];c[s+28252>>2]=c[b>>2]}c[s+28260>>2]=c[s+28256>>2];c[s+28264>>2]=c[s+28244>>2];c[s+29572>>2]=c[t+29572>>2]}else a=0}else a=0;while(0);l=u;return a|0}function ch(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;d=o;i=c[a+24>>2]|0;b=aO(a,i)|0;do if((b|0)>=0){if(Bc(183832,3)|0){ig(a,16,148931,d);b=-1313558101;break}f=a+84|0;do if((c[f>>2]|0)==1){b=c[i+4>>2]|0;d=b+80|0;e=c[d>>2]|0;if((e|0)<1073741823){c[d>>2]=e<<1;break}else{e=b+76|0;c[e>>2]=(c[e>>2]|0)/2|0;break}}while(0);c[f>>2]=2;b=c[a+72>>2]|0;if(((b|0)>0?(g=c[a+68>>2]|0,g|0):0)?(h=Gi(g,b,i+27052|0,i+27036|0,i+27040|0,c[a+580>>2]|0,a)|0,(h|0)<0):0){eh(a)|0;b=h;break}b=c[i+28216>>2]|0;if((b|0?c[b+660>>2]|0:0)?(j=(c[i+4>>2]|0)+140|0,k=c[b+664>>2]|0,(c[j>>2]|0)<(k|0)):0)c[j>>2]=k;c[(c[a+28>>2]|0)+4>>2]=1;gh(i);b=i+29672|0;d=c[b>>2]|0;if((d|0)<0){if(c[a+696>>2]&2|0){c[b>>2]=0;b=0;break}}else if(!d){b=0;break}if(!(c[a+696>>2]&2))b=0;else{ig(a,24,148956,n);b=0}}while(0);l=o;return b|0}function dh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+48|0;if((l|0)>=(m|0))W(48);v=w+24|0;q=w+16|0;p=w;n=w+36|0;o=c[g+24>>2]|0;h=c[g+28>>2]|0;s=c[b+24>>2]|0;c[s+25696>>2]=c[b+60>>2];c[s+29588>>2]=0;c[s+25636>>2]=0;t=s+24972|0;ih(s,t);a:do if(h){i=s+27036|0;if((c[i>>2]|0?Ei(g,1,0)|0:0)?(j=Ei(g,1,n)|0,k=c[n>>2]|0,Fi(j,k)|0):0)Gi(j,k,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;if(((((((h|0)>8&(c[i>>2]|0)!=0?(a[o>>0]|0)==1:0)?(a[o+2>>0]|0)==0:0)?(d[o+4>>0]|0)>251:0)?a[o+5>>0]&31:0)?(a[o+8>>0]|0)==103:0)?Fi(o,h)|0:0){h=Gi(o,h,s+27052|0,i,s+27040|0,c[b+580>>2]|0,b)|0;break}j=Hi(s,o,h)|0;if((j|0)<0)h=-1094995529;else{i=(c[s+24312>>2]|0)==0;if(i?(c[s+27028>>2]|0)==10:0)if((j|0)>(h|0)){c[p>>2]=127321;c[p+4>>2]=127343;c[p+8>>2]=998;ig(0,0,159900,p);Tb()}else{h=Di(s,e,f,j)|0;break}do if(c[b+64>>2]&32768){q=c[s+27008>>2]|0;if(!((q|0)==0?1:(c[s+27004>>2]|0)<(q|0)))r=30}else{if(!i?c[s+27032>>2]|0:0){r=30;break}if((c[b+732>>2]|0)>7)break a;if((h|0)>3?(YT(151032,o,4)|0)==0:0)break a;ig(b,16,127364,q);h=-1094995529;break a}while(0);if((r|0)==30){i=Ii(s,c[s+25628>>2]|0,0)|0;if((i|0)<0){h=i;break}i=c[s+28740>>2]|0;if(i|0?(u=Ji(s,e,i,f)|0,(u|0)<0):0){h=u;break}}if((c[e+248>>2]|0)==0?c[f>>2]|0:0){c[v>>2]=127375;c[v+4>>2]=127343;c[v+8>>2]=1023;ig(0,0,159900,v);Tb()}ih(s,t);h=Ki(j,h)|0}}else h=Di(s,e,f,0)|0;while(0);l=w;return h|0}function eh(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;wi(d);jh(d);a=0;while(1){if((a|0)==36)break;b=d+696+(a*656|0)|0;ih(d,b);Th(b);a=a+1|0}a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d+24312>>2]=0;eg(d+25628|0);c[d+25632>>2]=0;hh(d+29676|0);Bi(d+27052|0);Ci(d+25640|0);b=d+24316|0;ih(d,b);Th(b);b=d+24972|0;ih(d,b);Th(b);return 0}function fh(a){a=a|0;var b=0,d=0;d=c[a+24>>2]|0;a=d+28604|0;b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));gh(d);hh(d+29676|0);a=0;while(1){if((a|0)==36)break;ih(d,d+696+(a*656|0)|0);a=a+1|0}c[d+24312>>2]=0;ih(d,d+24316|0);c[d+27004>>2]=0;jh(d);c[d+25692>>2]=0;return}function gh(a){a=a|0;var b=0,d=0,e=0,f=0;c[a+28744>>2]=-2147483648;c[a+29564>>2]=1;vi(a);c[a+28264>>2]=-1;f=a+24312|0;b=c[f>>2]|0;if(b|0){c[b+640>>2]=0;b=0;e=0;while(1){d=c[a+28604+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[f>>2]|0)){c[a+28604+(b<<2)>>2]=d;b=b+1|0}e=e+1|0}c[a+28604+(b<<2)>>2]=0}ih(a,a+24972|0);c[a+26384>>2]=0;c[a+29572>>2]=-1;c[a+29576>>2]=0;c[a+29560>>2]=0;c[a+29544>>2]=1;return}function hh(a){a=a|0;c[a+40>>2]=-1;c[a+12>>2]=0;c[a+16>>2]=-1;c[a>>2]=0;c[a+44>>2]=0;c[a+176>>2]=0;c[a+208>>2]=0;c[a+20>>2]=0;c[a+28>>2]=0;eg(a+32|0);return}function ih(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(d|0?c[d+248>>2]|0:0){mh(c[a+4>>2]|0,b+4|0);Pg(b+52|0);d=b+20|0;Pg(d);Pg(b+44|0);a=0;while(1){if((a|0)==2)break;Pg(b+28+(a<<2)|0);Pg(b+60+(a<<2)|0);a=a+1|0}yX(d|0,0,636)|0}return}function jh(a){a=a|0;var b=0,d=0,e=0;eg(a+25732|0);eg(a+26396|0);eg(a+26392|0);eg(a+26400|0);eg(a+26404|0);eg(a+26408|0);eg(a+25972|0);eg(a+28220|0);c[a+26372>>2]=0;eg(a+26388|0);eg(a+26360|0);eg(a+26364|0);kh(a+29924|0);kh(a+29928|0);kh(a+29932|0);kh(a+29936|0);d=a+25632|0;b=a+25628|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=c[b>>2]|0;eg(e+(a*34768|0)+27784|0);eg(e+(a*34768|0)+572|0);eg(e+(a*34768|0)+604|0);eg(e+(a*34768|0)+608|0);eg(e+(a*34768|0)+27788|0);eg(e+(a*34768|0)+27792|0);eg(e+(a*34768|0)+27796|0);eg(e+(a*34768|0)+27800|0);e=e+(a*34768|0)+27804|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a=a+1|0}return}function kh(a){a=a|0;var b=0,d=0;if((a|0?(b=c[a>>2]|0,b|0):0)?(c[a>>2]=0,d=b+32|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a|0)==1):0)lh(b);return}function lh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g+4|0;e=g;c[f>>2]=a;while(1){b=a+28|0;d=c[b>>2]|0;if(!d)break;c[e>>2]=d;c[b>>2]=c[d+16>>2];Rd[c[d+8>>2]&255](c[d+4>>2]|0,c[d>>2]|0);eg(e);a=c[f>>2]|0}zc(a|0)|0;b=c[a+52>>2]|0;if(b|0)Qd[b&63](c[a+40>>2]|0);eg(f);l=g;return}function mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=i;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&1|0)!=0?(c[a+700>>2]|0)==0:0)d=(c[a+400>>2]|0)==12;else d=1;j=c[b>>2]|0;do if(j|0?c[j+248>>2]|0:0){if(c[a+576>>2]&32768|0){c[e>>2]=b;ig(a,48,124774,e)}Pg(b+12|0);c[b+8>>2]=0;c[b+4>>2]=0;if(d){oh(c[b>>2]|0);break}a=(c[h>>2]|0)+8|0;AX(a|0)|0;d=h+308|0;e=(c[d>>2]|0)+1|0;if(e>>>0<=5263439?(f=h+304|0,g=hg(c[f>>2]|0,h+312|0,e*408|0)|0,g|0):0){c[f>>2]=g;ph(g+((c[d>>2]|0)*408|0)|0,c[b>>2]|0);c[d>>2]=(c[d>>2]|0)+1}BX(a|0)|0}while(0);l=i;return}function nh(a,b,d){a=a|0;b=b|0;d=d|0;d=c[a+860>>2]|0;a:do if(!d){d=uh(a,b)|0;if((d|0)>=0)switch(c[a+8>>2]|0){case 0:{d=vh(a,b)|0;break a}case 1:{d=wh(a,b)|0;break a}default:{d=-1;break a}}}else{d=th(d,b,0)|0;c[b+68>>2]=c[a+100>>2];c[b+72>>2]=c[a+104>>2]}while(0);return d|0}function oh(a){a=a|0;var b=0,d=0,e=0;if(a|0){rh(a);b=0;while(1){if((b|0)==8)break;Pg(a+248+(b<<2)|0);b=b+1|0}d=a+284|0;e=a+280|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;Pg((c[e>>2]|0)+(b<<2)|0);b=b+1|0}eg(e);Tg(a+344|0);Pg(a+372|0);Pg(a+376|0);Pg(a+380|0);Pg(a+400|0);qh(a)}return}function ph(a,b){a=a|0;b=b|0;wX(a|0,b|0,408)|0;if((c[b+64>>2]|0)==(b|0))c[a+64>>2]=a;yX(b|0,0,408)|0;qh(b);return}function qh(a){a=a|0;var b=0,d=0;b=a+64|0;if((c[b>>2]|0)!=(a|0))eg(b);yX(a|0,0,408)|0;d=a+120|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+104|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+112|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+320|0;c[d>>2]=0;c[d+4>>2]=-2147483648;d=a+336|0;c[d>>2]=0;c[d+4>>2]=0;d=a+328|0;c[d>>2]=-1;c[d+4>>2]=-1;c[a+356>>2]=-1;c[a+84>>2]=1;c[a+92>>2]=0;c[a+96>>2]=1;c[a+80>>2]=-1;c[b>>2]=a;c[a+304>>2]=2;c[a+308>>2]=2;c[a+312>>2]=2;c[a+300>>2]=0;c[a+316>>2]=0;c[a+296>>2]=0;return}function rh(a){a=a|0;var b=0,d=0;d=a+292|0;b=a+288|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;sh((c[b>>2]|0)+(a<<2)|0);a=a+1|0}c[d>>2]=0;eg(b);return}function sh(a){a=a|0;var b=0;b=c[a>>2]|0;Pg(b+16|0);Tg(b+12|0);eg(a);return}function th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=j+4|0;i=c[a+4>>2]|0;g=i+4|0;d=c[g>>2]|0;if(!(c[d+12>>2]|0))if(c[(c[d>>2]|0)+60>>2]|0)if(c[i+28>>2]|0){h=Rh(a)|0;a=b+376|0;c[a>>2]=h;if(h){d=Kd[c[(c[c[g>>2]>>2]|0)+60>>2]&15](i,b)|0;if((d|0)<0)Pg(a);else d=0}else d=-12}else d=-22;else d=-38;else{c[b+80>>2]=c[i+36>>2];a=Rh(a)|0;c[b+376>>2]=a;do if((a|0)!=0?(e=Sh()|0,c[f>>2]=e,(e|0)!=0):0){d=th(c[(c[g>>2]|0)+12>>2]|0,e,0)|0;if((d|0)<0){Th(f);break}d=Uh(b,e,c[(c[g>>2]|0)+16>>2]|0)|0;if(!d){Th(f);d=0;break}else{c[h>>2]=d;ig(i,16,126849,h);Th(f);break}}else d=-12;while(0)}l=j;return d|0}function uh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+80|0;if((l|0)>=(m|0))W(80);e=t;j=t+56|0;p=t+40|0;q=t+24|0;g=t+16|0;h=t+12|0;s=c[(c[a+28>>2]|0)+16>>2]|0;a:do switch(c[a+8>>2]|0){case 0:{c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;k=b+68|0;e=c[k>>2]|0;c[g>>2]=e;n=b+72|0;f=c[n>>2]|0;c[h>>2]=f;o=s+16|0;i=b+80|0;if(((c[o>>2]|0)==(c[i>>2]|0)?(c[s+20>>2]|0)==(e|0):0)?(c[s+24>>2]|0)==(f|0):0)d=0;else r=5;b:do if((r|0)==5){Gh(a,g,h,s+28|0);f=a+112|0;a=c[g>>2]|0;do{d=Hh(p,c[f>>2]|0,a)|0;if((d|0)<0)break b;a=c[g>>2]|0;a=(a&0-a)+a|0;c[g>>2]=a;d=0;e=0;while(1){if((d|0)==4)break;b=(c[p+(d<<2)>>2]|0)%(c[s+28+(d<<2)>>2]|0)|0|e;d=d+1|0;e=b}}while((e|0)!=0);f=Ih(j,c[f>>2]|0,c[h>>2]|0,0,p)|0;if((f|0)>=0){d=0;while(1){if((d|0)>=3)break;e=d+1|0;a=c[j+(e<<2)>>2]|0;if(!a)break;c[q+(d<<2)>>2]=a-(c[j+(d<<2)>>2]|0);d=e}c[q+(d<<2)>>2]=f-(c[j+(d<<2)>>2]|0)+(c[j>>2]|0);d=0;while(1){if((d|0)>=4){r=20;break}e=s+(d<<2)|0;kh(e);c[s+60+(d<<2)>>2]=c[p+(d<<2)>>2];a=c[q+(d<<2)>>2]|0;if(a|0?(r=Kh(a+23|0,17)|0,c[e>>2]=r,(r|0)==0):0){r=22;break}d=d+1|0}if((r|0)==20){c[o>>2]=c[i>>2];c[s+20>>2]=c[k>>2];c[s+24>>2]=c[n>>2];d=0;break a}else if((r|0)==22){d=-12;r=31;break a}}else d=-1}while(0);break}case 1:{f=c[b+352>>2]|0;g=b+80|0;h=(Lh(c[g>>2]|0)|0)!=0;h=h?f:1;i=s+16|0;if((((c[i>>2]|0)==(c[g>>2]|0)?(c[s+76>>2]|0)==(h|0):0)?(c[s+80>>2]|0)==(f|0):0)?(c[b+76>>2]|0)==(c[s+84>>2]|0):0){d=0;break a}kh(s);a=s+60|0;e=b+76|0;d=Mh(a,f,c[e>>2]|0,c[g>>2]|0,0)|0;if((d|0)>=0){q=Kh(c[a>>2]|0,0)|0;c[s>>2]=q;if(!q){d=-12;r=31}else{c[i>>2]=c[g>>2];c[s+76>>2]=h;c[s+80>>2]=f;c[s+84>>2]=c[e>>2];d=0}}else r=31;break}default:{c[e>>2]=165905;c[e+4>>2]=124842;c[e+8>>2]=1524;ig(0,0,159900,e);Tb()}}while(0);if((r|0)==31){e=0;while(1){if((e|0)==4)break;kh(s+(e<<2)|0);e=e+1|0}c[s+16>>2]=-1;c[s+84>>2]=0;c[s+80>>2]=0;c[s+76>>2]=0;c[s+24>>2]=0;c[s+20>>2]=0}l=t;return d|0}function vh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;e=n+8|0;d=n;f=c[(c[a+28>>2]|0)+16>>2]|0;h=b+80|0;i=Dh(c[h>>2]|0)|0;do if((((c[b>>2]|0)==0?(g=b+4|0,(c[g>>2]|0)==0):0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){if(!i){c[e>>2]=Eh(c[h>>2]|0)|0;ig(a,16,124950,e);d=-22;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;c[b+64>>2]=b;d=0;while(1){if((d|0)>=4)break;e=c[f+(d<<2)>>2]|0;if(!e)break;c[b+32+(d<<2)>>2]=c[f+60+(d<<2)>>2];e=yh(e)|0;c[b+248+(d<<2)>>2]=e;if(!e){k=19;break}c[b+(d<<2)>>2]=c[e+4>>2];d=d+1|0}if((k|0)==19){oh(b);d=-12;break}while(1){if((d|0)>=8)break;c[b+(d<<2)>>2]=0;c[b+32+(d<<2)>>2]=0;d=d+1|0}if(!(0==0?(c[i+8>>2]&66|0)==0:0))Fh(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[a+576>>2]&32768))d=0;else{c[j>>2]=b;ig(a,48,125003,j);d=0}}else k=5;while(0);if((k|0)==5){ig(a,16,124900,d);d=-1}l=n;return d|0}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;f=o;k=c[(c[a+28>>2]|0)+16>>2]|0;h=c[k+76>>2]|0;c[b+32>>2]=c[k+60>>2];g=(h|0)>8;if(g){d=b+64|0;c[d>>2]=xh(h,4)|0;i=h+-8|0;c[b+284>>2]=i;i=xh(i,4)|0;e=b+280|0;c[e>>2]=i;if((i|0)==0|(c[d>>2]|0)==0){eg(d);eg(e);d=-12}else{i=d;j=5}}else{e=b+64|0;c[e>>2]=b;if(!(c[b+284>>2]|0)){i=e;j=5}else{c[f>>2]=124814;c[f+4>>2]=124842;c[f+8>>2]=1556;ig(0,0,159900,f);Tb()}}a:do if((j|0)==5){e=g?8:h;d=0;while(1){if((d|0)>=(e|0)){j=8;break}f=yh(c[k>>2]|0)|0;c[b+248+(d<<2)>>2]=f;if(!f)break;h=c[f+4>>2]|0;c[b+(d<<2)>>2]=h;c[(c[i>>2]|0)+(d<<2)>>2]=h;d=d+1|0}b:do if((j|0)==8){e=b+284|0;f=b+280|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break;g=yh(c[k>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break b;c[(c[i>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}if(!(c[a+576>>2]&32768)){d=0;break a}c[n>>2]=b;ig(a,48,124862,n);d=0;break a}while(0);oh(b);d=-12}while(0);l=o;return d|0}function xh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=$g(N(b,a)|0)|0;else a=0;return a|0}function yh(a){a=a|0;var b=0,d=0,e=0,f=0;AX(a|0)|0;d=a+28|0;e=c[d>>2]|0;do if(!e){b=Bh(a)|0;BX(a|0)|0;if(!b)b=0;else f=6}else{b=Ah(c[e>>2]|0,c[a+36>>2]|0,15,e,0)|0;if(!b){BX(a|0)|0;b=0;break}else{f=e+16|0;c[d>>2]=c[f>>2];c[f>>2]=0;BX(a|0)|0;f=6;break}}while(0);if((f|0)==6){f=a+32|0;c[f>>2]=(c[f>>2]|0)+1}return b|0}function zh(a,b){a=a|0;b=b|0;var d=0;b=c[a+12>>2]|0;AX(b|0)|0;d=b+28|0;c[a+16>>2]=c[d>>2];c[d>>2]=a;BX(b|0)|0;d=b+32|0;a=c[d>>2]|0;c[d>>2]=a+-1;if((a|0)==1)lh(b);return}function Ah(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;g=$g(24)|0;c[h>>2]=g;i=g;do if(g){c[g>>2]=a;c[g+4>>2]=b;c[g+12>>2]=d|0?d:16;c[g+16>>2]=e;c[g+8>>2]=1;if(f&1|0){g=g+20|0;c[g>>2]=c[g>>2]|1}d=$g(12)|0;if(!d){eg(h);d=0;break}else{c[d>>2]=i;c[d+4>>2]=a;c[d+8>>2]=b;break}}else d=0;while(0);l=j;return d|0}function Bh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=c[a+48>>2]|0;if(!b)b=Jd[c[a+44>>2]&31](c[a+36>>2]|0)|0;else b=Kd[b&15](c[a+40>>2]|0,c[a+36>>2]|0)|0;c[e>>2]=b;do if(b){d=$g(20)|0;if(!d){Pg(e);b=0;break}else{e=c[b>>2]|0;c[d>>2]=c[e>>2];g=e+16|0;c[d+4>>2]=c[g>>2];e=e+12|0;c[d+8>>2]=c[e>>2];c[d+12>>2]=a;c[g>>2]=d;c[e>>2]=15;break}}else b=0;while(0);l=f;return b|0}function Ch(a,b){a=a|0;b=b|0;fg(b);return}function Dh(a){a=a|0;return (a>>>0>182?0:200+(a*152|0)|0)|0}function Eh(a){a=a|0;if(a>>>0<183)a=c[200+(a*152|0)>>2]|0;else a=0;return a|0}function Fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=0;a:while(1){if((g|0)>=256){d=0;break}switch(b|0){case 20:{d=(g&3)*85|0;e=(g>>>2&7)*36|0;f=(g>>5)*36|0;break}case 17:{d=(g>>6)*85|0;e=(g>>>3&7)*36|0;f=(g&7)*36|0;break}case 22:{d=0-(g&1)&255;e=(g>>>1&3)*85|0;f=(g>>3)*255|0;break}case 19:{d=(g>>3)*255|0;e=(g>>>1&3)*85|0;f=0-(g&1)&255;break}case 8:{d=g;e=g;f=g;break}default:{d=-22;break a}}c[a+(g<<2)>>2]=(f<<16)+-16777216+(e<<8)+d;g=g+1|0}return d|0}function Gh(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+112|0;g=Dh(c[i>>2]|0)|0;if(!g){h=1;g=1}else{h=1<<(d[g+6>>0]|0);g=1<<(d[g+5>>0]|0)}a:do switch(c[i>>2]|0){case 114:case 115:case 163:case 164:case 78:case 79:case 138:case 139:case 136:case 137:case 76:case 77:case 74:case 75:case 98:case 99:case 92:case 93:case 86:case 87:case 52:case 51:case 134:case 135:case 132:case 133:case 69:case 70:case 67:case 68:case 157:case 156:case 155:case 154:case 96:case 97:case 90:case 91:case 84:case 85:case 50:case 49:case 130:case 131:case 128:case 129:case 65:case 66:case 71:case 72:case 94:case 95:case 88:case 89:case 82:case 83:case 48:case 47:case 126:case 127:case 124:case 125:case 63:case 64:case 61:case 62:case 81:case 80:case 33:case 14:case 32:case 13:case 12:case 30:case 29:case 8:case 113:case 73:case 5:case 31:case 4:case 15:case 110:case 1:case 0:{h=32;g=16;break}case 16:case 140:case 7:{h=32;g=32;break}case 6:{i=(c[a+16>>2]|0)==22;h=i?64:h;g=i?64:g;break}case 39:{j=c[a+16>>2]|0;i=(j|0)==42;j=(j|0)==39;h=j?8:i?4:h;g=j?8:i?4:g;break}case 20:case 17:case 11:{i=c[a+16>>2]|0;switch(i|0){case 43:case 49:{h=4;g=4;break}default:{}}switch(i|0){case 39:case 148:break;default:break a}h=8;g=8;break}case 3:{j=((c[a+16>>2]|0)+-53|0)>>>0<2;h=j?4:h;g=j?4:g;break}case 2:{j=(c[a+16>>2]|0)==43;h=j?4:h;g=j?4:g;break}default:{}}while(0);j=c[a+16>>2]|0;g=(j|0)==136?((g|0)>8?g:8):g;c[b>>2]=(c[b>>2]|0)+-1+g&0-g;g=h+-1+(c[e>>2]|0)&0-h;c[e>>2]=g;if((j|0)!=27?(c[a+680>>2]|0)==0:0)g=0;else{c[e>>2]=g+2;g=c[b>>2]|0;c[b>>2]=(g|0)>32?g:32;g=0}while(1){if((g|0)==4)break;c[f+(g<<2)>>2]=8;g=g+1|0}return}function Hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;h=i;f=Dh(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if((f|0)!=0?(0==0?(c[f+8>>2]&8|0)==0:0):0){Ph(g,h,f);e=0;while(1){if((e|0)>=4){b=0;break a}b=Qh(d,c[g+(e<<2)>>2]|0,c[h+(e<<2)>>2]|0,f)|0;if((b|0)<0)break a;c[a+(e<<2)>>2]=b;e=e+1|0}}else b=-22;while(0);l=i;return b|0}function Ih(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))W(16);o=p;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;j=Dh(b)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a:do if(((j|0)!=0?(i=c[j+8>>2]|0,(i&8|0)==0&0==0):0)?(c[a>>2]=f,h=c[g>>2]|0,(h|0)<=(2147482623/(e|0)|0|0)):0){h=N(h,e)|0;if((i&66|0)==0&0==0)b=0;else{c[a+4>>2]=f+h;b=h+1024|0;break}while(1){if((b|0)==4)break;c[o+(c[j+16+(b<<5)>>2]<<2)>>2]=1;b=b+1|0}n=j+6|0;k=e+-1|0;b=h;e=1;j=f;while(1){if((e|0)>=4)break a;if(!(c[o+(e<<2)>>2]|0))break a;if((e+-1|0)>>>0<2)i=d[n>>0]|0;else i=0;j=j+h|0;c[a+(e<<2)>>2]=j;f=k+(1<>i;q=c[g+(e<<2)>>2]|0;h=N(f,q)|0;i=(b|0)>(2147483647-h|0);if((q|0)>(2147483647/(f|0)|0|0)){b=-22;break a}if(i){b=-22;break}else{b=(i?0:h)+b|0;e=e+1|0}}}else b=-22;while(0);l=p;return b|0}function Jh(a){a=a|0;var b=0;b=Oh(a)|0;if(!b)b=0;else yX(c[b+4>>2]|0,0,a|0)|0;return b|0}function Kh(a,b){a=a|0;b=b|0;var d=0;d=$g(56)|0;if(!d)d=0;else{Ac(d|0,0)|0;c[d+36>>2]=a;c[d+44>>2]=b|0?b:18;c[d+32>>2]=1}return d|0}function Lh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101928+(a*20|0)+12>>2]|0;return a|0}function Mh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=Nh(e)|0;g=Lh(e)|0;do if(!((b|0)<1|((d|0)<1|(h|0)==0))){if(!f){if((d|0)>2147483616){e=-22;break}d=d+31&-32;e=1}else e=f;if((2147483647/(e|0)|0|0)>=(b|0)?(i=nX(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0,k=y,f=(2147483647-(N(e,b)|0)|0)/(h|0)|0,j=((f|0)<0)<<31>>31,!((k|0)>(j|0)|(k|0)==(j|0)&i>>>0>f>>>0)):0){f=(g|0)!=0;e=e+-1+(N(N(f?1:b,h)|0,d)|0)&0-e;if(a|0)c[a>>2]=e;e=N(e,f?b:1)|0}else e=-22}else e=-22;while(0);return e|0}function Nh(a){a=a|0;if(a>>>0>11)a=0;else a=c[101928+(a*20|0)+8>>2]>>3;return a|0}function Oh(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=qg(a)|0;c[d>>2]=b;if(b){a=Ah(b,a,16,0,0)|0;if(!a){eg(d);a=0}}else a=0;l=e;return a|0}function Ph(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;f=(b|0)!=0;if(f){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;e=0}else e=0;while(1){if((e|0)==4)break;g=c[d+16+(e<<5)+4>>2]|0;h=d+16+(e<<5)|0;i=a+(c[h>>2]<<2)|0;if((g|0)>(c[i>>2]|0)?(c[i>>2]=g,f):0)c[b+(c[h>>2]<<2)>>2]=e;e=e+1|0}return}function Qh(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;do if((a|0)<0|(f|0)==0)e=-22;else{if((e+-1|0)>>>0<2)e=d[f+5>>0]|0;else e=0;e=a+-1+(1<>e;if(e|0?(2147483647/(e|0)|0|0)<(b|0):0){e=-22;break}e=N(e,b)|0;e=(0==0?(c[f+8>>2]&4|0)==0:0)?e:e+7>>3}while(0);return e|0}function Rh(a){a=a|0;var b=0;b=$g(12)|0;if(!b)b=0;else{c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];a=(c[a>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+1}return b|0}function Sh(){var a=0;a=$g(408)|0;if(!a)a=0;else{c[a+64>>2]=0;qh(a)}return a|0}function Th(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){oh(b);eg(a)}return}function Uh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=s;h=c[b+376>>2]|0;i=a+376|0;a:do if(h){f=c[i>>2]|0;do if(f|0){k=c[h+4>>2]|0;f=c[f+4>>2]|0;if(!(((k|0)==(f|0)?(c[b+80>>2]|0)==(c[k+40>>2]|0):0)?(c[a+80>>2]|0)==(c[k+36>>2]|0):0)){g=c[(c[k+4>>2]|0)+12>>2]|0;if(!g)break;if((c[g+4>>2]|0)!=(f|0))break}e=c[b+248>>2]|0;if(!e){ig(k,16,126902,n);e=-22;break a}else{e=c[e+4>>2]|0;oh(a);e=Vh(a,c[e>>2]|0)|0;break a}}while(0);f=c[h+4>>2]|0;if(!(((c[f+36>>2]|0)==(c[b+80>>2]|0)?(j=c[(c[c[f+4>>2]>>2]|0)+80>>2]|0,(j|0)!=0):0)?(e=Md[j&1](f,a,b,d)|0,(e|0)!=-38):0))r=14}else r=14;while(0);do if((r|0)==14){e=c[i>>2]|0;if(((e|0?(o=c[e+4>>2]|0,(c[o+36>>2]|0)==(c[a+80>>2]|0)):0)?(p=c[(c[c[o+4>>2]>>2]|0)+76>>2]|0,p|0):0)?(q=Md[p&1](o,a,b,d)|0,(q|0)!=-38):0){e=q;break}e=-38}while(0);l=s;return e|0}function Vh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+80>>2]=c[b+80>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];h=b+352|0;c[a+352>>2]=c[h>>2];e=b+240|0;g=c[e+4>>2]|0;d=a+240|0;c[d>>2]=c[e>>2];c[d+4>>2]=g;c[a+76>>2]=c[b+76>>2];d=Wh(a,b,0)|0;a:do if((d|0)>=0){if(!(c[b+248>>2]|0)){d=Xh(a,32)|0;if((d|0)<0)break;d=Yh(a,b)|0;if((d|0)>=0)break;oh(a);break}else d=0;while(1){if(d>>>0>=8){f=10;break}e=c[b+248+(d<<2)>>2]|0;if(e|0?(g=Rh(e)|0,c[a+248+(d<<2)>>2]=g,(g|0)==0):0){d=-12;break}d=d+1|0}b:do if((f|0)==10){e=b+280|0;c:do if(c[e>>2]|0){f=b+284|0;d=xh(4,c[f>>2]|0)|0;g=a+280|0;c[g>>2]=d;if(!d){d=-12;break b}c[a+284>>2]=c[f>>2];d=0;while(1){if((d|0)>=(c[f>>2]|0))break c;i=Rh(c[(c[e>>2]|0)+(d<<2)>>2]|0)|0;c[(c[g>>2]|0)+(d<<2)>>2]=i;if(!(c[(c[g>>2]|0)+(d<<2)>>2]|0)){d=-12;break b}else d=d+1|0}}while(0);d=c[b+376>>2]|0;if(d|0?(i=Rh(d)|0,c[a+376>>2]=i,(i|0)==0):0){d=-12;break}f=b+64|0;if((c[f>>2]|0)==(b|0))c[a+64>>2]=a;else{d=c[h>>2]|0;if(!d){d=-22;break}e=Zh(4,d)|0;c[a+64>>2]=e;if(!e){d=-12;break}wX(e|0,c[f>>2]|0,d<<2|0)|0};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];d=a+32|0;i=b+32|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[d+16>>2]=c[i+16>>2];c[d+20>>2]=c[i+20>>2];c[d+24>>2]=c[i+24>>2];c[d+28>>2]=c[i+28>>2];d=0;break a}while(0);oh(a)}while(0);return d|0}function Wh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);q=t;c[a+84>>2]=c[b+84>>2];c[a+88>>2]=c[b+88>>2];e=b+92|0;f=c[e+4>>2]|0;g=a+92|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+384>>2]=c[b+384>>2];c[a+388>>2]=c[b+388>>2];c[a+392>>2]=c[b+392>>2];c[a+396>>2]=c[b+396>>2];g=b+104|0;f=c[g+4>>2]|0;e=a+104|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+208>>2]=c[b+208>>2];c[a+212>>2]=c[b+212>>2];c[a+216>>2]=c[b+216>>2];c[a+220>>2]=c[b+220>>2];c[a+232>>2]=c[b+232>>2];c[a+140>>2]=c[b+140>>2];e=b+112|0;f=c[e+4>>2]|0;g=a+112|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+120|0;f=c[g+4>>2]|0;e=a+120|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+328|0;f=c[e+4>>2]|0;g=a+328|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+356>>2]=c[b+356>>2];g=b+336|0;f=c[g+4>>2]|0;e=a+336|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;e=b+224|0;f=c[e+4>>2]|0;g=a+224|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+136>>2]=c[b+136>>2];g=b+320|0;f=c[g+4>>2]|0;e=a+320|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+128>>2]=c[b+128>>2];c[a+132>>2]=c[b+132>>2];c[a+296>>2]=c[b+296>>2];c[a+348>>2]=c[b+348>>2];c[a+304>>2]=c[b+304>>2];c[a+308>>2]=c[b+308>>2];c[a+312>>2]=c[b+312>>2];c[a+300>>2]=c[b+300>>2];c[a+316>>2]=c[b+316>>2];mi(a+344|0,c[b+344>>2]|0,0)|0;e=a+144|0;f=b+144|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));i=b+292|0;j=b+288|0;k=b+68|0;n=a+68|0;o=b+72|0;p=a+72|0;d=(d|0)==0;g=0;while(1){if((g|0)>=(c[i>>2]|0)){r=15;break}h=c[(c[j>>2]|0)+(g<<2)>>2]|0;e=c[h>>2]|0;if(!e){if((c[k>>2]|0)==(c[n>>2]|0)?(c[o>>2]|0)==(c[p>>2]|0):0)r=6}else r=6;if((r|0)==6){r=0;if(d){e=Rh(c[h+16>>2]|0)|0;c[q>>2]=e;e=oi(a,c[h>>2]|0,e)|0;if(!e){r=12;break}}else{f=h+8|0;e=ni(a,e,c[f>>2]|0)|0;if(!e){r=8;break}wX(c[e+4>>2]|0,c[h+4>>2]|0,c[f>>2]|0)|0}mi(e+12|0,c[h+12>>2]|0,0)|0}g=g+1|0}do if((r|0)==8){rh(a);e=-12}else if((r|0)==12){Pg(q);rh(a);e=-12}else if((r|0)==15){e=a+360|0;c[e>>2]=0;f=a+364|0;c[f>>2]=0;g=a+368|0;c[g>>2]=0;d=a+372|0;Pg(d);h=c[b+372>>2]|0;if(h|0?(s=Rh(h)|0,c[d>>2]=s,s|0):0){c[e>>2]=c[s+4>>2];c[f>>2]=c[b+364>>2];c[g>>2]=c[b+368>>2]}f=a+380|0;Pg(f);g=a+400|0;Pg(g);e=c[b+380>>2]|0;if(e|0?(a=Rh(e)|0,c[f>>2]=a,(a|0)==0):0){e=-12;break}e=c[b+400>>2]|0;if(e|0?(b=Rh(e)|0,c[g>>2]=b,(b|0)==0):0){e=-12;break}e=0}while(0);l=t;return e|0}function Xh(a,b){a=a|0;b=b|0;var d=0;do if((c[a+80>>2]|0)>=0){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=gi(a,b)|0;break}if((c[a+76>>2]|0)>0){d=a+240|0;if((c[d>>2]|0)==0&(c[d+4>>2]|0)==0?(c[a+352>>2]|0)<=0:0){a=-22;break}a=hi(a,b)|0}else a=-22}else a=-22;while(0);return a|0}function Yh(a,b){a=a|0;b=b|0;var d=0;d=c[a+80>>2]|0;do if(!((d|0)<0?1:(d|0)!=(c[b+80>>2]|0))){if((c[a+68>>2]|0)>0?(c[a+72>>2]|0)>0:0){a=_h(a,b)|0;break}if((c[a+76>>2]|0)>0?(c[a+352>>2]|0)>0:0)a=$h(a,b)|0;else a=-22}else a=-22;while(0);return a|0}function Zh(a,b){a=a|0;b=b|0;if((b|0)!=0?(2147483647/(b>>>0)|0)>>>0>a>>>0:0)a=qg(N(b,a)|0)|0;else a=0;return a|0}function _h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;i=b+68|0;a:do if((c[a+68>>2]|0)>=(c[i>>2]|0)?(e=b+72|0,(c[a+72>>2]|0)>=(c[e>>2]|0)):0){f=a+80|0;g=bi(c[f>>2]|0)|0;d=0;while(1){if((d|0)>=(g|0))break;if(!(c[a+(d<<2)>>2]|0)){d=-22;break a}if(!(c[b+(d<<2)>>2]|0)){d=-22;break a}else d=d+1|0}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];ci(a,a+32|0,h,b+32|0,c[f>>2]|0,c[i>>2]|0,c[e>>2]|0);d=0}else d=-22;while(0);l=j;return d|0}function $h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+80|0;h=Lh(c[f>>2]|0)|0;g=c[a+352>>2]|0;h=h|0?g:1;e=c[a+76>>2]|0;a:do if(((e|0)==(c[b+76>>2]|0)?(g|0)==(c[b+352>>2]|0):0)?(i=a+240|0,d=b+240|0,(c[i>>2]|0)==(c[d>>2]|0)?(c[i+4>>2]|0)==(c[d+4>>2]|0):0):0){d=c[a+64>>2]|0;b=b+64|0;a=0;while(1){if((a|0)>=(h|0))break;if(!(c[d+(a<<2)>>2]|0)){a=-22;break a}if(!(c[(c[b>>2]|0)+(a<<2)>>2]|0)){a=-22;break a}else a=a+1|0}ai(d,c[b>>2]|0,0,0,e,g,c[f>>2]|0)|0;a=0}else a=-22;while(0);return a|0}function ai(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=(Lh(h)|0)!=0;j=k?g:1;i=Nh(h)|0;g=N(k?1:g,i)|0;i=N(g,f)|0;h=N(g,d)|0;g=N(g,e)|0;d=c[a>>2]|0;f=c[b>>2]|0;e=d>>>0>>0;a:do if(((e?f:d)-(c[(e?a:b)>>2]|0)|0)<(i|0)){f=0;while(1){if((f|0)>=(j|0))break a;xX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}else{f=0;while(1){if((f|0)>=(j|0))break a;wX((c[a+(f<<2)>>2]|0)+h|0,(c[b+(f<<2)>>2]|0)+g|0,i|0)|0;f=f+1|0}}while(0);return 0}function bi(a){a=a|0;var b=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=Dh(a)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;a:do if(!b)a=-22;else{e=d[b+4>>0]|0;a=0;while(1){if((a|0)==(e|0)){a=0;b=0;break}c[f+(c[b+16+(a<<5)>>2]<<2)>>2]=1;a=a+1|0}while(1){if((b|0)==4)break a;a=(c[f+(b<<2)>>2]|0)+a|0;b=b+1|0}}while(0);l=g;return a|0}function ci(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);j=n+16|0;k=n;i=0;while(1){if((i|0)==4)break;c[j+(i<<2)>>2]=c[b+(i<<2)>>2];c[k+(i<<2)>>2]=c[e+(i<<2)>>2];i=i+1|0}ei(a,j,d,k,f,g,h,4);l=n;return}function di(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o+16|0;k=o;a:do if((a|0)!=0&(d|0)!=0){if((((e|0)>-1?e:0-e|0)|0)<(f|0)){c[k>>2]=126978;c[k+4>>2]=127009;c[k+8>>2]=314;ig(0,0,159900,k);Tb()}if((((b|0)>-1?b:0-b|0)|0)<(f|0)){c[n>>2]=127030;c[n+4>>2]=127009;c[n+8>>2]=315;ig(0,0,159900,n);Tb()}else{h=g;i=a;j=d}while(1){if((h|0)<=0)break a;wX(i|0,j|0,f|0)|0;h=h+-1|0;i=i+b|0;j=j+e|0}}while(0);l=o;return}function ei(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=t;o=Dh(g)|0;a:do if(o|0?(k=c[o+8>>2]|0,(k&8|0)==0&0==0):0){if(!((k&66|0)==0&0==0)){Vd[j&63](c[a>>2]|0,c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,h,i);wX(c[a+4>>2]|0,c[e+4>>2]|0,1024)|0;break}n=d[o+4>>0]|0;r=0;k=0;while(1){if((k|0)==(n|0))break;q=(c[o+16+(k<<5)>>2]|0)+1|0;r=(r|0)>(q|0)?r:q;k=k+1|0}o=o+6|0;p=0-i|0;n=0;while(1){if((n|0)>=(r|0))break a;q=fi(g,h,n)|0;if((q|0)<0)break;if((n+-1|0)>>>0<2)k=0-(p>>(d[o>>0]|0))|0;else k=i;Vd[j&63](c[a+(n<<2)>>2]|0,c[b+(n<<2)>>2]|0,c[e+(n<<2)>>2]|0,c[f+(n<<2)>>2]|0,q,k);n=n+1|0}ig(0,16,126948,s)}while(0);l=t;return}function fi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=g+16|0;f=g;a=Dh(a)|0;if((a|0)!=0?(0==0?(c[a+8>>2]&8|0)==0:0):0){Ph(e,f,a);a=Qh(b,c[e+(d<<2)>>2]|0,c[f+(d<<2)>>2]|0,a)|0}else a=-22;l=g;return a|0}function gi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=a+80|0;k=Dh(c[h>>2]|0)|0;a:do if(k){i=a+68|0;l=a+72|0;e=ji(c[i>>2]|0,c[l>>2]|0,0,0)|0;if((e|0)>=0){g=a+32|0;b:do if(!(c[g>>2]|0)){b=(b|0)<1?32:b;j=b+-1|0;f=1;while(1){if((f|0)>(b|0))break;e=Hh(g,c[h>>2]|0,f+-1+(c[i>>2]|0)&0-f)|0;if((e|0)<0)break a;if(!(c[g>>2]&j))break;else f=f<<1}b=0-b|0;e=0;while(1){if((e|0)>=4)break b;f=a+32+(e<<2)|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=j+g&b;e=e+1|0}}while(0);g=k+6|0;f=0;while(1){if((f|0)>=4){m=19;break}b=c[a+32+(f<<2)>>2]|0;if(!b){m=19;break}e=(c[l>>2]|0)+31&-32;if((f+-1|0)>>>0<2)e=0-(0-e>>(d[g>>0]|0))|0;e=Oh((N(b,e)|0)+31|0)|0;c[a+248+(f<<2)>>2]=e;if(!e)break;c[a+(f<<2)>>2]=c[e+4>>2];f=f+1|0}do if((m|0)==19){if(!(0==0?(c[k+8>>2]&66|0)==0:0)){m=a+252|0;Pg(m);e=Oh(1024)|0;c[m>>2]=e;if(!e)break;c[a+4>>2]=c[e+4>>2]}c[a+64>>2]=a;e=0;break a}while(0);oh(a);e=-12}}else e=-22;while(0);return e|0}function hi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+80|0;g=Lh(c[h>>2]|0)|0;e=a+352|0;f=c[e>>2]|0;if(!f){f=a+240|0;f=ii(c[f>>2]|0,c[f+4>>2]|0)|0;c[e>>2]=f}i=g|0?f:1;j=a+32|0;if(!((c[j>>2]|0)==0?(d=Mh(j,f,c[a+76>>2]|0,c[h>>2]|0,b)|0,(d|0)<0):0))k=5;a:do if((k|0)==5){g=(i|0)>8;do if(g){d=a+64|0;c[d>>2]=xh(i,4)|0;e=i+-8|0;h=xh(e,4)|0;f=a+280|0;c[f>>2]=h;if((h|0)==0|(c[d>>2]|0)==0){eg(d);eg(f);d=-12;break a}else{c[a+284>>2]=e;b=d;break}}else{b=a+64|0;c[b>>2]=a}while(0);e=g?8:i;d=0;while(1){if((d|0)>=(e|0))break;f=Oh(c[j>>2]|0)|0;c[a+248+(d<<2)>>2]=f;if(!f){k=14;break}h=c[f+4>>2]|0;c[a+(d<<2)>>2]=h;c[(c[b>>2]|0)+(d<<2)>>2]=h;d=d+1|0}if((k|0)==14){oh(a);d=-12;break}e=i+-8|0;f=a+280|0;d=0;while(1){if((d|0)>=(e|0)){d=0;break a}g=Oh(c[j>>2]|0)|0;c[(c[f>>2]|0)+(d<<2)>>2]=g;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;if(!g)break;c[(c[b>>2]|0)+(d+8<<2)>>2]=c[g+4>>2];d=d+1|0}oh(a);d=-12}while(0);return d|0}function ii(a,b){a=a|0;b=b|0;var c=0;c=a-(a>>>1&1431655765)|0;c=(c>>>2&858993459)+(c&858993459)|0;c=(c>>>4)+c&252645135;c=(c>>>8)+c|0;a=rX(a|0,b|0,33)|0;b=b-(a&1431655765)|0;b=(b>>>2&858993459)+(b&858993459)|0;b=(b>>>4)+b&252645135;b=(b>>>8)+b|0;return ((c>>>16)+c&63)+((b>>>16)+b&63)|0}function ji(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ki(a,b,-1,2147483647,-1,c,d)|0}function ki(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=n+8|0;j=n;i=n+24|0;c[i>>2]=102168;c[i+4>>2]=g;c[i+8>>2]=h;g=fi(f,a,0)|0;h=(g|0)<1;f=sX(a|0,0,3)|0;f=h?f:g;g=h?y:((g|0)<0)<<31>>31;if(!((a|0)<1|(b|0)<1|((g|0)>0|(g|0)==0&f>>>0>2147482622))?(h=hX(f|0,g|0,1024,0)|0,h=nX(h|0,y|0,b+128|0,0)|0,g=y,!(g>>>0>0|(g|0)==0&h>>>0>2147483646)):0)if(!((d|0)==-1&(e|0)==2147483647)?(j=nX(b|0,0,a|0,0)|0,h=y,(h|0)>(e|0)|(h|0)==(e|0)&j>>>0>d>>>0):0){c[k>>2]=a;c[k+4>>2]=b;f=k+8|0;c[f>>2]=d;c[f+4>>2]=e;ig(i,16,127092,k);f=-22}else f=0;else{c[j>>2]=a;c[j+4>>2]=b;ig(i,16,127061,j);f=-22}l=n;return f|0}function li(a){a=a|0;return c[c[a>>2]>>2]|0}function mi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=0;do{f=pi(b,262784,f,2)|0;if(!f){e=0;break}e=qi(a,c[f>>2]|0,c[f+4>>2]|0,d)|0}while((e|0)>=0);return e|0}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=Oh(d)|0;c[e>>2]=d;a=oi(a,b,d)|0;if(!a)Pg(e);l=f;return a|0}function oi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((((d|0)!=0?(g=a+292|0,h=c[g>>2]|0,h>>>0<=536870910):0)?(i=a+288|0,f=pg(c[i>>2]|0,(h<<2)+4|0)|0,(f|0)!=0):0)?(c[i>>2]=f,e=$g(20)|0,(e|0)!=0):0){c[e+16>>2]=d;c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e>>2]=b;h=c[i>>2]|0;i=c[g>>2]|0;c[g>>2]=i+1;c[h+(i<<2)>>2]=e}else e=0;return e|0}function pi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!b)e=0;else{m=b+4|0;if(!e)e=0;else e=(e-(c[m>>2]|0)>>3)+1|0;k=c[b>>2]|0;l=(f&1|0)==0;j=(f&2|0)==0;while(1){if(e>>>0>=k>>>0){e=0;break a}i=c[m>>2]|0;h=c[i+(e<<3)>>2]|0;if(l){f=0;while(1){b=a[h+f>>0]|0;n=ui(b<<24>>24)|0;g=a[d+f>>0]|0;if(g<<24>>24==0|(n|0)!=(ui(g<<24>>24)|0))break;else f=f+1|0}}else{f=0;while(1){b=a[h+f>>0]|0;g=a[d+f>>0]|0;if(g<<24>>24==0?1:b<<24>>24!=g<<24>>24)break;else f=f+1|0}}if(!(g<<24>>24!=0|j&b<<24>>24!=0))break;e=e+1|0}e=i+(e<<3)|0}while(0);return e|0}function qi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=r+8|0;q=r+4|0;o=r;g=c[a>>2]|0;c[n>>2]=0;c[q>>2]=0;c[o>>2]=0;if(!(e&64))i=pi(g,b,0,e)|0;else i=0;if(!(e&4))h=ri(b)|0;else h=b;c[q>>2]=h;j=h;if(!(e&8))if(!h)f=0;else{f=ri(d)|0;c[o>>2]=f}else{c[o>>2]=d;f=d}if(!g){g=$g(8)|0;c[a>>2]=g;if(!g)k=32;else{p=g;k=11}}else{p=g;k=11}a:do if((k|0)==11){do if((b|0)==0|(h|0)!=0){g=(f|0)!=0;if((d|0)==0|g){if(!i)if(g){g=p+4|0;b=pg(c[g>>2]|0,(c[p>>2]<<3)+8|0)|0;if(!b)break;c[g>>2]=b;k=23}else k=27;else{if(e&16|0){fg(h);fg(f);f=0;break a}g=c[i+4>>2]|0;if(!(e&32))fg(g);else c[n>>2]=g;fg(c[i>>2]|0);d=c[p+4>>2]|0;h=(c[p>>2]|0)+-1|0;c[p>>2]=h;h=d+(h<<3)|0;d=c[h+4>>2]|0;k=i;c[k>>2]=c[h>>2];c[k+4>>2]=d;if(!f)k=27;else k=23}if((k|0)==23){d=p+4|0;h=c[d>>2]|0;g=c[p>>2]|0;c[h+(g<<3)>>2]=j;f=c[o>>2]|0;c[h+(g<<3)+4>>2]=f;h=c[n>>2]|0;if((e&32|0)==0|(h|0)==0)f=g;else{g=RU(h)|0;g=g+1+(RU(f)|0)|0;b=$g(g)|0;if(!b)break;si(b,h,g)|0;eg(n);si(b,f,g)|0;c[(c[d>>2]|0)+(c[p>>2]<<3)+4>>2]=b;eg(o);f=c[p>>2]|0}f=f+1|0;c[p>>2]=f}else if((k|0)==27){eg(q);f=c[p>>2]|0}if(f|0){f=0;break a}eg(p+4|0);eg(a);f=0;break a}else f=0}while(0);if(!(c[p>>2]|0)){eg(p+4|0);eg(a);k=32}else k=32}while(0);if((k|0)==32){fg(c[q>>2]|0);fg(f);f=-12}l=r;return f|0}function ri(a){a=a|0;var b=0,c=0;if((a|0)!=0?(c=(RU(a)|0)+1|0,b=pg(0,c)|0,(b|0)!=0):0)wX(b|0,a|0,c|0)|0;else b=0;return b|0}function si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=RU(a)|0;if((d+1|0)>>>0>>0)a=ti(a+d|0,b,c-d|0)|0;else a=RU(b)|0;return a+d|0}function ti(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=0;while(1){e=g+1|0;if(e>>>0>=d>>>0)break;f=a[c>>0]|0;if(!(f<<24>>24))break;a[b>>0]=f;g=e;b=b+1|0;c=c+1|0}if(g>>>0>>0)a[b>>0]=0;return (RU(c)|0)+g|0}function ui(a){a=a|0;return ((a+-97|0)>>>0<26?a^32:a)|0}function vi(a){a=a|0;var b=0;wi(a);c[a+28260>>2]=0;c[a+28264>>2]=0;c[a+28248>>2]=65536;c[a+28252>>2]=0;b=0;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}return}function wi(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==16)break;xi(a,b,0);b=b+1|0}d=a+29556|0;if((c[d>>2]|0)!=0?(e=a+24972|0,(c[c[e>>2]>>2]|0)==0):0){ih(a,e);yi(a,e,c[a+28348>>2]|0)|0;b=0}else b=0;while(1){if((b|0)>=(c[d>>2]|0))break;e=a+28348+(b<<2)|0;zi(a,c[e>>2]|0,0)|0;c[e>>2]=0;b=b+1|0}c[d>>2]=0;b=a+28268|0;d=b+80|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function xi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=a+28476+(b<<2)|0;e=c[b>>2]|0;if(e|0?zi(a,e,d)|0:0){c[(c[b>>2]|0)+100>>2]=0;c[b>>2]=0;d=a+29552|0;c[d>>2]=(c[d>>2]|0)+-1}return}function yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);i=k+32|0;g=k+16|0;e=k;h=c[b>>2]|0;if(c[h+248>>2]|0){c[e>>2]=127210;c[e+4>>2]=127226;c[e+8>>2]=70;ig(0,0,159900,e);Tb()}f=c[d>>2]|0;if(!(c[f+248>>2]|0)){c[g>>2]=127252;c[g+4>>2]=127226;c[g+8>>2]=71;ig(0,0,159900,g);Tb()}e=d+4|0;if((c[e>>2]|0)!=(f|0)){c[i>>2]=127267;c[i+4>>2]=127226;c[i+8>>2]=72;ig(0,0,159900,i);Tb()}i=b+4|0;c[i>>2]=h;e=Ai(i,e)|0;a:do if((e|0)>=0){i=b+20|0;c[i>>2]=Rh(c[d+20>>2]|0)|0;h=Rh(c[d+44>>2]|0)|0;c[b+44>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19}else{c[b+24>>2]=c[d+24>>2];c[b+48>>2]=c[d+48>>2];e=0;while(1){if((e|0)>=2)break;i=b+28+(e<<2)|0;c[i>>2]=Rh(c[d+28+(e<<2)>>2]|0)|0;h=Rh(c[d+60+(e<<2)>>2]|0)|0;c[b+60+(e<<2)>>2]=h;if((h|0)==0|(c[i>>2]|0)==0){e=-12;j=19;break a}c[b+36+(e<<2)>>2]=c[d+36+(e<<2)>>2];c[b+68+(e<<2)>>2]=c[d+68+(e<<2)>>2];e=e+1|0}if(!(c[d+56>>2]|0))e=0;else{e=Rh(c[d+52>>2]|0)|0;c[b+52>>2]=e;if(!e){e=-12;j=19;break}c[b+56>>2]=c[e+4>>2];e=0}while(1){if((e|0)==2)break;c[b+76+(e<<2)>>2]=c[d+76+(e<<2)>>2];e=e+1|0}wX(b+104|0,d+104|0,512)|0;e=b+616|0;a=d+616|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[b+84>>2]=c[d+84>>2];c[b+88>>2]=c[d+88>>2];c[b+92>>2]=c[d+92>>2];c[b+100>>2]=c[d+100>>2];c[b+632>>2]=c[d+632>>2];c[b+636>>2]=c[d+636>>2];c[b+640>>2]=c[d+640>>2];c[b+644>>2]=c[d+644>>2];c[b+648>>2]=c[d+648>>2];c[b+652>>2]=c[d+652>>2];e=0}}else j=19;while(0);if((j|0)==19)ih(a,b);l=k;return e|0}function zi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b+640|0;e=c[f>>2]&d;c[f>>2]=e;a:do if(!e){d=0;while(1){e=c[a+28604+(d<<2)>>2]|0;if(!e){d=1;break a}if((e|0)==(b|0))break;else d=d+1|0}c[f>>2]=4;d=1}else d=0;while(0);return d|0}function Ai(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=a+4|0;c[g>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];d=Vh(c[a>>2]|0,c[b>>2]|0)|0;if((d|0)>=0){e=a+12|0;if(c[e>>2]|0){c[f>>2]=127287;c[f+4>>2]=127302;c[f+8>>2]=1792;ig(0,0,159900,f);Tb()}d=c[b+12>>2]|0;if((d|0)!=0?(f=Rh(d)|0,c[e>>2]=f,(f|0)==0):0){mh(c[g>>2]|0,a);d=-12}else d=0}l=h;return d|0}function Bi(a){a=a|0;var b=0;b=0;while(1){if((b|0)==32){b=0;break}Pg(a+(b<<2)|0);b=b+1|0}while(1){if((b|0)==256)break;Pg(a+128+(b<<2)|0);b=b+1|0}Pg(a+1156|0);Pg(a+1152|0);c[a+1160>>2]=0;c[a+1164>>2]=0;return}function Ci(a){a=a|0;var b=0,d=0;d=a+20|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;eg((c[a>>2]|0)+(b*68|0)+60|0);b=b+1|0}eg(a);c[d>>2]=0;eg(a+4|0);c[a+12>>2]=0;c[a+8>>2]=0;return}function Di(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=c[a+28604>>2]|0;c[a+24312>>2]=0;c[a+26384>>2]=0;h=0;f=1;while(1){g=c[a+28604+(f<<2)>>2]|0;if(!g)break;if(c[(c[g>>2]|0)+84>>2]|0)break;if(c[g+92>>2]|0)break;k=(c[g+84>>2]|0)<(c[i+84>>2]|0);i=k?g:i;h=k?f:h;f=f+1|0}g=h;f=c[a+28604+(h<<2)>>2]|0;while(1){if(!f)break;k=g+1|0;f=c[a+28604+(k<<2)>>2]|0;c[a+28604+(g<<2)>>2]=f;g=k}if((i|0)!=0?(j=i+640|0,c[j>>2]=c[j>>2]&-5,j=Ji(a,b,i,d)|0,(j|0)<0):0)e=j;return e|0}function Ei(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+44>>2]|0;a=a+40|0;e=0;while(1){if((e|0)>=(f|0)){b=8;break}g=c[a>>2]|0;if((c[g+(e*12|0)+8>>2]|0)==(b|0)){b=4;break}e=e+1|0}if((b|0)==4){if(d|0)c[d>>2]=c[g+(e*12|0)+4>>2];a=c[g+(e*12|0)>>2]|0}else if((b|0)==8)if(!d)a=0;else{c[d>>2]=0;a=0}return a|0}function Fi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+c|0;e=a[b+5>>0]&31;b=b+6|0;while(1){if(!e){f=5;break}c=((tX(d[b>>0]|d[b+1>>0]<<8|0)|0)&65535)+2|0;if((c|0)>(g-b|0)){c=0;break}if((a[b+2>>0]&-97)<<24>>24==7){e=e+-1|0;b=b+c|0}else{c=0;break}}a:do if((f|0)==5){c=a[b>>0]|0;if(!(c<<24>>24))c=0;else{e=c&255;c=b+1|0;while(1){if(!e){c=1;break a}b=((tX(d[c>>0]|d[c+1>>0]<<8|0)|0)&65535)+2|0;if((b|0)>(g-c|0)){c=0;break a}if((a[c+2>>0]&-97)<<24>>24==8){e=e+-1|0;c=c+b|0}else{c=0;break}}}}while(0);return c|0}function Gi(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=u+16|0;q=u+8|0;k=u;a:do if((b|0)==0|(e|0)<1)e=-1;else do if((a[b>>0]|0)==1){c[g>>2]=1;if((e|0)<7){c[k>>2]=e;ig(j,16,148785,k);e=-1094995529;break a}k=a[b+5>>0]&31;s=b+e|0;p=b+6|0;g=0;while(1){if((g|0)>=(k|0))break;n=((tX(d[p>>0]|d[p+1>>0]<<8|0)|0)&65535)+2|0;if((n|0)>(s-p|0)){e=-1094995529;break a}o=_N(p,n,f,i,j)|0;if((o|0)<0){r=9;break}p=p+n|0;g=g+1|0}if((r|0)==9){c[q>>2]=g;ig(j,16,148804,q);e=o;break a}o=d[p>>0]|0;g=p+1|0;n=0;while(1){if((n|0)>=(o|0)){r=17;break}k=((tX(d[g>>0]|d[g+1>>0]<<8|0)|0)&65535)+2|0;if((k|0)>(s-g|0)){e=-1094995529;break a}p=_N(g,k,f,i,j)|0;if((p|0)<0){r=15;break}g=g+k|0;n=n+1|0}if((r|0)==15){c[t>>2]=n;ig(j,16,148838,t);e=p;break a}else if((r|0)==17){c[h>>2]=(a[b+4>>0]&3)+1&255;break}}else{c[g>>2]=0;g=$N(b,e,f,0,j)|0;if((g|0)<0){e=g;break a}}while(0);while(0);l=u;return e|0}function Hi(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+80|0;if((l|0)>=(m|0))W(80);P=Z+48|0;T=Z+40|0;S=Z+32|0;R=Z+24|0;Q=Z+16|0;O=Z+8|0;j=Z;L=Z+52|0;U=b+4|0;M=c[U>>2]|0;Y=b+27032|0;c[Y>>2]=0;N=b+27028|0;c[N>>2]=0;i=M+64|0;if(!(c[i>>2]&32768)){c[b+29560>>2]=0;if(!(c[b+26384>>2]|0))c[b+24312>>2]=0;hh(b+29676|0)}h=c[b+27040>>2]|0;do if((h|0)==4){if((f|0)>8){g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((g|0)==16777216){X=e+5|0;if((uX(d[X>>0]|d[X+1>>0]<<8|d[X+2>>0]<<16|d[X+3>>0]<<24|0)|0)>>>0>f>>>0){c[b+27036>>2]=0;break}else g=16777216}}else{if((f|0)<=3)break;g=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24}X=uX(g|0)|0;if(!(X>>>0<2|X>>>0>f>>>0))c[b+27036>>2]=1}while(0);F=b+25640|0;g=Wi(F,e,f,M,c[b+27036>>2]|0,h,c[M+16>>2]|0,c[i>>2]&1)|0;do if((g|0)<0)ig(M,16,128345,j);else{C=M+696|0;if(c[C>>2]&1){g=Xi(b)|0;if((g|0)<0)break}else g=0;p=b+25656|0;q=M+732|0;r=b+27024|0;D=b+29560|0;s=b+29580|0;t=b+29588|0;X=b+24312|0;u=M+592|0;v=b+25632|0;w=b+25636|0;E=b+25628|0;x=b+29676|0;y=b+27052|0;z=b+29716|0;A=M+576|0;B=b+29900|0;h=0;o=0;a:while(1){if((o|0)>=(c[p>>2]|0)){V=71;break}k=c[F>>2]|0;j=k+(o*68|0)|0;i=c[k+(o*68|0)+64>>2]|0;if((c[q>>2]|0)>7&(i|0)==0){if((c[k+(o*68|0)+44>>2]|0)==6){i=0;V=22}}else V=22;b:do if((V|0)==22){V=0;c[r>>2]=i;i=c[k+(o*68|0)+44>>2]|0;c[N>>2]=i;switch(i|0){case 19:case 13:case 12:case 11:case 10:case 9:break b;case 5:{if((a[(c[k+(o*68|0)+8>>2]|0)+1>>0]&-4)<<24>>24==-104){V=24;break a}if(!h){if(c[D>>2]|0?c[C>>2]&2|0:0){V=28;break a}vi(b)}c[s>>2]=1;h=1;break}case 1:break;case 4:case 3:case 2:{$i(M,128496,R);break b}case 6:{n=aj(x,k+(o*68|0)+24|0,y,M)|0;if(!(c[s>>2]|0))i=(c[z>>2]|0)!=-1;else i=1;c[s>>2]=i&1;if(c[A>>2]&8388608|0)bj(B,c[U>>2]|0);if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}case 7:{i=k+(o*68|0)+24|0;c[L>>2]=c[i>>2];c[L+4>>2]=c[i+4>>2];c[L+8>>2]=c[i+8>>2];c[L+12>>2]=c[i+12>>2];c[L+16>>2]=c[i+16>>2];j=c[u>>2]|0;if((j|0?(H=c[j+28>>2]|0,H|0):0)?(I=Md[H&1](M,7,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(I|0)<0):0){V=61;break a}if((cj(L,M,y,0)|0)<=-1?(ig(c[U>>2]|0,48,128514,S),dj(L,(c[k+(o*68|0)+20>>2]|0)+1|0,(c[k+(o*68|0)+16>>2]|0)+-1|0)|0,(cj(L,M,y,0)|0)<=-1):0)cj(i,M,y,1)|0;break b}case 8:{i=c[u>>2]|0;if((i|0?(J=c[i+28>>2]|0,J|0):0)?(K=Md[J&1](M,8,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0,(K|0)<0):0){n=K;break a}n=ej(k+(o*68|0)+24|0,M,y,c[k+(o*68|0)+12>>2]|0)|0;if((n|0)>=0)break b;if(!(c[(c[U>>2]|0)+580>>2]&8))break b;else break a}default:{n=c[k+(o*68|0)+12>>2]|0;c[T>>2]=i;c[T+4>>2]=n;ig(M,48,128572,T);break b}}c[Y>>2]=1;i=Yi(b,j)|0;if(i|0){k=c[E>>2]|0;n=c[w>>2]|0;c[k+(n*34768|0)+23408>>2]=0;c[k+(n*34768|0)+23404>>2]=0;if((i|0)>=0)break;ig(c[U>>2]|0,16,128604,P);break}if((c[D>>2]|0)==1){if((!((o|0)<(g|0)|(c[C>>2]&1|0)==0)?(c[t>>2]|0)==0:0)?c[X>>2]|0:0){Zi(M);c[t>>2]=1}i=c[U>>2]|0;j=c[i+592>>2]|0;if(j|0?(G=Ld[c[j+24>>2]&15](i,e,f)|0,(G|0)<0):0){n=G;break a}}i=c[u>>2]|0;if(!i)j=c[v>>2]|0;else j=1;if((c[w>>2]|0)==(j|0)){if(!(c[(c[U>>2]|0)+592>>2]|0))n=_i(b)|0;else{n=Ld[c[i+32>>2]&15](M,c[k+(o*68|0)+20>>2]|0,c[k+(o*68|0)+16>>2]|0)|0;c[w>>2]=0}if((n|0)<0?(c[(c[U>>2]|0)+580>>2]&8|0)!=0:0)break a}}while(0);o=o+1|0}do if((V|0)==24){ig(c[U>>2]|0,16,128388,O);c[b+28744>>2]=-2147483648;n=-1}else if((V|0)==28){ig(b,16,128413,Q);n=-1094995529}else if((V|0)==61)n=I;else if((V|0)==71){g=_i(b)|0;if((g|0)<0?c[(c[U>>2]|0)+580>>2]&8|0:0){n=g;break}n=0}while(0);k=b+26380|0;if((((c[k>>2]|0)==3?c[D>>2]|0:0)?(c[b+28216>>2]|0)==(c[(c[b+27052+(c[c[b+28212>>2]>>2]<<2)>>2]|0)+4>>2]|0):0)?c[b+29672>>2]|0:0){h=c[E>>2]|0;g=b+24972|0;if(!(c[(c[g>>2]|0)+248>>2]|0))j=0;else j=(c[h+23404>>2]|0)==0;i=h+24|0;fj(h+696|0,c[X>>2]|0);do if(!j){g=h+728|0;if(!(c[h+23404>>2]|0)){fj(g,0);break}else{fj(g,c[h+23452>>2]|0);break}}else{fj(h+728|0,g);V=h+23416|0;c[h+23452>>2]=g;U=c[g>>2]|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];V=h+23428|0;U=(c[g>>2]|0)+32|0;c[V>>2]=c[U>>2];c[V+4>>2]=c[U+4>>2];c[V+8>>2]=c[U+8>>2];c[h+23440>>2]=c[b+25612>>2]}while(0);if(c[h+23408>>2]|0)fj(h+760|0,c[h+25372>>2]|0);c[h+820>>2]=c[h+23404>>2];gj(i);if(j){g=h+23416|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}}g=c[X>>2]|0;if((g|0?(c[b+25684>>2]|0)==0:0)?c[Y>>2]|0:0)Oi(g+4|0,2147483647,(c[k>>2]|0)==2&1);g=(n|0)<0?n:f}while(0);l=Z;return g|0}function Ii(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=c[a+4>>2]|0;c[a+27004>>2]=0;f=(d|0)!=0;if(!f?(c[e+696>>2]&1|0)!=0:0)b=0;else{if(!(c[a+25684>>2]|0)){b=Ni(a)|0;c[a+28248>>2]=c[a+28228>>2];c[a+28252>>2]=c[a+28224>>2]}else b=0;c[a+28260>>2]=c[a+28256>>2];c[a+28264>>2]=c[a+28244>>2]}d=c[e+592>>2]|0;if(d){b=Jd[c[d+36>>2]&31](e)|0;if((b|0)<0)ig(e,16,127623,g)}if(!f?(c[a+25684>>2]|0)==0:0)Oi((c[a+24312>>2]|0)+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[a+29560>>2]=0;l=h;return b|0}function Ji(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=o;j=o+40|0;k=o+24|0;n=o+8|0;f=c[a+4>>2]|0;if(((c[f+60>>2]&8|0)==0?(c[f+64>>2]&4194304|0)==0:0)?(c[d+644>>2]|0)==0:0)f=0;else{do if(!(c[f+592>>2]|0)){h=(c[d+76>>2]|0)==2147483647;if(!h?(c[d+80>>2]|0)!=2147483647:0)break;i=c[d>>2]|0;p=h&1;c[g>>2]=p;ig(f,48,127403,g);g=0-(p^1)|0;f=0;while(1){if((f|0)==4)break;q=i+(f<<2)|0;p=c[i+32+(f<<2)>>2]|0;c[j+(f<<2)>>2]=(c[q>>2]|0)+(p&g);c[n+(f<<2)>>2]=(c[q>>2]|0)+(h?p:0);c[k+(f<<2)>>2]=p<<1;f=f+1|0}ci(j,k,n,k,c[i+80>>2]|0,c[i+68>>2]|0,c[i+72>>2]>>1)}while(0);f=Li(a,b,d)|0;if((f|0)>=0){c[e>>2]=1;f=0}}l=o;return f|0}function Ki(a,b){a=a|0;b=b|0;a=(a|0)==0?1:a;return ((a+10|0)>(b|0)?b:a)|0}function Li(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Vh(b,c[d>>2]|0)|0;if((e|0)>=0){qi(b+344|0,127441,Mi(a+29852|0)|0,0)|0;if(!(c[d+652>>2]|0)){c[b+84>>2]=1;e=0}else e=0}return e|0}function Mi(a){a=a|0;a:do switch(c[a+8>>2]|0){case 0:switch(c[a+12>>2]|0){case 0:{a=(c[a+20>>2]|0)==2?127453:127469;break a}case 1:{a=(c[a+20>>2]|0)==2?127485:127504;break a}case 2:{a=(c[a+20>>2]|0)==2?127523:127542;break a}case 3:{a=(c[a+20>>2]|0)==2?127561:127572;break a}case 4:{a=(c[a+20>>2]|0)==2?127583:127594;break a}case 5:{a=(c[a+20>>2]|0)==2?127605:127614;break a}default:{a=156142;break a}}case 1:{a=156142;break}default:a=0}while(0);return a|0}function Ni(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=l;l=l+144|0;if((l|0)>=(m|0))W(144);E=N+112|0;D=N+104|0;C=N+96|0;w=N+80|0;v=N+72|0;u=N+64|0;t=N+56|0;z=N+48|0;y=N+40|0;x=N+24|0;e=N+16|0;p=N+128|0;L=N;r=N+124|0;G=L;c[G>>2]=0;c[G+4>>2]=0;G=a+28216|0;do if(c[G>>2]|0){if(!(c[a+29548>>2]|0))Pi(a);q=c[a+29540>>2]|0;b=a+4|0;d=c[b>>2]|0;if((q|0)==0?(c[d+576>>2]&2048|0)!=0:0)ig(d,48,127709,e);J=a+29556|0;H=a+29552|0;B=a+28348|0;K=a+24312|0;I=a+26380|0;n=a+28244|0;o=a+29544|0;k=0;j=0;f=0;g=0;d=0;a:while(1){if((k|0)>=(q|0))break;e=c[b>>2]|0;if(!(c[e+576>>2]&2048))h=a+28748+(k*12|0)|0;else{h=a+28748+(k*12|0)|0;O=c[a+28748+(k*12|0)+4>>2]|0;i=c[a+28748+(k*12|0)+8>>2]|0;c[x>>2]=c[h>>2];c[x+4>>2]=O;c[x+8>>2]=i;ig(e,48,127723,x)}e=c[h>>2]|0;b:do switch(e|0){case 3:case 1:{f=Qi(a,c[a+28748+(k*12|0)+4>>2]|0,r)|0;g=Ri(a,f,p)|0;e=c[h>>2]|0;if(!g){if(((e|0)==3?(s=c[a+28476+(c[a+28748+(k*12|0)+8>>2]<<2)>>2]|0,s|0):0)?(c[s+88>>2]|0)==(f|0):0){h=j;e=0;break b}ig(c[b>>2]|0,c[J>>2]|0?16:48,127738,y);h=j;d=-1094995529;e=0}else{i=f;A=18}break}default:{i=f;A=18}}while(0);c:do if((A|0)==18){A=0;switch(e|0){case 1:{e=c[b>>2]|0;if(c[e+576>>2]&2048|0){O=c[J>>2]|0;c[z>>2]=c[a+28748+(k*12|0)+4>>2];c[z+4>>2]=O;ig(e,48,127765,z)}Si(a,i,c[r>>2]^3)|0;h=j;f=i;e=g;break c}case 3:{e=a+28748+(k*12|0)+8|0;f=c[e>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(g|0))xi(a,f,0);Ti(a,c[p>>2]|0);c[a+28476+(c[e>>2]<<2)>>2]=g;e=c[a+28476+(c[e>>2]<<2)>>2]|0;if(!e){h=j;f=i;e=g;break c}c[e+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;h=j;f=i;e=g;break c}case 2:{e=Qi(a,c[a+28748+(k*12|0)+8>>2]|0,r)|0;c[p>>2]=e;g=c[a+28476+(e<<2)>>2]|0;if(g|0){xi(a,e,c[r>>2]^3);h=j;f=i;e=g;break c}e=c[b>>2]|0;if(!(c[e+576>>2]&2048)){h=j;f=i;e=0;break c}ig(e,48,127796,t);h=j;f=i;e=0;break c}case 6:{e=c[K>>2]|0;if((c[B>>2]|0)==(e|0)){ig(c[b>>2]|0,16,127822,u);Ti(a,0);e=c[K>>2]|0}h=a+28748+(k*12|0)+8|0;if(c[e+100>>2]|0){e=0;while(1){if((e|0)==32)break;if((c[a+28476+(e<<2)>>2]|0)==(c[K>>2]|0)){if((e|0)!=(c[h>>2]|0))ig(c[b>>2]|0,16,127894,v);xi(a,e,0)}e=e+1|0}c[p>>2]=32;e=c[K>>2]|0}f=c[h>>2]|0;if((c[a+28476+(f<<2)>>2]|0)!=(e|0)){if(c[e+100>>2]|0){A=42;break a}xi(a,f,0);c[a+28476+(c[h>>2]<<2)>>2]=c[K>>2];c[(c[a+28476+(c[h>>2]<<2)>>2]|0)+100>>2]=1;c[H>>2]=(c[H>>2]|0)+1;e=c[K>>2]|0}h=e+640|0;c[h>>2]=c[h>>2]|c[I>>2];h=1;f=i;e=g;break c}case 4:{e=c[a+28748+(k*12|0)+8>>2]|0;while(1){if((e|0)>=16)break;xi(a,e,0);e=e+1|0}c[p>>2]=e;h=j;f=i;e=g;break c}case 5:{while(1){if(!(c[J>>2]|0)){e=0;break}Si(a,c[(c[B>>2]|0)+88>>2]|0,0)|0}while(1){if((e|0)==16)break;xi(a,e,0);e=e+1|0}c[p>>2]=16;e=c[K>>2]|0;c[e+88>>2]=0;c[n>>2]=0;c[o>>2]=1;c[e+92>>2]=1;e=0;while(1){if((e|0)==16)break;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}c[p>>2]=16;h=j;f=i;e=g;break c}default:{h=j;f=i;e=g;break c}}}while(0);k=k+1|0;j=h;g=e}if((A|0)==42){c[w>>2]=127957;c[w+4>>2]=127983;c[w+8>>2]=702;ig(0,0,159900,w);Tb()}do if(!j){if(c[J>>2]|0){f=c[B>>2]|0;e=c[K>>2]|0;if((f|0)==(e|0)){O=f+640|0;c[O>>2]=c[O>>2]|c[I>>2];break}}else e=c[K>>2]|0;if(c[e+100>>2]|0){ig(c[b>>2]|0,16,128006,C);d=-1094995529;break}if(Si(a,c[e+88>>2]|0,0)|0){ig(c[b>>2]|0,16,128119,D);d=-1094995529}e=c[J>>2]|0;if(!e)e=1;else{xX(a+28352|0,B|0,e<<2|0)|0;e=(c[J>>2]|0)+1|0}O=c[K>>2]|0;c[a+28348>>2]=O;c[J>>2]=e;O=O+640|0;c[O>>2]=c[O>>2]|c[I>>2]}while(0);e=c[H>>2]|0;f=c[J>>2]|0;g=c[(c[G>>2]|0)+48>>2]|0;do if((f+e|0)>(((g|0)>1?g:1)|0)){d=c[b>>2]|0;c[E>>2]=e;c[E+4>>2]=f;c[E+8>>2]=g;ig(d,16,128161,E);d=c[J>>2]|0;if((c[H>>2]|0)!=0&(d|0)==0)d=0;else{Si(a,c[(c[a+28348+(d+-1<<2)>>2]|0)+88>>2]|0,0)|0;d=-1094995529;break}while(1){if((d|0)>=16)break;if(c[a+28476+(d<<2)>>2]|0)break;d=d+1|0}xi(a,d,0);d=-1094995529}while(0);e=0;while(1){if((e|0)>=(c[J>>2]|0))break;f=c[a+28348+(e<<2)>>2]|0;if(c[f+648>>2]|0?(F=c[f+88>>2]|0,O=c[G>>2]|0,((1<>2])+-1&(c[(c[K>>2]|0)+88>>2]|0)-F|0)>(c[O+48>>2]|0)):0)Si(a,F,0)|0;e=e+1|0}Ui(a);Vi(a);h=L+4|0;g=0;i=0;f=0;while(1){if((g|0)==256)break;e=c[a+27180+(g<<2)>>2]|0;if(!e)e=i;else{G=c[e+4>>2]|0;O=G+20|0;e=c[(i>>>0>(c[O>>2]|0)>>>0?L:O)>>2]|0;c[L>>2]=e;f=c[(f>>>0>(c[G+24>>2]|0)>>>0?L:O)+4>>2]|0;c[h>>2]=f}g=g+1|0;i=e}if((d|0)>-1?(c[H>>2]|0)==0:0){e=c[I>>2]|0;if((c[J>>2]|0)>=3?!((i|0)<=(((e|0)!=3?2:1)|0)&(f|0)<2):0)break;if(((i|0)<=((((c[a+29580>>2]|0)==0&1)<<1)+((e|0)!=3?3:2)|0)?(M=c[K>>2]|0,(c[(c[M>>2]|0)+88>>2]|0)==1):0)?(O=M+644|0,c[O>>2]=c[O>>2]|1,(c[(c[b>>2]|0)+140>>2]|0)==0):0){O=a+29576|0;c[O>>2]=c[O>>2]|2}}}else{b=a+4|0;ig(c[b>>2]|0,16,127695,N+8|0);d=-1094995529}while(0);l=N;return (c[(c[b>>2]|0)+580>>2]&8|0?d:0)|0}function Oi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=c[a+12>>2]|0;if((e|0?(f=c[e+4>>2]|0,f|0):0)?(g=f+(d<<2)|0,(c[g>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;e=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[e+344>>2]|0){a=c[a>>2]|0;c[h>>2]=f;c[h+4>>2]=b;c[h+8>>2]=d;ig(a,48,127670,h)}h=e+184|0;AX(h|0)|0;c[g>>2]=b;zX(e+60|0)|0;BX(h|0)|0}l=i;return}function Pi(a){a=a|0;var b=0,d=0,e=0;b=c[a+29556>>2]|0;do if((b|0)!=0?((c[a+29552>>2]|0)+b|0)>=(c[(c[a+28216>>2]|0)+48>>2]|0):0){e=(c[a+26380>>2]|0)==3;if((!e?(c[a+26384>>2]|0)==0:0)?c[(c[a+24312>>2]|0)+640>>2]|0:0){b=0;break}c[a+28748>>2]=1;d=c[(c[a+28348+(b+-1<<2)>>2]|0)+88>>2]|0;b=a+28752|0;c[b>>2]=d;d=d<<1;if(e)b=1;else{c[b>>2]=d;c[a+28760>>2]=1;c[a+28764>>2]=d|1;b=2}}else b=0;while(0);c[a+29540>>2]=b;return}function Qi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+26380|0;a=c[e>>2]|0;c[d>>2]=a;if((c[e>>2]|0)!=3){if(!(b&1))c[d>>2]=a^3;b=b>>1}return b|0}function Ri(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;h=a+29556|0;i=a+4|0;g=0;while(1){if((g|0)>=(c[h>>2]|0)){e=0;break}e=c[a+28348+(g<<2)>>2]|0;f=c[i>>2]|0;if(!(c[f+576>>2]&2048))f=e+88|0;else{o=e+88|0;p=c[o>>2]|0;c[j>>2]=g;c[j+4>>2]=p;c[j+8>>2]=e;ig(f,48,128335,j);f=o}if((c[f>>2]|0)==(b|0)){k=7;break}g=g+1|0}if((k|0)==7)c[d>>2]=g;l=n;return e|0}function Si(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;e=c[a+4>>2]|0;if(c[e+576>>2]&2048|0){i=c[a+29556>>2]|0;c[f>>2]=b;c[f+4>>2]=i;ig(e,48,128309,f)}b=Ri(a,b,g)|0;if(b|0?zi(a,b,d)|0:0)Ti(a,c[g>>2]|0);l=h;return b|0}function Ti(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+28348+(b<<2)|0;c[d>>2]=0;f=a+29556|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;if(e|0)xX(d|0,a+28348+(b+1<<2)|0,e-b<<2|0)|0;return}function Ui(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){ig(b,48,128291,g);d=a+29556|0;b=0;while(1){if(b>>>0>=(c[d>>2]|0)>>>0)break a;i=c[a+28348+(b<<2)>>2]|0;h=c[e>>2]|0;k=c[i+88>>2]|0;j=c[i+84>>2]|0;i=c[c[i>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=k;c[f+8>>2]=j;c[f+12>>2]=i;ig(h,48,128271,f);b=b+1|0}}while(0);l=g;return}function Vi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g+8|0;e=a+4|0;b=c[e>>2]|0;a:do if(c[b+576>>2]&2048|0){ig(b,48,128254,g);b=0;while(1){if((b|0)==16)break a;d=c[a+28476+(b<<2)>>2]|0;if(d|0){h=c[e>>2]|0;j=c[d+88>>2]|0;i=c[d+84>>2]|0;d=c[c[d>>2]>>2]|0;c[f>>2]=b;c[f+4>>2]=j;c[f+8>>2]=i;c[f+12>>2]=d;ig(h,48,128271,f)}b=b+1|0}}while(0);l=g;return}function Wi(a,b,e,f,g,h,i,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;if((l|0)>=(m|0))W(48);z=E+40|0;C=E+32|0;B=E+24|0;A=E+16|0;k=E;y=E+44|0;x=(g|0)!=0;if((e|0)<=-1){c[k>>2]=155428;c[k+4>>2]=155442;c[k+8>>2]=137;ig(0,0,159900,k);Tb()}s=b;t=b+e|0;u=a+4|0;KN(u,a+8|0,(j|0?0:262144)+e|0);a:do if(c[u>>2]|0){c[a+12>>2]=0;v=a+16|0;c[v>>2]=0;w=a+20|0;r=(i|0)==173;n=x?0:e;g=s;b:while(1){e=b+n|0;while(1){i=t-g|0;if(i>>>0<=3){g=0;break a}k=g-s|0;if((k|0)==(n|0)){D=8;break}if((k|0)>(n|0))ig(f,24,148237,A);k=MN(g,e)|0;i=g+(i>>>0>k>>>0?k:i)|0;k=i;g=t-k|0;if(!g)break b;q=k-s|0;p=n-q|0;g=g>>>0>p>>>0?p:g;if((n|0)>(q|0)){q=g;break}else g=i+g|0}if((D|0)==8){D=0;c[y>>2]=0;k=g;g=LN(h,k,i,y,f)|0;k=k+(i>>>0>h>>>0?h:i)|0;if((g|0)<0)break a;else{q=g;n=k-s+g|0}}g=c[w>>2]|0;i=c[v>>2]|0;if((g|0)<=(i|0)){g=g+1|0;i=NN(c[a>>2]|0,g,68)|0;if(!i){g=-12;break a}c[a>>2]=i;e=c[w>>2]|0;yX(i+(e*68|0)|0,0,(g-e|0)*68|0)|0;e=c[a>>2]|0;o=c[v>>2]|0;c[e+(o*68|0)+56>>2]=1024;p=Zh(1024,4)|0;c[e+(o*68|0)+60>>2]=p;if(!p){g=-12;break a}c[w>>2]=g;i=c[v>>2]|0}p=c[a>>2]|0;o=p+(i*68|0)|0;e=k;g=ON(e,q,u,o,j)|0;if((g|0)<0)break a;if(x?(q|0)!=0&(q|0)!=(g|0):0){c[C>>2]=g;c[C+4>>2]=q;ig(f,48,148305,C)}c[v>>2]=(c[v>>2]|0)+1;k=t-k|0;g=e+(k>>>0>g>>>0?g:k)|0;e=g;k=t-e|0;if(k>>>0>3){if((k|0)<4)g=0;else g=uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0;g=(g|0)!=480&1}else g=1;g=PN(o,g)|0;c[p+(i*68|0)+12>>2]=g;g=QN(p+(i*68|0)+24|0,c[p+(i*68|0)+8>>2]|0,g)|0;if((g|0)<0)break a;if(r)g=RN(o,f)|0;else g=SN(o,f)|0;if((g|0)<1){if((g|0)<0){c[z>>2]=c[p+(i*68|0)+44>>2];ig(f,16,148350,z)}}else if((c[p+(i*68|0)+4>>2]|0)>=1){g=e;continue}c[v>>2]=(c[v>>2]|0)+-1;g=e}if((c[v>>2]|0)>0)g=0;else{ig(f,16,148280,B);g=-1094995529}}else g=-12;while(0);l=E;return g|0}function Xi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=o;h=o+4|0;i=a+25656|0;j=a+25640|0;g=a+4|0;a=0;f=0;b=0;a:while(1){if((f|0)>=(c[i>>2]|0))break;d=c[j>>2]|0;e=d+(f*68|0)+44|0;b:do switch(c[e>>2]|0){case 8:case 7:{a=f;break}case 1:case 5:case 2:{d=dj(h,(c[d+(f*68|0)+8>>2]|0)+1|0,(c[d+(f*68|0)+4>>2]|0)+-1|0)|0;if((d|0)<0){ig(c[g>>2]|0,16,148204,k);if(!(c[(c[g>>2]|0)+580>>2]&8))break b;else{n=12;break a}}d=(b|0)!=0;if(!(d&(FN(h)|0)!=0?(b|0)==(c[e>>2]|0):0))a=f;if(!d)b=c[e>>2]|0;break}default:{}}while(0);f=f+1|0}if((n|0)==12)a=d;l=o;return a|0}function Yi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+34832|0;if((l|0)>=(m|0))W(34832);v=x+34824|0;u=x+34816|0;t=x+34808|0;s=x+34800|0;q=x+34784|0;j=x+34776|0;h=x+34768|0;i=x;o=a+25628|0;e=c[o>>2]|0;w=a+25636|0;g=c[w>>2]|0;f=e+(g*34768|0)|0;if(!g)n=(c[a+29560>>2]|0)==0;else n=0;r=n&1;d=e+(g*34768|0)+4|0;y=b+24|0;c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];c[d+16>>2]=c[y+16>>2];d=gm(a,f,b)|0;a:do if((d|0)>=0){if((c[e+(g*34768|0)+21836>>2]|0)>0){c[e+(g*34768|0)+23408>>2]=0;c[e+(g*34768|0)+23404>>2]=0;d=0;break}d=(c[e+(g*34768|0)+21808>>2]|0)==0;if(!d?(c[a+29560>>2]|0)!=0:0)k=11;else{if(c[a+29588>>2]|0){ig(c[a+4>>2]|0,16,144504,h);d=-1094995529;break}if(d){h=a+29560|0;do if(c[h>>2]|0){if(c[w>>2]|0){d=_i(a)|0;if((d|0)<0?c[(c[a+4>>2]|0)+580>>2]&8|0:0)break a;y=c[o>>2]|0;wX(i|0,y|0,34768)|0;wX(y|0,f|0,34768)|0;wX(f|0,i|0,34768)|0;f=c[o>>2]|0}e=a+24312|0;if(!(c[e>>2]|0)){d=-1094995529;break a}g=a+26384|0;d=(c[g>>2]|0)==0;if((c[a+26380>>2]|0)!=3){if(d){d=-1094995529;break a}d=Ii(a,c[o>>2]|0,1)|0;if((d|0)<0)break a;else{d=g;break}}if(!d){d=-1094995529;break a}if((c[a+27028>>2]|0)!=5){d=-1094995529;break a}ig(a,24,144521,j);d=Ii(a,c[o>>2]|0,1)|0;Oi((c[e>>2]|0)+4|0,2147483647,0);Oi((c[e>>2]|0)+4|0,2147483647,1);c[e>>2]=0;if((d|0)<0)break a;else d=g}else d=a+26384|0;while(0);if(!(c[d>>2]|0)){d=a+24312|0;e=c[d>>2]|0;if(e|0?(c[a+25684>>2]|0)==0:0)Oi(e+4|0,2147483647,(c[a+26380>>2]|0)==2&1);c[d>>2]=0;g=f;d=h}else{g=f;d=h}}else k=11}if((k|0)==11){g=f;d=a+29560|0}f=c[d>>2]|0;e=(f|0)==0;do if(e){if((g|0)!=(c[o>>2]|0)){c[q>>2]=144547;c[q+4>>2]=133704;c[q+8>>2]=2090;ig(0,0,159900,q);Tb()}if((c[a+26384>>2]|0)==0?(p=c[(c[a+4>>2]|0)+732>>2]|0,(p|0)>7):0){if(!(c[a+27024>>2]|0)){d=0;break a}if((p|0)>15){if((c[g+840>>2]|0)==3){d=0;break a}if((p|0)>23){if((c[g+840>>2]|0)!=1){d=0;break a}if((p|0)>31)if((c[a+27028>>2]|0)==5)if((p|0)>47){d=0;break a}else break;else if((c[a+29716>>2]|0)<0|(p|0)>47){d=0;break a}else break}}}}while(0);do if(!n){y=c[(c[a+27180+(c[g+27776>>2]<<2)>>2]|0)+4>>2]|0;q=c[a+28212>>2]|0;d=c[q>>2]|0;if((d|0)==(c[y>>2]|0)?(c[q+64>>2]|0)==(c[y+64>>2]|0):0){if((c[a+28216>>2]|0)==(c[(c[a+27052+(d<<2)>>2]|0)+4>>2]|0))break;ig(c[a+4>>2]|0,16,144594,t);d=-1094995529;break a}ig(c[a+4>>2]|0,16,144566,s);d=-1094995529;break a}while(0);do if(e){d=hm(a,g,b,r)|0;if((d|0)<0)break a}else{d=c[a+26380>>2]|0;e=c[g+21824>>2]|0;if((d|0)==(e|0)?(c[a+25684>>2]|0)==((c[b+64>>2]|0)==0|0):0){if(c[a+24312>>2]|0)break;d=c[a+4>>2]|0;c[v>>2]=f+1;ig(d,16,144696,v);d=-1094995529;break a}y=c[a+4>>2]|0;c[u>>2]=d;c[u+4>>2]=e;ig(y,16,144634,u);d=-1094995529;break a}while(0);d=im(a,g,b)|0;if((d|0)>=0){c[w>>2]=(c[w>>2]|0)+1;d=0}}while(0);l=x;return d|0}function Zi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;f=c[(c[a+28>>2]|0)+20>>2]|0;if(c[a+696>>2]&1|0){e=a+592|0;b=c[e>>2]|0;do if(b|0){d=f+336|0;if(!(c[d>>2]|0)){AX((c[f>>2]|0)+36|0)|0;c[d>>2]=1;b=c[e>>2]|0;if(!b)break}if(!(c[b+60>>2]&1)){c[f+340>>2]=1;fm(c[f>>2]|0)}}while(0);b=f+184|0;AX(b|0)|0;d=f+300|0;if((c[d>>2]|0)==4)ig(a,24,144463,g);c[d>>2]=4;zX(f+60|0)|0;BX(b|0)|0}l=h;return}function _i(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=w+16|0;d=w;i=c[a+4>>2]|0;v=a+25636|0;t=c[v>>2]|0;u=a+25628|0;j=c[u>>2]|0;b=j+21812|0;c[b>>2]=2147483647;if((t|0)<1|(c[i+592>>2]|0)!=0)b=0;else{k=t+-1|0;s=a+27008|0;h=c[s>>2]|0;if((c[j+(k*34768|0)+21792>>2]|0)>=(h|0)){c[d>>2]=133635;c[d+4>>2]=133704;c[d+8>>2]=2746;ig(0,0,159900,d);Tb()}a:do if((t|0)!=1){if((t|0)<=0){c[e>>2]=133728;c[e+4>>2]=133704;c[e+8>>2]=2758;ig(0,0,159900,e);Tb()}r=a+27012|0;b=0;while(1){if((b|0)==(t|0))break;f=c[r>>2]|0;e=N(h,f)|0;c[j+(b*34768|0)+596>>2]=0;g=N(f,c[j+(b*34768|0)+21792>>2]|0)|0;g=g+(c[j+(b*34768|0)+21788>>2]|0)|0;d=0;while(1){if((d|0)==(t|0))break;q=N(f,c[j+(d*34768|0)+21792>>2]|0)|0;q=q+(c[j+(d*34768|0)+21788>>2]|0)|0;q=(b|0)==(d|0)|(q|0)<(g|0)?e:(e|0)>(q|0)?q:e;d=d+1|0;e=q}c[j+(b*34768|0)+21812>>2]=e;b=b+1|0}Od[c[i+704>>2]&7](i,8,j,0,t,34768)|0;e=c[u>>2]|0;c[a+27004>>2]=c[e+(k*34768|0)+21792>>2];d=e+596|0;b=1;while(1){if((b|0)==(t|0))break;c[d>>2]=(c[d>>2]|0)+(c[e+(b*34768|0)+596>>2]|0);b=b+1|0}b=a+25708|0;if(!(c[b>>2]|0))b=0;else{c[b>>2]=0;g=a+26376|0;h=a+26380|0;f=0;while(1){if((f|0)==(t|0)){b=0;break a}q=c[u>>2]|0;i=q+(f*34768|0)|0;j=q+(f*34768|0)+21792|0;o=c[j>>2]|0;n=c[s>>2]|0;k=(o|0)<(n|0)?o+1|0:n;n=c[((o|0)>=(n|0)?r:q+(f*34768|0)+21788|0)>>2]|0;o=q+(f*34768|0)+21804|0;p=k+-1|0;q=q+(f*34768|0)+21800|0;e=c[o>>2]|0;while(1){if((e|0)>=(k|0))break;c[j>>2]=e;if((e|0)>(c[o>>2]|0))b=0;else b=c[q>>2]|0;if((e|0)==(p|0))d=n;else d=c[r>>2]|0;vk(a,i,b,d);if((c[g>>2]|0)==0?(c[h>>2]|0)==3:0)b=1;else b=2;e=b+e|0}f=f+1|0}}}else{c[b>>2]=N(c[a+27012>>2]|0,h)|0;c[a+25708>>2]=0;b=uk(i,j)|0;c[a+27004>>2]=c[(c[u>>2]|0)+21792>>2]}while(0);c[v>>2]=0}l=w;return b|0}function $i(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;Hj(1,a,b,f);l=e;return}function aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;if((l|0)>=(m|0))W(32);u=w+16|0;t=w;n=a+36|0;o=a+40|0;p=a+44|0;q=a+176|0;r=a+208|0;s=a+224|0;k=a+240|0;i=0;a:while(1){if((Xj(b)|0)<=16){f=i;break}if(!(Yj(b,16)|0)){f=i;break}else h=0;while(1){if((Xj(b)|0)<8){f=-1094995529;break a}h=(Yj(b,8)|0)+h|0;if((Zj(b,8)|0)!=255){g=0;break}}do{if((Xj(b)|0)<8){f=-1094995529;break a}g=(Yj(b,8)|0)+g|0}while((Zj(b,8)|0)==255);f=Xj(b)|0;if(g>>>0>((f|0)/8|0)>>>0){v=9;break}j=(_j(b)|0)+(g<<3)|0;do switch(h|0){case 1:{f=$j(a,b,d,e)|0;v=21;break}case 4:{f=ak(a,b,g)|0;v=21;break}case 5:{f=bk(n,b,g)|0;v=21;break}case 6:{ck(o,b);f=i;break}case 0:{f=dk(p,b,d,e)|0;v=21;break}case 45:{ek(q,b);f=i;break}case 47:{fk(r,b);f=i;break}case 56:{gk(s,b);f=i;break}case 147:{hk(k,b);f=i;break}default:{c[u>>2]=h;ig(e,48,133453,u);f=i}}while(0);if((v|0)==21){v=0;g=(f|0)<0;if(g&(f|0)!=-1397768184)break;else f=g?f:i}ik(b,j-(_j(b)|0)|0);jk(b);i=f}if((v|0)==9){c[t>>2]=h;c[t+4>>2]=g<<3;c[t+8>>2]=f;ig(e,16,133416,t);f=-1094995529}l=w;return f|0}function bj(b,f){b=b|0;f=f|0;var g=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;p=l;l=l+96|0;if((l|0)>=(m|0))W(96);j=p+80|0;i=p+72|0;g=p+40|0;o=p+32|0;n=p+24|0;k=p+16|0;q=p+8|0;ig(f,48,133161,p);c[q>>2]=d[b>>0];ig(f,48,133194,q);switch(a[b>>0]|0){case 0:{q=b+1|0;c[k>>2]=d[q>>0];ig(f,48,133221,k);switch(a[q>>0]|0){case 2:{c[n>>2]=e[b+2>>1];ig(f,48,133255,n);break}case 3:{c[o>>2]=e[b+4>>1];ig(f,48,133289,o);break}default:{}}t=+(d[b+7>>0]|0)/255.0;s=+(d[b+8>>0]|0)/255.0;r=+(d[b+9>>0]|0)/255.0;h[g>>3]=+(d[b+6>>0]|0)/255.0;h[g+8>>3]=t;h[g+16>>3]=s;h[g+24>>3]=r;ig(f,48,133324,g);break}case 1:{q=b+10|0;c[i>>2]=d[q>>0];ig(f,48,133369,i);if(!(a[q>>0]|0)){h[j>>3]=+(e[b+12>>1]|0)/100.0;ig(f,48,133392,j)}break}default:{}}l=p;return}function cj(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;R=l;l=l+240|0;if((l|0)>=(m|0))W(240);L=R+152|0;I=R+144|0;H=R+120|0;F=R+104|0;D=R+96|0;A=R+88|0;z=R+80|0;w=R+72|0;y=R+64|0;x=R+56|0;v=R+48|0;t=R+40|0;u=R+32|0;s=R+24|0;r=R+16|0;q=R+8|0;j=R;M=R+228|0;O=Jh(5300)|0;c[M>>2]=O;P=O;a:do if(!O)g=-12;else{Q=O+4|0;K=c[Q>>2]|0;h=c[a>>2]|0;g=(c[a+4>>2]|0)-h|0;i=K+5296|0;c[i>>2]=g;if(g>>>0>4096){ig(d,48,132302,j);c[i>>2]=4096;h=c[a>>2]|0;g=4096}wX(K+1200|0,h|0,g|0)|0;p=wj(a,8)|0;g=vj(a)|0;h=vj(a)|0;i=vj(a)|0;j=vj(a)|0;k=vj(a)|0;n=vj(a)|0;Jj(a);o=wj(a,8)|0;J=tj(a)|0;b:do if(J>>>0>31){c[q>>2]=J;ig(d,16,131389,q)}else{c[K>>2]=J;c[K+1164>>2]=24;G=K+4|0;c[G>>2]=p;c[K+1196>>2]=h<<1|g|i<<2|j<<3|k<<4|n<<5;E=K+8|0;c[E>>2]=o;c[K+112>>2]=-1;i=K+672|0;j=K+768|0;k=K+668|0;yX(i|0,16,480)|0;c[k>>2]=0;c[K+128>>2]=2;switch(p|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{g=tj(a)|0;c[K+12>>2]=g;if(g>>>0>3){c[r>>2]=g;$i(d,132335,r);break b}if((g|0)==3?(B=vj(a)|0,c[K+1192>>2]=B,B|0):0){ig(d,16,132356,s);break b}B=K+1184|0;c[B>>2]=(sj(a)|0)+8;g=sj(a)|0;h=g+8|0;c[K+1188>>2]=h;if((h|0)!=(c[B>>2]|0)){$i(d,132397,u);break b}if(g>>>0>6){c[t>>2]=h;c[t+4>>2]=h;ig(d,16,132433,t);break b}c[K+16>>2]=vj(a)|0;g=Aj(a,K,0,1,i,j)|0;if((g|0)<0)break b;c[k>>2]=c[k>>2]|g;break}default:{c[K+12>>2]=1;c[K+1184>>2]=8;c[K+1188>>2]=8}}g=sj(a)|0;if(g>>>0>12){c[v>>2]=g;ig(d,16,132467,v);break}c[K+20>>2]=g+4;g=tj(a)|0;v=K+24|0;c[v>>2]=g;c:do switch(g|0){case 0:{g=sj(a)|0;if(g>>>0>12){c[x>>2]=g;ig(d,16,132518,x);break b}else{c[K+28>>2]=g+4;break c}}case 1:{c[K+32>>2]=vj(a)|0;c[K+36>>2]=xj(a)|0;c[K+40>>2]=xj(a)|0;g=sj(a)|0;i=K+44|0;c[i>>2]=g;if(g>>>0>255){c[y>>2]=g;ig(d,16,132557,y);break b}else h=0;while(1){if((h|0)>=(g|0))break c;b[K+148+(h<<1)>>1]=xj(a)|0;h=h+1|0;g=c[i>>2]|0}}case 2:break;default:{c[w>>2]=g;ig(d,16,132587,w);break b}}while(0);g=tj(a)|0;t=K+48|0;c[t>>2]=g;y=(c[d+20>>2]|0)==844516691;B=(g|0)>2?g:2;c[t>>2]=y?B:g;g=y?B:g;if((g|0)>16){c[z>>2]=g;ig(d,16,132608,z);break}c[K+52>>2]=vj(a)|0;s=K+56|0;c[s>>2]=(sj(a)|0)+1;u=K+60|0;c[u>>2]=(sj(a)|0)+1;g=vj(a)|0;B=K+64|0;c[B>>2]=g;h=c[u>>2]|0;if(h>>>0>1073741822){ig(d,16,132638,A);break}c[u>>2]=N(h,2-g|0)|0;if(!g)g=vj(a)|0;else g=0;r=K+68|0;c[r>>2]=g;g=c[s>>2]|0;if((g>>>0<=134217726?(C=c[u>>2]|0,C>>>0<=134217726):0)?(ji(g<<4,C<<4,0,d)|0)==0:0){q=K+72|0;c[q>>2]=vj(a)|0;D=vj(a)|0;g=K+76|0;c[g>>2]=D;d:do if(!D){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0}else{i=sj(a)|0;j=sj(a)|0;k=sj(a)|0;n=sj(a)|0;o=c[s>>2]<<4;p=c[u>>2]<<4;if(c[d+64>>2]&65536|0){c[F>>2]=i;c[F+4>>2]=j;c[F+8>>2]=k;c[F+12>>2]=n;ig(d,48,132681,F);H=K+80|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;break}h=c[K+12>>2]|0;g=(h+-1|0)>>>0<2&1;h=2-(c[B>>2]|0)<<((h|0)==1&1);F=536870911>>>g;do if((!(i>>>0>F>>>0|j>>>0>F>>>0)?(F=536870911/(h>>>0)|0,!(k>>>0>F>>>0|n>>>0>F>>>0)):0)?j+i<>>0>>0:0){if((N(h,n+k|0)|0)>>>0>=p>>>0)break;c[K+80>>2]=i<>2]=j<>2]=N(h,k)|0;c[K+92>>2]=N(h,n)|0;break d}while(0);c[H>>2]=i;c[H+4>>2]=j;c[H+8>>2]=k;c[H+12>>2]=n;c[H+16>>2]=o;c[H+20>>2]=p;ig(d,16,132747,H);break b}while(0);H=vj(a)|0;i=K+96|0;c[i>>2]=H;if(H|0?(Kj(a,d,K)|0)<0:0)break;g=Lj(a)|0;if((g|0)<0?(f=(f|0)!=0,c[I>>2]=c[i>>2]|0?132788:148531,c[I+4>>2]=0-g,ig(d,f?24:16,132792,I),!f):0)break;A=(c[K+660>>2]|0)==0;e:do if(A){if((c[t>>2]|0)==0?(c[d+568>>2]|0)<=0:0)break;h=K+664|0;c[h>>2]=15;g=0;while(1){if(g>>>0>=16)break e;if((c[102228+(g<<3)>>2]|0)==(c[E>>2]|0))break;g=g+1|0}I=(c[102228+(g<<3)+4>>2]|0)/(N(c[u>>2]|0,c[s>>2]|0)|0)|0;c[h>>2]=(I|0)<15?I:15}while(0);g=K+104|0;if(!(c[g>>2]|0))c[g>>2]=1;if(c[d+576>>2]&1|0){z=c[G>>2]|0;y=c[E>>2]|0;x=c[v>>2]|0;w=c[t>>2]|0;v=c[s>>2]|0;u=c[u>>2]|0;if(!(c[B>>2]|0))t=c[r>>2]|0?132816:132823;else t=132831;o=c[q>>2]|0?132835:262784;p=c[K+80>>2]|0;q=c[K+84>>2]|0;r=c[K+88>>2]|0;s=c[K+92>>2]|0;h=c[i>>2]|0?132788:262784;i=132839+((c[K+12>>2]|0)*5|0)|0;if(!(c[K+132>>2]|0)){k=0;n=0}else{k=c[K+136>>2]|0;n=c[K+140>>2]|0}j=c[K+1184>>2]|0;if(A)g=-1;else g=c[K+664>>2]|0;c[L>>2]=J;c[L+4>>2]=z;c[L+8>>2]=y;c[L+12>>2]=x;c[L+16>>2]=w;c[L+20>>2]=v;c[L+24>>2]=u;c[L+28>>2]=t;c[L+32>>2]=o;c[L+36>>2]=p;c[L+40>>2]=q;c[L+44>>2]=r;c[L+48>>2]=s;c[L+52>>2]=h;c[L+56>>2]=i;c[L+60>>2]=k;c[L+64>>2]=n;c[L+68>>2]=j;c[L+72>>2]=g;ig(d,48,132859,L)}g=e+(J<<2)|0;h=c[g>>2]|0;do if(h|0){if(YT(c[h+4>>2]|0,c[Q>>2]|0,c[O+8>>2]|0)|0)break;Pg(M);g=0;break a}while(0);Mj(e,J);c[g>>2]=P;g=0;break a}ig(d,16,132655,D)}while(0);Pg(M);g=-1094995529}while(0);l=R;return g|0}function dj(a,b,c){a=a|0;b=b|0;c=c|0;return Ij(a,b,c>>>0>268435455?-8:c<<3)|0}function ej(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+128|0;if((l|0)>=(m|0))W(128);E=F+56|0;q=F+48|0;p=F+40|0;n=F+32|0;o=F+24|0;k=F+16|0;i=F+8|0;f=F;z=F+116|0;D=sj(a)|0;a:do if(D>>>0<=255){f=Jh(173836)|0;c[z>>2]=f;C=f;if(!f)f=-12;else{B=c[f+4>>2]|0;g=c[a>>2]|0;f=(c[a+4>>2]|0)-g|0;h=B+4824|0;c[h>>2]=f;if(f>>>0>4096){c[i>>2]=f;c[i+4>>2]=4096;ig(b,48,131344,i);c[h>>2]=4096;g=c[a>>2]|0;f=4096}wX(B+728|0,g|0,f|0)|0;f=tj(a)|0;c[B>>2]=f;b:do if(f>>>0<=31?(j=c[d+(f<<2)>>2]|0,(j|0)!=0):0){x=c[j+4>>2]|0;y=x+1184|0;f=c[y>>2]|0;if((f|0)>14){c[o>>2]=f;ig(b,16,131413,o);f=-1094995529;break}switch(f|0){case 13:case 11:{c[n>>2]=f;uj(b,131440,n);f=-1163346256;break b}default:{}}v=B+4|0;c[v>>2]=vj(a)|0;c[B+8>>2]=vj(a)|0;u=sj(a)|0;w=B+12|0;c[w>>2]=u+1;if((u|0)>0){c[B+16>>2]=sj(a)|0;ig(b,16,131472,p)}t=B+20|0;c[t>>2]=(sj(a)|0)+1;s=sj(a)|0;u=B+24|0;c[u>>2]=s+1;if(((c[t>>2]|0)+-1|s)>>>0>31){ig(b,16,131491,q);f=-1094995529;break}s=(c[y>>2]|0)*6|0;k=B+28|0;c[k>>2]=vj(a)|0;c[B+32>>2]=wj(a,2)|0;s=s+-22|0;n=B+36|0;c[n>>2]=s+(xj(a)|0);o=B+40|0;c[o>>2]=s+(xj(a)|0);s=xj(a)|0;j=B+44|0;c[j>>2]=s;if((s+12|0)>>>0>24)f=-1094995529;else{p=B+52|0;c[p>>2]=vj(a)|0;q=B+56|0;c[q>>2]=vj(a)|0;r=B+60|0;c[r>>2]=vj(a)|0;s=B+64|0;c[s>>2]=0;i=B+68|0;f=i;g=x+672|0;h=f+96|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));f=B+164|0;wX(f|0,x+768|0,384)|0;if((yj(a)|0)<(e|0)?(zj(x,b)|0)!=0:0){c[s>>2]=vj(a)|0;f=Aj(a,x,B,0,i,f)|0;if((f|0)<0)break;a=xj(a)|0;h=B+48|0;c[h>>2]=a;if((a+12|0)>>>0>24){f=-1094995529;break}f=c[j>>2]|0}else{f=c[j>>2]|0;h=B+48|0;c[h>>2]=f}Bj(B,0,f,c[y>>2]|0);Bj(B,1,c[h>>2]|0,c[y>>2]|0);Cj(B,x);g=c[j>>2]|0;f=c[h>>2]|0;if((g|0)!=(f|0))c[B+724>>2]=1;if(c[b+576>>2]&1|0){h=c[B>>2]|0;i=c[v>>2]|0?131517:131523;j=c[w>>2]|0;v=c[t>>2]|0;w=c[u>>2]|0;x=c[k>>2]|0?131529:262784;y=c[n>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0?131538:262784;z=c[q>>2]|0?131543:262784;A=c[r>>2]|0?131550:262784;B=c[s>>2]|0?131555:262784;c[E>>2]=D;c[E+4>>2]=h;c[E+8>>2]=i;c[E+12>>2]=j;c[E+16>>2]=v;c[E+20>>2]=w;c[E+24>>2]=x;c[E+28>>2]=y;c[E+32>>2]=e;c[E+36>>2]=g;c[E+40>>2]=f;c[E+44>>2]=a;c[E+48>>2]=z;c[E+52>>2]=A;c[E+56>>2]=B;ig(b,48,131562,E)}Dj(d,D);c[d+128+(D<<2)>>2]=C;f=0;break a}}else A=8;while(0);if((A|0)==8){c[k>>2]=f;ig(b,16,131389,k);f=-1094995529}Pg(z)}}else{c[f>>2]=D;ig(b,16,151037,f);f=-1094995529}while(0);l=F;return f|0}function fj(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;if(b|0){c[a>>2]=c[b>>2];c[a+4>>2]=b+4;d=0;while(1){if((d|0)==2)break;c[a+8+(d<<2)>>2]=c[b+36+(d<<2)>>2];c[a+16+(d<<2)>>2]=c[b+68+(d<<2)>>2];d=d+1|0}c[a+24>>2]=c[b+48>>2];c[a+28>>2]=c[b+636>>2]}return}function gj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;$=l;l=l+80|0;if((l|0)>=(m|0))W(80);D=$+64|0;v=$+48|0;u=$+40|0;t=$+32|0;s=$+24|0;r=$+16|0;o=$+8|0;n=$;S=f+568|0;p=c[S>>2]|0;V=f+560|0;q=c[V>>2]|0;a:do if((((c[(c[f>>2]|0)+572>>2]|0?(k=f+572|0,c[k>>2]|0):0)?(c[(c[f>>2]|0)+680>>2]|0)==0:0)?hj(f)|0:0)?(U=f+556|0,j=c[U>>2]|0,h=c[f>>2]|0,(c[k>>2]|0)!=(N(j*3|0,(c[h+272>>2]|0)+(c[h+268>>2]|0)|0)|0)):0){g=f+672|0;E=c[g>>2]|0;X=E+32|0;_=f+580|0;Y=f+564|0;i=0;while(1){if((i|0)>=(j|0))break;if((a[(c[_>>2]|0)+((N((c[V>>2]|0)+-1|0,c[Y>>2]|0)|0)+i)>>0]|0)!=127)break;i=i+1|0}if(((i|0)==(j|0)?(c[h+16>>2]|0)==2:0)?((c[h+96>>2]|0)+15&16|0)!=0:0){h=c[f>>2]|0;if((c[k>>2]|0)==(N((c[U>>2]|0)*3|0,(c[h+268>>2]|0)+1+(c[h+272>>2]|0)|0)|0)){ig(h,48,128631,n);break}}C=f+704|0;i=c[C>>2]|0;do if(i|0){Q=c[g>>2]|0;if(((c[i+68>>2]|0)==(c[Q+68>>2]|0)?(c[i+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[i+80>>2]|0)==(c[Q+80>>2]|0):0)break;ig(h,24,128660,o);c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;c[C+24>>2]=0;c[C+28>>2]=0}while(0);B=f+736|0;h=c[B>>2]|0;do if(h|0){Q=c[g>>2]|0;if(((c[h+68>>2]|0)==(c[Q+68>>2]|0)?(c[h+72>>2]|0)==(c[Q+72>>2]|0):0)?(c[h+80>>2]|0)==(c[Q+80>>2]|0):0)break;ig(c[f>>2]|0,24,128710,r);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;c[B+24>>2]=0;c[B+28>>2]=0}while(0);if(!((c[f+680>>2]|0)!=0?(c[f+688>>2]|0)!=0:0))T=27;b:do if((T|0)==27){ig(c[f>>2]|0,16,128756,s);i=(N(p<<3,q)|0)+16|0;h=0;while(1){if((h|0)>=2)break b;k=f+768+(h<<2)|0;c[k>>2]=Jh(N(c[Y>>2]<<2,c[V>>2]|0)|0)|0;j=Jh(i)|0;c[f+776+(h<<2)>>2]=j;k=c[k>>2]|0;if((j|0)==0|(k|0)==0){g=0;break}c[f+688+(h<<2)>>2]=c[k+4>>2];c[f+680+(h<<2)>>2]=(c[j+4>>2]|0)+16;h=h+1|0}while(1){if((g|0)==2)break a;Pg(f+768+(g<<2)|0);Pg(f+776+(g<<2)|0);c[f+688+(g<<2)>>2]=0;c[f+680+(g<<2)>>2]=0;g=g+1|0}}while(0);c:do if(c[(c[f>>2]|0)+576>>2]&1024|0){h=0;while(1){if((h|0)<(c[V>>2]|0))i=0;else break c;while(1){if((i|0)>=(c[U>>2]|0))break;P=d[(c[_>>2]|0)+((N(c[Y>>2]|0,h)|0)+i)>>0]|0;Q=c[f>>2]|0;c[t>>2]=P;ig(Q,48,128783,t);i=i+1|0}ig(c[f>>2]|0,48,128788,u);h=h+1|0}}while(0);P=f+552|0;Q=f+548|0;n=1;while(1){if((n|0)==4)break;p=9<>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=d[j>>0]|0;h=(p&k|0)==0?i:1;if(!h)a[j>>0]=q|k;i=(k&1|0)==0?h:0;h=o}n=n+1|0}O=f+792|0;d:do if(c[O>>2]|0){i=0;h=c[P>>2]|0;while(1){o=h+-1|0;if((h|0)<=0)break d;j=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(o<<2)>>2]|0)|0;k=a[j>>0]|0;n=k&255;h=(n&98|0)==0?((n&16|0)==0?i:0):1;if(!h)a[j>>0]=k|2;i=(n&1|0)==0?h:0;h=o}}while(0);e:do if(c[(c[f>>2]|0)+580>>2]&8|0){h=1;n=(c[P>>2]|0)+-2|0;while(1){if((n|0)<((c[U>>2]|0)+100|0))break e;M=c[Q>>2]|0;L=c[_>>2]|0;i=L+(c[M+(n<<2)>>2]|0)|0;j=a[i>>0]|0;k=j&255;h=(k&1|0)==0?h:1;if(j<<24>>24!=127?(a[L+(c[M+(n+1<<2)>>2]|0)>>0]|0)==127:0){if((k&112|0)!=0|(h|0)==0)T=60}else if(!h)T=60;if((T|0)==60){T=0;a[i>>0]=j|14;h=0}n=n+-1|0}}while(0);M=f+600|0;h=9999999;n=1;while(1){if((n|0)==4){h=0;n=0;break}o=1<>2]|0;while(1){k=i+-1|0;if((i|0)<=0)break;L=c[(c[Q>>2]|0)+(k<<2)>>2]|0;i=(c[_>>2]|0)+L|0;j=d[i>>0]|0;K=c[M>>2]|0;if(!((K|0)!=0?(a[K+L>>0]|0)!=0:0))h=h+1|0;h=(o&j|0)==0?h:0;do if(!(c[O>>2]|0)){if((h|0)>=50)break;a[i>>0]=o|j}else{if((h|0)>=(c[p>>2]|0))break;a[i>>0]=o|j}while(0);h=(j&1|0)==0?h:9999999;i=k}n=n+1|0}while(1){j=c[P>>2]|0;if((n|0)>=(j|0))break;i=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)|0;j=d[i>>0]|0;k=j&14;if(!(j&1)){a[i>>0]=h|j;h=k|h}else h=k;n=n+1|0}f:do if(!(c[O>>2]|0)){i=0;h=j;while(1){if((i|0)>=(h|0))break f;h=(c[_>>2]|0)+(c[(c[Q>>2]|0)+(i<<2)>>2]|0)|0;L=d[h>>0]|0;a[h>>0]=(L&14|0)==0?L:L|14;i=i+1|0;h=c[P>>2]|0}}else h=j;while(0);i=0;j=0;k=0;n=0;while(1){if((n|0)>=(h|0))break;L=d[(c[_>>2]|0)+(c[(c[Q>>2]|0)+(n<<2)>>2]|0)>>0]|0;i=(L>>>2&1)+i|0;j=(L>>>3&1)+j|0;k=(L>>>1&1)+k|0;n=n+1|0}L=c[f>>2]|0;K=(ij(c[(c[g>>2]|0)+88>>2]|0)|0)<<24>>24;c[v>>2]=i;c[v+4>>2]=k;c[v+8>>2]=j;c[v+12>>2]=K;ig(L,32,128790,v);j=(jj(f)|0)!=0;j=j?1:12296;L=f+696|0;i=0;while(1){h=c[P>>2]|0;if((i|0)>=(h|0))break;h=c[(c[Q>>2]|0)+(i<<2)>>2]|0;if((a[(c[_>>2]|0)+h>>0]&12)==12)c[(c[L>>2]|0)+(h<<2)>>2]=j;i=i+1|0}K=c[C>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))T=92;g:do if((T|0)==92){K=c[B>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)break;else j=0;while(1){if((j|0)>=(h|0))break g;i=(c[L>>2]|0)+(c[(c[Q>>2]|0)+(j<<2)>>2]<<2)|0;if(!(c[i>>2]&7)){c[i>>2]=1;h=c[P>>2]|0}j=j+1|0}}while(0);w=f+608|0;x=f+612|0;y=f+800|0;z=f+804|0;A=f+608|0;r=0;while(1){h=c[V>>2]|0;if((r|0)>=(h|0))break;q=r<<1;p=0;while(1){if((p|0)>=(c[U>>2]|0))break;i=(N(c[Y>>2]|0,r)|0)+p|0;j=c[(c[L>>2]|0)+(i<<2)>>2]|0;h=c[C>>2]|0;if(!h)h=0;else h=(c[h>>2]|0)!=0;k=(h^1)&1;o=h?1:2;K=d[(c[_>>2]|0)+i>>0]|0;if(!((K&2|0)==0|(K&8|j&7|0)!=0)){h:do if(!(j&64)){K=f+680+(k<<2)|0;h=(N(c[S>>2]|0,q)|0)+(p<<1)|0;c[w>>2]=b[(c[K>>2]|0)+(h<<2)>>1];c[x>>2]=b[(c[K>>2]|0)+(h<<2)+2>>1];h=0}else{j=c[S>>2]|0;n=(N(j,r)|0)+p<<1;i=f+680+(k<<2)|0;h=0;while(1){if((h|0)==4){h=1;break h}J=h&1|n;I=h>>1;c[f+608+(h<<3)>>2]=b[(c[i>>2]|0)+((N(j,I)|0)+J<<2)>>1];K=c[S>>2]|0;c[f+608+(h<<3)+4>>2]=b[(c[i>>2]|0)+((N(K,I)|0)+J<<2)+2>>1];h=h+1|0;j=K}}while(0);Xd[c[y>>2]&1](c[z>>2]|0,0,o,h,A,p,r,0,0)}p=p+1|0}r=r+1|0}i:do if((c[(c[g>>2]|0)+88>>2]|0)==3){q=f+784|0;r=f+640|0;s=f+644|0;t=f+786|0;u=f+740|0;v=f+744|0;p=0;j:while(1){if((p|0)>=(h|0)){R=h;break i}o=p<<1;n=0;while(1){if((n|0)>=(c[U>>2]|0))break;k=(N(o,c[S>>2]|0)|0)+(n<<1)|0;K=(N(c[Y>>2]|0,p)|0)+n|0;if(!((a[(c[_>>2]|0)+K>>0]&10)!=10?1:(c[(c[L>>2]|0)+(K<<2)>>2]&7|0)!=0)){K=c[C>>2]|0;if((K|0)!=0?(c[K>>2]|0)!=0:0)h=3;else h=2;K=c[B>>2]|0;if(!((K|0)!=0?(c[K>>2]|0)!=0:0))h=h&1;i=b[q>>1]|0;if(!(i<<16>>16)){c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;i=0}else{i=i&65535;j=e[t>>1]|0;if((c[(c[f>>2]|0)+16>>2]|0)==27)break j;kj(c[u>>2]|0,p,0);K=c[v>>2]|0;I=b[K+(k<<2)>>1]|0;c[w>>2]=(N(I,j)|0)/(i|0)|0;K=b[K+(k<<2)+2>>1]|0;c[x>>2]=(N(K,j)|0)/(i|0)|0;J=j-i|0;c[r>>2]=(N(J,I)|0)/(i|0)|0;i=(N(J,K)|0)/(i|0)|0}c[s>>2]=i;Xd[c[y>>2]&1](c[z>>2]|0,0,h,0,A,n,p,0,0)}n=n+1|0}p=p+1|0;h=c[V>>2]|0}c[D>>2]=128841;c[D+4>>2]=128880;c[D+8>>2]=1212;ig(0,0,159900,D);Tb()}else{lj(f);R=c[V>>2]|0}while(0);K=E+36|0;J=E+40|0;B=f+588|0;C=f+592|0;D=f+596|0;z=0;while(1){if((z|0)>=(R|0))break;E=z<<4;F=z<<3;A=0;while(1){if((A|0)>=(c[U>>2]|0))break;G=(N(c[Y>>2]|0,z)|0)+A|0;if(!((c[(c[L>>2]|0)+(G<<2)>>2]&7|0)!=0?(c[O>>2]|0)!=0:0))T=140;do if((T|0)==140){T=0;y=c[g>>2]|0;n=c[X>>2]|0;o=(c[y>>2]|0)+(A<<4)+(N(E,n)|0)|0;p=c[y+4>>2]|0;w=A<<3;H=c[K>>2]|0;q=N(H,F)|0;y=c[y+8>>2]|0;I=c[J>>2]|0;x=N(I,F)|0;r=c[S>>2]|0;s=(c[B>>2]|0)+((N(r,z)|0)+A<<1<<1)|0;j=0;while(1){if((j|0)==4)break;t=j<<3&8;u=j>>>1<<3;k=0;h=0;while(1){if((k|0)==8)break;v=N(n,k+u|0)|0;i=0;while(1){if((i|0)==8)break;aa=h+(d[o+(i+t+v)>>0]|0)|0;i=i+1|0;h=aa}k=k+1|0}b[s+((N(r,j>>1)|0)+(j&1)<<1)>>1]=(h+4|0)>>>3;j=j+1|0}q=p+w+q|0;p=y+w+x|0;if(!y)break;else{h=0;i=0;k=0}while(1){if((k|0)==8)break;n=N(H,k)|0;o=N(I,k)|0;j=0;while(1){if((j|0)==8)break;aa=i+(d[q+(n+j)>>0]|0)|0;y=h+(d[p+(o+j)>>0]|0)|0;j=j+1|0;h=y;i=aa}k=k+1|0}b[(c[C>>2]|0)+(G<<1)>>1]=(i+4|0)>>>3;b[(c[D>>2]|0)+(G<<1)>>1]=(h+4|0)>>>3}while(0);A=A+1|0}z=z+1|0}mj(f,c[B>>2]|0,c[U>>2]<<1,R<<1,c[S>>2]|0,1);mj(f,c[C>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);mj(f,c[D>>2]|0,c[U>>2]|0,c[V>>2]|0,c[Y>>2]|0,0);nj(c[B>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[S>>2]|0);n=0;while(1){h=c[V>>2]|0;if((n|0)>=(h|0))break;i=n<<4;j=n<<3;h=0;while(1){if((h|0)>=(c[U>>2]|0))break;k=(N(c[Y>>2]|0,n)|0)+h|0;do if(!(c[(c[L>>2]|0)+(k<<2)>>2]&120)){if(!(a[(c[_>>2]|0)+k>>0]&2))break;T=c[g>>2]|0;R=(c[T>>2]|0)+(h<<4)+(N(i,c[X>>2]|0)|0)|0;aa=h<<3;S=(c[T+4>>2]|0)+aa+(N(c[K>>2]|0,j)|0)|0;T=c[T+8>>2]|0;aa=T+aa+(N(c[J>>2]|0,j)|0)|0;T=(T|0)==0;oj(f,R,T?0:S,T?0:aa,h,n)}while(0);h=h+1|0}n=n+1|0}if(c[(c[f>>2]|0)+572>>2]&2|0?(pj(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,h<<1,c[X>>2]|0,1),qj(f,c[c[g>>2]>>2]|0,c[U>>2]<<1,c[V>>2]<<1,c[X>>2]|0,1),Z=c[g>>2]|0,c[Z+8>>2]|0):0){pj(f,c[Z+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);pj(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0);qj(f,c[(c[g>>2]|0)+4>>2]|0,c[U>>2]|0,c[V>>2]|0,c[K>>2]|0,0);qj(f,c[(c[g>>2]|0)+8>>2]|0,c[U>>2]|0,c[V>>2]|0,c[J>>2]|0,0)}j=f+604|0;i=0;while(1){if((i|0)>=(c[P>>2]|0)){h=0;break}k=c[(c[Q>>2]|0)+(i<<2)>>2]|0;h=c[M>>2]|0;do if(h|0){if((a[(c[_>>2]|0)+k>>0]&14)==0?1:(c[(c[g>>2]|0)+88>>2]|0)==3)break;a[h+k>>0]=0}while(0);h=c[j>>2]|0;if(h|0)a[h+k>>0]=1;i=i+1|0}while(1){if((h|0)==2)break;Pg(f+768+(h<<2)|0);Pg(f+776+(h<<2)|0);c[f+688+(h<<2)>>2]=0;c[f+680+(h<<2)>>2]=0;h=h+1|0}h=g+96|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0))}while(0);l=$;return}function hj(a){a=a|0;var b=0,d=0;d=c[(c[a>>2]|0)+592>>2]|0;if(!((d|0)!=0?(c[d+32>>2]|0)!=0:0))b=3;if((b|0)==3?c[a+672>>2]|0:0)return (c[a+700>>2]|0)==0|0;return 0}function ij(a){a=a|0;switch(a|0){case 1:{a=73;break}case 2:{a=80;break}case 3:{a=66;break}case 4:{a=83;break}case 5:{a=105;break}case 6:{a=112;break}case 7:{a=98;break}default:a=63}return a|0}function jj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=b+704|0;v=c[u>>2]|0;if((v|0)!=0?(c[v>>2]|0)!=0:0)if(!(c[(c[b>>2]|0)+572>>2]&256)){f=c[b+552>>2]|0;g=b+548|0;v=b+580|0;d=0;e=0;while(1){if((d|0)>=(f|0))break;t=e+((a[(c[v>>2]|0)+(c[(c[g>>2]|0)+(d<<2)>>2]|0)>>0]&12)!=12&1)|0;d=d+1|0;e=t}if((e|0)>=5){l=(e|0)>99?(e>>>0)/50|0:1;m=b+560|0;n=b+556|0;o=b+564|0;p=b+672|0;q=b+8|0;r=b+708|0;s=b+696|0;d=0;e=0;k=0;while(1){if((k|0)>=((c[m>>2]|0)+-1|0))break;t=k<<4;j=0;while(1){if((j|0)>=(c[n>>2]|0))break;f=(N(c[o>>2]|0,k)|0)+j|0;do if((a[(c[v>>2]|0)+f>>0]&12)!=12){e=e+1|0;if(!((e|0)%(l|0)|0)){g=c[p>>2]|0;if((c[g+88>>2]|0)!=1)if(!(c[(c[s>>2]|0)+(f<<2)>>2]&7)){d=d+-1|0;break}else{d=d+1|0;break}else{h=g+32|0;w=j<<4;f=c[h>>2]|0;i=N(f,t)|0;g=(c[g>>2]|0)+w+i|0;i=(c[c[u>>2]>>2]|0)+w+i|0;if((c[(c[b>>2]|0)+16>>2]|0)!=27){kj(c[r>>2]|0,k,0);f=c[h>>2]|0}w=(Nd[c[q>>2]&63](0,i,g,f,16)|0)+d|0;d=c[h>>2]|0;d=w-(Nd[c[q>>2]&63](0,i,i+(d<<4)|0,d,16)|0)|0;break}}}while(0);j=j+1|0}k=k+1|0}d=(d|0)>0&1}else d=0}else d=0;else d=1;return d|0}function kj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=c[a+12>>2]|0;if((e|0?(g=c[e+4>>2]|0,g|0):0)?(i=g+(d<<2)|0,(c[i>>2]|0)<(b|0)):0){a=a+4+(d<<2)|0;f=c[(c[(c[a>>2]|0)+28>>2]|0)+20>>2]|0;if(c[f+344>>2]|0){e=c[a>>2]|0;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=g;ig(e,48,131307,h)}e=f+184|0;AX(e|0)|0;a=f+60|0;while(1){if((c[i>>2]|0)>=(b|0))break;uc(a|0,e|0)|0}BX(e|0)|0}l=j;return}function lj(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ma=l;l=l+128|0;if((l|0)>=(m|0))W(128);ia=ma;Z=ma+116|0;_=ma+112|0;aa=ma+48|0;ba=ma+16|0;la=e+564|0;ga=c[la>>2]|0;t=e+556|0;ha=c[t>>2]|0;h=c[e+560>>2]|0;s=e+704|0;f=c[s>>2]|0;if((f|0)!=0?(c[f>>2]|0)!=0:0){f=(c[f+72>>2]|0)+15>>4;f=(h|0)>(f|0)?f:h}else f=h;g=c[e+736>>2]|0;if((g|0)!=0?(c[g>>2]|0)!=0:0){ka=(c[g+72>>2]|0)+15>>4;ka=(f|0)>(ka|0)?ka:f}else ka=f;x=c[e+584>>2]|0;U=N(h,ga)|0;y=x+(U<<3)|0;U=y+(U<<3)|0;rj(e,Z,_);i=e+712|0;if(c[i>>2]|0)kj(c[e+708>>2]|0,ka+-1|0,0);V=N(ka,ha)|0;j=e+548|0;q=e+580|0;r=e+696|0;k=c[_>>2]|0;n=c[Z>>2]|0;X=e+680|0;o=e+720|0;Y=e+688|0;h=0;f=0;while(1){if((h|0)>=(V|0))break;g=c[(c[j>>2]|0)+(h<<2)>>2]|0;T=(a[(c[q>>2]|0)+g>>0]&8)==0?8:(c[(c[r>>2]|0)+(g<<2)>>2]&7|0)==0?0:8;a[U+g>>0]=T;if((T|0)!=8){if((c[c[s>>2]>>2]|0)!=0?(p=c[i>>2]|0,(p|0)!=0):0){T=c[la>>2]|0;T=N((N(k,(g|0)/(T|0)|0)|0)+((g|0)%(T|0)|0)|0,n)|0;S=c[X>>2]|0;b[S+(T<<2)>>1]=b[p+(T<<2)>>1]|0;b[S+(T<<2)+2>>1]=b[p+(T<<2)+2>>1]|0;T=g<<2;a[(c[Y>>2]|0)+T>>0]=a[(c[o>>2]|0)+T>>0]|0}}else f=f+1|0;h=h+1|0}a:do if((f|0)>((ha|0)/2|0|0)?(c[(c[e>>2]|0)+572>>2]&1|0)!=0:0){f=0;j=0;b:while(1){if((j|0)>=(ka|0))break;k=N(j,ga)|0;n=(j|0)==0;o=j+1|0;p=(o|0)<(ka|0);q=j+-1|0;g=0;while(1){while(1){if((g|0)>=(ha|0)){j=o;continue b}h=g+k|0;if((a[U+h>>0]|0)==8)break;g=g+1|0}if((g|0)!=0?(u=U+(h+-1)|0,(a[u>>0]|0)==0):0){a[u>>0]=1;c[x+(f<<3)>>2]=g+-1;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!n?(v=U+(h-ga)|0,(a[v>>0]|0)==0):0){a[v>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=q;f=f+1|0}i=g+1|0;if((i|0)<(ha|0)?(w=U+(h+1)|0,(a[w>>0]|0)==0):0){a[w>>0]=1;c[x+(f<<3)>>2]=i;c[x+(f<<3)+4>>2]=j;f=f+1|0}if(!p){g=i;continue}h=U+(h+ga)|0;if(a[h>>0]|0){g=i;continue}a[h>>0]=1;c[x+(f<<3)>>2]=g;c[x+(f<<3)+4>>2]=o;g=i;f=f+1|0}}P=aa+4|0;Q=e+672|0;R=e+608|0;S=e+612|0;T=e+800|0;O=e+804|0;M=f;while(1){f=1;L=0;g=1;while(1){if(!((L|0)<10&((L|0)<2|(f|0)!=0)))break;K=(L|0)>1;J=0;f=0;while(1){if((J|0)>=(M|0))break;G=c[x+(J<<3)>>2]|0;H=c[x+(J<<3)+4>>2]|0;I=(N(H,ga)|0)+G|0;c:do if(!((G^L^H)&1)){B=(G|0)>0;if(B)h=d[U+(I+-1)>>0]|0;else h=0;C=(G+1|0)<(ha|0);if(C)h=h|d[U+(I+1)>>0];A=(H|0)>0;if(A)h=h|d[U+(I-ga)>>0];z=(H+1|0)<(ka|0);if(z)h=h|d[U+(I+ga)>>0];if(!(K&(h&4|0)==0)){D=c[_>>2]|0;F=(N(D,H)|0)+G|0;E=c[Z>>2]|0;F=N(F,E)|0;if(B?($=I+-1|0,(d[U+$>>0]|0)>1):0){e=c[X>>2]|0;g=F-E|0;c[aa>>2]=b[e+(g<<2)>>1];c[P>>2]=b[e+(g<<2)+2>>1];c[ba>>2]=a[(c[Y>>2]|0)+($<<2)>>0];g=1}else g=0;do if(C){h=I+1|0;if((d[U+h>>0]|0)<=1)break;w=c[X>>2]|0;e=E+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(h<<2)>>0];g=g+1|0}while(0);do if(A){if((d[U+(I-ga)>>0]|0)<=1)break;w=c[X>>2]|0;e=F-(N(E,D)|0)|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+(I-(c[la>>2]|0)<<2)>>0];g=g+1|0}while(0);do if(z){if((d[U+(I+ga)>>0]|0)<=1){ja=73;break}w=c[X>>2]|0;e=(N(E,D)|0)+F|0;c[aa+(g<<3)>>2]=b[w+(e<<2)>>1];c[aa+(g<<3)+4>>2]=b[w+(e<<2)+2>>1];c[ba+(g<<2)>>2]=a[(c[Y>>2]|0)+((c[la>>2]|0)+I<<2)>>0];g=g+1|0}else ja=73;while(0);if((ja|0)==73){ja=0;if(!g){g=0;break}}d:do if((g|0)>1){h=0;i=0;j=0;k=0;while(1){if((k|0)>=(g|0))break;j=(c[aa+(k<<3)>>2]|0)+j|0;i=(c[aa+(k<<3)+4>>2]|0)+i|0;e=c[ba+(k<<2)>>2]|0;h=e+h|0;if(k|0?(e|0)!=(c[ba+(k+-1<<2)>>2]|0):0)break d;k=k+1|0}c[aa+(g<<3)>>2]=(j|0)/(k|0)|0;c[aa+(g<<3)+4>>2]=(i|0)/(k|0)|0;c[ba+(g<<2)>>2]=(h|0)/(k|0)|0;k=(g|0)>2;n=k?-99999:0;k=k?99999:0;r=k;s=n;p=k;q=n;o=0;while(1){if((o|0)==(g|0))break;e=c[aa+(o<<3)>>2]|0;w=c[aa+(o<<3)+4>>2]|0;v=c[ba+(o<<2)>>2]|0;r=(r|0)>(v|0)?v:r;s=(s|0)>(v|0)?s:v;p=(p|0)>(w|0)?w:p;k=(k|0)>(e|0)?e:k;q=(q|0)>(w|0)?q:w;n=(n|0)>(e|0)?n:e;o=o+1|0}n=j-n-k|0;e=g+1|0;o=aa+(e<<3)|0;c[o>>2]=n;j=i-q-p|0;k=aa+(e<<3)+4|0;c[k>>2]=j;h=h-s-r|0;i=ba+(e<<2)|0;c[i>>2]=h;if((g|0)==4){c[o>>2]=(n|0)/2|0;c[k>>2]=(j|0)/2|0;c[i>>2]=(h|0)/2|0}g=g+2|0}else g=1;while(0);c[ba+(g<<2)>>2]=0;c[aa+(g<<3)+4>>2]=0;c[aa+(g<<3)>>2]=0;o=g+1|0;e=c[X>>2]|0;w=b[e+(F<<2)>>1]|0;e=b[e+(F<<2)+2>>1]|0;p=a[(c[Y>>2]|0)+(I<<2)>>0]|0;c[aa+(o<<3)>>2]=w;c[aa+(o<<3)+4>>2]=e;c[ba+(o<<2)>>2]=p;o=g+2|0;p=G<<4;q=H<<4;r=U+(I+-1)|0;s=U+(I+1)|0;t=U+(I-ga)|0;u=U+(I+ga)|0;v=0;g=1073741824;n=0;while(1){if((n|0)>=(o|0))break;k=c[Q>>2]|0;j=k+32|0;k=(c[k>>2]|0)+p+(N(q,c[j>>2]|0)|0)|0;i=c[aa+(n<<3)>>2]|0;c[R>>2]=i;h=c[X>>2]|0;b[h+(F<<2)>>1]=i;i=c[aa+(n<<3)+4>>2]|0;c[S>>2]=i;b[h+(F<<2)+2>>1]=i;h=c[ba+(n<<2)>>2]|0;if((h|0)<0)h=v;else{Xd[c[T>>2]&1](c[O>>2]|0,h,1,0,R,G,H,0,0);e:do if(B){if((d[r>>0]|0)>1){h=0;i=0}else{i=0;break}while(1){if((h|0)==16)break e;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+-1)>>0]|0)-(d[k+na>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}else i=0;while(0);f:do if(C){if((d[s>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break f;na=N(c[j>>2]|0,h)|0;na=(d[k+(na+15)>>0]|0)-(d[k+(na+16)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);g:do if(A){if((d[t>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break g;na=(d[k+(h-(c[j>>2]|0))>>0]|0)-(d[k+h>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);h:do if(z){if((d[u>>0]|0)>1)h=0;else break;while(1){if((h|0)==16)break h;na=c[j>>2]|0;na=(d[k+((na*15|0)+h)>>0]|0)-(d[k+((na<<4)+h)>>0]|0)|0;h=h+1|0;i=((na|0)>-1?na:0-na|0)+i|0}}while(0);na=(i|0)>(g|0);h=na?v:n;g=na?g:i}v=h;n=n+1|0}i=c[aa+(v<<3)>>2]|0;c[R>>2]=i;j=c[aa+(v<<3)+4>>2]|0;c[S>>2]=j;i=i&65535;j=j&65535;g=0;while(1){if((g|0)>=(E|0))break;k=g+F|0;h=0;while(1){if((h|0)==(E|0))break;C=c[X>>2]|0;na=(N(D,h)|0)+k|0;b[C+(na<<2)>>1]=i;b[C+(na<<2)+2>>1]=j;h=h+1|0}g=g+1|0}Xd[c[T>>2]&1](c[O>>2]|0,c[ba+(v<<2)>>2]|0,1,0,R,G,H,0,0);do if((c[R>>2]|0)==(w|0)){if((c[S>>2]|0)!=(e|0))break;a[U+I>>0]=2;g=0;break c}while(0);a[U+I>>0]=4;g=0;f=f+1|0}}while(0);J=J+1|0}L=L+1|0}if(!g){f=0;k=0}else break a;while(1){if((k|0)>=(M|0))break;i=c[x+(k<<3)>>2]|0;h=c[x+(k<<3)+4>>2]|0;j=(N(h,ga)|0)+i|0;g=U+j|0;if(a[g>>0]&14){a[g>>0]=8;if((i|0)>0?(ca=U+(j+-1)|0,(a[ca>>0]|0)==0):0){a[ca>>0]=1;c[y+(f<<3)>>2]=i+-1;c[y+(f<<3)+4>>2]=h;f=f+1|0}if((h|0)>0?(da=U+(j-ga)|0,(a[da>>0]|0)==0):0){a[da>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=h+-1;f=f+1|0}g=i+1|0;if((g|0)<(ha|0)?(ea=U+(j+1)|0,(a[ea>>0]|0)==0):0){a[ea>>0]=1;c[y+(f<<3)>>2]=g;c[y+(f<<3)+4>>2]=h;f=f+1|0}g=h+1|0;if((g|0)<(ka|0)?(fa=U+(j+ga)|0,(a[fa>>0]|0)==0):0){a[fa>>0]=1;c[y+(f<<3)>>2]=i;c[y+(f<<3)+4>>2]=g;f=f+1|0}}k=k+1|0}if((f|0)>(V|0))break;else{na=y;M=f;y=x;x=na}}c[ia>>2]=131261;c[ia+4>>2]=128880;c[ia+8>>2]=716;ig(0,0,159900,ia);Tb()}else{k=e+608|0;n=e+612|0;o=e+800|0;i=e+804|0;h=0;while(1){if((h|0)<(ka|0))g=0;else break a;while(1){if((g|0)>=(c[t>>2]|0))break;j=(N(c[la>>2]|0,h)|0)+g|0;f=c[s>>2]|0;if(!f)f=2;else f=c[f>>2]|0?1:2;if((c[(c[r>>2]|0)+(j<<2)>>2]&7|0)==0?a[(c[q>>2]|0)+j>>0]&8:0){c[k>>2]=0;c[n>>2]=0;Xd[c[o>>2]&1](c[i>>2]|0,0,f,0,k,g,h,0,0)}g=g+1|0}h=h+1|0}}while(0);l=ma;return}function mj(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=C;A=C+8|0;B=C+4|0;z=Zh(h,g<<3)|0;c[A>>2]=z;x=Zh(h,g<<4)|0;c[B>>2]=x;a:do if((x|0)!=0&(z|0)!=0){x=d+564|0;z=d+696|0;w=d+580|0;p=0;while(1){if((p|0)>=(g|0)){p=0;break}q=p>>i;r=N(p,h)|0;n=0;j=1024;d=-1;while(1){if((n|0)>=(f|0)){k=f;j=1024;d=-1;break}v=(N(c[x>>2]|0,q)|0)+(n>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=n+r|0;else{k=n+r|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+2>>1]=j;c[(c[B>>2]|0)+(k<<4)+4>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,q)|0)+(o>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=o+r|0}else{j=o+r|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)>>1]=n;c[(c[B>>2]|0)+(j<<4)>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((p|0)>=(f|0)){k=0;break}q=p>>i;j=1024;d=-1;n=0;while(1){if((n|0)>=(g|0)){k=g;j=1024;d=-1;break}v=(N(c[x>>2]|0,n>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0)k=(N(n,h)|0)+p|0;else{k=(N(n,h)|0)+p|0;j=b[e+(k<<1)>>1]|0;d=n}b[(c[A>>2]|0)+(k<<3)+6>>1]=j;c[(c[B>>2]|0)+(k<<4)+12>>2]=(d|0)>-1?n-d|0:9999;n=n+1|0}while(1){o=k+-1|0;if((k|0)<=0)break;v=(N(c[x>>2]|0,o>>i)|0)+q|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&7|0)!=0?(a[(c[w>>2]|0)+v>>0]&4)!=0:0){n=j;j=(N(o,h)|0)+p|0}else{j=(N(o,h)|0)+p|0;n=b[e+(j<<1)>>1]|0;d=o}b[(c[A>>2]|0)+(j<<3)+4>>1]=n;c[(c[B>>2]|0)+(j<<4)+8>>2]=(d|0)>-1?d-o|0:9999;k=o;j=n}p=p+1|0}while(1){if((k|0)>=(g|0))break a;n=k>>i;o=N(k,h)|0;d=0;while(1){if((d|0)>=(f|0))break;v=(N(c[x>>2]|0,n)|0)+(d>>i)|0;if((c[(c[z>>2]|0)+(v<<2)>>2]&120|0)==0?a[(c[w>>2]|0)+v>>0]&4:0){p=c[B>>2]|0;q=d+o|0;r=c[A>>2]|0;j=0;s=0;t=0;u=0;v=0;while(1){if((j|0)==4)break;D=c[p+(q<<4)+(j<<2)>>2]|0;D=268435456/((D>>>0>1?D:1)>>>0)|0;F=b[r+(q<<3)+(j<<1)>>1]|0;F=nX(F|0,((F|0)<0)<<31>>31|0,D|0,0)|0;F=hX(F|0,y|0,s|0,t|0)|0;E=y;D=hX(u|0,v|0,D|0,0)|0;j=j+1|0;s=F;t=E;u=D;v=y}F=lX(u|0,v|0,2,0)|0;F=hX(F|0,y|0,s|0,t|0)|0;F=lX(F|0,y|0,u|0,v|0)|0;b[e+(q<<1)>>1]=F}d=d+1|0}k=k+1|0}}else ig(c[d>>2]|0,16,131232,j);while(0);eg(A);eg(B);l=C;return}function nj(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=d+-1|0;h=c+-1|0;c=1;while(1){if((c|0)>=(i|0)){c=1;break}g=N(c,e)|0;d=1;f=b[a+(g<<1)>>1]|0;while(1){if((d|0)>=(h|0))break;l=a+(d+g<<1)|0;j=b[l>>1]|0;k=d+1|0;b[l>>1]=((((j<<3)-f-(b[a+(k+g<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=j}c=c+1|0}while(1){if((c|0)>=(h|0))break;d=b[a+(c<<1)>>1]|0;f=1;while(1){if((f|0)>=(i|0))break;j=a+((N(f,e)|0)+c<<1)|0;k=b[j>>1]|0;l=f+1|0;b[j>>1]=((((k<<3)-d-(b[a+((N(l,e)|0)+c<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16;d=k;f=l}c=c+1|0}return}function oj(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=c[d+672>>2]|0;t=v+32|0;u=d+588|0;m=h<<1;n=i<<1;o=d+568|0;k=0;while(1){if((k|0)==4)break;q=k&1;r=k>>1;p=b[(c[u>>2]|0)+((N(c[o>>2]|0,r+n|0)|0)+(q|m)<<1)>>1]|0;p=p<<16>>16>0?((p<<16>>16<2040?p:2040)&65535)>>>3&255:0;q=q<<3;r=r<<3;l=0;while(1){if((l|0)==8)break;s=l+r|0;j=0;while(1){if((j|0)==8)break;a[e+(j+q+(N(c[t>>2]|0,s)|0))>>0]=p;j=j+1|0}l=l+1|0}k=k+1|0}k=(N(c[d+564>>2]|0,i)|0)+h|0;j=b[(c[d+592>>2]|0)+(k<<1)>>1]|0;k=b[(c[d+596>>2]|0)+(k<<1)>>1]|0;a:do if(g|0){m=j<<16>>16>0?((j<<16>>16<2040?j:2040)&65535)>>>3&255:0;n=v+36|0;e=k<<16>>16>0?((k<<16>>16<2040?k:2040)&65535)>>>3&255:0;l=v+40|0;k=0;while(1){if((k|0)==8)break a;else j=0;while(1){if((j|0)==8)break;a[f+((N(c[n>>2]|0,k)|0)+j)>>0]=m;a[g+((N(c[l>>2]|0,k)|0)+j)>>0]=e;j=j+1|0}k=k+1|0}}while(0);return}function pj(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0;Q=l;l=l+16|0;if((l|0)>=(m|0))W(16);O=Q+4|0;J=Q;rj(e,O,J);P=c[O>>2]>>j;c[O>>2]=P;O=N(c[J>>2]|0,P)|0;c[J>>2]=O;J=g+-1|0;K=e+580|0;L=e+564|0;M=e+696|0;E=e+680|0;D=0;while(1){if((D|0)>=(h|0))break;F=D>>j;G=N(D,i)|0;H=N(O,D)|0;g=0;a:while(1){if((g|0)>=(J|0))break;z=c[K>>2]|0;n=N(c[L>>2]|0,F)|0;k=n+(g>>j)|0;A=a[z+k>>0]|0;I=g+1|0;n=n+(I>>j)|0;z=a[z+n>>0]|0;o=c[M>>2]|0;q=g+G<<3;p=c[E>>2]|0;g=(N(P,g)|0)+H|0;e=(N(P,I)|0)+H|0;B=(A&14)!=0;C=(z&14)!=0;if(!((z|A)&14)){g=I;continue}if(((c[o+(k<<2)>>2]|c[o+(n<<2)>>2])&7|0)==0?(A=(b[p+(g<<2)>>1]|0)-(b[p+(e<<2)>>1]|0)|0,z=(b[p+(e<<2)+2>>1]|0)+(b[p+(g<<2)+2>>1]|0)|0,(((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)|0)<2):0){g=I;continue}t=q|7;u=q|6;v=q+8|0;w=q+9|0;A=B&C;x=q|5;y=q|4;z=q+10|0;n=q+11|0;e=0;while(1){if((e|0)==8){g=I;continue a}o=N(e,i)|0;p=f+(o+t)|0;q=d[p>>0]|0;r=f+(o+u)|0;S=q-(d[r>>0]|0)|0;s=f+(v+o)|0;g=d[s>>0]|0;R=g-q|0;k=f+(w+o)|0;g=(d[k>>0]|0)-g|0;g=((R|0)>-1?R:0-R|0)-(((S|0)>-1?S:0-S|0)+1+((g|0)>-1?g:0-g|0)>>1)|0;g=(g|0)>0?g:0;g=(R|0)<0?0-g|0:g;if(g|0){g=A?g:(g<<4|0)/9|0;if(B){a[p>>0]=a[129934+((g*7>>4)+q)>>0]|0;a[r>>0]=a[129934+((g*5>>4)+(d[r>>0]|0))>>0]|0;S=f+(o+x)|0;a[S>>0]=a[129934+((g*3>>4)+(d[S>>0]|0))>>0]|0;S=f+(o+y)|0;a[S>>0]=a[129934+((g>>4)+(d[S>>0]|0))>>0]|0}if(C){a[s>>0]=a[129934+((d[s>>0]|0)-(g*7>>4))>>0]|0;a[k>>0]=a[129934+((d[k>>0]|0)-(g*5>>4))>>0]|0;S=f+(z+o)|0;a[S>>0]=a[129934+((d[S>>0]|0)-(g*3>>4))>>0]|0;S=f+(n+o)|0;a[S>>0]=a[129934+((d[S>>0]|0)-(g>>4))>>0]|0}}e=e+1|0}}D=D+1|0}l=Q;return}function qj(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;T=l;l=l+16|0;if((l|0)>=(m|0))W(16);R=T+4|0;M=T;rj(e,R,M);S=c[R>>2]>>j;c[R>>2]=S;R=N(c[M>>2]|0,S)|0;c[M>>2]=R;M=h+-1|0;O=e+580|0;P=e+564|0;Q=e+696|0;z=e+680|0;A=i*7|0;B=i*6|0;C=i<<3;D=i*9|0;E=i*5|0;F=i<<2;G=i*10|0;H=i*11|0;h=0;a:while(1){if((h|0)>=(M|0))break;I=h>>j;J=h+1|0;K=J>>j;L=N(h,i)|0;u=N(R,h)|0;v=N(R,J)|0;t=0;while(1){if((t|0)>=(g|0)){h=J;continue a}U=c[O>>2]|0;e=t>>j;k=c[P>>2]|0;h=(N(k,I)|0)+e|0;s=a[U+h>>0]|0;e=(N(k,K)|0)+e|0;U=a[U+e>>0]|0;k=c[Q>>2]|0;w=t+L<<3;n=c[z>>2]|0;q=N(S,t)|0;o=q+u|0;p=n+(o<<2)|0;q=q+v|0;r=n+(q<<2)|0;x=(s&14)!=0;y=(U&14)!=0;b:do if((U|s)&14){if(((c[k+(h<<2)>>2]|c[k+(e<<2)>>2])&7|0)==0?(U=(b[p>>1]|0)-(b[r>>1]|0)|0,s=(b[n+(q<<2)+2>>1]|0)+(b[n+(o<<2)+2>>1]|0)|0,(((s|0)>-1?s:0-s|0)+((U|0)>-1?U:0-U|0)|0)<2):0)break;s=x&y;e=0;while(1){if((e|0)==8)break b;n=e+w|0;o=f+(n+A)|0;p=d[o>>0]|0;q=f+(n+B)|0;V=p-(d[q>>0]|0)|0;r=f+(n+C)|0;h=d[r>>0]|0;U=h-p|0;k=f+(n+D)|0;h=(d[k>>0]|0)-h|0;h=((U|0)>-1?U:0-U|0)-(((V|0)>-1?V:0-V|0)+1+((h|0)>-1?h:0-h|0)>>1)|0;h=(h|0)>0?h:0;h=(U|0)<0?0-h|0:h;if(h|0){h=s?h:(h<<4|0)/9|0;if(x){a[o>>0]=a[129934+((h*7>>4)+p)>>0]|0;a[q>>0]=a[129934+((h*5>>4)+(d[q>>0]|0))>>0]|0;V=f+(n+E)|0;a[V>>0]=a[129934+((h*3>>4)+(d[V>>0]|0))>>0]|0;V=f+(n+F)|0;a[V>>0]=a[129934+((h>>4)+(d[V>>0]|0))>>0]|0}if(y){a[r>>0]=a[129934+((d[r>>0]|0)-(h*7>>4))>>0]|0;a[k>>0]=a[129934+((d[k>>0]|0)-(h*5>>4))>>0]|0;V=f+(n+G)|0;a[V>>0]=a[129934+((d[V>>0]|0)-(h*3>>4))>>0]|0;V=f+(n+H)|0;a[V>>0]=a[129934+((d[V>>0]|0)-(h>>4))>>0]|0}}e=e+1|0}}while(0);t=t+1|0}}l=T;return}function rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;do if((c[(c[a>>2]|0)+16>>2]|0)==27)if(!(c[a+788>>2]|0)){c[f>>2]=131214;c[f+4>>2]=128880;c[f+8>>2]=47;ig(0,0,159900,f);Tb()}else{c[b>>2]=4;e=c[a+556>>2]<<2;break}else{c[b>>2]=2;e=c[a+568>>2]|0}while(0);c[d>>2]=e;l=g;return}function sj(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;e=a+8|0;f=c[e>>2]|0;g=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7);do if(a>>>0<=134217727){k=a>>>0>65535;j=k?a>>>16:a;k=k?16:0;b=(j&65280|0)==0;j=(b?k:k|8)+(d[116289+(b?j:j>>>8)>>0]|0)|0;b=j<<1;f=63-b+f|0;c[e>>2]=g>>>0>f>>>0?f:g;if(j>>>0<19){ig(0,16,151648,h);a=-1094995529;break}else{a=(a>>>(b+-31|0))+-1|0;break}}else{a=a>>>23;k=f+(d[122258+a>>0]|0)|0;c[e>>2]=g>>>0>k>>>0?k:g;a=d[122770+a>>0]|0}while(0);l=i;return a|0}function tj(a){a=a|0;var b=0,e=0,f=0;b=a+8|0;f=c[b>>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122258+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122770+a>>0]|0|0}function uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;Hj(0,a,b,f);l=e;return}function vj(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function wj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function xj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+8|0;g=c[f>>2]|0;h=c[b+16>>2]|0;e=c[b>>2]|0;b=e+(g>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(g&7);if(b>>>0>134217727){b=b>>>23;g=g+(d[122258+b>>0]|0)|0;c[f>>2]=h>>>0>g>>>0?g:h;b=a[123282+b>>0]|0}else{j=b>>>0>65535;b=j?b>>>16:b;j=j?16:0;i=(b&65280|0)==0;b=(i?j:j|8)+(d[116289+(i?b:b>>>8)>>0]|0)|0;i=31-b+g|0;i=h>>>0>i>>>0?i:h;g=e+(i>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(i&7)>>>b;b=i+(32-b)|0;c[f>>2]=h>>>0>b>>>0?b:h;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function yj(a){a=a|0;return c[a+8>>2]|0}function zj(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);switch(c[a+4>>2]|0){case 66:case 77:case 88:{if(!(c[a+1196>>2]&7))a=1;else{ig(b,40,131904,d);a=0}break}default:a=1}l=d;return a|0}function Aj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;j=(e|0)!=0;if(j)h=0;else h=(c[b+668>>2]|0)!=0;i=h?b+768|0:131636;k=h?b+960|0:131700;if(!(vj(a)|0))return 0;l=Gj(a,f,16,131764,h?b+672|0:131764)|0;m=f+16|0;l=Gj(a,m,16,131764,f)|0|l;m=l|(Gj(a,f+32|0,16,131764,m)|0);l=f+48|0;m=m|(Gj(a,l,16,131780,h?b+720|0:131780)|0);h=f+64|0;l=m|(Gj(a,h,16,131780,l)|0);h=l|(Gj(a,f+80|0,16,131780,h)|0);if(!(!j?(c[d+64>>2]|0)==0:0)){h=Gj(a,g,64,131636,i)|0|h;f=g+192|0;h=h|(Gj(a,f,64,131700,k)|0);if((c[b+12>>2]|0)==3){m=g+64|0;l=Gj(a,m,64,131636,g)|0|h;h=g+256|0;l=l|(Gj(a,h,64,131700,f)|0);m=l|(Gj(a,g+128|0,64,131636,m)|0);h=m|(Gj(a,g+320|0,64,131700,h)|0)}}return ((h|0)==0?e:h)|0}function Bj(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+-8|0;h=f*6|0;g=h+51|0;h=h+52|0;e=0;while(1){if((e|0)>=(h|0))break;i=e+d|0;a[b+548+(c*88|0)+e>>0]=a[((i|0)<0?0:(i|0)>(g|0)?g:i)+(124153+(f*88|0))>>0]|0;e=e+1|0}return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;Ej(a,b);f=a+173812|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=a+64|0;if(c[f>>2]|0)Fj(a,b);a:do if(c[b+16>>2]|0){d=0;while(1){if((d|0)==6)break;e=a+173788+(d<<2)|0;b=0;while(1){if((b|0)==16)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}if(c[f>>2]|0){d=0;while(1){if((d|0)==6)break a;e=a+173812+(d<<2)|0;b=0;while(1){if((b|0)==64)break;c[(c[e>>2]|0)+(b<<2)>>2]=64;b=b+1|0}d=d+1|0}}}while(0);return}function Dj(a,b){a=a|0;b=b|0;Pg(a+128+(b<<2)|0);return}function Ej(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=((c[b+1184>>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173788+(h<<2)|0;c[f>>2]=a+4828+(h*5632|0);b=a+68+(h<<4)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(YT(a+68+(e<<4)|0,b,16)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+4828+(e*5632|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=(d[124065+g>>0]|0)+2|0;f=d[123977+g>>0]|0;b=0;while(1){if((b|0)==16)break;j=b>>2;c[a+4828+(h*5632|0)+(g<<6)+((b<<2&12|j)<<2)>>2]=(N(d[a+68+(h<<4)+b>>0]|0,d[(j&1)+(b&1)+(123907+(f*3|0))>>0]|0)|0)<>2]|0)*6|0)+4|0;h=0;while(1){if((h|0)==6)break;f=a+173812+(h<<2)|0;c[f>>2]=a+38620+(h*22528|0);b=a+164+(h<<6)|0;e=0;while(1){if((e|0)>=(h|0)){g=0;b=8;break}if(!(YT(a+164+(e<<6)|0,b,64)|0)){b=6;break}e=e+1|0}a:do if((b|0)==6)c[f>>2]=a+38620+(e*22528|0);else if((b|0)==8)while(1){if((g|0)>=(i|0))break a;e=d[124065+g>>0]|0;f=d[123977+g>>0]|0;b=0;while(1){if((b|0)==64)break;c[a+38620+(h*22528|0)+(g<<8)+((b<<3&56|b>>3)<<2)>>2]=(N(d[a+164+(h<<6)+b>>0]|0,d[(d[123925+(b>>>1&12|b&3)>>0]|0)+(123941+(f*6|0))>>0]|0)|0)<=(m|0))W(16);n=o;k=(f|0)==16?131796:131813;a:do if(vj(b)|0){i=0;h=8;j=8;while(1){if((i|0)>=(f|0)){h=0;break a}if(!h)h=0;else{h=xj(b)|0;if((h+128|0)>>>0>255){i=7;break}h=h+j&255}if(!(h|i)){i=9;break}p=h|0?h:j;a[e+(d[k+i>>0]|0)>>0]=p;i=i+1|0;j=p}if((i|0)==7){c[n>>2]=h;ig(0,16,131877,n);h=-1094995529;break}else if((i|0)==9){wX(e|0,g|0,f|0)|0;h=0;break}}else{wX(e|0,h|0,f|0)|0;h=0}while(0);l=o;return h|0}function Hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);jg(b,24,c,d);ig(b,24,131969,e);if(a|0)ig(b,24,132145,e+8|0);l=e;return}function Ij(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return (e?0:-1094995529)|0}function Jj(a){a=a|0;var b=0,d=0;b=a+8|0;a=c[a+16>>2]|0;d=(c[b>>2]|0)+2|0;c[b>>2]=a>>>0>d>>>0?d:a;return}function Kj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=n+24|0;i=n+16|0;h=n+8|0;f=n;do if(vj(a)|0){e=wj(a,8)|0;if((e|0)==255){c[d+100>>2]=wj(a,16)|0;c[d+104>>2]=wj(a,16)|0;g=8;break}if(e>>>0<17){e=105192+(e<<3)|0;f=c[e+4>>2]|0;g=d+100|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=8;break}else{ig(b,16,132947,f);e=-1094995529;break}}else{c[d+104>>2]=0;c[d+100>>2]=0;g=8}while(0);do if((g|0)==8){if(vj(a)|0)vj(a)|0;g=vj(a)|0;c[d+108>>2]=g;if(g|0?(wj(a,3)|0,c[d+112>>2]=vj(a)|0,g=vj(a)|0,c[d+116>>2]=g,g|0):0){e=d+120|0;c[e>>2]=wj(a,8)|0;f=d+124|0;c[f>>2]=wj(a,8)|0;g=d+128|0;c[g>>2]=wj(a,8)|0;if(!(Nj(c[e>>2]|0)|0))c[e>>2]=2;if(!(Oj(c[f>>2]|0)|0))c[f>>2]=2;if(!(Pj(c[g>>2]|0)|0))c[g>>2]=2}if(vj(a)|0){c[b+332>>2]=(sj(a)|0)+1;sj(a)|0}if(Qj(a)|0?(Lj(a)|0)<10:0){ig(b,24,132969,h);e=0;break}h=vj(a)|0;e=d+132|0;c[e>>2]=h;if(h|0){f=Rj(a,32)|0;g=Rj(a,32)|0;if((f|0)!=0&(g|0)!=0){c[d+136>>2]=f;c[d+140>>2]=g}else{c[i>>2]=g;c[i+4>>2]=f;ig(b,16,132984,i);c[e>>2]=0}c[d+144>>2]=vj(a)|0}i=vj(a)|0;e=d+1152|0;c[e>>2]=i;if(i|0?(Sj(a,b,d)|0)<0:0){e=-1094995529;break}i=vj(a)|0;f=d+1156|0;c[f>>2]=i;if(i|0?(Sj(a,b,d)|0)<0:0){e=-1094995529;break}if(!((c[e>>2]|0)==0?!(c[f>>2]|0):0))vj(a)|0;c[d+1160>>2]=vj(a)|0;if((Lj(a)|0)!=0?(i=vj(a)|0,j=d+660|0,c[j>>2]=i,(i|0)!=0):0){vj(a)|0;sj(a)|0;sj(a)|0;sj(a)|0;sj(a)|0;f=d+664|0;c[f>>2]=sj(a)|0;sj(a)|0;if((Lj(a)|0)<0){c[f>>2]=0;c[j>>2]=0;e=0;break}e=c[f>>2]|0;if(e>>>0>16){c[k>>2]=e;ig(b,16,133045,k);c[f>>2]=16;e=-1094995529}else e=0}else e=0}while(0);l=n;return e|0}function Lj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(yj(a)|0)|0}function Mj(a,b){a=a|0;b=b|0;Pg(a+(b<<2)|0);return}function Nj(a){a=a|0;if(a>>>0<23)a=c[102492+(a<<2)>>2]|0;else a=0;return a|0}function Oj(a){a=a|0;if(a>>>0<19)a=c[102416+(a<<2)>>2]|0;else a=0;return a|0}function Pj(a){a=a|0;if(a>>>0<15)a=c[102356+(a<<2)>>2]|0;else a=0;return a|0}function Qj(a){a=a|0;return Wj(a)|0}function Rj(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=wj(a,b)|0;break}else{b=b+-16|0;c=(wj(a,16)|0)<=(m|0))W(16);e=h;f=tj(a)|0;g=f+1|0;if(g>>>0>32){c[e>>2]=g;ig(b,16,133085,e);b=-1094995529}else{wj(a,4)|0;wj(a,4)|0;b=0;while(1){if((b|0)>(f|0))break;Tj(a);Tj(a);vj(a)|0;b=b+1|0}c[d+1172>>2]=(wj(a,5)|0)+1;c[d+1176>>2]=(wj(a,5)|0)+1;c[d+1180>>2]=(wj(a,5)|0)+1;c[d+1164>>2]=wj(a,5)|0;c[d+1168>>2]=g;b=0}l=h;return b|0}function Tj(a){a=a|0;var b=0,c=0,e=0;e=Uj(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Vj(a,b);Rj(a,b+1|0)|0;return}function Uj(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=Rj(d,32)|0;l=b;return a|0}function Vj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function Wj(a){a=a|0;var b=0;b=c[a+8>>2]|0;a=(c[a>>2]|0)+(b>>>3)|0;return (uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(b&7)>>>31|0}function Xj(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(_j(a)|0)|0}function Yj(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function Zj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function _j(a){a=a|0;return c[a+8>>2]|0}function $j(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;i=0;g=c[e+1164>>2]|0;while(1){h=(g|0)!=0;if((i|0)==32)break;if(!(h?(c[g+20>>2]|0)!=0:0)){h=c[e+(i<<2)>>2]|0;if(h)g=c[h+4>>2]|0}i=i+1|0}do if(h){if(!((c[g+1152>>2]|0)==0?!(c[g+1156>>2]|0):0)){c[a+16>>2]=pk(b,c[g+1176>>2]|0)|0;c[a+12>>2]=pk(b,c[g+1180>>2]|0)|0}if(c[g+1160>>2]|0){h=Zj(b,4)|0;j=a+4|0;c[j>>2]=h;k=a+8|0;c[k>>2]=0;if(h>>>0>8){g=-1094995529;break}e=d[133600+h>>0]|0;h=g+1164|0;g=0;while(1){if((g|0)==(e|0))break;if(Zj(b,1)|0){i=1<<(Zj(b,2)|0);c[k>>2]=c[k>>2]|i;kk(b,1);kk(b,5);i=Zj(b,1)|0;kk(b,1);kk(b,1);kk(b,8);if(!i){if((Zj(b,1)|0?(kk(b,6),Zj(b,1)|0):0)?(kk(b,6),Zj(b,1)|0):0)kk(b,5)}else{kk(b,6);kk(b,6);kk(b,5)}i=c[h>>2]|0;if((i|0)>0)kk(b,i)}g=g+1|0}b=c[j>>2]|0;c[n>>2]=c[k>>2];c[n+4>>2]=b;ig(f,48,133609,n)}c[a>>2]=1;g=0}else{ig(f,16,133558,j);g=-1397768184}while(0);l=o;return g|0}function ak(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if((c|0)<7)c=-1094995529;else{if((Zj(b,8)|0)==255){kk(b,8);c=c+-8|0}else c=c+-7|0;kk(b,8);kk(b,8);d=pk(b,32)|0;b:do if((d|0)<1195456820){switch(d|0){case 1146373937:break;default:break b}c=rk(a+20|0,b,c)|0;break a}else{switch(d|0){case 1195456820:break;default:break b}c=sk(a+28|0,b,c)|0;break a}while(0);kk(b,c<<3);c=0}while(0);return c|0}function bk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=j+4|0;if((e+-16|0)>>>0<=2147483614){f=e+16|0;i=qg(e+17|0)|0;if(!i)e=-12;else{e=0;while(1){if((e|0)>=(f|0))break;a[i+e>>0]=Zj(d,8)|0;e=e+1|0}a[i+e>>0]=0;f=i+16|0;c[g>>2]=h;d=(oV(f,133526,g)|0)==1;e=c[h>>2]|0;if(d&(e|0)>0)c[b>>2]=e;if(d&(e|0)==1?(ZT(f,133541,16)|0)==0:0)c[b>>2]=67;fg(i);e=0}}else e=-1094995529;l=j;return e|0}function ck(a,b){a=a|0;b=b|0;c[a>>2]=mk(b)|0;kk(b,4);return}function dk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;f=qk(b)|0;g=f>>>0>31;if(!g?(h=c[d+(f<<2)>>2]|0,(h|0)!=0):0){g=c[h+4>>2]|0;a:do if(c[g+1152>>2]|0){e=g+1168|0;f=g+1172|0;d=0;while(1){if((d|0)>=(c[e>>2]|0))break a;c[a+4+(d<<2)>>2]=pk(b,c[f>>2]|0)|0;kk(b,c[f>>2]|0);d=d+1|0}}while(0);b:do if(c[g+1156>>2]|0){f=g+1168|0;e=g+1172|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break b;c[a+4+(d<<2)>>2]=pk(b,c[e>>2]|0)|0;kk(b,c[e>>2]|0);d=d+1|0}}while(0);c[a>>2]=1;d=0}else{c[i>>2]=f;ig(e,16,133474,i);d=g?-1094995529:-1397768184}l=j;return d|0}function ek(a,b){a=a|0;b=b|0;var d=0,e=0;c[a+4>>2]=mk(b)|0;d=lk(b)|0;c[a+8>>2]=d;d=(d|0)==0;c[a>>2]=d&1;if(d){d=a+12|0;c[d>>2]=Zj(b,7)|0;e=a+24|0;c[e>>2]=lk(b)|0;c[a+20>>2]=Zj(b,6)|0;kk(b,3);c[a+28>>2]=lk(b)|0;kk(b,2);if((c[e>>2]|0)==0?(c[d>>2]|0)!=5:0)kk(b,16);kk(b,8);c[a+16>>2]=mk(b)|0}nk(b);return}function fk(a,b){a=a|0;b=b|0;var d=0;d=(lk(b)|0)==0;c[a>>2]=d&1;if(d){c[a+8>>2]=lk(b)|0;c[a+12>>2]=lk(b)|0;c[a+4>>2]=Zj(b,16)|0;mk(b)|0;nk(b)}return}function gk(c,d){c=c|0;d=d|0;var e=0;e=(Zj(d,8)|0)&255;a[c>>0]=e;switch(e<<24>>24){case 0:{e=(Zj(d,8)|0)&255;a[c+1>>0]=e;switch(e<<24>>24){case 2:{b[c+2>>1]=Zj(d,16)|0;break}case 3:{b[c+4>>1]=Zj(d,16)|0;break}default:{}}a[c+6>>0]=Zj(d,8)|0;a[c+7>>0]=Zj(d,8)|0;a[c+8>>0]=Zj(d,8)|0;a[c+9>>0]=Zj(d,8)|0;break}case 1:{a[c+10>>0]=Zj(d,8)|0;b[c+12>>1]=Zj(d,16)|0;break}default:{}}return}function hk(a,b){a=a|0;b=b|0;c[a>>2]=1;c[a+4>>2]=Zj(b,8)|0;return}function ik(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;f=0-e|0;a=(c[a+16>>2]|0)-e|0;c[d>>2]=((f|0)>(b|0)?f:(a|0)<(b|0)?a:b)+e;return}function jk(a){a=a|0;var b=0;b=0-(_j(a)|0)&7;if(b|0)kk(a,b);return}function kk(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function lk(a){a=a|0;var b=0,e=0,f=0;e=a+8|0;f=c[e>>2]|0;b=(d[(c[a>>2]|0)+(f>>>3)>>0]|0)<<(f&7)>>>7&1;c[e>>2]=f+((f|0)<(c[a+16>>2]|0)&1);return b|0}function mk(a){a=a|0;var b=0,c=0,e=0;e=ok(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;ik(a,b);return (pk(a,b+1|0)|0)+-1|0}function nk(a){a=a|0;kk(a,1);return}function ok(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=pk(d,32)|0;l=b;return a|0}function pk(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Zj(a,b)|0;break}else{b=b+-16|0;c=(Zj(a,16)|0)<>2]|0;e=c[a+16>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>23;f=f+(d[122258+a>>0]|0)|0;c[b>>2]=e>>>0>f>>>0?f:e;return d[122770+a>>0]|0|0}function rk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=1){kk(d,1);f=Zj(d,1)|0;kk(d,6);if(f)if((e|0)<2)b=-1094995529;else{kk(d,4);a[b+4>>0]=Zj(d,4)|0;c[b>>2]=1;b=0}else b=0}else b=-1094995529;return b|0}function sk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:do if((e|0)>=3){if((Zj(d,8)|0)!=3){f=e+-1|0;e=0;while(1){if((e|0)==(f|0)){e=0;break a}kk(d,8);e=e+1|0}}kk(d,1);if(((Zj(d,1)|0)!=0?(kk(d,1),g=Zj(d,5)|0,kk(d,8),(g|0)!=0):0)?(e+-2|0)>=(g*3|0):0){e=c[b>>2]|0;f=nX(g|0,((g|0)<0)<<31>>31|0,3,0)|0;e=hX(f|0,y|0,e|0,((e|0)<0)<<31>>31|0)|0;f=y;if(!(f>>>0>0|(f|0)==0&e>>>0>2147483647)){f=b+4|0;e=tk(f,e)|0;if((e|0)>=0){e=0;while(1){if((e|0)>=(g|0))break;j=(Zj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;h=(Zj(d,8)|0)&255;i=c[f>>2]|0;j=c[b>>2]|0;c[b>>2]=j+1;a[i+j>>0]=h;j=(Zj(d,8)|0)&255;i=c[f>>2]|0;h=c[b>>2]|0;c[b>>2]=h+1;a[i+h>>0]=j;e=e+1|0}kk(d,8);e=0}}else e=-22}else e=0}else e=-22;while(0);return e|0}function tk(b,c){b=b|0;c=c|0;do if(c){c=pg(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,c)|0;if(!c){eg(b);c=-12;break}else{a[b>>0]=c;a[b+1>>0]=c>>8;a[b+2>>0]=c>>16;a[b+3>>0]=c>>24;c=0;break}}else{eg(b);c=0}while(0);return c|0}function uk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;if((l|0)>=(m|0))W(64);r=D+56|0;q=D+48|0;w=D+32|0;u=D+24|0;v=D+16|0;f=D;z=c[d>>2]|0;C=d+21788|0;t=c[C>>2]|0;A=d+868|0;B=c[A>>2]|0;y=c[c[z+24312>>2]>>2]|0;b=c[y+32>>2]|0;e=d+21772|0;c[e>>2]=b;c[d+21776>>2]=c[y+36>>2];b=Ak(d,b)|0;a:do if((b|0)>=0){p=d+21816|0;c[p>>2]=-1;if((c[z+26036>>2]|0)!=(((c[e>>2]|0)*12|0)+(12<>2])|0)){c[f>>2]=134730;c[f+4>>2]=133704;c[f+8>>2]=2536;ig(0,0,159900,f);Tb()}if(c[z+25708>>2]|0)c[A>>2]=0;x=z+26376|0;if(!(c[x>>2]|0))b=(c[z+26380>>2]|0)!=3;else b=1;c[d+21820>>2]=b&1;y=z+4|0;if(((((c[(c[y>>2]|0)+696>>2]&2|0)==0?(c[z+26380>>2]|0)==3:0)?(h=c[z+25628>>2]|0,i=c[h+604>>2]|0,i|0):0)?(s=(N(c[z+27012>>2]|0,c[d+21804>>2]|0)|0)+(c[d+21800>>2]|0)|0,g=(c[z+27020>>2]|0)+-1|0,g=(s|0)>(g|0)?g:s,!((s|0)<0|(g|0)==0)):0)?(a[i+(c[(c[h+572>>2]|0)+(g+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)c[h+600>>2]=1;do if(!(c[(c[z+28212>>2]|0)+4>>2]|0)){o=d+21792|0;f=z+27012|0;i=d+21812|0;n=d+4|0;j=z+26380|0;k=z+27008|0;e=t;while(1){w=(N(c[f>>2]|0,c[o>>2]|0)|0)+(c[C>>2]|0)|0;b=c[i>>2]|0;if((w|0)>=(b|0)){f=46;break}b=Mk(z,d)|0;if((b|0)<=-1){f=52;break}Ik(z,d);if(c[x>>2]|0){c[o>>2]=(c[o>>2]|0)+1;b=Mk(z,d)|0;if((b|0)<=-1){f=50;break}Ik(z,d);c[o>>2]=(c[o>>2]|0)+-1}b=(c[C>>2]|0)+1|0;c[C>>2]=b;if((b|0)>=(c[f>>2]|0)){vk(z,d,e,b);c[C>>2]=0;Kk(z,d);b=c[o>>2]|0;e=b+1|0;c[o>>2]=e;if(!(c[x>>2]|0)){if((c[j>>2]|0)!=3){e=b+2|0;c[o>>2]=e}}else{b=b+2|0;c[o>>2]=b;if((b|0)<(c[k>>2]|0)){Lk(z,d);e=c[o>>2]|0}else e=b}if((e|0)<(c[k>>2]|0))h=0;else{f=61;break}}else h=e;g=Dk(n)|0;if((g|0)>=1){e=h;continue}if((c[p>>2]|0)<1){f=68;break}else e=h}if((f|0)==46){B=c[y>>2]|0;c[q>>2]=b;ig(B,16,134857,q);Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);b=-1094995529;break a}else if((f|0)==50){e=(c[o>>2]|0)+-1|0;c[o>>2]=e}else if((f|0)==52)e=c[o>>2]|0;else if((f|0)==61){b=Dk(n)|0;do if(b|0){if((b|0)>0?(c[(c[y>>2]|0)+580>>2]&262144|0)==0:0)break;Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,e,112);b=-1094995529;break a}while(0);Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,e,112);break}else if((f|0)==68){b=c[d+21800>>2]|0;e=c[d+21804>>2]|0;f=c[C>>2]|0;if(g|0){Gk(d,b,e,f,c[o>>2]|0,14);b=-1094995529;break a}Gk(d,b,e,f+-1|0,c[o>>2]|0,112);b=c[C>>2]|0;if((b|0)<=(h|0))break;vk(z,d,h,b);break}B=c[y>>2]|0;c[r>>2]=c[C>>2];c[r+4>>2]=e;ig(B,16,134961,r);Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[o>>2]|0,14);break a}else{b=d+4|0;Bk(b);q=d+32856|0;s=c[b>>2]|0;s=s+((Ck(b)|0)/8|0)|0;b=Ek(q,s,((Dk(b)|0)+7|0)/8|0)|0;if((b|0)<0)break a;Fk(z,d);s=d+21792|0;i=z+27012|0;j=d+21812|0;k=z+25700|0;r=d+32872|0;p=d+32876|0;n=z+27008|0;o=z+26380|0;h=t;b=c[s>>2]|0;while(1){t=(N(c[i>>2]|0,b)|0)+(c[C>>2]|0)|0;b=c[j>>2]|0;if((t|0)>=(b|0)){f=19;break}b=Hk(z,d)|0;if((b|0)>-1?(Ik(z,d),(c[x>>2]|0)!=0):0){c[s>>2]=(c[s>>2]|0)+1;b=Hk(z,d)|0;if((b|0)>-1)Ik(z,d);c[s>>2]=(c[s>>2]|0)+-1}g=Jk(q)|0;e=c[r>>2]|0;f=c[p>>2]|0;if((c[k>>2]&16384|0)!=0&e>>>0>(f+2|0)>>>0){f=26;break}if(e>>>0>(f+2|0)>>>0){t=c[y>>2]|0;c[u>>2]=f-e;ig(t,48,134889,u)}if((b|0)<0){f=31;break}b=c[r>>2]|0;e=c[p>>2]|0;if(b>>>0>(e+4|0)>>>0){f=33;break}b=(c[C>>2]|0)+1|0;c[C>>2]=b;do if((b|0)>=(c[i>>2]|0)){vk(z,d,h,b);c[C>>2]=0;Kk(z,d);b=c[s>>2]|0;c[s>>2]=b+1;if(!(c[x>>2]|0)){if((c[o>>2]|0)==3){e=0;break}c[s>>2]=b+2;e=0;break}else{t=b+2|0;c[s>>2]=t;if((t|0)>=(c[n>>2]|0)){e=0;break}Lk(z,d);e=0;break}}else e=h;while(0);b=c[s>>2]|0;if(g|0){f=43;break}if((b|0)>=(c[n>>2]|0)){f=43;break}else h=e}if((f|0)==19){B=c[y>>2]|0;c[v>>2]=b;ig(B,16,134857,v);Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}else if((f|0)==26){Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,c[s>>2]|0,112);b=c[C>>2]|0;if((b|0)<(h|0))break;vk(z,d,h,b+1|0);break}else if((f|0)==31){e=c[p>>2]|0;b=c[r>>2]|0}else if((f|0)!=33)if((f|0)==43){Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,(c[C>>2]|0)+-1|0,b,112);b=c[C>>2]|0;if((b|0)<=(e|0))break;vk(z,d,e,b);break}B=c[y>>2]|0;A=c[s>>2]|0;c[w>>2]=c[C>>2];c[w+4>>2]=A;c[w+8>>2]=e-b;ig(B,16,134914,w);Gk(d,c[d+21800>>2]|0,c[d+21804>>2]|0,c[C>>2]|0,c[s>>2]|0,14);b=-1094995529;break a}while(0);c[A>>2]=B;b=0}while(0);l=D;return b|0}function vk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;aa=e+21792|0;_=b+26376|0;h=c[_>>2]|0;ba=h+(c[aa>>2]|0)|0;ca=e+836|0;$=c[ca>>2]|0;X=b+25664|0;Y=c[X>>2]|0;Z=16>>>(c[b+25680>>2]|0);if(!(c[b+25708>>2]|0)){a:do if(!(c[e+868>>2]|0)){l=b+28212|0;k=e+852|0;j=e+856|0;i=e+21788|0}else{I=b+27016|0;J=e+21796|0;K=b+24364|0;i=e+21788|0;L=b+24316|0;M=e+21772|0;O=b+28216|0;P=e+21776|0;Q=e+21828|0;R=e+21780|0;S=e+21784|0;l=b+28212|0;T=b+24340|0;k=e+852|0;j=e+856|0;U=e+21832|0;V=e+27796|0;W=1-Z|0;while(1){h=c[_>>2]|0;if((f|0)>=(g|0))break a;H=f<(ba|0))break;F=(N(c[I>>2]|0,E)|0)+f|0;c[J>>2]=F;G=c[(c[K>>2]|0)+(F<<2)>>2]|0;t=(c[_>>2]|0)==0;h=G>>>7&1;if(t)h=c[Q>>2]|0;else{c[Q>>2]=h;c[U>>2]=h}c[i>>2]=f;c[aa>>2]=E;C=c[L>>2]|0;p=c[M>>2]|0;m=(c[C>>2]|0)+((N(p,E)|0)+H<<4)|0;s=c[(c[O>>2]|0)+12>>2]|0;z=(s|0)==3;D=N(8<<(z&1),H)|0;r=c[P>>2]|0;o=N(N(E,Z)|0,r)|0;n=(c[C+4>>2]|0)+D+o|0;o=(c[C+8>>2]|0)+D+o|0;if(h){h=p<<1;c[R>>2]=h;q=r<<1;c[S>>2]=q;if(!(E&1)){D=n;C=o;p=h}else{C=N(W,r)|0;m=m+(N(p,-15)|0)|0;D=n+C|0;C=o+C|0;p=h}}else{c[R>>2]=p;c[S>>2]=r;D=n;C=o;q=r}w=c[X>>2]|0;x=(s|0)==2;v=m+(0-p)|0;B=0-q|0;y=D+B|0;B=C+B|0;do if(!t){h=(c[U>>2]|0)!=0;if(!(E&1))if(h){h=0;u=f;A=33;break}else break;if(!h){t=c[V>>2]|0;h=v+(p*15|0)|0;s=h;A=c[s+4>>2]|0;u=t+(f*96|0)|0;c[u>>2]=c[s>>2];c[u+4>>2]=A;u=h+8|0;A=c[u+4>>2]|0;s=t+(f*96|0)+8|0;c[s>>2]=c[u>>2];c[s+4>>2]=A;s=(w|0)!=0;h=h+16|0;if(s){A=h;u=c[A+4>>2]|0;r=t+(f*96|0)+16|0;c[r>>2]=c[A>>2];c[r+4>>2]=u;r=h+8|0;u=c[r+4>>2]|0;A=t+(f*96|0)+24|0;c[A>>2]=c[r>>2];c[A+4>>2]=u}do if(z){h=q*15|0;n=y+h|0;r=n;o=c[r>>2]|0;r=c[r+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=o;c[A+4>>2]=r;A=n+8|0;u=c[A+4>>2]|0;s=t+(f*96|0)+40|0;c[s>>2]=c[A>>2];c[s+4>>2]=u;n=n+16|0;s=n;u=c[s+4>>2]|0;A=t+(f*96|0)+48|0;c[A>>2]=c[s>>2];c[A+4>>2]=u;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+56|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+64|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=h+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+72|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=h+16|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+80|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=88;h=h+8|0;break}else{A=t+(f*96|0)+16|0;c[A>>2]=o;c[A+4>>2]=r;n=n+8|0;A=c[n+4>>2]|0;u=t+(f*96|0)+24|0;c[u>>2]=c[n>>2];c[u+4>>2]=A;h=B+h|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+32|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=40;h=h+8|0;break}}else if(x){r=q*15|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q*7|0;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){A=t+(f*96|0)+32|0;c[A>>2]=n;c[A+4>>2]=o;A=h+8|0;u=c[A+4>>2]|0;h=t+(f*96|0)+40|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=B+r|0;u=h;A=c[u+4>>2]|0;n=t+(f*96|0)+48|0;c[n>>2]=c[u>>2];c[n+4>>2]=A;n=56;h=h+8|0;break}else{h=t+(f*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);A=h;u=c[A+4>>2]|0;h=t+(f*96|0)+n|0;c[h>>2]=c[A>>2];c[h+4>>2]=u;h=1;u=c[i>>2]|0;A=33}else{h=1;u=f;A=33}}else{h=1;u=f;A=33}while(0);if((A|0)==33){A=0;t=c[e+27796+(h<<2)>>2]|0;r=p<<4;h=v+r|0;s=h;v=c[s+4>>2]|0;o=t+(u*96|0)|0;c[o>>2]=c[s>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;s=t+(u*96|0)+8|0;c[s>>2]=c[o>>2];c[s+4>>2]=v;s=(w|0)!=0;h=h+16|0;if(s){w=h;v=c[w+4>>2]|0;o=t+(u*96|0)+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=v;o=h+8|0;v=c[o+4>>2]|0;w=t+(u*96|0)+24|0;c[w>>2]=c[o>>2];c[w+4>>2]=v}do if(z){h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;z=h+8|0;y=c[z+4>>2]|0;n=t+(u*96|0)+40|0;c[n>>2]=c[z>>2];c[n+4>>2]=y;n=h+16|0;y=n;h=c[y+4>>2]|0;z=t+(u*96|0)+48|0;c[z>>2]=c[y>>2];c[z+4>>2]=h;n=n+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+56|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+64|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=h+8|0;B=c[n+4>>2]|0;z=t+(u*96|0)+72|0;c[z>>2]=c[n>>2];c[z+4>>2]=B;h=h+16|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+80|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=88;h=h+8|0;break}else{z=t+(u*96|0)+16|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+24|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+32|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=40;h=h+8|0;break}}else if(x){r=q<<4;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}else{r=q<<3;h=y+r|0;o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;if(s){z=t+(u*96|0)+32|0;c[z>>2]=n;c[z+4>>2]=o;n=h+8|0;z=c[n+4>>2]|0;h=t+(u*96|0)+40|0;c[h>>2]=c[n>>2];c[h+4>>2]=z;h=B+r|0;z=h;B=c[z+4>>2]|0;n=t+(u*96|0)+48|0;c[n>>2]=c[z>>2];c[n+4>>2]=B;n=56;h=h+8|0;break}else{h=t+(u*96|0)+16|0;c[h>>2]=n;c[h+4>>2]=o;n=24;h=B+r|0;break}}while(0);y=h;z=c[y+4>>2]|0;B=t+(u*96|0)+n|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}do if(!(wk(b,e,G)|0)){G=c[l>>2]|0;F=(c[T>>2]|0)+F|0;c[k>>2]=d[(a[F>>0]|0)+(G+548)>>0];c[j>>2]=d[(a[F>>0]|0)+(G+636)>>0];if(!(c[_>>2]|0)){yk(b,e,f,E,m,D,C,p,q);break}else{xk(b,e,f,E,m,D,C,p,q);break}}while(0);E=E+1|0}f=f+1|0}}while(0);c[ca>>2]=$;c[i>>2]=g;c[aa>>2]=ba-h;ba=c[l>>2]|0;ca=c[e+848>>2]|0;c[k>>2]=d[ba+548+ca>>0];c[j>>2]=d[ba+636+ca>>0]}return} +function IR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=j;g=j+8|0;c[g>>2]=0;do if(b){f=0;while(1){f=pi(c[b>>2]|0,262784,f,2)|0;if(!f){d=7;break}h=f+4|0;e=fR(a,c[f>>2]|0,c[h>>2]|0,d)|0;if((e|0)==-1414549496)e=qi(g,c[f>>2]|0,c[h>>2]|0,0)|0;if((e|0)<0){d=6;break}}if((d|0)==6){h=c[h>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=h;ig(a,16,159649,i);Tg(g);break}else if((d|0)==7){Tg(b);c[b>>2]=c[g>>2];e=0;break}}else e=0;while(0);l=j;return e|0}function JR(a,b){a=a|0;b=b|0;return IR(a,b,0)|0}function KR(a){a=a|0;if(a>>>0<=11){if(!(3040>>>a&1))a=c[101928+(a*20|0)+16>>2]|0}else a=-1;return a|0}function LR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=o;if((f|0)<=-1){c[g>>2]=159687;c[g+4>>2]=159703;c[g+8>>2]=102;ig(0,0,159900,g);Tb()}if(!f){f=$Q()|0;f=(f|0)>1?f+1|0:1}k=(e|0)==0;j=f+(k<<31>>31)|0;n=$g(120)|0;c[a>>2]=n;a:do if(!n)f=-12;else{if(j|0?(i=eR(j,88)|0,c[n>>2]=i,(i|0)==0):0){eg(a);f=-12;break}c[n+108>>2]=b;c[n+112>>2]=d;c[n+116>>2]=e;b=n+4|0;c[b>>2]=f;g=n+8|0;c[n+104>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;Ac(n+24|0,0)|0;sc(n+52|0,0)|0;c[n+100>>2]=0;g=0;while(1){if((g|0)>=(j|0))break a;p=c[n>>2]|0;i=p+(g*88|0)|0;c[i>>2]=n;d=p+(g*88|0)+4|0;Ac(d|0,0)|0;e=p+(g*88|0)+32|0;sc(e|0,0)|0;AX(d|0)|0;h=p+(g*88|0)+84|0;c[h>>2]=0;i=vc(p+(g*88|0)+80|0,0,22,i|0)|0;if(i|0)break;while(1){if(c[h>>2]|0)break;uc(e|0,d|0)|0}BX(d|0)|0;g=g+1|0}c[b>>2]=g+(k&1);BX(d|0)|0;rc(e|0)|0;zc(d|0)|0;NR(a);f=0-i|0}while(0);l=o;return f|0}function MR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[a>>2]|0;h=a+4|0;AX(h|0)|0;i=a+32|0;tc(i|0)|0;j=g+104|0;b=a+84|0;d=g+24|0;e=g+100|0;f=g+52|0;while(1){c[b>>2]=1;a=1;while(1){if(!a)break;uc(i|0,h|0)|0;a=c[b>>2]|0}if(c[j>>2]|0)break;if(!(OR(g)|0))continue;AX(d|0)|0;c[e>>2]=1;tc(f|0)|0;BX(d|0)|0}BX(h|0)|0;return 0}function NR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0?(e=c[a>>2]|0,e|0):0){d=(c[e+4>>2]|0)+(((c[e+116>>2]|0)==0)<<31>>31)|0;c[e+104>>2]=1;b=0;while(1){if((b|0)>=(d|0)){b=0;break}g=c[e>>2]|0;f=g+(b*88|0)+4|0;AX(f|0)|0;c[g+(b*88|0)+84>>2]=0;tc(g+(b*88|0)+32|0)|0;BX(f|0)|0;b=b+1|0}while(1){if((b|0)>=(d|0))break;g=c[e>>2]|0;xc(c[g+(b*88|0)+80>>2]|0,0)|0;rc(g+(b*88|0)+32|0)|0;zc(g+(b*88|0)+4|0)|0;b=b+1|0}rc(e+52|0)|0;zc(e+24|0)|0;eg(e);eg(a)}return}function OR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=c[a+12>>2]|0;e=c[a+8>>2]|0;g=a+16|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a+112|0;h=a+108|0;b=a+20|0;a=f;do{Ud[c[g>>2]&127](c[h>>2]|0,a,f,d,e);a=c[b>>2]|0;c[b>>2]=a+1}while(a>>>0>>0);return (a|0)==(d+-1+e|0)|0}function PR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;if((b|0)<=0){c[e>>2]=159727;c[e+4>>2]=159703;c[e+8>>2]=168;ig(0,0,159900,e);Tb()}c[a+12>>2]=b;f=c[a+4>>2]|0;e=a+8|0;c[e>>2]=(f|0)<(b|0)?f:b;c[a+16>>2]=0;c[a+20>>2]=c[e>>2];f=a+116|0;d=(d|0)!=0;b=(c[e>>2]|0)+((d&(c[f>>2]|0)!=0^1)<<31>>31)|0;e=0;while(1){if((e|0)>=(b|0))break;j=c[a>>2]|0;i=j+(e*88|0)+4|0;AX(i|0)|0;c[j+(e*88|0)+84>>2]=0;tc(j+(e*88|0)+32|0)|0;BX(i|0)|0;e=e+1|0}b=c[f>>2]|0;if(!(d&(b|0)!=0)){if(!(OR(a)|0))g=9}else{Qd[b&63](c[a+108>>2]|0);g=9}if((g|0)==9){e=a+24|0;AX(e|0)|0;d=a+100|0;b=a+52|0;while(1){if(c[d>>2]|0)break;uc(b|0,e|0)|0}c[d>>2]=0;BX(e|0)|0}l=h;return}function QR(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107872+(d<<2)>>2]|0;Bc(185892,4)|0;if(!d)c[a>>2]=1;return b|0}function RR(){var a=0,b=0;a=0;while(1){b=c[107872+(a<<2)>>2]|0;if(a|0)break;a=c[b+76>>2]|0;if(!a){a=1;continue}Qd[a&63](b);a=1}return}function SR(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a=0;while(1){d=QR(b)|0;if(!d)break;if(!a){a=d;continue}c[a+60>>2]=d;a=d}l=e;return}function TR(a){a=a|0;Bc(185896,5)|0;if(!a)a=101756;else a=c[a+60>>2]|0;return a|0}function UR(a){a=a|0;return WR(a,23)|0}function VR(a){a=a|0;if(a)if((c[a+84>>2]|0)==0?(c[a+88>>2]|0)==0:0)a=(c[a+100>>2]|0)!=0&1;else a=1;else a=0;return a|0}function WR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;c[f>>2]=0;d=XR(a)|0;a=0;a:while(1){while(1){e=QR(f)|0;if(!e)break a;if(!(Jd[b&31](e)|0))continue;if((c[e+12>>2]|0)==(d|0))break}if(a|0?1:(c[e+16>>2]&512|0)==0){a=e;break}else a=e}l=g;return a|0}function XR(a){a=a|0;return a|0}function YR(a){a=a|0;return WR(a,24)|0}function ZR(a){a=a|0;if(a)if(!(c[a+92>>2]|0))a=(c[a+108>>2]|0)!=0&1;else a=1;else a=0;return a|0}function _R(a){a=a|0;var b=0;b=qg(896)|0;if(b){if((jS(b,a)|0)<0){fg(b);b=0}}else b=0;return b|0}function $R(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(a|0){if(aS(a)|0){f=a+28|0;b=c[f>>2]|0;e=c[b+16>>2]|0;if(c[b+20>>2]|0)bS(a);b=c[a+12>>2]|0;if(b|0?(d=c[b+96>>2]|0,d|0):0)Jd[d&31](a)|0;b=c[f>>2]|0;c[b+48>>2]=0;eg(b+44|0);Th((c[f>>2]|0)+12|0);Th((c[f>>2]|0)+100|0);Th((c[f>>2]|0)+76|0);Kg((c[f>>2]|0)+68|0);Kg((c[f>>2]|0)+40|0);Kg((c[f>>2]|0)+24|0);b=0;while(1){if((b|0)==4)break;kh(e+(b<<2)|0);b=b+1|0}eg((c[f>>2]|0)+16|0);b=c[a+592>>2]|0;if(b|0?(g=c[b+52>>2]|0,g|0):0)Jd[g&31](a)|0;eg((c[f>>2]|0)+60|0);cS(a);eg(f)}d=a+856|0;e=a+852|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;eg((c[e>>2]|0)+(b*12|0)|0);b=b+1|0}eg(e);c[d>>2]=0;Pg(a+860|0);Pg(a+880|0);d=a+24|0;e=c[d>>2]|0;b=a+12|0;if((e|0?(h=c[b>>2]|0,h|0):0)?c[h+44>>2]|0:0)Jg(e);Jg(a);eg(d);if(VR(c[b>>2]|0)|0){eg(a+68|0);Th(a+684|0)}c[b>>2]=0;c[a+696>>2]=0}return 0}function aS(a){a=a|0;return (c[a+28>>2]|0)!=0|0}function bS(a){a=a|0;if(!(c[a+696>>2]&1))eS(a);else dS(a,c[a+688>>2]|0);return}function cS(a){a=a|0;var b=0,d=0;d=c[a+28>>2]|0;b=d+36|0;d=d+32|0;a=0;while(1){if((a|0)>=(c[b>>2]|0))break;Ig((c[d>>2]|0)+(a<<2)|0);a=a+1|0}eg(d);c[b>>2]=0;return}function dS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=r;k=a+28|0;n=c[(c[k>>2]|0)+20>>2]|0;p=a+12|0;e=c[p>>2]|0;fS(n,b);f=n+4|0;g=c[f>>2]|0;if((g|0?(d=c[n>>2]|0,(g|0)!=(d|0)):0)?(gS(c[d+212>>2]|0,c[g+212>>2]|0,0)|0)<0:0){ig(a,16,159739,h);h=c[(c[(c[n>>2]|0)+212>>2]|0)+28>>2]|0;c[c[(c[(c[f>>2]|0)+212>>2]|0)+28>>2]>>2]=c[h>>2];c[h>>2]=1}f=e+96|0;e=0;while(1){if((e|0)>=(b|0)){d=0;break}g=c[n>>2]|0;h=g+(e*352|0)|0;d=g+(e*352|0)+156|0;AX(d|0)|0;c[g+(e*352|0)+332>>2]=1;tc(g+(e*352|0)+12|0)|0;BX(d|0)|0;d=g+(e*352|0)+8|0;if(c[d>>2]|0)xc(c[g+(e*352|0)+4>>2]|0,0)|0;c[d>>2]=0;d=c[f>>2]|0;if(d|0?(i=c[g+(e*352|0)+212>>2]|0,i|0):0)Jd[d&31](i)|0;hS(h);Th(g+(e*352|0)+288|0);e=e+1|0}while(1){if((d|0)>=(b|0))break;e=c[n>>2]|0;zc(e+(d*352|0)+156|0)|0;zc(e+(d*352|0)+184|0)|0;rc(e+(d*352|0)+12|0)|0;rc(e+(d*352|0)+60|0)|0;rc(e+(d*352|0)+108|0)|0;Ng(e+(d*352|0)+216|0);eg(e+(d*352|0)+304|0);e=e+(d*352|0)+212|0;if(d){f=c[e>>2]|0;if(f|0){eg(f+24|0);eg((c[e>>2]|0)+184|0);o=17}}else o=17;if((o|0)==17?(o=0,j=c[e>>2]|0,j|0):0){eg(j+28|0);Pg((c[e>>2]|0)+860|0)}eg(e);d=d+1|0}eg(n);zc(n+8|0)|0;zc(n+36|0)|0;zc(n+64|0)|0;rc(n+92|0)|0;eg((c[k>>2]|0)+20|0);d=c[a+24>>2]|0;if((d|0?(q=c[p>>2]|0,q|0):0)?c[q+44>>2]|0:0)Jg(d);c[p>>2]=0;l=r;return}function eS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+28|0;d=c[(c[b>>2]|0)+20>>2]|0;NR(d);e=d+36|0;f=d+44|0;g=d+40|0;a=0;while(1){if((a|0)>=(c[e>>2]|0))break;zc((c[f>>2]|0)+(a*28|0)|0)|0;rc((c[g>>2]|0)+(a*48|0)|0)|0;a=a+1|0}eg(d+28|0);eg(f);eg(g);eg((c[b>>2]|0)+20|0);return}function fS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;iS(a);d=0;while(1){if((d|0)>=(b|0))break;e=c[a>>2]|0;f=e+(d*352|0)+300|0;if(c[f>>2]|0){g=e+(d*352|0)+184|0;AX(g|0)|0;h=e+(d*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;uc(h|0,g|0)|0}BX(g|0)|0}c[e+(d*352|0)+292>>2]=0;d=d+1|0}fm(a);return}function gS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;do if((a|0)==(b|0))k=10;else{if((d|0)==0?c[(c[b+780>>2]|0)+16>>2]&1|0:0){k=12;break}e=b+76|0;f=c[e+4>>2]|0;g=a+76|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;g=b+760|0;f=c[g+4>>2]|0;e=a+760|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[a+92>>2]=c[b+92>>2];c[a+96>>2]=c[b+96>>2];c[a+112>>2]=c[b+112>>2];c[a+768>>2]=c[b+768>>2];c[a+100>>2]=c[b+100>>2];c[a+104>>2]=c[b+104>>2];c[a+140>>2]=c[b+140>>2];c[a+668>>2]=c[b+668>>2];c[a+672>>2]=c[b+672>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+188|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+716>>2]=c[b+716>>2];c[a+720>>2]=c[b+720>>2];c[a+676>>2]=c[b+676>>2];c[a+84>>2]=c[b+84>>2];c[a+316>>2]=c[b+316>>2];c[a+320>>2]=c[b+320>>2];c[a+324>>2]=c[b+324>>2];c[a+328>>2]=c[b+328>>2];c[a+332>>2]=c[b+332>>2];c[a+592>>2]=c[b+592>>2];c[a+596>>2]=c[b+596>>2];c[a+348>>2]=c[b+348>>2];c[a+344>>2]=c[b+344>>2];c[a+352>>2]=c[b+352>>2];g=b+376|0;f=c[g+4>>2]|0;e=a+376|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[(c[a+28>>2]|0)+60>>2]=c[(c[b+28>>2]|0)+60>>2];e=a+860|0;f=c[e>>2]|0;g=(f|0)!=0;h=b+860|0;i=c[h>>2]|0;if(!(g^(i|0)!=0)){if(g?(c[f+4>>2]|0)!=(c[i+4>>2]|0):0)k=7}else k=7;if(((k|0)==7?(Pg(e),j=c[h>>2]|0,j|0):0)?(j=Rh(j)|0,c[e>>2]=j,(j|0)==0):0){e=-12;break}c[a+884>>2]=c[b+884>>2];k=10}while(0);if((k|0)==10)if(!d)k=12;else{c[a+88>>2]=(c[b+688>>2]|0)+-1;c[a+684>>2]=c[b+684>>2];e=0}if((k|0)==12){e=c[(c[a+12>>2]|0)+68>>2]|0;if(!e)e=0;else e=Kd[e&15](a,b)|0}return e|0}function hS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;b=a+308|0;d=(c[a>>2]|0)+8|0;e=a+212|0;a=a+304|0;while(1){if((c[b>>2]|0)<=0){a=6;break}AX(d|0)|0;if((c[(c[e>>2]|0)+8>>2]|0)>>>0>=2){a=4;break}j=c[a>>2]|0;i=(c[b>>2]|0)+-1|0;c[b>>2]=i;h=j+(i*408|0)|0;c[j+(i*408|0)+64>>2]=h;oh(h);BX(d|0)|0}if((a|0)==4){c[f>>2]=159767;c[f+4>>2]=159856;c[f+8>>2]=371;ig(0,0,159900,f);Tb()}else if((a|0)==6){l=g;return}}function iS(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;b=a+64|0;AX(b|0)|0;d=a+140|0;if(!(c[d>>2]|0)){c[e>>2]=159883;c[e+4>>2]=159856;c[e+8>>2]=155;ig(0,0,159900,e);Tb()}else{c[d>>2]=0;zX(a+92|0)|0;BX(b|0)|0;l=f;return}}function jS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;yX(a|0,0,896)|0;c[a>>2]=107880;e=(b|0)!=0;a:do if(e){d=c[b+8>>2]|0;c[a+8>>2]=d;c[a+12>>2]=b;c[a+16>>2]=c[b+12>>2];switch(d|0){case 1:{d=8;break a}case 0:{d=16;break a}case 3:{d=32;break a}default:{f=6;break a}}}else{c[a+8>>2]=-1;f=6}while(0);if((f|0)==6)d=0;HR(a,d,d);c[a+76>>2]=0;c[a+80>>2]=1;c[a+760>>2]=0;c[a+764>>2]=1;c[a+772>>2]=0;c[a+776>>2]=1;c[a+400>>2]=12;c[a+120>>2]=10;c[a+704>>2]=4;c[a+708>>2]=41;c[a+188>>2]=0;c[a+192>>2]=1;c[a+112>>2]=-1;c[a+768>>2]=-1;c[a+352>>2]=-1;f=a+584|0;c[f>>2]=0;c[f+4>>2]=-2147483648;b:do if(e){e=c[b+56>>2]|0;if(e|0){f=a+24|0;d=c[f>>2]|0;if(!d){d=$g(e)|0;c[f>>2]=d;if(!d){g=-12;break}}e=c[b+44>>2]|0;if(e|0){c[d>>2]=e;GR(c[f>>2]|0)}}d=c[b+72>>2]|0;if(d){while(1){e=c[d>>2]|0;if(!e){g=0;break b}if((fR(a,e,c[d+4>>2]|0,0)|0)>-1)d=d+8|0;else break}c[h>>2]=159930;c[h+4>>2]=159939;c[h+8>>2]=142;ig(0,0,159900,h);Tb()}else g=0}else g=0;while(0);l=i;return g|0}function kS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=(e|0)==0;h=0;while(1){if((h|0)>=(f|0))break;i=d+(N(h,g)|0)|0;i=Kd[b&15](a,i)|0;if(!j)c[e+(h<<2)>>2]=i;h=h+1|0}return 0}function lS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(e|0)==0;g=0;while(1){if((g|0)>=(f|0))break;i=Md[b&1](a,d,g,0)|0;if(!h)c[e+(g<<2)>>2]=i;g=g+1|0}return 0}function mS(a){a=a|0;var b=0,d=0;if(!(((a|0)!=0?(d=c[a+12>>2]|0,(d|0)!=0):0)?(b=c[d>>2]|0,(b|0)!=0):0))b=171051;return b|0}function nS(a,b){a=a|0;b=b|0;var d=0,e=0;if(!((((b|0)==0?(e=c[a+12>>2]|0,(e|0)!=0):0)?(c[e+44>>2]|0)!=0:0)?(d=c[a+24>>2]|0,(d|0)!=0):0))d=0;return d|0}function oS(a){a=a|0;var b=0;a:do if(!a)a=0;else{b=0;while(1){b=TR(b)|0;if(!b){a=0;break a}if((c[b+44>>2]|0)==(a|0)){a=b;break}}}while(0);do{a=TR(a)|0;if(!a){b=0;break}b=c[a+44>>2]|0}while(!(b|0));return b|0}function pS(a){a=a|0;a=c[a+12>>2]|0;if((a|0)!=0?(c[a+92>>2]|0)!=0:0)a=6;else a=5;return a|0}function qS(b,d){b=b|0;d=d|0;var e=0;if(d>>>0<=2147483582){e=rQ(b,d+64|0)|0;if((e|0)>=0){e=(c[(c[b>>2]|0)+4>>2]|0)+d|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=0}}else e=-22;return e|0}function rS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+44|0;j=c[i>>2]|0;h=a+40|0;a=0;while(1){if((a|0)>=(j|0)){g=6;break}f=c[h>>2]|0;if((c[f+(a*12|0)+8>>2]|0)==(b|0)){g=4;break}a=a+1|0}if((g|0)==4){j=f+(a*12|0)|0;fg(c[j>>2]|0);c[j>>2]=d;c[f+(a*12|0)+4>>2]=e;a=0}else if((g|0)==6){a=j+1|0;if(a>>>0<=24){a=pg(c[h>>2]|0,a*12|0)|0;if(!a)a=-12;else{c[h>>2]=a;c[a+(j*12|0)>>2]=d;c[a+(j*12|0)+4>>2]=e;c[a+(j*12|0)+8>>2]=b;c[i>>2]=(c[i>>2]|0)+1;a=0}}else a=-34}return a|0}function sS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(d>>>0<=2147483583?(e=$g(d+64|0)|0,c[f>>2]=e,(e|0)!=0):0){if((rS(a,b,e,d)|0)<0){eg(f);e=0}}else e=0;l=g;return e|0}function tS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=b+8|0;d=c[g+4>>2]|0;h=a+8|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+16|0;d=c[h+4>>2]|0;g=a+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+56|0;d=c[g+4>>2]|0;h=a+56|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;h=b+48|0;d=c[h+4>>2]|0;g=a+48|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;g=b+64|0;d=c[g+4>>2]|0;h=a+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=d;c[a+36>>2]=c[b+36>>2];c[a+32>>2]=c[b+32>>2];c[a+40>>2]=0;c[a+44>>2]=0;h=b+44|0;d=b+40|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}g=c[d>>2]|0;e=c[g+(b*12|0)+4>>2]|0;f=c[g+(b*12|0)>>2]|0;g=sS(a,c[g+(b*12|0)+8>>2]|0,e)|0;if(!g){i=4;break}wX(g|0,f|0,e|0)|0;b=b+1|0}if((i|0)==4){Og(a);b=-12}return b|0}function uS(a,b){a=a|0;b=b|0;var d=0,e=0;d=tS(a,b)|0;do if((d|0)>=0){d=c[b>>2]|0;if(!d){e=b+28|0;d=qS(a,c[e>>2]|0)|0;if((d|0)<0)b=10;else{d=c[e>>2]|0;if(d|0)wX(c[(c[a>>2]|0)+4>>2]|0,c[b+24>>2]|0,d|0)|0;d=(c[a>>2]|0)+4|0;b=9}}else{e=Rh(d)|0;c[a>>2]=e;if(!e){d=-12;b=10}else{e=b+28|0;d=b+24|0;b=9}}if((b|0)==9){c[a+24>>2]=c[d>>2];c[a+28>>2]=c[e>>2];d=0;break}else if((b|0)==10){Og(a);break}}while(0);return d|0}function vS(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;b=c[107924+(d<<2)>>2]|0;if(!d)c[a>>2]=1;return b|0}function wS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;do{b=vS(d)|0;if(!b){b=0;break}}while((XT(c[b>>2]|0,a)|0)!=0);l=e;return b|0}function xS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;e=$g(40)|0;c[h>>2]=e;a:do if(!e)d=-12;else{c[e>>2]=107932;c[e+4>>2]=a;f=e+16|0;c[f>>2]=zS()|0;k=zS()|0;c[e+20>>2]=k;do if((!((k|0)==0|(c[f>>2]|0)==0)?(k=$g(8)|0,d=e+8|0,c[d>>2]=k,k|0):0)?(g=_P()|0,c[c[d>>2]>>2]=g,g=c[h>>2]|0,i=g,c[c[g+8>>2]>>2]|0):0){GR(g);d=c[a+12>>2]|0;if(d|0){f=$g(d)|0;e=g+12|0;c[e>>2]=f;if(!f)break;d=c[a+8>>2]|0;if(d|0){c[f>>2]=d;GR(c[e>>2]|0)}}c[b>>2]=i;d=0;break a}while(0);Ig(h);d=-12}while(0);l=j;return d|0}function yS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;Mg(a);e=c[b+8>>2]|0;c[a>>2]=e;c[a+4>>2]=c[b+16>>2];c[a+8>>2]=c[b+20>>2];g=b+40|0;f=c[g+4>>2]|0;d=a+24|0;c[d>>2]=c[g>>2];c[d+4>>2]=f;c[a+32>>2]=c[b+672>>2];c[a+36>>2]=c[b+676>>2];c[a+40>>2]=c[b+716>>2];c[a+44>>2]=c[b+720>>2];switch(e|0){case 0:{c[a+20>>2]=c[b+112>>2];c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];c[a+64>>2]=c[b+340>>2];c[a+68>>2]=c[b+328>>2];c[a+72>>2]=c[b+316>>2];c[a+76>>2]=c[b+320>>2];c[a+80>>2]=c[b+324>>2];c[a+84>>2]=c[b+332>>2];e=b+188|0;f=c[e+4>>2]|0;g=a+56|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+88>>2]=c[b+140>>2];break}case 1:{c[a+20>>2]=c[b+352>>2];e=b+376|0;f=c[e+4>>2]|0;g=a+96|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+104>>2]=c[b+348>>2];c[a+108>>2]=c[b+344>>2];c[a+112>>2]=c[b+364>>2];c[a+116>>2]=c[b+356>>2];c[a+120>>2]=c[b+756>>2];c[a+124>>2]=c[b+868>>2];c[a+128>>2]=c[b+828>>2];break}case 3:{c[a+48>>2]=c[b+92>>2];c[a+52>>2]=c[b+96>>2];break}default:{}}e=b+68|0;if(c[e>>2]|0){b=b+72|0;d=$g((c[b>>2]|0)+64|0)|0;c[a+12>>2]=d;if(!d)b=-12;else{b=c[b>>2]|0;wX(d|0,c[e>>2]|0,b|0)|0;c[a+16>>2]=b;b=0}}else b=0;return b|0}function zS(){var a=0;a=$g(136)|0;if(!a)a=0;else Mg(a);return a|0}function AS(a,b){a=a|0;b=b|0;if((b|0)==0?(c[(c[a+4>>2]|0)+8>>2]|0)!=0:0)a=c[a+12>>2]|0;else a=0;return a|0}function BS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=0;a:do if(a|0)do{b=vS(d)|0;if(!b)break a}while((c[b+8>>2]|0)!=(a|0));while(0);do{a=vS(d)|0;if(!a){a=0;break}a=c[a+8>>2]|0}while(!(a|0));l=e;return a|0}function CS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+28|0;g=c[e>>2]|0;f=g+64|0;do if(!(c[f>>2]|0)){d=DS(a,b)|0;if((d|0)==-541478725){c[f>>2]=1;d=-541478725;break}if((d|0)>=0){d=ES(c[e>>2]|0,b)|0;if((d|0)>=0){d=FS(a,b)|0;if((d|0)>=0){if(!(c[(c[a+12>>2]|0)+108>>2]|0)){d=0;break}d=g+92|0;c[d>>2]=(c[d>>2]|0)+(c[b+28>>2]|0);d=0;break}}Ng(b)}}else d=-541478725;while(0);return d|0}function DS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;h=c[a+28>>2]|0;g=h+36|0;h=h+32|0;f=(c[g>>2]|0)+-1|0;while(1){if((f|0)<=-1){d=-11;break}d=Ug(c[(c[h>>2]|0)+(f<<2)>>2]|0,b)|0;if((d|0)==-11){f=f+-1|0;continue}e=(d|0)<0;if(e&(d|0)!=-541478725)break;if((f|0)==((c[g>>2]|0)+-1|0))break;f=f+1|0;d=Vg(c[(c[h>>2]|0)+(f<<2)>>2]|0,e?0:b)|0;if((d|0)<0){j=8;break}}if((j|0)==8){ig(a,16,171274,i);Ng(b)}l=k;return d|0}function ES(a,b){a=a|0;b=b|0;var d=0;d=a+40|0;Ng(c[d>>2]|0);if(b){a=tS(c[d>>2]|0,b)|0;if(!a){c[(c[d>>2]|0)+28>>2]=c[b+28>>2];a=0}}else a=0;return a|0}function FS(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);o=p+32|0;n=p+24|0;j=p+16|0;h=p+8|0;e=p;k=p+36|0;c[k>>2]=0;g=Ei(b,2,k)|0;a:do if(!g)b=0;else{b:do if(!(c[(c[a+12>>2]|0)+16>>2]&16384)){ig(a,16,171069,e);b=-22;e=a}else{f=c[k>>2]|0;c:do if((f|0)>=4){e=g+4|0;i=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;b=f+-4|0;c[k>>2]=b;do if(i&1){if((f|0)<8)break c;b=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((b|0)<1){ig(a,16,171162,h);b=-1094995529;e=a;break b}else{c[a+348>>2]=b;b=f+-8|0;c[k>>2]=b;e=g+8|0;break}}while(0);if(i&2){if((b|0)<8)break;g=e;f=g;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=a+376|0;c[h>>2]=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;c[h+4>>2]=g;b=b+-8|0;c[k>>2]=b;e=e+8|0}do if(i&4){if((b|0)<4)break c;f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((f|0)<1){ig(a,16,171184,j);b=-1094995529;e=a;break b}else{c[a+344>>2]=f;b=b+-4|0;c[k>>2]=b;e=e+4|0;break}}while(0);if(!(i&8)){b=0;break a}if((b|0)>=8){n=e+4|0;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;c[a+92>>2]=j;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;c[a+96>>2]=n;c[k>>2]=b+-8;b=GS(a,j,n)|0;if((b|0)>=0){b=0;break a}e=a;break b}}while(0);ig(a,16,171204,n);b=-1094995529;e=a}while(0);ig(e,16,171239,o);b=(c[a+580>>2]&8|0)==0?0:b}while(0);l=p;return b|0}function GS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+872|0;e=ki(b,d,c[e>>2]|0,c[e+4>>2]|0,-1,0,a)|0;g=(e|0)<0;f=g?0:d;b=g?0:b;c[a+100>>2]=b;c[a+104>>2]=f;d=c[a+680>>2]|0;c[a+92>>2]=0-(0-b>>d);c[a+96>>2]=0-(0-f>>d);return e|0}function HS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+28|0;g=c[d>>2]|0;a:do if((aS(a)|0)!=0?(ZR(c[a+12>>2]|0)|0)!=0:0)if(!(c[(c[d>>2]|0)+64>>2]|0)){e=(b|0)!=0;if((e?(c[b+28>>2]|0)==0:0)?c[b+24>>2]|0:0){d=-22;break}d=IS(a)|0;if((d|0)>=0){f=g+68|0;Ng(c[f>>2]|0);do if(e){if((c[b+24>>2]|0)==0?(c[b+44>>2]|0)==0:0)break;d=uS(c[f>>2]|0,b)|0;if((d|0)<0)break a}while(0);d=Vg(c[c[g+32>>2]>>2]|0,c[f>>2]|0)|0;if((d|0)<0){Ng(c[f>>2]|0);break}d=c[g+76>>2]|0;b:do if((c[d+248>>2]|0)==0?(h=JS(a,d)|0,(h|0)<0):0)if((h|0)<-11)switch(h|0){case -541478725:break b;default:{d=h;break a}}else switch(h|0){case -11:break b;default:{d=h;break a}}while(0);d=0}}else d=-541478725;else d=-22;while(0);return d|0}function IS(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);k=o;h=o+8|0;i=o+4|0;d=c[b+28>>2]|0;j=d+36|0;a:do if(!(c[j>>2]|0)){f=c[(c[b+12>>2]|0)+120>>2]|0;f=(f|0)==0?171844:f;c[h>>2]=f;g=d+32|0;d=f;while(1){if(!d){d=0;break a}if(!(a[d>>0]|0)){d=0;break a}d=jQ(h,171849)|0;c[i>>2]=d;if(!d){d=-12;break}d=wS(d)|0;if(!d){n=8;break}eg(i);e=NN(c[g>>2]|0,(c[j>>2]|0)+1|0,4)|0;if(!e){d=-12;break}c[g>>2]=e;f=c[j>>2]|0;c[j>>2]=f+1;d=xS(d,e+(f<<2)|0)|0;if((d|0)<0)break;d=c[j>>2]|0;e=c[g>>2]|0;f=c[e+(d+-1<<2)>>2]|0;if((d|0)==1){c[f+24>>2]=1;c[f+28>>2]=9e4;d=yS(c[(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)+16>>2]|0,b)|0}else{e=(c[e+(d+-2<<2)>>2]|0)+32|0;d=c[e+4>>2]|0;f=f+24|0;c[f>>2]=c[e>>2];c[f+4>>2]=d;f=c[g>>2]|0;d=c[j>>2]|0;d=Xg(c[(c[f+(d+-1<<2)>>2]|0)+16>>2]|0,c[(c[f+(d+-2<<2)>>2]|0)+20>>2]|0)|0}if((d|0)<0)break;d=Yg(c[(c[g>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]|0)|0;if((d|0)<0)break;d=c[h>>2]|0}if((n|0)==8){c[k>>2]=c[i>>2];ig(b,16,171851,k);eg(i);d=-558323010}cS(b)}else d=0;while(0);l=o;return d|0}function JS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=i+16|0;d=i;e=c[a+28>>2]|0;if(c[b+248>>2]|0){c[d>>2]=171321;c[d+4>>2]=124842;c[d+8>>2]=607;ig(0,0,159900,d);Tb()}f=a+12|0;d=c[(c[f>>2]|0)+108>>2]|0;if(!d)d=KS(a,b)|0;else d=Kd[d&15](a,b)|0;a:do if((d|0)>=0){switch(d|0){case 0:break;default:{h=16;break a}}d=c[b+400>>2]|0;e=(d|0)==0;if(!(!e?(c[d+8>>2]|0)==20:0))h=10;do if((h|0)==10)if(!(c[(c[f>>2]|0)+16>>2]&2))if(e){d=0;h=16;break a}else break;else{c[g>>2]=171336;c[g+4>>2]=124842;c[g+8>>2]=621;ig(0,0,159900,g);Tb()}while(0);d=c[c[d+4>>2]>>2]|0;if(d){d=Kd[d&15](a,b)|0;if((d|0)<0)oh(b);else h=16}else{d=0;h=16}}else{switch(d|0){case -541478725:break;default:{h=16;break a}}c[e+80>>2]=1;d=-541478725;h=16}while(0);if((h|0)==16)Pg(b+400|0);l=i;return d|0}function KS(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+248|0;do{if(c[e>>2]|0){d=0;break}d=LS(a,b)|0}while((d|0)>=0);return d|0}function LS(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0;Z=l;l=l+144|0;if((l|0)>=(m|0))W(144);M=Z+128|0;L=Z+120|0;Y=Z+64|0;S=Z+56|0;J=Z+48|0;H=Z+40|0;E=Z+32|0;A=Z+24|0;t=Z+16|0;q=Z+8|0;j=Z;V=Z+96|0;i=Z+76|0;s=Z+112|0;D=Z+104|0;P=Z+88|0;Q=Z+80|0;R=b+28|0;X=c[R>>2]|0;T=c[X+24>>2]|0;U=T+24|0;if(!(((c[U>>2]|0)==0?(c[X+64>>2]|0)==0:0)?(Ng(T),f=CS(b,T)|0,(f|0)<0&(f|0)!=-541478725):0))k=4;do if((k|0)==4){O=X+80|0;if(!(c[O>>2]|0)){if(((c[U>>2]|0)==0?(c[(c[b+12>>2]|0)+16>>2]&32|0)==0:0)?(c[b+696>>2]&1|0)==0:0){f=-541478725;break}c[V>>2]=0;K=b+696|0;if(!(c[K>>2]&1)){h=b+12|0;f=Md[c[(c[h>>2]|0)+92>>2]&1](b,e,V,T)|0;g=c[h>>2]|0;if(!(c[g+116>>2]&4)){w=T+16|0;x=c[w+4>>2]|0;z=e+120|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+8>>2]|0)){if(!(c[b+140>>2]|0)){w=T+56|0;x=c[w+4>>2]|0;z=e+328|0;c[z>>2]=c[w>>2];c[z+4>>2]=x}if(!(c[g+16>>2]&2)){g=e+92|0;if(!(c[g>>2]|0)){w=b+188|0;x=c[w+4>>2]|0;z=g;c[z>>2]=c[w>>2];c[z+4>>2]=x}g=e+68|0;if(!(c[g>>2]|0))c[g>>2]=c[b+92>>2];g=e+72|0;if(!(c[g>>2]|0))c[g>>2]=c[b+96>>2];g=e+80|0;if((c[g>>2]|0)==-1){c[g>>2]=c[b+112>>2];x=h}else x=h}else x=h}else x=h}else{f=MS(b,e,V,T)|0;x=b+12|0}z=c[V>>2]|0;a:do switch(c[(c[x>>2]|0)+8>>2]|0){case 0:{if(c[e+296>>2]&4|0){c[V>>2]=0;break a}if(z|0){H=e+104|0;G=e+120|0;G=NS(b,c[H>>2]|0,c[H+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;H=e+320|0;c[H>>2]=G;c[H+4>>2]=y}break}case 1:{if((f|0)>-1&(z|0)!=0){g=e+104|0;w=e+120|0;w=NS(b,c[g>>2]|0,c[g+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;g=e+320|0;c[g>>2]=w;c[g+4>>2]=y;g=e+80|0;if((c[g>>2]|0)==-1)c[g>>2]=c[b+352>>2];g=e+240|0;w=g;if((c[w>>2]|0)==0&(c[w+4>>2]|0)==0){u=b+376|0;v=c[u+4>>2]|0;w=g;c[w>>2]=c[u>>2];c[w+4>>2]=v}g=e+352|0;if(!(c[g>>2]|0))c[g>>2]=c[b+348>>2];g=e+232|0;if(!(c[g>>2]|0))c[g>>2]=c[b+344>>2]}g=Ei(c[X+40>>2]|0,11,i)|0;if((g|0)!=0&(c[i>>2]|0)>9){v=c[R>>2]|0;w=N(c[v+108>>2]|0,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;c[v+56>>2]=w;v=g+4|0;v=d[v>>0]|d[v+1>>0]<<8|d[v+2>>0]<<16|d[v+3>>0]<<24;c[j>>2]=w;c[j+4>>2]=v;ig(b,48,171456,j);w=a[g+8>>0]|0;u=a[g+9>>0]|0}else{v=0;w=0;u=0}g=c[V>>2]|0;if((g|0?(c[e+296>>2]&4|0)!=0:0)?(c[b+64>>2]&536870912|0)==0:0){n=(c[R>>2]|0)+56|0;j=(c[n>>2]|0)-(c[e+76>>2]|0)|0;c[n>>2]=(j|0)>0?j:0;c[V>>2]=0}else k=43;do if(((k|0)==43?(o=(c[R>>2]|0)+56|0,p=c[o>>2]|0,(p|0)>0&(g|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){n=e+76|0;g=c[n>>2]|0;if((g|0)<=(p|0)){c[V>>2]=0;A=p-g|0;c[o>>2]=A;c[q>>2]=A;ig(b,48,171503,q);break}q=c[e+64>>2]|0;ai(q,q,0,p,g-p|0,c[b+348>>2]|0,c[e+80>>2]|0)|0;g=b+772|0;if((c[g>>2]|0)!=0?(r=c[b+344>>2]|0,(r|0)!=0):0){j=c[(c[R>>2]|0)+56>>2]|0;c[s>>2]=1;c[s+4>>2]=r;c[L>>2]=c[s>>2];c[L+4>>2]=c[s+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];j=dR(j,((j|0)<0)<<31>>31,L,M)|0;k=y;g=e+104|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=hX(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+112|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=hX(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+120|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((h|0)==0&(i|0)==-2147483648)){s=hX(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}g=e+336|0;i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(k|0)|(i|0)==(k|0)&h>>>0>>0)){s=iX(h|0,i|0,j|0,k|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=y}}else ig(b,24,171536,t);t=c[n>>2]|0;c[A>>2]=c[(c[R>>2]|0)+56>>2];c[A+4>>2]=t;ig(b,48,171586,A);A=(c[R>>2]|0)+56|0;c[n>>2]=(c[n>>2]|0)-(c[A>>2]|0);c[A>>2]=0}while(0);do if((v|0?(F=e+76|0,B=c[F>>2]|0,B>>>0>=v>>>0&(c[V>>2]|0)!=0):0)?(c[b+64>>2]&536870912|0)==0:0){if((B|0)==(v|0)){c[V>>2]=0;break}g=b+772|0;if((c[g>>2]|0)!=0?(C=c[b+344>>2]|0,(C|0)!=0):0){c[D>>2]=1;c[D+4>>2]=C;c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[M>>2]=c[g>>2];c[M+4>>2]=c[g+4>>2];E=dR(B-v|0,0,L,M)|0;g=e+336|0;c[g>>2]=E;c[g+4>>2]=y;g=b}else{ig(b,24,171606,E);g=b}E=c[F>>2]|0;c[H>>2]=v;c[H+4>>2]=E;ig(g,48,171658,H);c[F>>2]=(c[F>>2]|0)-v}while(0);if((c[V>>2]|0?(c[b+64>>2]&536870912|0)!=0:0)?(G=ni(e,9,10)|0,G|0):0){F=c[(c[R>>2]|0)+56>>2]|0;H=G+4|0;G=c[H>>2]|0;a[G>>0]=F;a[G+1>>0]=F>>8;a[G+2>>0]=F>>16;a[G+3>>0]=F>>24;G=(c[H>>2]|0)+4|0;a[G>>0]=v;a[G+1>>0]=v>>8;a[G+2>>0]=v>>16;a[G+3>>0]=v>>24;a[(c[H>>2]|0)+8>>0]=w;a[(c[H>>2]|0)+9>>0]=u;c[(c[R>>2]|0)+56>>2]=0}break}default:{}}while(0);g=c[x>>2]|0;if((((c[g+8>>2]|0)==1?(I=X+104|0,(f|0)>-1&(c[I>>2]|0)==0):0)?(f|0)!=(c[T+28>>2]|0):0)?(c[g+16>>2]&256|0)==0:0){ig(b,24,171681,J);c[I>>2]=1}if(!(c[V>>2]|0))oh(e);if(((f|0)>-1?(c[(c[x>>2]|0)+8>>2]|0)==0:0)?(c[b+60>>2]&65536|0)==0:0)f=c[T+28>>2]|0;g=b+760|0;if((c[g>>2]|0)>0?(c[b+764>>2]|0)>0:0){c[Q>>2]=c[b+84>>2];c[Q+4>>2]=1;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[M>>2]=c[Q>>2];c[M+4>>2]=c[Q+4>>2];pO(P,L,M);M=c[P>>2]|0;Q=b+76|0;c[Q>>2]=c[P+4>>2];c[Q+4>>2]=M}do if(!(z|0?1:(c[(c[R>>2]|0)+64>>2]|0)==0)){if((f|0)>=0){c[O>>2]=1;break}if(!(c[K>>2]&1))g=21;else g=(c[b+688>>2]|0)+20|0;Q=X+112|0;R=c[Q>>2]|0;c[Q>>2]=R+1;if((R|0)>=(g|0)){ig(b,16,171711,S);c[O>>2]=1;f=-558323010}}while(0);g=X+92|0;c[g>>2]=(c[g>>2]|0)+f;g=T+28|0;h=c[g>>2]|0;i=(f|0)<0;if(i|(h|0)<=(f|0))Ng(T);else{c[U>>2]=(c[U>>2]|0)+f;c[g>>2]=h-f;X=c[X+40>>2]|0;U=X+28|0;c[U>>2]=(c[U>>2]|0)-f;U=T+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=T+16|0;c[U>>2]=0;c[U+4>>2]=-2147483648;U=X+8|0;c[U>>2]=0;c[U+4>>2]=-2147483648;X=X+16|0;c[X>>2]=0;c[X+4>>2]=-2147483648}if(c[V>>2]|0?(c[e+248>>2]|0)==0:0){c[Y>>2]=171787;c[Y+4>>2]=124842;c[Y+8>>2]=584;ig(0,0,159900,Y);Tb()}f=i?f:0}else f=-541478725}while(0);l=Z;return f|0}function MS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[(c[a+28>>2]|0)+20>>2]|0;o=p+148|0;h=c[o>>2]|0;iS(p);n=p+144|0;f=OS((c[p>>2]|0)+((c[n>>2]|0)*352|0)|0,a,e)|0;do if(!f){m=a+688|0;f=p+152|0;if((c[n>>2]|0)<=((c[m>>2]|0)+-1+(((c[a+16>>2]|0)==33)<<31>>31)|0))if(c[f>>2]|0){c[d>>2]=0;e=e+28|0;f=c[e>>2]|0;if(f)break}else g=5;else{c[f>>2]=0;g=5}if((g|0)==5)e=e+28|0;l=b+120|0;j=h;while(1){k=c[p>>2]|0;i=j+1|0;f=k+(j*352|0)+300|0;if(c[f>>2]|0){g=k+(j*352|0)+184|0;AX(g|0)|0;h=k+(j*352|0)+108|0;while(1){if(!(c[f>>2]|0))break;uc(h|0,g|0)|0}BX(g|0)|0}ph(b,c[k+(j*352|0)+288>>2]|0);h=k+(j*352|0)+292|0;c[d>>2]=c[h>>2];q=k+(j*352|0)+232|0;f=c[q+4>>2]|0;g=l;c[g>>2]=c[q>>2];c[g+4>>2]=f;g=k+(j*352|0)+296|0;f=c[g>>2]|0;c[h>>2]=0;c[g>>2]=0;g=(i|0)<(c[m>>2]|0)?i:0;if(c[e>>2]|0)break;if(!((f|0)>-1&(c[d>>2]|0)==0))break;if((g|0)==(c[o>>2]|0))break;else j=g}gS(a,c[k+(j*352|0)+212>>2]|0,1)|0;if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=0;c[o>>2]=g;if((f|0)>-1)f=c[e>>2]|0}while(0);fm(p);return f|0}function NS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(e|0)==0&(f|0)==-2147483648;if(k)if((b|0)==0&(d|0)==-2147483648)g=0;else{l=a+808|0;c[l>>2]=b;c[l+4>>2]=d;l=6}else{l=a+808|0;i=l;h=c[i+4>>2]|0;j=a+792|0;g=j;i=hX(c[g>>2]|0,c[g+4>>2]|0,((h|0)>(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0>=e>>>0:0))&1|0,0)|0;c[j>>2]=i;c[j+4>>2]=y;c[l>>2]=e;c[l+4>>2]=f;if((b|0)==0&(d|0)==-2147483648){h=a+800|0;g=0;i=e;j=f;l=7}else l=6}if((l|0)==6){h=a+800|0;i=h;j=c[i+4>>2]|0;g=a+784|0;m=g;i=hX(c[m>>2]|0,c[m+4>>2]|0,((j|0)>(d|0)|((j|0)==(d|0)?(c[i>>2]|0)>>>0>=b>>>0:0))&1|0,0)|0;c[g>>2]=i;c[g+4>>2]=y;g=1;i=b;j=d;l=7}if((l|0)==7){m=h;c[m>>2]=i;c[m+4>>2]=j}l=a+784|0;j=c[l+4>>2]|0;m=a+792|0;a=c[m+4>>2]|0;m=g&(k|((j|0)<(a|0)|((j|0)==(a|0)?(c[l>>2]|0)>>>0<=(c[m>>2]|0)>>>0:0)));y=m?d:f;return (m?b:e)|0}function OS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=q;k=c[a>>2]|0;n=k+4|0;g=c[n>>2]|0;o=a+212|0;if((c[d+28>>2]|0)==0?(c[(c[(c[o>>2]|0)+12>>2]|0)+16>>2]&32|0)==0:0)b=0;else p=3;do if((p|0)==3){i=a+156|0;AX(i|0)|0;b=PS(c[o>>2]|0,b)|0;if(b|0){BX(i|0)|0;break}c[a+344>>2]=(c[(c[o>>2]|0)+576>>2]|0)>>>16&1;hS(a);if(g|0){b=g+300|0;if((c[b>>2]|0)==1){e=g+184|0;AX(e|0)|0;f=g+60|0;while(1){if((c[b>>2]|0)!=1)break;uc(f|0,e|0)|0}BX(e|0)|0}b=gS(c[o>>2]|0,c[g+212>>2]|0,0)|0;if(b|0){BX(i|0)|0;break}}b=a+216|0;Ng(b);b=uS(b,d)|0;if((b|0)<0){BX(i|0)|0;ig(c[o>>2]|0,16,171801,h);break}j=a+300|0;c[j>>2]=1;tc(a+12|0)|0;BX(i|0)|0;b=c[o>>2]|0;a:do if(!(c[b+700>>2]|0)){if((c[b+120>>2]|0)==10?(c[b+400>>2]|0)==12:0)break;b=a+184|0;e=a+60|0;f=a+316|0;g=a+320|0;d=a+296|0;h=a+324|0;i=a+328|0;while(1){if((c[j>>2]|0)==4)break a;if(!(c[j>>2]|0))break a;AX(b|0)|0;while(1){if((c[j>>2]|0)!=1)break;uc(e|0,b|0)|0}switch(c[j>>2]|0){case 2:{c[d>>2]=In(c[o>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;p=27;break}case 3:{c[i>>2]=cN(c[o>>2]|0,c[h>>2]|0)|0;p=27;break}default:{}}if((p|0)==27){p=0;c[j>>2]=1;tc(e|0)|0}BX(b|0)|0}}while(0);c[n>>2]=a;b=k+144|0;c[b>>2]=(c[b>>2]|0)+1;b=0}while(0);l=q;return b|0}function PS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a+60>>2]=c[b+60>>2];c[a+116>>2]=c[b+116>>2];c[a+400>>2]=c[b+400>>2];c[a+32>>2]=c[b+32>>2];c[a+576>>2]=c[b+576>>2];c[a+832>>2]=c[b+832>>2];c[a+240>>2]=c[b+240>>2];c[a+64>>2]=c[b+64>>2];f=a+724|0;d=b+724|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[a+360>>2]=c[b+360>>2];f=b+584|0;d=c[f+4>>2]|0;g=a+584|0;c[g>>2]=c[f>>2];c[g+4>>2]=d;c[a+700>>2]=c[b+700>>2];g=b+176|0;d=c[g>>2]|0;do if(d){e=b+184|0;b=c[e>>2]|0;if(!b)h=7;else{f=a+184|0;if((c[a+176>>2]|0)<(d|0)){d=WN(f,d,4)|0;if((d|0)<=-1)break;d=c[g>>2]|0;b=c[e>>2]|0}wX(c[f>>2]|0,b|0,d<<2|0)|0;d=c[g>>2]|0;h=7}}else{d=0;h=7}while(0);if((h|0)==7){c[a+176>>2]=d;d=0}return d|0}function QS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+28>>2]|0;oh(b);do if((aS(a)|0)!=0?(ZR(c[a+12>>2]|0)|0)!=0:0){d=IS(a)|0;if((d|0)>=0){d=c[e+76>>2]|0;if(!(c[d+248>>2]|0)){d=JS(a,b)|0;if((d|0)<0)break}else ph(b,d);if((c[a+8>>2]|0)==0?(f=RS(a,b)|0,(f|0)<0):0){oh(b);d=f;break}d=a+360|0;c[d>>2]=(c[d>>2]|0)+1;d=0}}else d=-22;while(0);return d|0}function RS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=o;f=b+392|0;g=c[f>>2]|0;h=b+396|0;i=c[h>>2]|0;j=b+384|0;k=c[j>>2]|0;d=b+388|0;e=c[d>>2]|0;if((g>>>0<(2147483647-i|0)>>>0&k>>>0<(2147483647-e|0)>>>0?(i+g|0)>>>0<(c[b+68>>2]|0)>>>0:0)?(e+k|0)>>>0<(c[b+72>>2]|0)>>>0:0)if(!(c[a+888>>2]|0))a=0;else a=aR(b,c[a+60>>2]&1)|0;else{p=c[b+68>>2]|0;b=c[b+72>>2]|0;c[n>>2]=g;c[n+4>>2]=i;c[n+8>>2]=k;c[n+12>>2]=e;c[n+16>>2]=p;c[n+20>>2]=b;ig(a,24,171944,n);c[f>>2]=0;c[h>>2]=0;c[j>>2]=0;c[d>>2]=0;a=0}l=o;return a|0}function SS(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){$R(b)|0;eg(b+68|0);eg(b+736|0);eg(b+248|0);eg(b+252|0);eg(b+436|0);eg(a)}return}function TS(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;d=c[107976+(b<<2)>>2]|0;if((b|0)!=3)c[a>>2]=b+1;return d|0}function US(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;c[b>>2]=0;a:do if(!a)a=0;else{do{d=TS(b)|0;if(!d){a=0;break a}if((c[d>>2]|0)==(a|0))break;if((c[d+4>>2]|0)==(a|0))break;if((c[d+8>>2]|0)==(a|0))break;if((c[d+12>>2]|0)==(a|0))break}while((c[d+16>>2]|0)!=(a|0));a=$g(344)|0;if(a|0){c[a+4>>2]=d;b=$g(c[d+20>>2]|0)|0;c[a>>2]=b;do if(b|0){c[a+72>>2]=1;c[a+32>>2]=1;b=c[d+24>>2]|0;if(b|0?Jd[b&31](a)|0:0)break;c[a+224>>2]=-1;d=a+232|0;c[d>>2]=0;c[d+4>>2]=0;c[a+240>>2]=-2147483648;c[a+244>>2]=-2147483648;c[a+248>>2]=-2147483648;c[a+336>>2]=-1;break a}while(0);eg(a)}fg(a);a=0}while(0);l=e;return a|0}function VS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=(e|0)!=0;if(u){n=a+48|0;o=a+40|0;p=a+288|0;q=a+184|0}else{o=a+40|0;n=o;c[n>>2]=0;c[n+4>>2]=-2147483648;n=a+48|0;p=n;c[p>>2]=0;c[p+4>>2]=-2147483648;p=a+288|0;q=p;c[q>>2]=-1;c[q+4>>2]=-1;q=a+184|0;t=q;c[t>>2]=0;c[t+4>>2]=0}r=a+16|0;s=((b|0)<0)<<31>>31;t=a+8|0;l=(d|0)==0;m=a+24|0;k=0;a:while(1){if((k|0)>=4)break;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0;i=hX(d|0,e|0,b|0,s|0)|0;h=y;j=a+80+(k<<3)|0;g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;do if(!((h|0)<(g|0)|(h|0)==(g|0)&i>>>0>>0)){i=t;h=c[i>>2]|0;i=c[i+4>>2]|0;if(!((i|0)<(g|0)|(i|0)==(g|0)&h>>>0>>0)){if(!((h|0)==0&(i|0)==0))break;i=m;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0))break}h=a+192+(k<<3)|0;i=h;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0)){g=a+144+(k<<3)|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!(u&((f|0)==0&(g|0)==-2147483648))){i=n;c[i>>2]=f;c[i+4>>2]=g;i=a+112+(k<<3)|0;g=c[i+4>>2]|0;f=o;c[f>>2]=c[i>>2];c[f+4>>2]=g;f=a+256+(k<<3)|0;g=c[f+4>>2]|0;i=p;c[i>>2]=c[f>>2];c[i+4>>2]=g;i=m;g=j;g=iX(c[i>>2]|0,c[i+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=q;c[i>>2]=g;c[i+4>>2]=y}if(!l){e=j;c[e>>2]=-1;c[e+4>>2]=2147483647;e=r;d=c[e>>2]|0;e=c[e+4>>2]|0}i=hX(d|0,e|0,b|0,s|0)|0;g=y;j=h;h=c[j+4>>2]|0;if((g|0)<(h|0)|((g|0)==(h|0)?i>>>0<(c[j>>2]|0)>>>0:0))break a}}while(0);k=k+1|0}return}function WS(b,d,e,f,g,h,i,j,k,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0;A=l;l=l+80|0;if((l|0)>=(m|0))W(80);z=A;q=A+16|0;r=b+176|0;s=c[r>>2]|0;if(!(s&4)){v=b+16|0;c[v>>2]=o;c[v+4>>2]=p;v=b+24|0;c[v>>2]=o;c[v+4>>2]=p;c[r>>2]=s|4}if(h){r=b+16|0;q=c[r>>2]|0;r=c[r+4>>2]|0;s=hX(q|0,r|0,h|0,((h|0)<0)<<31>>31|0)|0;t=y;u=b+76|0;v=c[u>>2]|0;B=b+192+(v<<3)|0;if((s|0)==(c[B>>2]|0)?(t|0)==(c[B+4>>2]|0):0)q=g;else{B=v+1&3;c[u>>2]=B;v=b+80+(B<<3)|0;c[v>>2]=q;c[v+4>>2]=r;q=b+192+(B<<3)|0;c[q>>2]=s;c[q+4>>2]=t;q=b+112+(B<<3)|0;c[q>>2]=i;c[q+4>>2]=j;q=b+144+(B<<3)|0;c[q>>2]=k;c[q+4>>2]=n;q=b+256+(B<<3)|0;c[q>>2]=o;c[q+4>>2]=p;q=g}}else{r=q;s=r+64|0;do{a[r>>0]=0;r=r+1|0}while((r|0)<(s|0))}r=b+72|0;if(c[r>>2]|0){c[r>>2]=0;k=b+40|0;n=c[k+4>>2]|0;B=b+56|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;B=b+48|0;n=c[B+4>>2]|0;k=b+64|0;c[k>>2]=c[B>>2];c[k+4>>2]=n;k=b+288|0;n=c[k+4>>2]|0;B=b+296|0;c[B>>2]=c[k>>2];c[B+4>>2]=n;VS(b,0,0,0)}t=Od[c[(c[b+4>>2]|0)+28>>2]&7](b,d,e,f,q,h)|0;if((t|0)<=-536870912){c[z>>2]=172060;c[z+4>>2]=116867;c[z+8>>2]=253;ig(0,0,159900,z);Tb()}if(((c[d+8>>2]|0)==0?(w=c[b+308>>2]|0,w|0):0)?(x=d+340|0,(c[x>>2]|0)==0):0)c[x>>2]=w;if(!(c[f>>2]|0)){q=b+16|0;s=q;r=c[s>>2]|0;s=c[s+4>>2]|0}else{z=b+24|0;B=z;s=c[B+4>>2]|0;q=b+8|0;c[q>>2]=c[B>>2];c[q+4>>2]=s;q=b+16|0;s=q;B=c[s>>2]|0;s=c[s+4>>2]|0;f=hX(B|0,s|0,t|0,((t|0)<0)<<31>>31|0)|0;c[z>>2]=f;c[z+4>>2]=y;c[r>>2]=1;r=B}B=(t|0)>0?t:0;f=hX(r|0,s|0,B|0,0)|0;z=q;c[z>>2]=f;c[z+4>>2]=y;l=A;return B|0}function XS(a){a=a|0;var b=0;if(a|0){b=c[(c[a+4>>2]|0)+32>>2]|0;if(b|0)Qd[b&63](a);eg(a);fg(a)}return}function YS(a){a=a|0;var b=0;ZS(a);b=c[a+696>>2]|0;if(!(b&2))if(!(b&1))a=0;else a=$S(a)|0;else a=_S(a)|0;return a|0}function ZS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;f=c[(c[a+12>>2]|0)+16>>2]|0;if((f&4096|0)!=0?(c[a+60>>2]&589824|0)==0:0)e=(c[a+64>>2]&32768|0)==0;else e=0;d=a+688|0;b=c[d>>2]|0;do if((b|0)!=1){if(e?c[a+692>>2]&1|0:0){d=1;h=11;break}if(f&8192|0?c[a+692>>2]&2|0:0){d=2;h=11;break}if(!(f&32768)){c[d>>2]=1;d=0;b=1;h=11}}else{d=0;b=1;h=11}while(0);if((h|0)==11)c[a+696>>2]=d;if((b|0)>16){c[g>>2]=b;c[g+4>>2]=16;ig(a,24,172198,g)}l=i;return}function _S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=a+688|0;b=c[i>>2]|0;h=a+12|0;if(((VR(c[h>>2]|0)|0)!=0?(c[a+16>>2]|0)==1:0)?(c[a+96>>2]|0)>2800:0){c[i>>2]=1;j=10}else j=5;a:do if((j|0)==5){if(!b){b=$Q()|0;d=c[a+96>>2]|0;if(d){g=(d+15|0)/16|0;b=(b|0)>(g|0)?g:b}e=b+1|0;e=(b|0)>1?((e|0)<16?e:16):1;c[i>>2]=e}else e=b;if((e|0)<2)j=10;else{f=$g(48)|0;g=a+28|0;b=c[g>>2]|0;c[b+20>>2]=f;d=c[(c[h>>2]|0)+116>>2]&32|0?32:0;c[46475]=d;do if(f){b=LR(f,a,79,d,e)|0;if((b|0)<2){NR(f);b=c[g>>2]|0;break}else{c[i>>2]=b;c[a+704>>2]=5;c[a+708>>2]=42;break a}}while(0);eg(b+20|0);c[i>>2]=1;c[a+696>>2]=0}}while(0);if((j|0)==10)c[a+696>>2]=0;return 0}function $S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);t=v;b=a+688|0;d=c[b>>2]|0;e=c[a+12>>2]|0;if(!d){s=$Q()|0;d=s+1|0;d=(s|0)>1?((d|0)<16?d:16):1;c[b>>2]=d}a:do if((d|0)>=2){s=$g(156)|0;b=a+28|0;c[(c[b>>2]|0)+20>>2]=s;if(!s)b=-12;else{r=xh(d,352)|0;c[s>>2]=r;if(!r){eg((c[b>>2]|0)+20|0);b=-12;break}Ac(s+8|0,0)|0;Ac(s+36|0,0)|0;Ac(s+64|0,0)|0;sc(s+92|0,0)|0;c[s+140>>2]=1;c[s+152>>2]=1;p=e+80|0;q=e+56|0;n=e+64|0;b=0;r=0;f=a;while(1){if((r|0)>=(d|0)){b=0;break a}c[t>>2]=qg(896)|0;o=c[s>>2]|0;j=o+(r*352|0)|0;Ac(o+(r*352|0)+156|0,0)|0;Ac(o+(r*352|0)+184|0,0)|0;sc(o+(r*352|0)+12|0,0)|0;sc(o+(r*352|0)+60|0,0)|0;sc(o+(r*352|0)+108|0,0)|0;k=Sh()|0;c[o+(r*352|0)+288>>2]=k;if(!k){u=11;break}c[j>>2]=s;e=c[t>>2]|0;c[o+(r*352|0)+212>>2]=e;k=e;if(!e){b=-12;u=23;break}wX(e|0,f|0,896)|0;e=qg(116)|0;i=k+28|0;c[i>>2]=e;if(!e){u=14;break}g=c[f+28>>2]|0;h=e+116|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=c[i>>2]|0;c[h+20>>2]=j;c[h+40>>2]=o+(r*352|0)+216;if(r){e=qg(c[q>>2]|0)|0;c[k+24>>2]=e;if(!e){b=-12;u=23;break}wX(e|0,c[f+24>>2]|0,c[q>>2]|0)|0;c[c[i>>2]>>2]=1;e=c[n>>2]|0;if(e)b=Jd[e&31](k)|0}else{e=c[p>>2]|0;if(e)b=Jd[e&31](k)|0;gS(a,k,1)|0;f=k}if(b|0){u=23;break}c[o+(r*352|0)+344>>2]=(c[k+576>>2]|0)>>>16&1;k=vc(o+(r*352|0)+4|0,0,25,j|0)|0;b=0-k|0;k=(k|0)==0;c[o+(r*352|0)+8>>2]=k&1;if(!k)break;r=r+1|0}if((u|0)==11){eg(t);b=-12;u=23}else if((u|0)==14){c[k+24>>2]=0;b=-12;u=23}dS(a,r+1|0)}}else{c[a+696>>2]=0;b=0}while(0);l=v;return b|0}function aT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+32|0;if((l|0)>=(m|0))W(32);B=D+16|0;A=D;p=c[a+212>>2]|0;j=c[p+12>>2]|0;v=a+156|0;AX(v|0)|0;w=a+332|0;x=a+300|0;y=a+12|0;z=j+68|0;d=p+700|0;e=p+400|0;f=a+336|0;g=p+592|0;h=a+288|0;i=a+292|0;j=j+92|0;k=a+216|0;n=a+296|0;o=p+28|0;q=a+340|0;r=a+184|0;s=a+60|0;t=a+108|0;a:while(1){while(1){b=(c[w>>2]|0)==0;if(c[x>>2]|0)break;if(!b){C=28;break a}uc(y|0,v|0)|0}if(!b){C=28;break}do if(!(c[z>>2]|0)){if((c[d>>2]|0)==0?(c[e>>2]|0)!=12:0)break;Zi(p)}while(0);if(c[f>>2]|0){C=12;break}if(c[g>>2]|0){AX((c[a>>2]|0)+36|0)|0;c[f>>2]=1}oh(c[h>>2]|0);c[i>>2]=0;b=Md[c[j>>2]&1](p,c[h>>2]|0,i,k)|0;c[n>>2]=b;if(!((b|0)>=0?(c[i>>2]|0)!=0:0))C=17;if((C|0)==17?(C=0,u=c[h>>2]|0,c[u+248>>2]|0):0){if(!(c[(c[o>>2]|0)+4>>2]|0))b=u;else{ig(p,16,172104,B);b=c[h>>2]|0}oh(b)}if((c[x>>2]|0)==1)Zi(p);if(c[f>>2]|0){c[f>>2]=0;BX((c[a>>2]|0)+36|0)|0}if(c[q>>2]|0){c[q>>2]=0;iS(c[a>>2]|0)}AX(r|0)|0;c[x>>2]=0;zX(s|0)|0;tc(t|0)|0;BX(r|0)|0}if((C|0)==12){c[A>>2]=172080;c[A+4>>2]=159856;c[A+8>>2]=190;ig(0,0,159900,A);Tb()}else if((C|0)==28){BX(v|0)|0;l=D;return 0}return 0}function bT(a){a=a|0;Jd[c[(c[(c[a+28>>2]|0)+20>>2]|0)+12>>2]&31](a)|0;return}function cT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[(c[a+28>>2]|0)+20>>2]|0;e=c[g+4>>2]|0;if(!e)f=Md[c[g+8>>2]&1](a,c[g+16>>2]|0,b,d)|0;else{f=(c[g+16>>2]|0)+(N(c[g+24>>2]|0,b)|0)|0;f=Kd[e&15](a,f)|0}e=c[g+20>>2]|0;if(e|0)c[e+(b<<2)>>2]=f;return}function dT(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=c[(c[a+28>>2]|0)+20>>2]|0;if((c[a+696>>2]&2|0)!=0?(c[a+688>>2]|0)>=2:0)if((f|0)<1)a=0;else{c[h+24>>2]=g;c[h+16>>2]=d;c[h+4>>2]=b;c[h+20>>2]=e;PR(c[h>>2]|0,f,(c[h+12>>2]|0)!=0&1);a=0}else a=kS(a,b,d,e,f,g)|0;return a|0}function eT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[(c[(c[a+28>>2]|0)+20>>2]|0)+8>>2]=b;return dT(a,0,d,e,f,0)|0}function fT(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)BX(185904)|0;return}function gT(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=l;l=l+848|0;if((l|0)>=(m|0))W(848);$=ja+336|0;_=ja+328|0;da=ja+288|0;Z=ja+280|0;Y=ja+272|0;X=ja+264|0;V=ja+248|0;S=ja+240|0;R=ja+232|0;Q=ja+224|0;O=ja+208|0;N=ja+192|0;M=ja+184|0;L=ja+176|0;K=ja+168|0;J=ja+152|0;H=ja+144|0;F=ja+136|0;D=ja+128|0;C=ja+120|0;B=ja+112|0;A=ja+104|0;z=ja+96|0;x=ja+88|0;t=ja+80|0;s=ja+72|0;r=ja+64|0;q=ja+48|0;ca=ja+40|0;p=ja+32|0;o=ja+24|0;n=ja+16|0;j=ja+8|0;i=ja;ia=ja+312|0;aa=ja+320|0;ba=ja+304|0;c[ia>>2]=0;do if(!(aS(a)|0)){ha=a+12|0;g=c[ha>>2]|0;h=(g|0)==0;if(!b)if(h){ig(a,16,172294,i);f=-22;break}else fa=g;else if(h|(g|0)==(b|0))fa=b;else{f=c[b>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=f;ig(a,16,172332,j);f=-22;break}if((c[a+72>>2]|0)>>>0<=268435391){ga=(e|0)!=0;if(ga)mi(ia,c[e>>2]|0,0)|0;hT(fa);U=$g(116)|0;ea=a+28|0;c[ea>>2]=U;a:do if(!U)f=-12;else{U=$g(88)|0;c[(c[ea>>2]|0)+16>>2]=U;b:do if(((((((U|0)!=0?(U=Sh()|0,c[(c[ea>>2]|0)+12>>2]=U,(U|0)!=0):0)?(U=Sh()|0,c[(c[ea>>2]|0)+100>>2]=U,(U|0)!=0):0)?(U=Sh()|0,c[(c[ea>>2]|0)+76>>2]=U,(U|0)!=0):0)?(U=_P()|0,c[(c[ea>>2]|0)+68>>2]=U,(U|0)!=0):0)?(U=_P()|0,c[(c[ea>>2]|0)+24>>2]=U,(U|0)!=0):0)?(U=_P()|0,k=c[ea>>2]|0,c[k+40>>2]=U,(U|0)!=0):0){c[k+108>>2]=1;T=fa+56|0;b=c[T>>2]|0;U=a+24|0;do if((b|0)>0){if(!(c[U>>2]|0)){g=$g(b)|0;c[U>>2]=g;if(!g){f=-12;break a}b=fa+44|0;h=c[b>>2]|0;if(!h)break;c[g>>2]=h;GR(g)}else b=fa+44|0;if(c[b>>2]|0?(f=JR(c[U>>2]|0,ia)|0,(f|0)<0):0)break b}else c[U>>2]=0;while(0);f=JR(a,ia)|0;if((f|0)>=0){b=a+844|0;g=c[b>>2]|0;if(g|0?(oQ(c[fa>>2]|0,g,44)|0)<1:0){f=c[b>>2]|0;c[n>>2]=c[fa>>2];c[n+4>>2]=f;ig(a,16,172408,n);f=-22;break}i=a+100|0;b=c[i>>2]|0;c:do if(!b)P=37;else{g=c[a+104>>2]|0;if(!g){P=37;break}do if(c[a+92>>2]|0){if(!(c[a+96>>2]|0))break;switch(c[a+16>>2]|0){case 189:case 92:case 27:{P=43;break c}default:{}}}while(0);f=GS(a,b,g)|0;P=40}while(0);do if((P|0)==37){g=c[a+92>>2]|0;if(!g){P=42;break}h=c[a+96>>2]|0;if(!h){P=42;break}f=GS(a,g,h)|0;P=40}while(0);if((P|0)==40){if((f|0)<0)break;b=c[i>>2]|0;P=42}do if((P|0)==42){if(b|0){P=43;break}g=c[a+104>>2]|0;if(g|0){b=0;P=47;break}b=a+92|0;if(c[b>>2]|0){b=0;g=0;P=47;break}if(!(c[a+96>>2]|0))u=b;else{b=0;g=0;P=47}}while(0);if((P|0)==43){g=c[a+104>>2]|0;P=47}do if((P|0)==47){h=a+872|0;I=h;i=a+92|0;if((ki(b,g,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0?(I=h,(ki(c[i>>2]|0,c[a+96>>2]|0,c[I>>2]|0,c[I+4>>2]|0,-1,0,a)|0)>=0):0){u=i;break}ig(a,24,172442,o);GS(a,0,0)|0;u=i}while(0);b=c[u>>2]|0;do if((b|0)>0){g=c[a+96>>2]|0;if((g|0)<=0)break;h=a+188|0;c[$>>2]=c[h>>2];c[$+4>>2]=c[h+4>>2];if((Pn(b,g,$)|0)>=0)break;I=a+192|0;G=c[I>>2]|0;c[p>>2]=c[h>>2];c[p+4>>2]=G;ig(a,24,172480,p);c[a+188>>2]=0;c[I>>2]=1}while(0);if(ZR(fa)|0)eg(a+736|0);G=a+348|0;if((c[G>>2]|0)>>>0>64){f=-22;break}c[ha>>2]=fa;I=a+8|0;h=c[I>>2]|0;do if((h|0)==-1)P=60;else{if((h|0)==(c[fa+8>>2]|0)){P=60;break}g=a+16|0;n=g;g=c[g>>2]|0;b=h}while(0);do if((P|0)==60){b=a+16|0;g=c[b>>2]|0;if(g|0){n=b;b=h;break}E=c[fa+8>>2]|0;c[I>>2]=E;g=c[fa+12>>2]|0;c[b>>2]=g;n=b;b=E}while(0);h=fa+12|0;do if((g|0)==(c[h>>2]|0)){if(!((b|0)==4?1:(b|0)==(c[fa+8>>2]|0)))break;c[a+360>>2]=0;E=a+780|0;c[E>>2]=Zg(g)|0;b=c[ha>>2]|0;do if(c[b+16>>2]&512|0){if((c[a+568>>2]|0)<=-2)break;b=(VR(fa)|0)!=0;b=b?172538:172546;da=c[fa>>2]|0;c[q>>2]=b;c[q+4>>2]=da;c[q+8>>2]=-2;ig(a,16,172554,q);da=(VR(fa)|0)==0;f=c[h>>2]|0;if(da)f=YR(f)|0;else f=UR(f)|0;if(c[f+16>>2]&512|0){f=-733130664;break b}f=c[f>>2]|0;c[r>>2]=b;c[r+4>>2]=f;ig(a,16,172664,r);f=-733130664;break b}while(0);do if((c[I>>2]|0)==1){h=a+76|0;g=a+80|0;if(c[h>>2]|0?c[g>>2]|0:0)break;c[h>>2]=1;c[g>>2]=c[a+344>>2]}while(0);if(!((c[(c[ea>>2]|0)+52>>2]|0)!=0?(c[a+696>>2]&1|0)!=0:0)){f=YS(a)|0;if((f|0)<0)break b;b=c[ha>>2]|0}g=d[b+40>>0]|0;h=a+680|0;if((c[h>>2]|0)>>>0>g>>>0){c[s>>2]=g;ig(a,24,172713,s);b=c[ha>>2]|0;c[h>>2]=d[b+40>>0]}d:do if(VR(b)|0){s=Sh()|0;c[a+684>>2]=s;if(!s){f=-12;break b}o=a+76|0;do if((c[o>>2]|0)>=1){p=a+80|0;if((c[p>>2]|0)<1)break;g=c[ha>>2]|0;b=c[g+32>>2]|0;e:do if(!b)j=g;else{k=a+352|0;j=0;while(1){h=c[b+(j<<2)>>2]|0;if((h|0)==-1)break;i=c[k>>2]|0;if((i|0)==(h|0)){j=g;break e}if((c[G>>2]|0)==1){t=KR(i)|0;t=(t|0)==(KR(c[(c[(c[ha>>2]|0)+32>>2]|0)+(j<<2)>>2]|0)|0);v=c[ha>>2]|0;w=c[v+32>>2]|0;if(t){P=94;break}else{g=v;b=w}}j=j+1|0}if((P|0)==94?(w=w+(j<<2)|0,c[k>>2]=c[w>>2],(c[w>>2]|0)!=-1):0){j=v;break}c[x>>2]=c[k>>2];_U($,128,172808,x)|0;c[z>>2]=iT(FR(c[k>>2]|0)|0,$)|0;ig(a,16,172811,z);f=-22;break b}while(0);g=c[j+24>>2]|0;f:do if(g|0){h=a+112|0;b=0;while(1){i=c[g+(b<<2)>>2]|0;if((i|0)==-1)break;if((c[h>>2]|0)==(i|0)){P=103;break}else b=b+1|0}if((P|0)==103){switch(i|0){case 14:case 32:case 13:case 140:case 12:break;default:break f}c[a+328>>2]=2;break}switch(c[n>>2]|0){case 9:case 7:{if((c[a+568>>2]|0)<0)break f;break}default:{}}c[A>>2]=c[h>>2];_U($,128,172808,A)|0;c[B>>2]=iT(Eh(c[h>>2]|0)|0,$)|0;ig(a,16,172867,B);f=-22;break b}while(0);h=c[j+28>>2]|0;b=c[a+344>>2]|0;g:do if(h){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break;if((b|0)==(i|0))break g;else g=g+1|0}c[C>>2]=b;ig(a,16,172922,C);f=-22;break b}while(0);if((b|0)<0){c[D>>2]=b;ig(a,16,172922,D);f=-22;break b}i=c[j+36>>2]|0;n=a+376|0;h:do if(i|0){k=n;j=c[k>>2]|0;k=c[k+4>>2]|0;if((j|0)==0&(k|0)==0){ig(a,24,172965,F);break}else b=0;while(1){h=i+(b<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==0&(h|0)==0)break;if((j|0)==(g|0)&(k|0)==(h|0))break h;else b=b+1|0}xQ($,512,-1,j,k);c[H>>2]=$;ig(a,16,172995,H);f=-22;break b}while(0);h=n;g=c[h>>2]|0;h=c[h+4>>2]|0;b=c[G>>2]|0;do if(!((g|0)==0&(h|0)==0)){g=ii(g,h)|0;if(!b){c[G>>2]=g;b=g;break}if((g|0)==(c[G>>2]|0)){b=g;break}f=n;xQ($,512,-1,c[f>>2]|0,c[f+4>>2]|0);f=c[G>>2]|0;c[J>>2]=$;c[J+4>>2]=g;c[J+8>>2]=f;ig(a,16,173043,J);f=-22;break b}while(0);if((b|0)<0){c[K>>2]=b;ig(a,16,173128,K);f=-22;break b}b=c[I>>2]|0;i:do if(!b){b=Dh(c[a+112>>2]|0)|0;h=a+676|0;i=c[h>>2]|0;do if((i|0)>=0){if((i|0)<=8)break;b=b+32|0;g=c[b>>2]|0;if((g|0)<9)P=129}else{g=b+32|0;b=g;g=c[g>>2]|0;P=129}while(0);if((P|0)==129){c[L>>2]=i;c[L+4>>2]=g;ig(a,24,173178,L);c[h>>2]=c[b>>2]}do if((c[u>>2]|0)>=1){if((c[a+96>>2]|0)<1)break;b=c[I>>2]|0;break i}while(0);ig(a,16,173257,M);f=-22;break b}while(0);do if(b>>>0<2){g=a+40|0;b=c[g>>2]|0;g=c[g+4>>2]|0;M=hX(b|0,g|0,-1,-1)|0;L=y;if(!(L>>>0<0|(L|0)==0&M>>>0<999))break;M=N;c[M>>2]=b;c[M+4>>2]=g;M=N+8|0;c[M>>2]=b;c[M+4>>2]=g;ig(a,24,173277,N)}while(0);b=a+464|0;if(!(c[b>>2]|0)){N=c[a+428>>2]|0;N=nX(N|0,((N|0)<0)<<31>>31|0,3,0)|0;N=lX(N|0,y|0,4,0)|0;c[b>>2]=N}g=c[a+84>>2]|0;do if(g|0){b=c[o>>2]|0;if(!b)break;if((g|0)<=(2147483647/(b|0)|0|0))break;da=c[p>>2]|0;c[O>>2]=g;c[O+4>>2]=b;c[O+8>>2]=da;ig(a,16,173330,O);break b}while(0);f=c[a+860>>2]|0;if(!f)break d;f=c[f+4>>2]|0;if((c[f+36>>2]|0)!=(c[a+112>>2]|0)){ig(a,16,173383,Q);f=-22;break b}h=a+768|0;g=c[h>>2]|0;b=f+40|0;f=c[b>>2]|0;do if((g|0)!=-1){if((g|0)==(f|0)){f=g;break}da=Eh(g)|0;f=Eh(c[b>>2]|0)|0;c[R>>2]=da;c[R+4>>2]=f;ig(a,16,173448,R);f=-22;break b}while(0);c[h>>2]=f;break d}while(0);ig(a,16,172774,t);f=-22;break b}while(0);R=a+784|0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;R=a+808|0;c[R>>2]=0;c[R+4>>2]=-2147483648;R=a+800|0;c[R>>2]=0;c[R+4>>2]=-2147483648;do if(c[a+60>>2]&8192|0){if(c[(c[E>>2]|0)+4>>2]|0)break;ig(a,24,173529,S)}while(0);f=c[ha>>2]|0;b=c[f+80>>2]|0;do if(b){if(c[a+696>>2]&1|0?(c[(c[ea>>2]|0)+52>>2]|0)==0:0)break;f=Jd[b&31](a)|0;if((f|0)<0)break b;f=c[ha>>2]|0}while(0);do if(ZR(f)|0){f=a+40|0;S=f;if((c[S>>2]|0)==0&(c[S+4>>2]|0)==0){R=jT(a)|0;S=f;c[S>>2]=R;c[S+4>>2]=y}g=a+376|0;b=g;f=c[b>>2]|0;b=c[b+4>>2]|0;do if((f|0)==0&(b|0)==0)P=166;else{f=ii(f,b)|0;b=c[G>>2]|0;if(!b){c[G>>2]=f;break}if((f|0)==(b|0))break;P=g;xQ($,512,-1,c[P>>2]|0,c[P+4>>2]|0);P=c[G>>2]|0;c[V>>2]=$;c[V+4>>2]=f;c[V+8>>2]=P;ig(a,24,173592,V);P=g;c[P>>2]=0;c[P+4>>2]=0;P=166}while(0);if((P|0)==166)f=c[G>>2]|0;if(f>>>0>64){f=-22;break b}b=a+816|0;g=c[b>>2]|0;j:do if(g|0){if((c[I>>2]|0)!=3){ig(a,16,173712,X);f=-22;break b}f=c[E>>2]|0;if(c[f+16>>2]&65536|0){c[Y>>2]=c[f+8>>2];ig(a,24,173772,Y);c[a+820>>2]=-1;break}f=a+820|0;switch(c[f>>2]|0){case 0:{c[f>>2]=1;break}case 1:break;default:break j}if((UU(173846,g)|0)==(-1|0)){f=0-(c[(CT()|0)>>2]|0)|0;c[Z>>2]=c[b>>2];ig(a,16,173852,Z);break b}else break}while(0);f=a+760|0;if((c[f>>2]|0)<=0)break;if((c[a+764>>2]|0)<=0)break;c[ba>>2]=c[a+84>>2];c[ba+4>>2]=1;c[_>>2]=c[f>>2];c[_+4>>2]=c[f+4>>2];c[$>>2]=c[ba>>2];c[$+4>>2]=c[ba+4>>2];pO(aa,_,$);$=c[aa>>2]|0;ba=a+76|0;c[ba>>2]=c[aa+4>>2];c[ba+4>>2]=$}while(0);if((c[T>>2]|0)<=0){f=0;break a}f=c[U>>2]|0;if(!f){f=0;break a}b=c[fa+44>>2]|0;if(!b){f=0;break a}if((c[f>>2]|0)==(b|0)){f=0;break a}c[da>>2]=173917;c[da+4>>2]=127302;c[da+8>>2]=995;ig(0,0,159900,da);Tb()}while(0);ig(a,16,172509,ca);f=-22}}else f=-12;while(0);b=c[ha>>2]|0;if(b|0?c[b+116>>2]&2|0:0)Jd[c[b+96>>2]&31](a)|0;if(c[fa+44>>2]|0?c[fa+56>>2]|0:0)Jg(c[a+24>>2]|0);Jg(a);Th(a+684|0);Tg(ia);eg(a+24|0);b=c[ea>>2]|0;if(b|0){Th(b+12|0);Th((c[ea>>2]|0)+100|0);Th((c[ea>>2]|0)+76|0);Kg((c[ea>>2]|0)+68|0);Kg((c[ea>>2]|0)+40|0);Kg((c[ea>>2]|0)+24|0);eg((c[ea>>2]|0)+16|0)}eg(ea);c[ha>>2]=0}while(0);fT(fa);if(ga){Tg(e);c[e>>2]=c[ia>>2]}}else f=-22}else f=0;while(0);l=ja;return f|0}function hT(a){a=a|0;if((c[a+116>>2]&1|0)==0?c[a+80>>2]|0:0)AX(185904)|0;return}function iT(a,b){a=a|0;b=b|0;return (a|0?a:b)|0}function jT(a){a=a|0;var b=0,d=0;a:do switch(c[a+8>>2]|0){case 4:case 3:case 2:case 0:{b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break}case 1:{b=kT(c[a+16>>2]|0)|0;if(!b){b=a+40|0;a=c[b+4>>2]|0;b=c[b>>2]|0;break a}else{d=c[a+344>>2]|0;a=c[a+348>>2]|0;b=nX(d|0,((d|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;b=nX(b|0,y|0,a|0,((a|0)<0)<<31>>31|0)|0;a=y;break a}}default:{a=0;b=0}}while(0);y=a;return b|0}function kT(a){a=a|0;switch(a|0){case 69649:{a=2;break}case 69648:{a=3;break}case 69638:case 69645:case 69632:case 69633:case 69647:{a=4;break}default:a=lT(a)|0}return a|0}function lT(a){a=a|0;var b=0;a:do if((a|0)>=65563){if((a|0)<69655)switch(a|0){case 69646:case 69636:case 69644:{a=4;break a}case 65563:{b=2;break a}case 65566:{b=3;break a}case 65564:{b=4;break a}case 67586:case 67587:case 65565:{b=5;break a}case 67584:case 67585:{b=6;break a}default:{b=7;break a}}if((a|0)>=86070)switch(a|0){case 86071:case 86070:{a=4;break a}case 88072:case 88071:case 88070:case 88069:{b=2;break a}default:{b=7;break a}}if((a|0)<71681)switch(a|0){case 69660:case 69655:case 69661:{a=4;break a}default:{b=7;break a}}if((a|0)<71687)switch(a|0){case 71681:{a=4;break a}default:{b=7;break a}}if((a|0)<83968)switch(a|0){case 71687:{a=4;break a}default:{b=7;break a}}else switch(a|0){case 83968:{b=2;break a}default:{b=7;break a}}}else switch(a|0){case 65553:case 65541:case 65540:case 65542:case 65543:{b=2;break}case 65538:case 65539:case 65554:case 65536:case 65537:{b=3;break}case 65550:case 65551:case 65548:case 65549:case 65552:{b=4;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{b=5;break}case 65559:case 65558:{b=6;break}default:b=7}while(0);if((b|0)==2)a=8;else if((b|0)==3)a=16;else if((b|0)==4)a=24;else if((b|0)==5)a=32;else if((b|0)==6)a=64;else if((b|0)==7)a=0;return a|0}function mT(){nT(0);return}function nT(a){a=a|0;xb(52784,173974);mb(52800,173979,1,1,0);tb(52808,173984,1,-128,127);tb(52824,173989,1,-128,127);tb(52816,174001,1,0,255);tb(52832,174015,2,-32768,32767);tb(52840,174021,2,0,65535);tb(52848,174036,4,-2147483648,2147483647);tb(52856,174040,4,0,-1);tb(52864,174053,4,-2147483648,2147483647);tb(52872,174058,4,0,-1);sb(52880,174072,4);sb(52888,174078,8);vb(16,174085);vb(48400,174097);wb(48424,4,174130);rb(40,174143);ub(48448,0,174159);ub(48456,0,174189);ub(48464,1,174226);ub(48472,2,174265);ub(48480,3,174296);ub(48488,4,174336);ub(48496,5,174365);ub(48504,4,174403);ub(48512,5,174433);ub(48456,0,174472);ub(48464,1,174504);ub(48472,2,174537);ub(48480,3,174570);ub(48488,4,174604);ub(48496,5,174637);ub(48520,6,174671);ub(48528,7,174702);ub(48536,7,174734);return}function oT(a){a=a|0;return jV(c[a+4>>2]|0)|0}function pT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=y;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;o=c[46483]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=185972+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[46483]=o&~(1<>2]=a;c[d>>2]=g}x=b<<3;c[e+4>>2]=x|3;x=e+x+4|0;c[x>>2]=c[x>>2]|1;x=f;l=y;return x|0}n=c[46485]|0;if(k>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=185972+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}x=e<<3;h=x-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+x>>2]=h;if(n|0){e=c[46488]|0;b=n>>>3;d=185972+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46485]=h;c[46488]=f;x=i;l=y;return x|0}g=c[46484]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[186236+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=186236+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46484]=g&~(1<>2]|0)==(i|0)?x:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){x=j+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(n|0){e=c[46488]|0;b=n>>>3;d=185972+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46485]=j;c[46488]=h}x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[46484]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;s=a<>>16&4;s=s<>>16&2;j=14-(i|o|j)+(s<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[186236+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;s=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=d;f=0;s=65;break a}else{a=d;f=h}s=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(s|0)==0|(s|0)==(d|0)?g:s;if(!d){d=g;s=61;break}else i=i<<1}}while(0);if((s|0)==61){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>h;g=o>>>5&8;o=o>>>g;i=o>>>2&4;o=o>>>i;j=o>>>1&2;o=o>>>j;d=o>>>1&1;a=0;d=c[186236+((g|h|i|j|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else s=65}if((s|0)==65){g=d;while(1){o=(c[g+4>>2]&-8)-k|0;d=o>>>0>>0;f=d?o:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[46485]|0)-k|0)>>>0:0)?(n=i+k|0,n>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{x=c[i+8>>2]|0;c[x+12>>2]=b;c[b+8>>2]=x}while(0);do if(g){a=c[i+28>>2]|0;d=186236+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<>2]|0)==(i|0)?x:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){x=h+k|0;c[i+4>>2]=x|3;x=i+x+4|0;c[x>>2]=c[x>>2]|1}else{c[i+4>>2]=k|3;c[n+4>>2]=h|1;c[n+h>>2]=h;b=h>>>3;if(h>>>0<256){d=185972+(b<<1<<2)|0;a=c[46483]|0;b=1<>2]|0}c[a>>2]=n;c[b+12>>2]=n;c[n+8>>2]=b;c[n+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;d=14-(v|w|d)+(x<>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=186236+(d<<2)|0;c[n+28>>2]=d;a=n+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=n;c[n+24>>2]=b;c[n+12>>2]=n;c[n+8>>2]=n;break b}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=n;c[w>>2]=n;c[n+8>>2]=x;c[n+12>>2]=b;c[n+24>>2]=0}while(0);x=i+8|0;l=y;return x|0}else o=k}else o=k}else o=-1;while(0);d=c[46485]|0;if(d>>>0>=o>>>0){b=d-o|0;a=c[46488]|0;if(b>>>0>15){x=a+o|0;c[46488]=x;c[46485]=b;c[x+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=o|3}else{c[46485]=0;c[46488]=0;c[a+4>>2]=d|3;x=a+d+4|0;c[x>>2]=c[x>>2]|1}x=a+8|0;l=y;return x|0}h=c[46486]|0;if(h>>>0>o>>>0){v=h-o|0;c[46486]=v;x=c[46489]|0;w=x+o|0;c[46489]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}if(!(c[46601]|0)){c[46603]=4096;c[46602]=4096;c[46604]=-1;c[46605]=-1;c[46606]=0;c[46594]=0;c[46601]=p&-16^1431655768;a=4096}else a=c[46603]|0;i=o+48|0;j=o+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=o>>>0){x=0;l=y;return x|0}a=c[46593]|0;if(a|0?(n=c[46591]|0,p=n+k|0,p>>>0<=n>>>0|p>>>0>a>>>0):0){x=0;l=y;return x|0}d:do if(!(c[46594]&4)){d=c[46489]|0;e:do if(d){e=186380;while(1){p=c[e>>2]|0;if(p>>>0<=d>>>0?(p+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){s=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=CX(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;s=145;break d}}else{e=a;s=136}}else b=0}else s=128;while(0);do if((s|0)==128){d=CX(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[46602]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+k|0,q=c[46591]|0,r=b+q|0,b>>>0>o>>>0&b>>>0<2147483647):0){p=c[46593]|0;if(p|0?r>>>0<=q>>>0|r>>>0>p>>>0:0){b=0;break}a=CX(b|0)|0;if((a|0)==(d|0)){h=b;g=d;s=145;break d}else{e=a;s=136}}else b=0}while(0);do if((s|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;s=145;break d}a=c[46603]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;s=145;break d}if((CX(a|0)|0)==(-1|0)){CX(d|0)|0;b=0;break}else{h=a+b|0;g=e;s=145;break d}}while(0);c[46594]=c[46594]|4;s=143}else{b=0;s=143}while(0);if(((s|0)==143?k>>>0<2147483647:0)?(v=CX(k|0)|0,r=CX(0)|0,t=r-v|0,u=t>>>0>(o+40|0)>>>0,!((v|0)==(-1|0)|u^1|v>>>0>>0&((v|0)!=(-1|0)&(r|0)!=(-1|0))^1)):0){h=u?t:b;g=v;s=145}if((s|0)==145){b=(c[46591]|0)+h|0;c[46591]=b;if(b>>>0>(c[46592]|0)>>>0)c[46592]=b;j=c[46489]|0;f:do if(j){b=186380;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){s=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((s|0)==154?(w=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[w>>2]=d+h;x=(c[46486]|0)+h|0;v=j+8|0;v=(v&7|0)==0?0:0-v&7;w=j+v|0;v=x-v|0;c[46489]=w;c[46486]=v;c[w+4>>2]=v|1;c[j+x+4>>2]=40;c[46490]=c[46605];break}if(g>>>0<(c[46487]|0)>>>0)c[46487]=g;d=g+h|0;b=186380;while(1){if((c[b>>2]|0)==(d|0)){s=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((s|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;n=b+4|0;c[n>>2]=(c[n>>2]|0)+h;n=g+8|0;n=g+((n&7|0)==0?0:0-n&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=n+o|0;i=b-n-o|0;c[n+4>>2]=o|3;g:do if((j|0)==(b|0)){x=(c[46486]|0)+i|0;c[46486]=x;c[46489]=k;c[k+4>>2]=x|1}else{if((c[46488]|0)==(b|0)){x=(c[46485]|0)+i|0;c[46485]=x;c[46488]=k;c[k+4>>2]=x|1;c[k+x>>2]=x;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[46483]=c[46483]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{x=c[b+8>>2]|0;c[x+12>>2]=a;c[a+8>>2]=x}while(0);if(!g)break;d=c[b+28>>2]|0;e=186236+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){x=g+16|0;c[((c[x>>2]|0)==(b|0)?x:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[46484]=c[46484]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=185972+(b<<1<<2)|0;a=c[46483]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=186236+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46484]|0;d=1<>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=k;c[w>>2]=k;c[k+8>>2]=x;c[k+12>>2]=b;c[k+24>>2]=0}while(0);x=n+8|0;l=y;return x|0}b=186380;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(x=a+(c[b+4>>2]|0)|0,x>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=x+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=d-v|0;c[46489]=w;c[46486]=v;c[w+4>>2]=v|1;c[g+d+4>>2]=40;c[46490]=c[46605];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46595];c[b+4>>2]=c[46596];c[b+8>>2]=c[46597];c[b+12>>2]=c[46598];c[46595]=g;c[46596]=h;c[46598]=0;c[46597]=b;b=a+24|0;do{w=b;b=b+4|0;c[b>>2]=7}while((w+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=185972+(b<<1<<2)|0;a=c[46483]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{w=(b+1048320|0)>>>16&8;x=b<>>16&4;x=x<>>16&2;e=14-(v|w|e)+(x<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=186236+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[46484]|0;a=1<>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);w=b+8|0;x=c[w>>2]|0;c[x+12>>2]=j;c[w>>2]=j;c[j+8>>2]=x;c[j+12>>2]=b;c[j+24>>2]=0}}else{x=c[46487]|0;if((x|0)==0|g>>>0>>0)c[46487]=g;c[46595]=g;c[46596]=h;c[46598]=0;c[46492]=c[46601];c[46491]=-1;c[46496]=185972;c[46495]=185972;c[46498]=185980;c[46497]=185980;c[46500]=185988;c[46499]=185988;c[46502]=185996;c[46501]=185996;c[46504]=186004;c[46503]=186004;c[46506]=186012;c[46505]=186012;c[46508]=186020;c[46507]=186020;c[46510]=186028;c[46509]=186028;c[46512]=186036;c[46511]=186036;c[46514]=186044;c[46513]=186044;c[46516]=186052;c[46515]=186052;c[46518]=186060;c[46517]=186060;c[46520]=186068;c[46519]=186068;c[46522]=186076;c[46521]=186076;c[46524]=186084;c[46523]=186084;c[46526]=186092;c[46525]=186092;c[46528]=186100;c[46527]=186100;c[46530]=186108;c[46529]=186108;c[46532]=186116;c[46531]=186116;c[46534]=186124;c[46533]=186124;c[46536]=186132;c[46535]=186132;c[46538]=186140;c[46537]=186140;c[46540]=186148;c[46539]=186148;c[46542]=186156;c[46541]=186156;c[46544]=186164;c[46543]=186164;c[46546]=186172;c[46545]=186172;c[46548]=186180;c[46547]=186180;c[46550]=186188;c[46549]=186188;c[46552]=186196;c[46551]=186196;c[46554]=186204;c[46553]=186204;c[46556]=186212;c[46555]=186212;c[46558]=186220;c[46557]=186220;x=h+-40|0;v=g+8|0;v=(v&7|0)==0?0:0-v&7;w=g+v|0;v=x-v|0;c[46489]=w;c[46486]=v;c[w+4>>2]=v|1;c[g+x+4>>2]=40;c[46490]=c[46605]}while(0);b=c[46486]|0;if(b>>>0>o>>>0){v=b-o|0;c[46486]=v;x=c[46489]|0;w=x+o|0;c[46489]=w;c[w+4>>2]=v|1;c[x+4>>2]=o|3;x=x+8|0;l=y;return x|0}}c[(CT()|0)>>2]=12;x=0;l=y;return x|0}function qT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[46487]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[46488]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46485]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[46483]=c[46483]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=186236+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46484]=c[46484]&~(1<>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[46489]|0)==(j|0)){j=(c[46486]|0)+b|0;c[46486]=j;c[46489]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46488]|0))return;c[46488]=0;c[46485]=0;return}if((c[46488]|0)==(j|0)){j=(c[46485]|0)+b|0;c[46485]=j;c[46488]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[46483]=c[46483]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=186236+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46484]=c[46484]&~(1<>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[46488]|0)){c[46485]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=185972+(a<<1<<2)|0;b=c[46483]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;e=14-(g|h|e)+(j<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=186236+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46484]|0;d=1<>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[46491]|0)+-1|0;c[46491]=j;if(j|0)return;a=186388;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46491]=-1;return}function rT(a,b){a=a|0;b=b|0;var d=0;if(a){d=N(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=pT(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;yX(a|0,0,d|0)|0;return a|0}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=pT(b)|0;return b|0}if(b>>>0>4294967231){c[(CT()|0)>>2]=12;b=0;return b|0}d=tT(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=pT(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;wX(d|0,a|0,(e>>>0>>0?e:b)|0)|0;qT(a);b=d;return b|0}function tT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[46603]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;uT(k,d);return a|0}if((c[46489]|0)==(i|0)){k=(c[46486]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[46489]=e;c[46486]=d;return a|0}if((c[46488]|0)==(i|0)){e=(c[46485]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[46485]=d;c[46488]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[46483]=c[46483]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=186236+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46484]=c[46484]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;uT(i,k);return a|0}return 0}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[46488]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46485]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[46483]=c[46483]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=186236+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46484]=c[46484]&~(1<>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[46489]|0)==(i|0)){i=(c[46486]|0)+b|0;c[46486]=i;c[46489]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46488]|0))return;c[46488]=0;c[46485]=0;return}if((c[46488]|0)==(i|0)){i=(c[46485]|0)+b|0;c[46485]=i;c[46488]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[46483]=c[46483]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=186236+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46484]=c[46484]&~(1<>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[46488]|0)){c[46485]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=185972+(b<<1<<2)|0;a=c[46483]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;e=14-(d|g|e)+(i<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=186236+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46484]|0;d=1<>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function vT(a,b){a=a|0;b=b|0;if(a>>>0<9){b=pT(b)|0;return b|0}else{b=wT(a,b)|0;return b|0}return 0}function wT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){c[(CT()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=pT(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;uT(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;uT(f,i)}i=b+8|0;return i|0}function xT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;do if((b|0)!=8){e=b>>>2;if((b&3|0)!=0|(e|0)==0){a=22;return a|0}if(e+1073741823&e|0){a=22;return a|0}if((-64-b|0)>>>0>>0){a=12;return a|0}else{b=wT(b>>>0>16?b:16,d)|0;break}}else b=pT(d)|0;while(0);if(!b){a=12;return a|0}c[a>>2]=b;a=0;return a|0}function yT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=DT(c[a+60>>2]|0)|0;a=BT(jb(6,d|0)|0)|0;l=b;return a|0}function zT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+48|0;if((l|0)>=(m|0))W(48);k=o+16|0;g=o;f=o+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=BT(eb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;q=c[f+4>>2]|0;p=g>>>0>q>>>0;f=p?f+8|0:f;b=b+(p<<31>>31)|0;q=g-(p?q:0)|0;c[f>>2]=(c[f>>2]|0)+q;p=f+4|0;c[p>>2]=(c[p>>2]|0)-q;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=BT(eb(146,k|0)|0)|0;if((e|0)==(g|0)){n=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else n=3;while(0);if((n|0)==3){q=c[a+44>>2]|0;c[a+16>>2]=q+(c[a+48>>2]|0);c[i>>2]=q;c[j>>2]=q}l=o;return d|0}function AT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((BT(db(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function BT(a){a=a|0;if(a>>>0>4294963200){c[(CT()|0)>>2]=0-a;a=-1}return a|0}function CT(){return 186492}function DT(a){a=a|0;return a|0}function ET(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,ib(54,f|0)|0):0)a[b+75>>0]=-1;f=zT(b,d,e)|0;l=g;return f|0}function FT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;GT(h,0);d=HT(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function GT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function HT(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(CT()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0}while((JT(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=IT(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0;if((d[175270+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){GT(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[175270+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;GT(b,0);c[(CT()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=IT(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=nX(i|0,m|0,10,0)|0;k=y;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=hX(f|0,k|0,e|0,l|0)|0;m=y;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=IT(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[175526+((o*23|0)>>>5&7)>>0]|0;f=a[175270+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=IT(b)|0;f=a[175270+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=rX(-1,-1,n|0)|0;m=y;if(o>>>0<=k>>>0|(m>>>0>>0|(m|0)==(e|0)&l>>>0>>0)){f=o;n=76;break}while(1){i=sX(i|0,e|0,n|0)|0;e=y;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=IT(b)|0;f=a[175270+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[175270+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(N(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=IT(b)|0;e=a[175270+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=pX(-1,-1,o|0,0)|0;n=y;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=nX(i|0,e|0,o|0,0)|0;l=y;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=hX(k|0,l|0,f|0,0)|0;e=y;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=IT(b)|0;f=a[175270+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[175270+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0}while(f>>>0>(d[175270+i>>0]|0)>>>0);c[(CT()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(CT()|0)>>2]=34;g=hX(g|0,h|0,-1,-1)|0;h=y;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(CT()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=iX(i^j|0,e^g|0,j|0,g|0)|0;h=y}while(0);y=h;return g|0}function IT(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=KT(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function JT(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function KT(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=e;if((LT(a)|0)==0?(Ld[c[a+32>>2]&15](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function LT(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Ld[c[b+36>>2]&15](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function MT(a,b,c){a=a|0;b=b|0;c=c|0;c=FT(a,b,c,0,-2147483648)|0;return c|0}function NT(a,b,c){a=a|0;b=b|0;c=c|0;c=FT(a,b,c,-1,0)|0;return c|0}function OT(a,b,c){a=a|0;b=b|0;c=c|0;c=FT(a,b,c,-2147483648,0)|0;return c|0}function PT(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;o=r+16|0;p=r+8|0;q=r;h[j>>3]=a;u=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0>>0|(g|0)==(f|0)&u>>>0>>0;t=i?e:u;s=i?f:g;e=i?u:e;f=i?g:f;g=rX(t|0,s|0,52)|0;i=rX(e|0,f|0,52)|0;c[j>>2]=t;c[j+4>>2]=s;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{u=(i|0)<573;d=u?1.90109156629516e-211:1.0;b=u?a*5260135901548373507240989.0e186:a;a=u?k*5260135901548373507240989.0e186:k}QT(n,o,b);QT(p,q,a);a=d*+B(+(+h[q>>3]+ +h[o>>3]+ +h[p>>3]+ +h[n>>3]))}}else a=k;while(0);l=r;return +a}function QT(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function RT(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function ST(a){a=+a;var b=0;h[j>>3]=a;b=c[j+4>>2]&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+UT(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+K(+a);a=(a+1.0/a)*.5;break}else{a=+VT(a);break}while(0);return +a}function TT(a){a=+a;var b=0.0,d=0,e=0.0;h[j>>3]=a;d=c[j+4>>2]|0;e=(d|0)<0?-.5:.5;d=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=d;b=+h[j>>3];do if(d>>>0<1082535490){b=+UT(b);if(d>>>0>=1072693248){a=e*(b+b/(b+1.0));break}if(d>>>0>=1045430272)a=e*(b*2.0-b*b/(b+1.0))}else a=e*2.0*+VT(b);while(0);return +a}function UT(a){a=+a;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0,k=0,l=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;d=rX(c[j>>2]|0,d|0,63)|0;do if(b>>>0>1078159481){i=WT(a)|0;b=y&2147483647;if(!(b>>>0>2146435072|(b|0)==2146435072&i>>>0>0))if(!d)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else k=11;else a=-1.0}else{if(b>>>0<=1071001154)if(b>>>0<1016070144)break;else{g=0.0;i=0;k=14;break}if(b>>>0<1072734898)if(!d){b=1;e=a+-.6931471803691238;f=1.9082149292705877e-10;k=12;break}else{b=-1;e=a+.6931471803691238;f=-1.9082149292705877e-10;k=12;break}else k=11}while(0);if((k|0)==11){b=~~(a*1.4426950408889634+((d|0)==0?.5:-.5));f=+(b|0);e=a-f*.6931471803691238;f=f*1.9082149292705877e-10;k=12}if((k|0)==12){g=e-f;a=g;g=e-g-f;i=b;k=14}a:do if((k|0)==14){f=a*.5;e=a*f;l=e*(e*(e*(e*(4.008217827329362e-06-e*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;f=3.0-f*l;f=e*((l-f)/(6.0-a*f));if(!i){a=a-(a*f-e);break}f=a*(f-g)-g-e;switch(i|0){case -1:{a=(a-f)*.5+-.5;break a}case 1:if(a<-.25){a=(f-(a+.5))*-2.0;break a}else{a=(a-f)*2.0+1.0;break a}default:{d=sX(i+1023|0,0,52)|0;k=y;c[j>>2]=d;c[j+4>>2]=k;g=+h[j>>3];if(i>>>0>56){a=a-f+1.0;a=((i|0)==1024?a*2.0*8988465674311579538646525.0e283:a*g)+-1.0;break a}b=sX(1023-i|0,0,52)|0;d=y;if((i|0)<20){c[j>>2]=b;c[j+4>>2]=d;e=1.0-+h[j>>3];a=a-f}else{c[j>>2]=b;c[j+4>>2]=d;e=a-(f+ +h[j>>3]);a=1.0}a=(e+a)*g;break a}}}while(0);return +a}function VT(a){a=+a;return +(+K(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function WT(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function XT(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function YT(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function ZT(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function _T(a){a=a|0;return (a+-48|0)>>>0<10|0}function $T(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=o+124|0;n=o;h=n;i=108452;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(CT()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[n+48>>2]=k;g=n+20|0;c[g>>2]=b;c[n+44>>2]=b;d=b+k|0;b=n+16|0;c[b>>2]=d;c[n+28>>2]=d;d=aU(n,e,f)|0;if(k){n=c[g>>2]|0;a[n+(((n|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=o;return d|0}function aU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+224|0;if((l|0)>=(m|0))W(224);o=t+120|0;p=t+80|0;r=t;s=t+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((bU(0,d,o,r,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)q=cU(b)|0;else q=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=s;i=b+28|0;c[i>>2]=s;j=b+20|0;c[j>>2]=s;c[f>>2]=80;k=b+16|0;c[k>>2]=s+80;e=bU(b,d,o,r,p)|0;if(h){Ld[c[b+36>>2]&15](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=bU(b,d,o,r,p)|0;f=c[b>>2]|0;c[b>>2]=f|n;if(q|0)dU(b);e=(f&32|0)==0?e:-1}l=t;return e|0}function bU(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+64|0;if((l|0)>=(m|0))W(64);E=J+16|0;F=J;B=J+24|0;H=J+8|0;I=J+20|0;c[E>>2]=e;x=(d|0)!=0;z=B+40|0;A=z;B=B+39|0;C=H+4|0;j=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(CT()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);t=c[E>>2]|0;j=a[t>>0]|0;if(!(j<<24>>24)){w=94;break a}k=t;b:while(1){switch(j<<24>>24){case 37:{w=10;break b}case 0:{j=k;break b}default:{}}v=k+1|0;c[E>>2]=v;j=a[v>>0]|0;k=v}c:do if((w|0)==10){w=0;j=k;do{if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[E>>2]=k}while((a[k>>0]|0)==37)}while(0);j=j-t|0;if(x)eU(d,t,j)}while((j|0)!=0);v=(_T(a[(c[E>>2]|0)+1>>0]|0)|0)==0;k=c[E>>2]|0;if(!v?(a[k+2>>0]|0)==36:0){r=(a[k+1>>0]|0)+-48|0;p=1;j=3}else{r=-1;p=n;j=1}j=k+j|0;c[E>>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0;if(n>>>0>31|(1<>2]=j;k=a[j>>0]|0;n=(k<<24>>24)+-32|0}while(!(n>>>0>31|(1<>24==42){if((_T(a[j+1>>0]|0)|0)!=0?(G=c[E>>2]|0,(a[G+2>>0]|0)==36):0){j=G+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;n=1;k=G+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);j=c[v>>2]|0;c[f>>2]=v+4}else j=0;n=0;k=(c[E>>2]|0)+1|0}c[E>>2]=k;v=(j|0)<0;u=v?0-j|0:j;o=v?o|8192:o;v=n}else{j=fU(E)|0;if((j|0)<0){e=-1;break}u=j;v=p;k=c[E>>2]|0}do if((a[k>>0]|0)==46){j=k+1|0;if((a[j>>0]|0)!=42){c[E>>2]=j;j=fU(E)|0;k=c[E>>2]|0;break}if(_T(a[k+2>>0]|0)|0?(D=c[E>>2]|0,(a[D+3>>0]|0)==36):0){j=D+2|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=D+4|0;c[E>>2]=k;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);j=c[s>>2]|0;c[f>>2]=s+4}else j=0;k=(c[E>>2]|0)+2|0;c[E>>2]=k}else j=-1;while(0);s=0;while(1){if(((a[k>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=k;k=k+1|0;c[E>>2]=k;n=a[(a[n>>0]|0)+-65+(175535+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(r|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(r<<2)>>2]=p;q=g+(r<<3)|0;r=c[q+4>>2]|0;w=F;c[w>>2]=c[q>>2];c[w+4>>2]=r;w=54;break}if(!x){e=0;break a}gU(F,p,f);k=c[E>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else j=0}d:do if((w|0)==55){w=0;k=a[k+-1>>0]|0;k=(s|0)!=0&(k&15|0)==3?k&-33:k;n=o&-65537;r=(o&8192|0)==0?o:n;e:do switch(k|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[F>>2]>>2]=e;j=0;break d}case 1:{c[c[F>>2]>>2]=e;j=0;break d}case 2:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}case 3:{b[c[F>>2]>>1]=e;j=0;break d}case 4:{a[c[F>>2]>>0]=e;j=0;break d}case 6:{c[c[F>>2]>>2]=e;j=0;break d}case 7:{j=c[F>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;break d}default:{j=0;break d}}case 112:{k=120;j=j>>>0>8?j:8;n=r|8;w=67;break}case 88:case 120:{n=r;w=67;break}case 111:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;q=iU(k,n,z)|0;w=A-q|0;o=0;p=175999;j=(r&8|0)==0|(j|0)>(w|0)?j:w+1|0;w=73;break}case 105:case 100:{n=F;k=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){k=iX(0,0,k|0,n|0)|0;n=y;o=F;c[o>>2]=k;c[o+4>>2]=n;o=1;p=175999;w=72;break e}else{o=(r&2049|0)!=0&1;p=(r&2048|0)==0?((r&1|0)==0?175999:176001):176e3;w=72;break e}}case 117:{n=F;o=0;p=175999;k=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[B>>0]=c[F>>2];s=B;o=0;p=175999;q=1;j=A;break}case 109:{k=kU(c[(CT()|0)>>2]|0)|0;w=77;break}case 115:{k=c[F>>2]|0;k=(k|0)==0?176009:k;w=77;break}case 67:{c[H>>2]=c[F>>2];c[C>>2]=0;c[F>>2]=H;p=-1;w=81;break}case 83:{if(!j){mU(d,32,u,0,r);j=0;w=91}else{p=j;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=oU(d,+h[F>>3],u,j,r,k)|0;break d}default:{s=t;o=0;p=175999;q=j;n=r;j=A}}while(0);f:do if((w|0)==67){t=F;s=c[t>>2]|0;t=c[t+4>>2]|0;q=hU(s,t,z,k&32)|0;p=(n&8|0)==0|(s|0)==0&(t|0)==0;o=p?0:2;p=p?175999:175999+(k>>>4)|0;r=n;k=s;n=t;w=73}else if((w|0)==72){q=jU(k,n,z)|0;w=73}else if((w|0)==77){w=0;t=lU(k,0,j)|0;r=(t|0)==0;s=k;o=0;p=175999;q=r?j:t-k|0;j=r?k+j|0:t}else if((w|0)==81){w=0;o=c[F>>2]|0;j=0;while(1){k=c[o>>2]|0;if(!k)break;k=nU(I,k)|0;n=(k|0)<0;if(n|k>>>0>(p-j|0)>>>0){w=85;break}j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((w|0)==85){w=0;if(n){e=-1;break a}}mU(d,32,u,j,r);if(!j){j=0;w=91}else{n=c[F>>2]|0;o=0;while(1){k=c[n>>2]|0;if(!k){w=91;break f}k=nU(I,k)|0;o=k+o|0;if((o|0)>(j|0)){w=91;break f}eU(d,I,k);if(o>>>0>=j>>>0){w=91;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;n=(k|0)!=0|(n|0)!=0;t=(j|0)!=0|n;n=A-q+((n^1)&1)|0;s=t?q:z;q=t?((j|0)>(n|0)?j:n):0;n=(j|0)>-1?r&-65537:r;j=A}else if((w|0)==91){w=0;mU(d,32,u,j,r^8192);j=(u|0)>(j|0)?u:j;break}r=j-s|0;q=(q|0)<(r|0)?r:q;t=q+o|0;j=(u|0)<(t|0)?t:u;mU(d,32,j,t,n);eU(d,p,o);mU(d,48,j,t,n^65536);mU(d,48,q,r,0);eU(d,s,r);mU(d,32,j,t,n^8192)}while(0);n=v}g:do if((w|0)==94)if(!d)if(!n)e=0;else{e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;gU(g+(e<<3)|0,j,f);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);l=J;return e|0}function cU(a){a=a|0;return 0}function dU(a){a=a|0;return}function eU(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))BU(b,d,a)|0;return}function fU(b){b=b|0;var d=0,e=0;if(!(_T(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((_T(a[e>>0]|0)|0)!=0)}return d|0}function gU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function hU(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[176047+(b&15)>>0]|0|f;b=rX(b|0,c|0,4)|0;c=y}while(!((b|0)==0&(c|0)==0));return e|0}function iU(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=rX(b|0,c|0,3)|0;c=y}while(!((b|0)==0&(c|0)==0));return d|0}function jU(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=pX(b|0,c|0,10,0)|0;f=c;c=y;g=nX(b|0,c|0,10,0)|0;g=iX(e|0,f|0,g|0,y|0)|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function kU(a){a=a|0;return wU(a,c[(vU()|0)+188>>2]|0)|0}function lU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=N(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function mU(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;if((l|0)>=(m|0))W(256);f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;yX(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{eU(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}eU(a,f,e)}l=g;return}function nU(a,b){a=a|0;b=b|0;if(!a)a=0;else a=sU(a,b,0)|0;return a|0}function oU(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+560|0;if((l|0)>=(m|0))W(560);n=I+8|0;w=I;H=I+524|0;G=H;o=I+512|0;c[w>>2]=0;F=o+12|0;pU(e)|0;j=y;if((j|0)<0){e=-e;pU(e)|0;E=1;D=176016;j=y}else{E=(h&2049|0)!=0&1;D=(h&2048|0)==0?((h&1|0)==0?176017:176022):176019}do if(0==0&(j&2146435072|0)==2146435072){H=(i&32|0)!=0;j=E+3|0;mU(b,32,f,j,h&-65537);eU(b,D,E);eU(b,e!=e|0.0!=0.0?(H?177966:176043):H?176035:176039,3);mU(b,32,f,j,h^8192)}else{s=+qU(e,w)*2.0;j=s!=0.0;if(j)c[w>>2]=(c[w>>2]|0)+-1;v=i|32;if((v|0)==97){q=i&32;t=(q|0)==0?D:D+9|0;r=E|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[t>>0]|0)==45){e=-(e+(-s-e));break}else{e=s+e-e;break}}else e=s;while(0);k=c[w>>2]|0;j=(k|0)<0?0-k|0:k;j=jU(j,((j|0)<0)<<31>>31,F)|0;if((j|0)==(F|0)){j=o+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;p=j+-2|0;a[p>>0]=i+15;k=(g|0)<1;n=(h&8|0)==0;o=H;do{E=~~e;j=o+1|0;a[o>>0]=q|d[176047+E>>0];e=(e-+(E|0))*16.0;if((j-G|0)==1?!(n&(k&e==0.0)):0){a[j>>0]=46;o=o+2|0}else o=j}while(e!=0.0);if((g|0)!=0?(-2-G+o|0)<(g|0):0){k=F;n=p;j=g+2+k-n|0}else{k=F;n=p;j=k-G-n+o|0}F=j+r|0;mU(b,32,f,F,h);eU(b,t,r);mU(b,48,f,F,h^65536);G=o-G|0;eU(b,H,G);H=k-n|0;mU(b,48,j-(G+H)|0,0,0);eU(b,p,H);mU(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[w>>2]|0)+-28|0;c[w>>2]=j;e=s*268435456.0}else{e=s;j=c[w>>2]|0}C=(j|0)<0?n:n+288|0;n=C;do{A=~~e>>>0;c[n>>2]=A;n=n+4|0;e=(e-+(A>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){q=C;while(1){p=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=q>>>0){o=0;do{x=sX(c[j>>2]|0,0,p|0)|0;x=hX(x|0,y|0,o|0,0)|0;z=y;o=pX(x|0,z|0,1e9,0)|0;A=nX(o|0,y|0,1e9,0)|0;A=iX(x|0,z|0,A|0,y|0)|0;c[j>>2]=A;j=j+-4|0}while(j>>>0>=q>>>0);if(o){A=q+-4|0;c[A>>2]=o;o=A}else o=q}else o=q;a:do if(n>>>0>o>>>0){j=n;while(1){n=j+-4|0;if(c[n>>2]|0){n=j;break a}if(n>>>0>o>>>0)j=n;else break}}while(0);j=(c[w>>2]|0)-p|0;c[w>>2]=j;if((j|0)>0)q=o;else break}}else o=C;if((j|0)<0){g=((k+25|0)/9|0)+1|0;u=(v|0)==102;do{t=0-j|0;t=(t|0)<9?t:9;if(o>>>0>>0){p=(1<>>t;r=0;j=o;do{A=c[j>>2]|0;c[j>>2]=(A>>>t)+r;r=N(A&p,q)|0;j=j+4|0}while(j>>>0>>0);o=(c[o>>2]|0)==0?o+4|0:o;if(r){c[n>>2]=r;n=n+4|0}}else o=(c[o>>2]|0)==0?o+4|0:o;j=u?C:o;n=(n-j>>2|0)>(g|0)?j+(g<<2)|0:n;j=(c[w>>2]|0)+t|0;c[w>>2]=j}while((j|0)<0);u=o}else u=o;A=C;if(u>>>0>>0){j=(A-u>>2)*9|0;p=c[u>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else j=0;x=(v|0)==103;z=(k|0)!=0;o=k-((v|0)==102?0:j)+((z&x)<<31>>31)|0;if((o|0)<(((n-A>>2)*9|0)+-9|0)){w=o+9216|0;o=(w|0)/9|0;g=C+4+(o+-1024<<2)|0;o=w-(o*9|0)|0;if((o|0)<8){p=10;while(1){p=p*10|0;if((o|0)<7)o=o+1|0;else break}}else p=10;r=c[g>>2]|0;o=(r>>>0)/(p>>>0)|0;t=r-(N(o,p)|0)|0;q=(g+4|0)==(n|0);if(!(q&(t|0)==0)){s=(o&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;e=t>>>0>>0?.5:q&(t|0)==(w|0)?1.0:1.5;if(E){w=(a[D>>0]|0)==45;e=w?-e:e;s=w?-s:s}o=r-t|0;c[g>>2]=o;if(s+e!=s){w=o+p|0;c[g>>2]=w;if(w>>>0>999999999){p=g;j=u;while(1){o=p+-4|0;c[p>>2]=0;if(o>>>0>>0){j=j+-4|0;c[j>>2]=0}w=(c[o>>2]|0)+1|0;c[o>>2]=w;if(w>>>0>999999999)p=o;else{p=j;break}}}else{o=g;p=u}j=(A-p>>2)*9|0;r=c[p>>2]|0;if(r>>>0>=10){q=10;do{q=q*10|0;j=j+1|0}while(r>>>0>=q>>>0)}}else{o=g;p=u}}else{o=g;p=u}w=o+4|0;n=n>>>0>w>>>0?w:n}else p=u;g=0-j|0;b:do if(n>>>0>p>>>0)while(1){o=n+-4|0;if(c[o>>2]|0){w=n;v=1;break b}if(o>>>0>p>>>0)n=o;else{w=o;v=0;break}}else{w=n;v=0}while(0);do if(x){k=k+((z^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){q=i+-1|0;k=k+-1-j|0}else{q=i+-2|0;k=k+-1|0}if(!(h&8)){if(v?(B=c[w+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){o=0;n=10;do{n=n*10|0;o=o+1|0}while(!((B>>>0)%(n>>>0)|0|0))}else o=0;else o=9;n=((w-A>>2)*9|0)+-9|0;if((q|32|0)==102){i=n-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=n+j-o|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else q=i;while(0);u=(k|0)!=0;r=u?1:h>>>3&1;t=(q|32|0)==102;if(t){x=0;j=(j|0)>0?j:0}else{n=(j|0)<0?g:j;n=jU(n,((n|0)<0)<<31>>31,F)|0;o=F;if((o-n|0)<2)do{n=n+-1|0;a[n>>0]=48}while((o-n|0)<2);a[n+-1>>0]=(j>>31&2)+43;j=n+-2|0;a[j>>0]=q;x=j;j=o-j|0}j=E+1+k+r+j|0;mU(b,32,f,j,h);eU(b,D,E);mU(b,48,f,j,h^65536);if(t){r=p>>>0>C>>>0?C:p;t=H+9|0;p=t;q=H+8|0;o=r;do{n=jU(c[o>>2]|0,0,t)|0;if((o|0)==(r|0)){if((n|0)==(t|0)){a[q>>0]=48;n=q}}else if(n>>>0>H>>>0){yX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}eU(b,n,p-n|0);o=o+4|0}while(o>>>0<=C>>>0);if(!((h&8|0)==0&(u^1)))eU(b,176063,1);if(o>>>0>>0&(k|0)>0)while(1){n=jU(c[o>>2]|0,0,t)|0;if(n>>>0>H>>>0){yX(H|0,48,n-G|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}eU(b,n,(k|0)<9?k:9);o=o+4|0;n=k+-9|0;if(!(o>>>0>>0&(k|0)>9)){k=n;break}else k=n}mU(b,48,k+9|0,9,0)}else{w=v?w:p+4|0;if(p>>>0>>0&(k|0)>-1){g=H+9|0;u=(h&8|0)==0;v=g;r=0-G|0;t=H+8|0;q=p;do{n=jU(c[q>>2]|0,0,g)|0;if((n|0)==(g|0)){a[t>>0]=48;n=t}do if((q|0)==(p|0)){o=n+1|0;eU(b,n,1);if(u&(k|0)<1){n=o;break}eU(b,176063,1);n=o}else{if(n>>>0<=H>>>0)break;yX(H|0,48,n+r|0)|0;do n=n+-1|0;while(n>>>0>H>>>0)}while(0);G=v-n|0;eU(b,n,(k|0)>(G|0)?G:k);k=k-G|0;q=q+4|0}while(q>>>0>>0&(k|0)>-1)}mU(b,48,k+18|0,18,0);eU(b,x,F-x|0)}mU(b,32,f,j,h^8192)}while(0);l=I;return ((j|0)<(f|0)?f:j)|0}function pU(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function qU(a,b){a=+a;b=b|0;return +(+rU(a,b))}function rU(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=rX(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+rU(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function sU(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(tU()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(CT()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(CT()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function tU(){return uU()|0}function uU(){return 108576}function vU(){return uU()|0}function wU(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[176065+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=176153;else{b=f;g=5}if((g|0)==5){f=176153;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return xU(f,c[e+20>>2]|0)|0}function xU(a,b){a=a|0;b=b|0;return yU(a,b)|0}function yU(a,b){a=a|0;b=b|0;if(!b)b=0;else b=zU(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function zU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=AU(c[b+8>>2]|0,o)|0;f=AU(c[b+12>>2]|0,o)|0;g=AU(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=AU(c[b+(g<<2)>>2]|0,o)|0;g=AU(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=XT(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}l=f?l:k;h=f?j:h-j|0}f=i+m|0;g=AU(c[b+(f<<2)>>2]|0,o)|0;f=AU(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function AU(a,b){a=a|0;b=b|0;var c=0;c=uX(a|0)|0;return ((b|0)==0?a:c)|0}function BU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(CU(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Ld[c[e+36>>2]&15](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=Ld[c[e+36>>2]&15](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);wX(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function CU(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function DU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;wX(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function EU(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=b;c[d>>2]=DT(a)|0;a=jb(6,d|0)|0;a=BT((a|0)==-4?0:a)|0;l=b;return a|0}function FU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+192|0;if((l|0)>=(m|0))W(192);i=t+152|0;h=t+136|0;s=t+120|0;r=t+104|0;q=t+96|0;n=t+80|0;k=t+64|0;f=t+48|0;o=t+32|0;g=t+16|0;e=t;u=t+176|0;j=t+168|0;c[u>>2]=d;d=(c[u>>2]|0)+(4-1)&~(4-1);p=c[d>>2]|0;c[u>>2]=d+4;p=(b|0)==4?p|32768:p;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=p;d=BT(fb(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=fb(221,g|0)|0;switch(d|0){case -22:{c[o>>2]=a;c[o+4>>2]=9;c[o+8>>2]=p;d=fb(221,o|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=BT(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=p;d=fb(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;fb(221,k|0)|0}d=BT(d)|0;break a}c[n>>2]=a;c[n+4>>2]=1030;c[n+8>>2]=0;d=fb(221,n|0)|0;if((d|0)==-22){c[r>>2]=a;c[r+4>>2]=0;c[r+8>>2]=p;d=fb(221,r|0)|0;if((d|0)>-1){c[s>>2]=d;c[s+4>>2]=2;c[s+8>>2]=1;fb(221,s|0)|0}d=BT(d)|0;break a}else{if((d|0)>-1){c[q>>2]=d;jb(6,q|0)|0}d=BT(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=p;d=BT(fb(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=p;d=BT(fb(221,i|0)|0)|0}}while(0);l=t;return d|0}function GU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;if((l|0)>=(m|0))W(48);g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=hb(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;fb(221,g|0)|0}i=BT(e)|0;l=h;return i|0}function HU(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=IT(b)|0}while((JT(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=IT(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[177957+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=IT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[177966+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=IT(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=IT(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=IT(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(CT()|0)>>2]=22;GT(b,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=IT(b)|0;if((e|32|0)==120){g=+IU(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+JU(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(CT()|0)>>2]=22;GT(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function IU(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=a+4|0;i=c[z>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=IT(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=IT(a)|0;j=1}if((w|0)==10){i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=IT(a)|0;if((i|0)==48){l=0;j=0;do{i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=IT(a)|0;l=hX(l|0,j|0,-1,-1)|0;j=y}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=hX(m|0,u|0,1,0)|0;q=i;r=1;p=y}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=IT(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[z>>2]=(c[z>>2]|0)+-1;if(g){if(!i?(c[z>>2]=(c[z>>2]|0)+-1,!((s|0)==0|i)):0)c[z>>2]=(c[z>>2]|0)+-1}else GT(a,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;w=m;m=hX(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&w>>>0<7)){m=j;break}else l=y}}else m=v;if((i|32|0)==112){j=KU(a,g)|0;i=y;if((j|0)==0&(i|0)==-2147483648){if(!g){GT(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}l=sX(p|0,o|0,2)|0;l=hX(l|0,y|0,-32,-1)|0;l=hX(l|0,y|0,j|0,i|0)|0;i=y;if(!m){h=+(f|0)*0.0;break}z=0-e|0;g=((z|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>z>>>0){c[(CT()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=e+-106|0;g=((z|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(CT()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(h>=.5);j=j<<1|(z^1)&1;h=h+(z?h:h+-1.0);l=hX(l|0,i|0,-1,-1)|0;i=y}while((j|0)>-1);n=h;m=j}else n=h;z=((b|0)<0)<<31>>31;e=iX(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hX(e|0,y|0,l|0,i|0)|0;e=y;if((e|0)<(z|0)|(e|0)==(z|0)&i>>>0>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+MU(+LU(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(CT()|0)>>2]=34;h=+OU(h,l)}while(0);return +h}function JU(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;if((l|0)>=(m|0))W(512);G=J;H=f+e|0;I=0-H|0;F=a+4|0;E=a+100|0;j=0;a:while(1){switch(b|0){case 46:{C=7;break a}case 48:break;default:{w=0;r=j;j=0;q=0;break a}}b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=IT(a)|0;j=1}if((C|0)==7){b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=IT(a)|0;if((b|0)==48){j=0;b=0;while(1){j=hX(j|0,b|0,-1,-1)|0;q=y;b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=IT(a)|0;if((b|0)==48)b=q;else{w=1;r=1;break}}}else{w=1;r=j;j=0;q=0}}c[G>>2]=0;p=b+-48|0;o=(b|0)==46;b:do if(o|p>>>0<10){D=G+496|0;x=0;n=0;u=0;z=w;B=r;C=p;r=0;p=0;c:while(1){do if(o)if(!z){z=1;j=r;q=p}else break c;else{r=hX(r|0,p|0,1,0)|0;p=y;w=(b|0)!=48;if((n|0)>=125){if(!w)break;c[D>>2]=c[D>>2]|1;break}o=G+(n<<2)|0;if(!x)b=C;else b=b+-48+((c[o>>2]|0)*10|0)|0;c[o>>2]=b;x=x+1|0;B=(x|0)==9;x=B?0:x;n=n+(B&1)|0;u=w?r:u;B=1}while(0);b=c[F>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[F>>2]=b+1;b=d[b>>0]|0}else b=IT(a)|0;C=b+-48|0;o=(b|0)==46;if(!(o|C>>>0<10)){w=z;o=B;C=31;break b}}b=x;o=(B|0)!=0;C=39}else{x=0;n=0;u=0;o=r;r=0;p=0;C=31}while(0);do if((C|0)==31){D=(w|0)==0;j=D?r:j;q=D?p:q;o=(o|0)!=0;if(!(o&(b|32|0)==101))if((b|0)>-1){b=x;C=39;break}else{b=x;C=41;break}o=KU(a,h)|0;b=y;if((o|0)==0&(b|0)==-2147483648){if(!h){GT(a,0);i=0.0;break}if(!(c[E>>2]|0)){o=0;b=0}else{c[F>>2]=(c[F>>2]|0)+-1;o=0;b=0}}j=hX(o|0,b|0,j|0,q|0)|0;b=x;q=y;C=43}while(0);if((C|0)==39)if(c[E>>2]|0){c[F>>2]=(c[F>>2]|0)+-1;if(o)C=43;else C=42}else C=41;if((C|0)==41)if(o)C=43;else C=42;do if((C|0)==42){c[(CT()|0)>>2]=22;GT(a,0);i=0.0}else if((C|0)==43){o=c[G>>2]|0;if(!o){i=+(g|0)*0.0;break}if(((p|0)<0|(p|0)==0&r>>>0<10)&((j|0)==(r|0)&(q|0)==(p|0))?(e|0)>30|(o>>>e|0)==0:0){i=+(g|0)*+(o>>>0);break}a=(f|0)/-2|0;F=((a|0)<0)<<31>>31;if((q|0)>(F|0)|(q|0)==(F|0)&j>>>0>a>>>0){c[(CT()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;F=((a|0)<0)<<31>>31;if((q|0)<(F|0)|(q|0)==(F|0)&j>>>0>>0){c[(CT()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){p=G+(n<<2)|0;o=c[p>>2]|0;while(1){o=o*10|0;if((b|0)>=8)break;else b=b+1|0}c[p>>2]=o}n=n+1|0}if((u|0)<9?(u|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[108820+(8-j<<2)>>2]|0);break}a=e+27+(N(j,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[108820+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)o=0;else{u=(j|0)>-1?b:b+9|0;q=c[108820+(8-u<<2)>>2]|0;if(n){r=1e9/(q|0)|0;p=0;o=0;b=0;do{E=G+(b<<2)|0;F=c[E>>2]|0;a=(F>>>0)/(q>>>0)|0;F=F-(N(a,q)|0)|0;a=a+p|0;c[E>>2]=a;p=N(r,F)|0;a=(b|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(n|0));if(!p)b=n;else{c[G+(n<<2)>>2]=p;b=n+1|0}}else{o=0;b=0}n=b;j=9-u+j|0}b=0;d:while(1){w=(j|0)<18;x=(j|0)==18;z=G+(o<<2)|0;while(1){if(!w){if(!x)break d;if((c[z>>2]|0)>>>0>=9007199){j=18;break d}}p=0;B=n;n=n+127|0;while(1){r=n&127;q=G+(r<<2)|0;n=sX(c[q>>2]|0,0,29)|0;n=hX(n|0,y|0,p|0,0)|0;p=y;if(p>>>0>0|(p|0)==0&n>>>0>1e9){u=pX(n|0,p|0,1e9,0)|0;a=nX(u|0,y|0,1e9,0)|0;n=iX(n|0,p|0,a|0,y|0)|0}else u=0;c[q>>2]=n;a=(r|0)==(o|0);q=(r|0)!=(B+127&127|0)|a?B:(n|0)==0?r:B;if(a)break;else{p=u;B=q;n=r+-1|0}}b=b+-29|0;if(!u)n=B;else break}o=o+127&127;n=q+127&127;p=G+((q+126&127)<<2)|0;if((o|0)==(q|0))c[p>>2]=c[p>>2]|c[G+(n<<2)>>2];else n=B;c[G+(o<<2)>>2]=u;j=j+9|0}e:while(1){x=n+1&127;z=G+((n+127&127)<<2)|0;while(1){r=(j|0)==18;w=(j|0)>27?9:1;B=o;while(1){q=0;while(1){o=q+B&127;if((o|0)==(n|0)){C=92;break}o=c[G+(o<<2)>>2]|0;p=c[108852+(q<<2)>>2]|0;if(o>>>0

>>0){C=92;break}if(o>>>0>p>>>0)break;if((q+1|0)>>>0<2)q=1;else{C=92;break}}if((C|0)==92?(C=0,r):0)break e;b=w+b|0;if((B|0)==(n|0))B=n;else break}r=(1<>>w;q=0;o=B;p=B;do{E=G+(p<<2)|0;F=c[E>>2]|0;a=(F>>>w)+q|0;c[E>>2]=a;q=N(F&r,u)|0;a=(p|0)==(o|0)&(a|0)==0;j=a?j+-9|0:j;o=a?o+1&127:o;p=p+1&127}while((p|0)!=(n|0));if(q|0){if((x|0)!=(o|0))break;c[z>>2]=c[z>>2]|1}}c[G+(n<<2)>>2]=q;n=x}i=0.0;j=n;o=0;do{p=o+B&127;n=j+1&127;if((p|0)==(j|0)){c[G+(n+-1<<2)>>2]=0;j=n}i=i*1.0e9+ +((c[G+(p<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);v=+(g|0);k=i*v;p=b+53|0;q=p-f|0;r=(q|0)<(e|0);o=r?((q|0)>0?q:0):e;if((o|0)<53){K=+MU(+LU(1.0,105-o|0),k);s=+NU(k,+LU(1.0,53-o|0));t=K;i=s;s=K+(k-s)}else{t=0.0;i=0.0;s=k}n=B+2&127;if((n|0)!=(j|0)){n=c[G+(n<<2)>>2]|0;do if(n>>>0>=5e8){if((n|0)!=5e8){i=v*.75+i;break}if((B+3&127|0)==(j|0)){i=v*.5+i;break}else{i=v*.75+i;break}}else{if((n|0)==0?(B+3&127|0)==(j|0):0)break;i=v*.25+i}while(0);if((53-o|0)>1?!(+NU(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=s+k-t;do if((p&2147483647|0)>(-2-H|0)){H=!(+A(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(k!=0.0&(r&((o|0)!=(q|0)|H))):0)break;c[(CT()|0)>>2]=34}while(0);i=+OU(i,b)}while(0);l=J;return +i}function KU(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=IT(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=IT(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=IT(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=nX(f|0,h|0,10,0)|0;b=y;e=hX(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=hX(e|0,y|0,l|0,b|0)|0;h=y;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=IT(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=IT(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;l=(g|0)==0;j=iX(0,0,f|0,e|0)|0;f=l?f:j;e=l?e:y}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}y=e;return f|0}function LU(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=sX(b+1023|0,0,52)|0;e=y;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function MU(a,b){a=+a;b=+b;return +(+RT(a,b))}function NU(a,b){a=+a;b=+b;return +(+PU(a,b))}function OU(a,b){a=+a;b=b|0;return +(+LU(a,b))}function PU(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=rX(i|0,l|0,52)|0;e=e&2047;m=rX(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=sX(n|0,o|0,1)|0;k=y;a:do if(!((g|0)==0&(k|0)==0)?(f=QU(b)|0,d=y&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=sX(i|0,l|0,1)|0;f=y;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=sX(i|0,l|0,12)|0;f=y;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=sX(d|0,f|0,1)|0;f=y}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=sX(i|0,l|0,1-e|0)|0;g=y}else g=l&1048575|1048576;if(!m){f=sX(n|0,o|0,12)|0;k=y;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=sX(f|0,k|0,1)|0;k=y}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=sX(n|0,o|0,1-d|0)|0;m=d;l=y}else l=o&1048575|1048576;f=iX(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=sX(f|0,d|0,1)|0;g=y;e=e+-1|0;f=iX(i|0,g|0,n|0,l|0)|0;d=y;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=sX(f|0,d|0,1)|0;d=y;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hX(f|0,d|0,0,-1048576)|0;d=y;e=sX(e|0,0,52)|0;d=d|y;e=o|e}else{e=rX(f|0,d|0,1-e|0)|0;d=y}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function QU(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function RU(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function SU(b,c){b=b|0;c=c|0;b=TU(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function TU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(RU(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=N(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function UU(a,b){a=a|0;b=b|0;var e=0;a=VU(a)|0;if(((a|0)!=-1?(e=VU(b)|0,(e|0)!=-1):0)?(d[177970+a>>0]|0)<=207:0)a=e<<16|a;else{c[(CT()|0)>>2]=22;a=-1}return a|0}function VU(b){b=b|0;var c=0,d=0,e=0;d=(a[b>>0]|0)==0?177970:b;b=177970;while(1){if(!(WU(d,b)|0)){e=3;break}b=b+((RU(b)|0)+1)|0;c=a[b>>0]|0;if(!(c<<24>>24)){c=a[b+1>>0]|0;if((c&255)>128)c=2;else c=(((128-(c&255)|0)>>>2)*5|0)+2|0;c=b+c|0;b=c;c=a[c>>0]|0}if(!(c<<24>>24)){b=-1;break}}if((e|0)==3){if(a[b>>0]|0)do b=b+((RU(b)|0)+1)|0;while((a[b>>0]|0)!=0);b=b+1-177970|0}return b|0}function WU(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;a:do if(!(d<<24>>24)){d=0;g=9}else while(1){f=a[c>>0]|0;if(!(f<<24>>24)){g=9;break a}e=d;d=d&255;while(1){if(!((d+-48|0)>>>0>10&((d|32)+-97|0)>>>0>26)){d=e;break}b=b+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;break}else{e=d;d=d&255}}if((d|32)<<24>>24!=f<<24>>24){d=1;break a}b=b+1|0;c=c+1|0;d=a[b>>0]|0;if(!(d<<24>>24)){d=0;g=9;break}}while(0);if((g|0)==9)d=d<<24>>24!=(a[c>>0]|0)&1;return d|0}function XU(a){a=a|0;return 0}function YU(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=n;j=(g|0)==0?186496:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(c[c[(ZU()|0)+188>>2]>>2]|0)==0;g=a[e>>0]|0;if(h){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[107992+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;o=b>>>3;if((o+-16|o+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[(CT()|0)>>2]=84;g=-1}l=n;return g|0}function ZU(){return uU()|0}function _U(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=f;c[g>>2]=e;e=$T(a,b,d,g)|0;l=f;return e|0}function $U(a,b){a=a|0;b=b|0;aV(a,b)|0;return a|0}function aV(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function bV(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(c[j>>2]|0)>>>0>4294967295;if(b&d>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|b){e=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(d>>>0<1016070144)a=a+1.0;else e=9;while(0);if((e|0)==9){g=a+26388279066624.0;h[j>>3]=g;e=(c[j>>2]|0)+128|0;d=e<<1&510;f=+h[48544+(d<<3)>>3];a=a-(g+-26388279066624.0)-+h[48544+((d|1)<<3)>>3];a=+LU(f+f*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(e&-256|0)/256|0)}return +a}function cV(a){a=+a;a=+dV(a);y=+A(a)>=1.0?(a>0.0?~~+O(+z(a/4294967296.0),4294967295.0)>>>0:~~+M((a-+(~~a>>>0))/4294967296.0)>>>0):0;return ~~a>>>0|0}function dV(a){a=+a;var b=0,d=0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2146435072;if(!(d>>>0>1126170624|(d|0)==1126170624&0>0)){b=(b|0)<0;a=b?a+-4503599627370496.0+4503599627370496.0:a+4503599627370496.0+-4503599627370496.0;if(a==0.0)a=b?-0.0:0.0}return +a}function eV(a){a=+a;var b=0,d=0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+UT(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+UT(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+UT(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function fV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=BT(gb(3,f|0)|0)|0;l=e;return d|0}function gV(a,b){a=a|0;b=b|0;var c=0;c=RU(a)|0;return ((hV(a,1,c,b)|0)!=(c|0))<<31>>31|0}function hV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=N(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(cU(e)|0)==0;a=BU(a,f,e)|0;if(!g)dU(e)}else a=BU(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function iV(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(CU(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Ld[c[b+36>>2]&15](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=n;return f|0}function jV(a){a=a|0;var b=0,c=0;b=(RU(a)|0)+1|0;c=pT(b)|0;if(!c)a=0;else a=wX(c|0,a|0,b|0)|0;return a|0}function kV(){ab(186500);return 186508}function lV(){kb(186500);return} +function Al(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;O=f+880|0;x=c[O>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){U=d[146491+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+U>>0]|0)*384|0)+(a[f+28312+U>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=38;else{M=x;x=5}}else if((x|0)==1){y=f+21792|0;M=y;y=c[y>>2]|0;x=5}else x=38;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;L=c[u>>2]|0;K=c[u+4>>2]|0;P=c[e+25664>>2]|0;Q=o<<1;U=f+21780|0;E=c[U>>2]|0;S=k+((N(E,Q)|0)+(n<<1<>2]|0;Q=(N(x,Q)|0)+(n<>2]<<3)+n|0;r=f+21828|0;l=c[r>>2]|0;y=(y>>l<<3)+o|0;if(!(z&A)){B=A&1;z=d[146491+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;v=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;u=z<<2&12|v&3;x=v>>2;A=z>>2;t=(N(A,E)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;y=m<<4;l=c[e+27008>>2]<<4>>l;n=v&7;M=(n|0)==0?0:-3;O=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(A|0)<(0-O|0))?(x+16|0)<=(M+y|0):0)?(A+16|0)<=(l+O|0):0){k=0;y=E}else{O=f+27792|0;k=2<>2]&3](c[O>>2]|0,t+(0-k)+(0-(E<<1))|0,E,E,21,21,x+-2|0,A+-2|0,y,l);y=c[U>>2]|0;t=(c[O>>2]|0)+k+(y<<1)|0;k=1}x=p+(u<<2)|0;Sd[c[x>>2]&1023](S,t,y);if(!h)Sd[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);v=v>>3;u=v<>2]|0;x=N(y,A)|0;t=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+u+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+u+x|0;u=f+27792|0;if(!k){e=z<<1&6;Vd[q&63](R,t,y,i,n,e);y=e}else{j=m<<3;h=e+8|0;Yd[c[h>>2]&3](c[u>>2]|0,t,y,y,9,17,v,A,j,l);y=z<<1&6;Vd[q&63](R,c[u>>2]|0,c[T>>2]|0,i,n,y);e=c[T>>2]|0;Yd[c[h>>2]&3](c[u>>2]|0,x,e,e,9,17,v,A,j,l);x=c[u>>2]|0}Vd[q&63](Q,x,c[T>>2]|0,i,n,y);Vd[D&63](S,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+892|0;Vd[C&63](R,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Vd[C&63](Q,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}I=c[f+27788>>2]|0;J=I+(16<>0]|0;w=a[f+28272+C>>0]|0;G=a[f+28312+C>>0]|0;o=t<<3;k=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;m=B+(b[f+27952+(C<<2)+2>>1]|0)|0;u=m<<2&12|k&3;x=k>>2;z=m>>2;y=(N(z,E)|0)+(x<>2]|0)+y|0;D=e+27012|0;A=c[D>>2]|0;t=A<<4;s=e+27008|0;l=c[s>>2]<<4>>l;n=k&7;F=(n|0)==0?0:-3;g=(m&7|0)==0?0:-3;if((!((x|0)<(0-F|0)|(z|0)<(0-g|0))?(x+16|0)<=(F+t|0):0)?(z+16|0)<=(l+g|0):0){t=y;v=0;y=E}else{g=f+27792|0;v=2<>2]&3](c[g>>2]|0,y+(0-v)+(0-(E<<1))|0,E,E,21,21,x+-2|0,z+-2|0,t,l);y=c[U>>2]|0;t=(c[g>>2]|0)+v+(y<<1)|0;v=1}x=p+(u<<2)|0;Sd[c[x>>2]&1023](S,t,y);E=(h|0)!=0;if(!E)Sd[c[x>>2]&1023](S+j|0,t+j|0,c[U>>2]|0);y=k>>3;F=y<>2]|0;x=N(t,z)|0;u=(c[f+23416+(w*40|0)+4>>2]|0)+F+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+F+x|0;F=f+27792|0;if(!v){y=m<<1&6;Vd[q&63](R,u,t,i,n,y)}else{g=A<<3;A=e+8|0;Yd[c[A>>2]&3](c[F>>2]|0,u,t,t,9,17,y,z,g,l);h=m<<1&6;Vd[q&63](R,c[F>>2]|0,c[T>>2]|0,i,n,h);m=c[T>>2]|0;Yd[c[A>>2]&3](c[F>>2]|0,x,m,m,9,17,y,z,g,l);x=c[F>>2]|0;y=h}Vd[q&63](Q,x,c[T>>2]|0,i,n,y);z=o+(b[f+28112+(C<<2)>>1]|0)|0;n=B+(b[f+28112+(C<<2)+2>>1]|0)|0;k=n<<2&12|z&3;u=z>>2;o=n>>2;y=c[U>>2]|0;t=(N(o,y)|0)+(u<>2]|0)+t|0;A=c[D>>2]|0;x=A<<4;l=c[s>>2]<<4>>c[r>>2];m=z&7;g=(m|0)==0?0:-3;h=(n&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(o|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(o+16|0)<=(l+h|0):0)v=0;else{v=2<>2]&3](c[F>>2]|0,t+(0-v)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,x,l);y=c[U>>2]|0;t=(c[F>>2]|0)+v+(y<<1)|0;v=1}x=p+(k<<2)|0;Sd[c[x>>2]&1023](H,t,y);if(!E)Sd[c[x>>2]&1023](H+j|0,t+j|0,c[U>>2]|0);u=z>>3;j=u<>2]|0;x=N(y,o)|0;t=(c[f+25336+(G*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(G*40|0)+8>>2]|0)+j+x|0;if(!v){e=n<<1&6;Vd[q&63](I,t,y,i,m,e);y=e}else{j=A<<3;h=e+8|0;Yd[c[h>>2]&3](c[F>>2]|0,t,y,y,9,17,u,o,j,l);y=n<<1&6;Vd[q&63](I,c[F>>2]|0,c[T>>2]|0,i,m,y);e=c[T>>2]|0;Yd[c[h>>2]&3](c[F>>2]|0,x,e,e,9,17,u,o,j,l);x=c[F>>2]|0}Vd[q&63](J,x,c[T>>2]|0,i,m,y);if((c[O>>2]|0)==2){e=c[f+3216+(w*384|0)+(G<<3)+((c[M>>2]&1)<<2)>>2]|0;f=64-e|0;Wd[L&31](S,H,c[U>>2]|0,i,5,e,f,0);Wd[K&31](R,I,c[T>>2]|0,i,5,e,f,0);Wd[K&31](Q,J,c[T>>2]|0,i,5,e,f,0);break}else{Wd[L&31](S,H,c[U>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(G<<4)+8>>2]|0,(c[f+912+(G<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);e=f+892|0;Wd[K&31](R,I,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(G<<5)+16>>2]|0,(c[f+1680+(G<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Wd[K&31](Q,J,c[T>>2]|0,i,c[e>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(G<<5)+24>>2]|0,(c[f+1680+(G<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==38){I=c[e+25664>>2]|0;K=o<<1;H=f+21780|0;y=c[H>>2]|0;G=k+((N(y,K)|0)+(n<<1<>2]|0,K)|0)+(n<>2]<<3)+n|0;F=f+21828|0;x=c[F>>2]|0;E=(c[f+21792>>2]>>x<<3)+o|0;if(v){n=d[146491+g>>0]|0;A=a[f+28272+n>>0]|0;l=(D<<3)+(b[f+27952+(n<<2)>>1]|0)|0;n=(E<<3)+(b[f+27952+(n<<2)+2>>1]|0)|0;k=n<<2&12|l&3;u=l>>2;o=n>>2;t=(N(o,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;v=B<<4;m=c[e+27008>>2]<<4>>x;C=l&7;T=(C|0)==0?0:-3;U=(n&7|0)==0?0:-3;if((!((u|0)<(0-T|0)|(o|0)<(0-U|0))?(u+16|0)<=(T+v|0):0)?(o+16|0)<=(m+U|0):0)z=0;else{U=f+27792|0;z=2<>2]&3](c[U>>2]|0,t+(0-z)+(0-(y<<1))|0,y,y,21,21,u+-2|0,o+-2|0,v,m);y=c[H>>2]|0;t=(c[U>>2]|0)+z+(y<<1)|0;z=1}x=p+(k<<2)|0;Sd[c[x>>2]&1023](G,t,y);if(!h)Sd[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);t=l>>3;y=t<>2]|0;x=N(u,o)|0;v=(c[f+23416+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!z){y=n<<1&6;Vd[q&63](J,v,u,i,C,y)}else{T=B<<3;R=e+8|0;Yd[c[R>>2]&3](c[y>>2]|0,v,u,u,9,17,t,o,T,m);U=n<<1&6;Vd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,C,U);S=c[L>>2]|0;Yd[c[R>>2]&3](c[y>>2]|0,x,S,S,9,17,t,o,T,m);x=c[y>>2]|0;y=U}Vd[q&63](K,x,c[L>>2]|0,i,C,y);q=s;p=r}if(w|0){m=d[146491+g>>0]|0;A=a[f+28312+m>>0]|0;l=(D<<3)+(b[f+28112+(m<<2)>>1]|0)|0;m=(E<<3)+(b[f+28112+(m<<2)+2>>1]|0)|0;v=m<<2&12|l&3;x=l>>2;n=m>>2;y=c[H>>2]|0;t=(N(n,y)|0)+(x<>2]|0)+t|0;o=c[e+27012>>2]|0;u=o<<4;z=c[e+27008>>2]<<4>>c[F>>2];B=l&7;T=(B|0)==0?0:-3;U=(m&7|0)==0?0:-3;if((!((x|0)<(0-T|0)|(n|0)<(0-U|0))?(x+16|0)<=(u+T|0):0)?(n+16|0)<=(z+U|0):0)k=0;else{U=f+27792|0;k=2<>2]&3](c[U>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,x+-2|0,n+-2|0,u,z);y=c[H>>2]|0;t=(c[U>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Sd[c[x>>2]&1023](G,t,y);if(!h)Sd[c[x>>2]&1023](G+j|0,t+j|0,c[H>>2]|0);v=l>>3;y=v<>2]|0;x=N(t,n)|0;u=(c[f+25336+(A*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(A*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!k){y=m<<1&6;Vd[q&63](J,u,t,i,B,y)}else{j=o<<3;h=e+8|0;Yd[c[h>>2]&3](c[y>>2]|0,u,t,t,9,17,v,n,j,z);f=m<<1&6;Vd[q&63](J,c[y>>2]|0,c[L>>2]|0,i,B,f);e=c[L>>2]|0;Yd[c[h>>2]&3](c[y>>2]|0,x,e,e,9,17,v,n,j,z);x=c[y>>2]|0;y=f}Vd[q&63](K,x,c[L>>2]|0,i,B,y)}}while(0);return}function Bl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)wl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){A=q<<24>>24;B=c[f+21788>>2]|0;B=((B<<4|8)+(b[f+28e3>>1]>>2)<>2]<<4|B<<2&12)+(b[f+28002>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;z=d+12|0;C=f+21772|0;Sd[c[z>>2]&1023]((c[f+23416+(A*40|0)>>2]|0)+B|0,c[C>>2]|0,4);Sd[c[z>>2]&1023]((c[f+23416+(A*40|0)+4>>2]|0)+B|0,c[C>>2]|0,4);Sd[c[z>>2]&1023]((c[f+23416+(A*40|0)+8>>2]|0)+B|0,c[C>>2]|0,4)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;Cl(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);Cl(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}A=f+21780|0;if(D&32|0){w=j+64|0;x=k+4|0;y=l+64|0;z=m+4|0;B=n+4|0;C=o+4|0;Cl(d,f,0,0,16,c[A>>2]<<3,g,h,i,0,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&4096,D&16384);Cl(d,f,4,0,16,c[A>>2]<<3,g,h,i,4,0,w,c[x>>2]|0,y,c[z>>2]|0,B,C,D&8192,D&32768);break}B=j+128|0;C=k+8|0;w=l+128|0;x=m+8|0;y=n+8|0;z=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;Cl(d,f,n,0,4,4<>2],g,h,i,o,j,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);Cl(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,B,c[v>>2]|0,w,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;Cl(d,f,n,0,8,c[A>>2]<<2,g,h,i,o,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);Cl(d,f,n|1,0,8,c[A>>2]<<2,g,h,i,o|2,j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Cl(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,B,c[C>>2]|0,w,c[x>>2]|0,y,z,l,q);p=p+1|0}}else Cl(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else Cl(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){G=F<<24>>24;h=c[f+21788>>2]|0;h=((h<<4|8)+(b[f+28160>>1]>>2)<>2]<<4|h<<2&12)+(b[f+28162>>1]>>2)|0,c[f+21780>>2]|0)|0)|0;g=d+12|0;i=f+21772|0;Sd[c[g>>2]&1023]((c[f+25336+(G*40|0)>>2]|0)+h|0,c[i>>2]|0,4);Sd[c[g>>2]&1023]((c[f+25336+(G*40|0)+4>>2]|0)+h|0,c[i>>2]|0,4);Sd[c[g>>2]&1023]((c[f+25336+(G*40|0)+8>>2]|0)+h|0,c[i>>2]|0,4)}return}function Cl(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0;K=f+880|0;q=c[K>>2]|0;x=(v|0)!=0;y=(w|0)!=0;if(y&(x&(q|0)==2)){Q=d[146491+g>>0]|0;q=f+21792|0;s=c[q>>2]|0;if((c[f+3216+((a[f+28272+Q>>0]|0)*384|0)+(a[f+28312+Q>>0]<<3)+((s&1)<<2)>>2]|0)==32)q=59;else{J=q;q=5}}else if((q|0)==1){s=f+21792|0;J=s;s=c[s>>2]|0;q=5}else q=59;do if((q|0)==5){z=c[t>>2]|0;I=c[u>>2]|0;L=c[e+25664>>2]|0;Q=f+21780|0;w=c[Q>>2]|0;M=(N(o<<1,w)|0)+(n<<1<>2]<<3)+n|0;B=f+21828|0;u=c[B>>2]|0;q=(s>>u<<3)+o|0;if(!(x&y)){o=y&1;K=d[146491+g>>0]|0;n=a[f+28272+(o*40|0)+K>>0]|0;J=(t<<3)+(b[f+27952+(o*160|0)+(K<<2)>>1]|0)|0;K=(q<<3)+(b[f+27952+(o*160|0)+(K<<2)+2>>1]|0)|0;t=K<<2&12|J&3;y=J>>2;l=K>>2;v=(N(l,w)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>u;J=(J&7|0)==0?0:-3;K=(K&7|0)==0?0:-3;if((!((y|0)<(0-J|0)|(l|0)<(0-K|0))?(y+16|0)<=(J+m|0):0)?(l+16|0)<=(k+K|0):0){u=0;s=w}else{K=f+27792|0;u=2<>2]&3](c[K>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Sd[c[x>>2]&1023](P,q,s);p=(h|0)!=0;if(!p)Sd[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){K=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[x>>2]&1023](O,q,s);if(!p)Sd[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(o*1920|0)+(n*40|0)+8>>2]|0)+v|0;if(t){K=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[K>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[Q>>2]|0;q=(c[K>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[x>>2]&1023](M,q,s);if(!p)Sd[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);Vd[z&63](P,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(n<<4)+(o<<3)>>2]|0,c[f+912+(n<<4)+(o<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;e=f+21784|0;j=f+892|0;Vd[z&63](O,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)>>2]|0,c[f+1680+(n<<5)+(o<<4)+4>>2]|0);Vd[z&63](M,c[e>>2]|0,i,c[j>>2]|0,c[f+1680+(n<<5)+(o<<4)+8>>2]|0,c[f+1680+(n<<5)+(o<<4)+12>>2]|0);break}E=c[f+27788>>2]|0;F=E+(16<>2]<<4)|0;z=d[146491+g>>0]|0;C=a[f+28272+z>>0]|0;D=a[f+28312+z>>0]|0;o=t<<3;x=o+(b[f+27952+(z<<2)>>1]|0)|0;n=q<<3;g=n+(b[f+27952+(z<<2)+2>>1]|0)|0;t=g<<2&12|x&3;l=x>>2;m=g>>2;k=(N(m,w)|0)+(l<>2]|0)+k|0;A=e+27012|0;y=c[A>>2]<<4;r=e+27008|0;v=c[r>>2]<<4>>u;x=(x&7|0)==0?0:-3;g=(g&7|0)==0?0:-3;if((!((l|0)<(0-x|0)|(m|0)<(0-g|0))?(l+16|0)<=(x+y|0):0)?(m+16|0)<=(v+g|0):0){u=0;s=w}else{g=f+27792|0;u=2<>2]&3](c[g>>2]|0,q+(0-u)+(0-(w<<1))|0,w,w,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Sd[c[x>>2]&1023](P,q,s);w=(h|0)!=0;if(!w)Sd[c[x>>2]&1023](P+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[x>>2]&1023](O,q,s);if(!w)Sd[c[x>>2]&1023](O+j|0,q+j|0,c[Q>>2]|0);q=(c[f+23416+(C*40|0)+8>>2]|0)+k|0;if(t){g=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,y,v);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[x>>2]&1023](M,q,s);if(!w)Sd[c[x>>2]&1023](M+j|0,q+j|0,c[Q>>2]|0);g=o+(b[f+28112+(z<<2)>>1]|0)|0;h=n+(b[f+28112+(z<<2)+2>>1]|0)|0;u=h<<2&12|g&3;y=g>>2;l=h>>2;q=c[Q>>2]|0;v=(N(l,q)|0)+(y<>2]|0)+v|0;k=c[A>>2]<<4;x=c[r>>2]<<4>>c[B>>2];g=(g&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((y|0)<(0-g|0)|(l|0)<(0-h|0))?(y+16|0)<=(k+g|0):0)?(l+16|0)<=(x+h|0):0)t=0;else{h=f+27792|0;t=2<>2]&3](c[h>>2]|0,s+(0-t)+(0-(q<<1))|0,q,q,21,21,y+-2|0,l+-2|0,k,x);q=c[Q>>2]|0;s=(c[h>>2]|0)+t+(q<<1)|0;t=1}u=p+(u<<2)|0;Sd[c[u>>2]&1023](H,s,q);if(!w)Sd[c[u>>2]&1023](H+j|0,s+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+4>>2]|0)+v|0;t=(t|0)!=0;if(t){g=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[u>>2]&1023](E,q,s);if(!w)Sd[c[u>>2]&1023](E+j|0,q+j|0,c[Q>>2]|0);q=(c[f+25336+(D*40|0)+8>>2]|0)+v|0;if(t){g=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[g>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,k,x);s=c[Q>>2]|0;q=(c[g>>2]|0)+h+(s<<1)|0}else s=c[Q>>2]|0;Sd[c[u>>2]&1023](F,q,s);if(!w)Sd[c[u>>2]&1023](F+j|0,q+j|0,c[Q>>2]|0);if((c[K>>2]|0)==2){f=c[f+3216+(C*384|0)+(D<<3)+((c[J>>2]&1)<<2)>>2]|0;j=64-f|0;Wd[I&31](P,H,c[Q>>2]|0,i,5,f,j,0);Wd[I&31](O,E,c[G>>2]|0,i,5,f,j,0);Wd[I&31](M,F,c[G>>2]|0,i,5,f,j,0);break}else{Wd[I&31](P,H,c[Q>>2]|0,i,c[f+888>>2]|0,c[f+912+(C<<4)>>2]|0,c[f+912+(D<<4)+8>>2]|0,(c[f+912+(D<<4)+12>>2]|0)+(c[f+912+(C<<4)+4>>2]|0)|0);j=f+892|0;Wd[I&31](O,E,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)>>2]|0,c[f+1680+(D<<5)+16>>2]|0,(c[f+1680+(D<<5)+20>>2]|0)+(c[f+1680+(C<<5)+4>>2]|0)|0);Wd[I&31](M,F,c[G>>2]|0,i,c[j>>2]|0,c[f+1680+(C<<5)+8>>2]|0,c[f+1680+(D<<5)+24>>2]|0,(c[f+1680+(D<<5)+28>>2]|0)+(c[f+1680+(C<<5)+12>>2]|0)|0);break}}else if((q|0)==59){E=c[e+25664>>2]|0;F=f+21780|0;x=c[F>>2]|0;D=(N(o<<1,x)|0)+(n<<1<>2]<<3)+n|0;A=f+21828|0;s=c[A>>2]|0;o=(c[f+21792>>2]>>s<<3)+o|0;if(v){i=d[146491+g>>0]|0;v=a[f+28272+i>>0]|0;Q=(z<<3)+(b[f+27952+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+27952+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;l=Q>>2;m=i>>2;k=(N(m,x)|0)+(l<>2]|0)+k|0;n=c[e+27012>>2]<<4;y=c[e+27008>>2]<<4>>s;Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((l|0)<(0-Q|0)|(m|0)<(0-i|0))?(l+16|0)<=(Q+n|0):0)?(m+16|0)<=(y+i|0):0){u=0;s=x}else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(x<<1))|0,x,x,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Sd[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Sd[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+4>>2]|0)+k|0;t=(u|0)!=0;if(t){Q=f+27792|0;i=2<>2]|0;Yd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Sd[c[x>>2]&1023](C,q,s);if(!p)Sd[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+23416+(v*40|0)+8>>2]|0)+k|0;if(t){Q=f+27792|0;i=2<>2]|0;Yd[c[e+8>>2]&3](c[Q>>2]|0,q+(0-i)+(0-(s<<1))|0,s,s,21,21,l+-2|0,m+-2|0,n,y);s=c[F>>2]|0;q=(c[Q>>2]|0)+i+(s<<1)|0}else s=c[F>>2]|0;Sd[c[x>>2]&1023](D,q,s);if(p)p=r;else{Sd[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0);p=r}}if(w|0){i=d[146491+g>>0]|0;n=a[f+28312+i>>0]|0;Q=(z<<3)+(b[f+28112+(i<<2)>>1]|0)|0;i=(o<<3)+(b[f+28112+(i<<2)+2>>1]|0)|0;t=i<<2&12|Q&3;y=Q>>2;l=i>>2;s=c[F>>2]|0;v=(N(l,s)|0)+(y<>2]|0)+v|0;m=c[e+27012>>2]<<4;k=c[e+27008>>2]<<4>>c[A>>2];Q=(Q&7|0)==0?0:-3;i=(i&7|0)==0?0:-3;if((!((y|0)<(0-Q|0)|(l|0)<(0-i|0))?(y+16|0)<=(m+Q|0):0)?(l+16|0)<=(k+i|0):0)u=0;else{i=f+27792|0;u=2<>2]&3](c[i>>2]|0,q+(0-u)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+u+(s<<1)|0;u=1}x=p+(t<<2)|0;Sd[c[x>>2]&1023](B,q,s);p=(h|0)!=0;if(!p)Sd[c[x>>2]&1023](B+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+4>>2]|0)+v|0;t=(u|0)!=0;if(t){i=f+27792|0;h=2<>2]|0;Yd[c[e+8>>2]&3](c[i>>2]|0,q+(0-h)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[i>>2]|0)+h+(s<<1)|0}else s=c[F>>2]|0;Sd[c[x>>2]&1023](C,q,s);if(!p)Sd[c[x>>2]&1023](C+j|0,q+j|0,c[F>>2]|0);q=(c[f+25336+(n*40|0)+8>>2]|0)+v|0;if(t){h=f+27792|0;f=2<>2]|0;Yd[c[e+8>>2]&3](c[h>>2]|0,q+(0-f)+(0-(s<<1))|0,s,s,21,21,y+-2|0,l+-2|0,m,k);s=c[F>>2]|0;q=(c[h>>2]|0)+f+(s<<1)|0}else s=c[F>>2]|0;Sd[c[x>>2]&1023](D,q,s);if(!p)Sd[c[x>>2]&1023](D+j|0,q+j|0,c[F>>2]|0)}}while(0);return}function Dl(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;do if(c[a+26376>>2]|0){j=c[a+27016>>2]|0;h=(N(j,f&-2)|0)+d|0;g=h+-1|0;i=(f&1|0)!=0;if(i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(g<<1)>>1]|0|0):0)g=((c[b+21828>>2]|0)==((c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>7&1|0)?j:0)+g|0;if(!(c[b+21828>>2]|0)){h=(N(j,f+-1|0)|0)+d|0;break}h=h-j|0;if(!i?(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(h<<1)>>1]|0|0):0)h=h-((c[(c[a+24364>>2]|0)+(h<<2)>>2]&128|0)==0?0:j)|0}else{h=c[b+21796>>2]|0;g=h+-1|0;h=h-(c[a+27016>>2]<<((c[a+26380>>2]|0)!=3&1))|0}while(0);i=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)==(e[i+(g<<1)>>1]|0|0))g=(c[(c[a+24364>>2]|0)+(g<<2)>>2]|0)>>>11&1^1;else g=0;if((d|0)==(e[i+(h<<1)>>1]|0|0))g=((c[(c[a+24364>>2]|0)+(h<<2)>>2]|0)>>>11&1^1)+g|0;return Hl(b+32856|0,((c[b+840>>2]|0)==3?g+13|0:g)+11+(b+32904)|0)|0}function El(a,b){a=a|0;b=b|0;var d=0;d=(c[b+21796>>2]|0)-(c[a+27016>>2]<<1)|0;return Hl(b+32856|0,b+32974+(((c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&(c[b+832>>2]|0)==(e[(c[a+26372>>2]|0)+(d<<1)>>1]|0|0))+(c[b+21828>>2]&(c[b+21788>>2]|0)!=0))|0)|0}function Fl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+16|0;if((l|0)>=(m|0))W(16);y=D+4|0;A=D;B=g+21796|0;C=c[B>>2]|0;c[A>>2]=0;h=(c[f+25972>>2]|0)+(C*48|0)|0;i=h+48|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));x=g+21828|0;if(!(c[x>>2]|0))h=0;else{c[A>>2]=128;h=128}z=g+840|0;if((c[z>>2]|0)==3){h=h|63744;c[A>>2]=h;if(c[g+21844>>2]|0){Gl(f,g,h);Jl(f,g,h)}_k(f,g,A);k=c[A>>2]|2048;c[A>>2]=k;h=f+26368|0}else{k=h|14344;c[A>>2]=k;Gl(f,g,k);r=c[f+24384>>2]|0;s=c[f+24352>>2]|0;h=f+26368|0;t=c[h>>2]|0;c[g+28284>>2]=0;c[g+28292>>2]=0;c[g+28300>>2]=0;c[g+28308>>2]=0;n=c[g+21740>>2]|0;if(!(n&12288))if(!n)i=0;else{w=183828;u=-1;o=16}else{i=c[g+21720>>2]|0;w=d[c[g+21748>>2]>>0]|0;j=a[r+((w&254)+(i<<2|1))>>0]|0;i=s+((N(t,w)|0)+3+(c[(c[f+26360>>2]|0)+(i<<2)>>2]|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=i>>16<<1;i=y;j=j>>1;break}else{if(n)break;i=c[i>>2]|0;c[y>>2]=i;b[y+2>>1]=((i>>>16&65535)<<16>>16)/2|0;i=y;j=j<<1;break}}while(0);if(!(c[i>>2]|j))i=0;else{w=i;u=j;o=16}}do if((o|0)==16){n=c[g+21732>>2]|0;if(!(n&12288))if(!n){i=0;break}else{p=-1;q=183828}else{j=c[g+21712>>2]|0;i=a[r+(j<<2|2)>>0]|0;j=s+((c[(c[f+26360>>2]|0)+(j<<2)>>2]|0)+(t*3|0)<<2)|0;do if(c[f+26376>>2]|0){n=(n&128|0)!=0;if(!(c[x>>2]|0)){if(!n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=q>>16<<1;i=i>>1;break}else{if(n)break;q=c[j>>2]|0;j=y+4|0;c[j>>2]=q;b[y+6>>1]=((q>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}while(0);if(!(c[j>>2]|i)){i=0;break}else{p=i;q=j}}j=c[g+21736>>2]|0;do if(!(j&12288))if((j|0)==0?(v=c[g+21728>>2]|0,(v&12288|0)!=0):0){n=c[g+21708>>2]|0;o=c[g+21752>>2]|0;i=a[r+(n<<2|o&2|1)>>0]|0;n=s+(t+3+(o&t<<1)+(c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)<<2)|0;if(c[f+26376>>2]|0){j=(v&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}else{o=183828;i=-1}else{n=c[g+21716>>2]|0;i=a[r+(n<<2|2)>>0]|0;n=s+((c[(c[f+26360>>2]|0)+(n<<2)>>2]|0)+(t*3|0)<<2)|0;if(c[f+26376>>2]|0){j=(j&128|0)!=0;if(!(c[x>>2]|0)){if(!j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=x>>16<<1;i=i>>1;break}else{if(j){o=n;break}x=c[n>>2]|0;o=y+8|0;c[o>>2]=x;b[y+10>>1]=((x>>>16&65535)<<16>>16)/2|0;i=i<<1;break}}else o=n}while(0);n=(p|0)!=0;j=(u|0)!=0;i=((n^1)&1)+((j^1)&1)+((i|0)==0&1)|0;do if(i>>>0<=1){if((i|0)!=1){i=Pl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=Pl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0;break}if(!j){j=b[w+2>>1]|0;i=b[w>>1]|0;break}if(n){j=b[o+2>>1]|0;i=b[o>>1]|0;break}else{j=b[q+2>>1]|0;i=b[q>>1]|0;break}}else{i=Pl(b[w>>1]|0,b[q>>1]|0,b[o>>1]|0)|0;j=Pl(b[w+2>>1]|0,b[q+2>>1]|0,b[o+2>>1]|0)|0}while(0);i=j<<16|i&65535}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i}h=c[h>>2]|0;i=(N(h<<2,c[g+21792>>2]|0)|0)+(c[g+21788>>2]<<2)|0;j=c[B>>2]<<2;if(!(k&12288)){y=(c[f+24384>>2]|0)+j|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[f+24352>>2]|0)+(i<<2)|0;w=g+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24384>>2]|0)+j|0;a[y>>0]=a[g+28284>>0]|0;a[y+1>>0]=a[g+28286>>0]|0;a[y+2>>0]=a[g+28300>>0]|0;a[y+3>>0]=a[g+28302>>0]|0}if(k&49152|0){y=(c[f+24356>>2]|0)+(i<<2)|0;w=g+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=g+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=g+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=g+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=g+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=g+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[B>>2]<<2)>>2]<<1)|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;y=(c[f+24388>>2]|0)+j|0;a[y>>0]=a[g+28324>>0]|0;a[y+1>>0]=a[g+28326>>0]|0;a[y+2>>0]=a[g+28340>>0]|0;a[y+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[z>>2]|0)!=3)){B=(c[f+26408>>2]|0)+(c[B>>2]<<2)|0;a[B+1>>0]=(e[g+28554>>1]|0)>>>1;a[B+2>>0]=(e[g+28556>>1]|0)>>>1;a[B+3>>0]=(e[g+28558>>1]|0)>>>1}c[(c[f+24364>>2]|0)+(C<<2)>>2]=c[A>>2];a[(c[f+24340>>2]|0)+C>>0]=c[g+848>>2];b[(c[f+26372>>2]|0)+(C<<1)>>1]=c[g+832>>2];c[g+21648>>2]=1;l=D;return}function Gl(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=136078;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?136174:136142;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=136110;h=i}else d=136174;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Hl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121427+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[122067+f>>0]|0;h=c[g>>2]|0;e=d[120915+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Zl(b);return f&1|0}function Il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+32904+b|0;if(!d){b=a+32856|0;if(!(Hl(b,f)|0))b=0;else{e=b;g=4}}else{b=(c[a+21740>>2]&6|0)!=0;e=a+32856|0;if(!(Hl(e,f+((c[a+21732>>2]&6|0)==0?b&1:b?2:1)|0)|0))b=0;else{f=f+2|0;g=4}}if((g|0)==4)if(!(_l(e)|0)){b=(Hl(e,f+1|0)|0)*12|1;if(Hl(e,f+2|0)|0)b=b+4+((Hl(e,f+(d+2)|0)|0)<<2)|0;b=((Hl(e,f+(d+3)|0)|0)<<1)+b|0;b=b+(Hl(e,f+((d<<1)+3)|0)|0)|0}else b=25;return b|0}function Jl(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ja=l;l=l+16|0;if((l|0)>=(m|0))W(16);za=Ja+8|0;Aa=Ja;Ba=c[g+21748>>2]|0;Ha=c[g+21708>>2]|0;qa=c[g+21712>>2]|0;ra=c[g+21716>>2]|0;sa=c[g+21720>>2]|0;c[za>>2]=sa;ta=c[g+21724>>2]|0;c[za+4>>2]=ta;ua=c[g+21728>>2]|0;va=c[g+21732>>2]|0;wa=c[g+21736>>2]|0;xa=c[g+21740>>2]|0;c[Aa>>2]=xa;ya=c[g+21744>>2]|0;c[Aa+4>>2]=ya;if(!(h&2048)){v=(h&7|0)!=0;a:do if(v){r=c[(c[f+28212>>2]|0)+56>>2]|0?7:-1;k=g+21768|0;c[k>>2]=65535;i=g+21760|0;c[i>>2]=65535;o=g+21756|0;c[o>>2]=65535;p=g+21764|0;c[p>>2]=61162;q=(r&va|0)!=0;if(q){i=65535;n=60138}else{c[o>>2]=46079;c[i>>2]=13311;c[p>>2]=9962;i=46079;n=8938}j=h&128;do if((j|0)==(xa&128|0)){if(!(xa&r)){i=i&57183;c[o>>2]=i;c[k>>2]=24415}}else{if(!j){if(!((xa&r|0)==0?1:(c[(c[f+24364>>2]|0)+((c[f+27016>>2]|0)+sa<<2)>>2]&r|0)==0))break;i=i&57183;c[o>>2]=i;c[k>>2]=24415;break}if(!(xa&r)){i=i&57343;c[o>>2]=i;c[k>>2]=24575;j=24415}else j=65375;if(!(ya&r)){i=i&65375;c[o>>2]=i;c[k>>2]=j}}while(0);if(!(r&ua))c[o>>2]=i&32767;if(!(r&wa))c[p>>2]=n;if(h&1|0){if(!(va&1)){yX(g+21668|0,(q?2:-1)|0,4)|0;n=g+21704|0;o=f+26364|0}else{n=g+21704|0;o=f+26364|0;c[g+21668>>2]=c[(c[n>>2]|0)+(c[(c[o>>2]|0)+(qa<<2)>>2]|0)>>2]}k=0;while(1){if((k|0)==2)break a;i=c[Aa+(k<<2)>>2]|0;if(!(i&1)){i=(i&r|0)==0?-1:2;j=k<<4;a[j+19+(g+21664)>>0]=i;j=j|11}else{pa=(c[n>>2]|0)+(c[(c[o>>2]|0)+(c[za+(k<<2)>>2]<<2)>>2]|0)|0;i=k<<1;j=k<<4;a[(j|11)+(g+21664)>>0]=a[pa+(6-(d[Ba+i>>0]|0))>>0]|0;i=a[pa+(6-(d[Ba+(i|1)>>0]|0))>>0]|0;j=j+19|0}a[g+21664+j>>0]=i;k=k+1|0}}}while(0);u=(va|0)!=0;if(u){t=f+25972|0;i=c[t>>2]|0;c[g+27828>>2]=c[i+(qa*48|0)+12>>2];pa=(c[f+25680>>2]|0)==0;c[g+27868>>2]=c[(pa?28:20)+(i+(qa*48|0))>>2];i=c[(pa?44:36)+(i+(qa*48|0))>>2]|0}else{i=v?1077952576:0;c[g+27828>>2]=i;c[g+27868>>2]=i;t=f+25972|0}c[g+27908>>2]=i;r=v?64:0;s=f+28216|0;q=0;while(1){if((q|0)==2)break;if(!(c[Aa+(q<<2)>>2]|0)){j=q<<4;a[j+99+(g+27824)>>0]=r;a[j+91+(g+27824)>>0]=r;a[j+59+(g+27824)>>0]=r;a[j+51+(g+27824)>>0]=r;a[j+19+(g+27824)>>0]=r;j=j|11;i=r}else{o=c[t>>2]|0;p=c[za+(q<<2)>>2]|0;i=q<<1;k=Ba+(i+8)|0;j=q<<4;a[(j|11)+(g+27824)>>0]=a[(d[k>>0]|0)+(o+(p*48|0))>>0]|0;n=Ba+(i+9)|0;a[j+19+(g+27824)>>0]=a[(d[n>>0]|0)+(o+(p*48|0))>>0]|0;switch(c[(c[s>>2]|0)+12>>2]|0){case 3:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+16+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+32+(o+(p*48|0))>>0]|0;n=(d[n>>0]|0)+32|0;i=j+99|0;break}case 2:{a[j+51+(g+27824)>>0]=a[(d[k>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+59+(g+27824)>>0]=a[(d[n>>0]|0)+14+(o+(p*48|0))>>0]|0;a[j+91+(g+27824)>>0]=a[(d[k>>0]|0)+30+(o+(p*48|0))>>0]|0;i=(d[n>>0]|0)+30|0;k=99;w=39;break}default:{j=q<<3;a[j+51+(g+27824)>>0]=a[(d[Ba+(i+12)>>0]|0)+(o+(p*48|0))>>0]|0;i=d[Ba+(i+13)>>0]|0;k=91;w=39}}if((w|0)==39){w=0;n=i;i=k+j|0}j=i;i=a[o+(p*48|0)+n>>0]|0}a[g+27824+j>>0]=i;q=q+1|0}if(u)i=e[(c[f+26392>>2]|0)+(qa<<1)>>1]|0;else i=v?1999:15;c[g+21860>>2]=i;if(!xa)i=v?1999:15;else{i=c[f+26392>>2]|0;pa=e[i+(sa<<1)>>1]|0;i=pa>>>(a[Ba>>0]&-2&255)&2|pa&2032|(e[i+(ta<<1)>>1]|0)>>>(a[Ba+2>>0]&-2&255)<<2&8}c[g+21864>>2]=i}if(!(h&120)){if(h&256|0?c[g+21844>>2]|0:0)w=53}else w=53;b:do if((w|0)==53){y=c[f+26368>>2]|0;z=g+23412|0;A=f+26360|0;B=y*3|0;D=qa<<2;C=D|2;D=D|3;E=(h&80|0)==0;F=xa|0?-1:-2;G=sa<<2|1;H=wa|0?-1:-2;I=ua|0?-1:-2;J=g+21752|0;K=y<<1;L=y+3|0;M=Ha<<2;O=(h&2304|0)==0;P=f+26364|0;Q=g+840|0;R=g+28524|0;S=f+26408|0;T=g+28532|0;U=g+28548|0;V=g+28540|0;X=(va&256|0)==0;Y=(va&64|0)==0;Z=g+28516|0;_=g+28518|0;$=g+28523|0;aa=ta<<2|1;ba=Ba+2|0;ca=g+28539|0;da=Ba+3|0;ea=Ba+1|0;fa=f+26376|0;ga=g+21828|0;ha=(ua&128|0)!=0;ia=(va&128|0)==0;ja=(wa&128|0)==0;ka=(xa&128|0)==0;la=(ya&128|0)==0;ma=ra<<2|2;na=va|0?-1:-16843010;oa=(xa&320|0)==64;w=xa&256|0?-128:4;pa=(ya&320|0)==64;x=ya&256|0?-128:4;v=0;while(1){if(v>>>0>=(c[z>>2]|0)>>>0)break b;p=g+28272+(v*40|0)+12|0;r=c[f+24384+(v<<2)>>2]|0;q=g+27952+(v*160|0)+48|0;s=c[f+24352+(v<<2)>>2]|0;u=12288<<(v<<1);do if(u&h|0){t=(u&va|0)!=0;if(t){k=(c[(c[A>>2]|0)+(qa<<2)>>2]|0)+B|0;j=s+(k<<2)|0;o=c[j+4>>2]|0;n=g+27952+(v*160|0)+16|0;c[n>>2]=c[j>>2];c[n+4>>2]=o;k=s+(k<<2)+8|0;n=c[k+4>>2]|0;o=g+27952+(v*160|0)+24|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;o=a[r+C>>0]|0;a[g+28272+(v*40|0)+5>>0]=o;a[g+28272+(v*40|0)+4>>0]=o;o=a[r+D>>0]|0;a[g+28272+(v*40|0)+7>>0]=o;a[g+28272+(v*40|0)+6>>0]=o}else{o=g+27952+(v*160|0)+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[g+28272+(v*40|0)+4>>2]=na}c:do if(E){if(!(xa&u)){c[g+27952+(v*160|0)+44>>2]=0;i=F}else{c[g+27952+(v*160|0)+44>>2]=c[s+((c[(c[A>>2]|0)+(sa<<2)>>2]|0)+3+(N(y,d[Ba>>0]|0)|0)<<2)>>2];i=a[r+(G+(a[Ba>>0]&-2&255))>>0]|0}a[g+28272+(v*40|0)+11>>0]=i}else{o=0;while(1){if((o|0)==2)break c;j=o<<1;k=o<<4;i=k+-1|0;n=c[Aa+(o<<2)>>2]|0;if(!(n&u)){c[q+(i<<2)>>2]=0;k=k|7;c[q+(k<<2)>>2]=0;j=n|0?-1:-2;a[p+k>>0]=j}else{Ka=c[za+(o<<2)>>2]|0;Ma=(c[(c[A>>2]|0)+(Ka<<2)>>2]|0)+3|0;Ka=Ka<<2|1;La=Ba+j|0;c[q+(i<<2)>>2]=c[s+((N(y,d[La>>0]|0)|0)+Ma<<2)>>2];j=Ba+(j|1)|0;n=k|7;c[q+(n<<2)>>2]=c[s+((N(y,d[j>>0]|0)|0)+Ma<<2)>>2];a[p+i>>0]=a[r+(Ka+(a[La>>0]&-2&255))>>0]|0;j=a[r+(Ka+(a[j>>0]&-2&255))>>0]|0;i=n}a[p+i>>0]=j;o=o+1|0}}while(0);if(!(u&wa)){c[g+27952+(v*160|0)+32>>2]=0;i=H}else{c[g+27952+(v*160|0)+32>>2]=c[s+((c[(c[A>>2]|0)+(ra<<2)>>2]|0)+B<<2)>>2];i=a[r+ma>>0]|0}o=g+28272+(v*40|0)+8|0;a[o>>0]=i;n=g+28272+(v*40|0)+6|0;if((a[n>>0]|i)<<24>>24<0){if(!(u&ua)){c[g+27952+(v*160|0)+12>>2]=0;i=I}else{i=c[J>>2]|0;c[g+27952+(v*160|0)+12>>2]=c[s+(L+(c[(c[A>>2]|0)+(Ha<<2)>>2]|0)+(i&K)<<2)>>2];i=a[r+(M|i&2|1)>>0]|0}a[g+28272+(v*40|0)+3>>0]=i}if(O){k=c[g+32848+(v<<2)>>2]|0;a[g+28272+(v*40|0)+30>>0]=-2;a[g+28272+(v*40|0)+14>>0]=-2;c[g+27952+(v*160|0)+56>>2]=0;c[g+27952+(v*160|0)+120>>2]=0;if(t){j=k+(c[(c[P>>2]|0)+(qa<<2)>>2]<<1)|0;i=c[j>>2]|0;j=c[j+4>>2]|0}else{i=0;j=0}Ma=g+28352+(v*80|0)+8|0;c[Ma>>2]=i;c[Ma+4>>2]=j;if(!(xa&u)){b[g+28352+(v*80|0)+22>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(sa<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+22>>1]=b[k+(i-(d[Ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[ea>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+38>>1]=i;if(!(ya&u)){b[g+28352+(v*80|0)+54>>1]=0;i=0}else{i=(c[(c[P>>2]|0)+(ta<<2)>>2]|0)+6|0;b[g+28352+(v*80|0)+54>>1]=b[k+(i-(d[ba>>0]|0)<<1)>>1]|0;i=b[k+(i-(d[da>>0]|0)<<1)>>1]|0}b[g+28352+(v*80|0)+70>>1]=i;b[g+28352+(v*80|0)+28>>1]=0;b[g+28352+(v*80|0)+60>>1]=0;if((c[Q>>2]|0)==3){j=c[S>>2]|0;c[R>>2]=67372036;c[T>>2]=67372036;c[V>>2]=67372036;c[U>>2]=67372036;do if(X)if(Y){c[Z>>2]=67372036;break}else{a[Z>>0]=a[j+C>>0]|0;a[_>>0]=a[j+D>>0]|0;break}else c[Z>>2]=-2139062144;while(0);if(oa)i=a[j+(G+(a[Ba>>0]&-2&255))>>0]|0;else i=w;a[$>>0]=i;if(pa)i=a[j+(aa+(a[ba>>0]&-2&255))>>0]|0;else i=x;a[ca>>0]=i}if(!(c[fa>>2]|0))break}else if(!(c[fa>>2]|0))break;if(!(c[ga>>2]|0)){if(ha?(Fa=g+28272+(v*40|0)+3|0,Ga=a[Fa>>0]|0,Ga<<24>>24>-1):0){a[Fa>>0]=(Ga&255)>>>1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=d[Ma>>0]<<1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=(i&255)>>>1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(!ja?(Ia=a[o>>0]|0,Ia<<24>>24>-1):0){a[o>>0]=(Ia&255)>>>1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=d[Ma>>0]<<1}do if(!ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=d[Ma>>0]<<1}while(0);if(la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=d[Ma>>0]<<1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=(j&255)>>>1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=b[Ma>>1]<<1;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=d[Ma>>0]<<1;break}else{if(!ha?(Ca=g+28272+(v*40|0)+3|0,Da=a[Ca>>0]|0,Da<<24>>24>-1):0){a[Ca>>0]=Da<<24>>24<<1;Ma=g+27952+(v*160|0)+14|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+7|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ia){i=g+28272+(v*40|0)+4|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+18|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+9|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+5|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+22|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+11|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=a[n>>0]|0;if(i<<24>>24>-1){a[n>>0]=i<<24>>24<<1;Ma=g+27952+(v*160|0)+26|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+13|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+7|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+30|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+15|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(ja?(Ea=a[o>>0]|0,Ea<<24>>24>-1):0){a[o>>0]=Ea<<24>>24<<1;Ma=g+27952+(v*160|0)+34|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+17|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}do if(ka){i=g+28272+(v*40|0)+11|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+46|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+23|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+19|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+78|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+39|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}while(0);if(!la)break;i=g+28272+(v*40|0)+27|0;j=a[i>>0]|0;if(j<<24>>24>-1){a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+110|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+55|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1}i=g+28272+(v*40|0)+35|0;j=a[i>>0]|0;if(j<<24>>24<=-1)break;a[i>>0]=j<<24>>24<<1;Ma=g+27952+(v*160|0)+142|0;b[Ma>>1]=(b[Ma>>1]|0)/2|0;Ma=g+28352+(v*80|0)+71|0;a[Ma>>0]=(d[Ma>>0]|0)>>>1;break}}while(0);v=v+1|0}}while(0);c[g+21840>>2]=(xa>>>24&1)+(va>>>24&1);l=Ja;return}function Kl(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+32856|0;if(!(Tl(c,a+32972|0)|0)){a=a+32973|0;d=Tl(c,a)|0;d=((Tl(c,a)|0)<<1)+d|0;c=d+((Tl(c,a)|0)<<2)|0;b=c+((c|0)>=(b|0)&1)|0}return b|0}function Ll(b,d){b=b|0;d=d|0;var e=0;if(!(c[d+21740>>2]|0))e=0;else e=(a[(c[b+26396>>2]|0)+(c[d+21720>>2]|0)>>0]|0)!=0&1;if(c[d+21732>>2]|0)e=e+((a[(c[b+26396>>2]|0)+(c[d+21712>>2]|0)>>0]|0)!=0&1)|0;b=d+32856|0;if(Hl(b,e+64+(d+32904)|0)|0){e=d+32971|0;if(!(Hl(b,e)|0))e=1;else{e=(Hl(b,e)|0)==0;e=e?2:3}}else e=0;return e|0}function Ml(a){a=a|0;var b=0,c=0,d=0;d=a+32856|0;if(!(Tl(d,a+32940|0)|0))a=0;else{do if(!(Tl(d,a+32941|0)|0)){b=Tl(d,a+32943|0)|0;a=1}else{c=a+32943|0;if(Tl(d,a+32942|0)|0)if(!(Tl(d,c)|0))a=7;else{b=Tl(d,c)|0;a=11;break}else a=3;b=((Tl(d,c)|0)<<1)+a|0;a=Tl(d,c)|0}while(0);a=b+a|0}return a|0}function Nl(a){a=a|0;var b=0;b=a+32856|0;if(!(Tl(b,a+32925|0)|0))if(!(Tl(b,a+32926|0)|0))a=1;else{a=(Tl(b,a+32927|0)|0)==0;a=a?3:2}else a=0;return a|0}function Ol(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d[146491+f>>0]|0;g=i+-1|0;i=i+-8|0;h=a[b+28272+(e*40|0)+i>>0]|0;f=(a[b+28272+(e*40|0)+g>>0]|0)>0;if((c[b+840>>2]|0)==3){if(f)f=((d[b+28512+g>>0]|0)>>>7^1)&255;else f=0;if(h<<24>>24>0)e=(a[b+28512+i>>0]|0)<0?f:f|2;else e=f}else{e=f&1;e=h<<24>>24>0?e|2:e}g=b+32856|0;f=0;while(1){if(!(Tl(g,e+54+(b+32904)|0)|0))break;if((f|0)>30){f=-1;break}else{f=f+1|0;e=(e>>2)+4|0}}return f|0}function Pl(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Ql(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;i=a+32856|0;do if(!(Tl(i,b+2+(d+-3>>31)+(d+-33>>31)+(a+32904)|0)|0)){c[e>>2]=0;d=0}else{f=1;d=b+3|0;while(1){if((f|0)>=9){d=3;h=7;break}if(!(Tl(i,a+32904+d|0)|0)){b=f;d=f;break}b=d+((f|0)<4&1)|0;f=f+1|0;d=b}if((h|0)==7){while(1){h=0;if(!(Yl(i)|0)){b=d;break}f=(1<23){h=12;break}else{d=d+1|0;h=7}}if((h|0)==12){ig(c[(c[a>>2]|0)+4>>2]|0,16,136045,g);d=-2147483648;break}while(1){d=b+-1|0;if(!b)break;b=d;f=((Yl(i)|0)<>2]=d;d=c[i>>2]<<1;c[i>>2]=d;if(!(d&65534)){Xl(i);d=c[i>>2]|0}e=c[a+32860>>2]<<17;a=d-e|0;d=a>>31;c[i>>2]=(d&e)+a;d=(d^0-b)-d|0}while(0);l=j;return d|0}function Rl(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+21864>>2]|0;f=c[a+21860>>2]|0;d=a+32856|0;e=Hl(d,76-(f>>>1&2|b>>>1&1)+(a+32904)|0)|0;e=((Hl(d,76-(f>>>2&2|e&1)+(a+32904)|0)|0)<<1)+e|0;b=e+((Hl(d,76-(e<<1&2|b>>>3&1)+(a+32904)|0)|0)<<2)|0;return b+((Hl(d,76-(b>>>2&1|b&2)+(a+32904)|0)|0)<<3)|0}function Sl(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a+21864>>2]|0)>>>4&3;e=(c[a+21860>>2]|0)>>>4&3;f=(b|0)!=0&1;d=a+32856|0;f=(Hl(d,((e|0)==0?f:f|2)+77+(a+32904)|0)|0)==0;b=(b|0)==2?5:4;if(f)b=0;else b=(Hl(d,((e|0)==2?b|2:b)+77+(a+32904)|0)|0)+1|0;return b|0}function Tl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=d[e>>0]|0;g=b+4|0;i=c[g>>2]|0;j=d[121427+((i<<1&384)+f)>>0]|0;i=i-j|0;k=i<<17;l=c[b>>2]|0;h=k-l>>31;c[b>>2]=l-(h&k);c[g>>2]=(h&j-i)+i;f=h^f;a[e>>0]=a[122067+f>>0]|0;h=c[g>>2]|0;e=d[120915+h>>0]|0;c[g>>2]=h<>2]<>2]=e;if(!(e&65535))Zl(b);return f&1|0}function Ul(f,g,h,i,j,k,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;B=g+32860|0;t=w+4|0;c[t>>2]=c[B>>2];y=g+32856|0;c[w>>2]=c[y>>2];z=g+32872|0;A=w+16|0;c[A>>2]=c[z>>2];s=c[g+21828>>2]|0;r=(c[102696+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;s=(c[102808+(s*56|0)+(i<<2)>>2]|0)+(g+32904)|0;u=(c[102920+(i<<2)>>2]|0)+(g+32904)|0;q=n+-1|0;p=0;o=0;while(1){if((p|0)>=(q|0)){x=6;break}if(Tl(w,r+p|0)|0){n=o+1|0;c[v+(o<<2)>>2]=p;if(!(Tl(w,s+p|0)|0))o=n;else{o=n;break}}p=p+1|0}if((x|0)==6)if((p|0)==(q|0)){c[v+(o<<2)>>2]=q;o=o+1|0}s=(i|0)==3;i=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[i>>1]=(s?64:256)<<(s?-49:-48)+j|(e[i>>1]|0);a[(d[146491+j>>0]|0)+(g+27824)>>0]=o;if(!(c[f+25664>>2]|0)){s=o;n=0;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Tl(w,u+(d[135879+n>>0]|0)|0)|0)){o=d[135887+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Xl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135903+n>>0]|0)|0;r=d[135895+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=34;break}if(!(Tl(w,o)|0))break;n=n+1|0}if((x|0)==34){while(1){x=0;if((n|0)<23&(Yl(w)|0)!=0){n=n+1|0;x=34}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Yl(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Xl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}b[h+(f<<1)>>1]=p-q;if(!s)break;else n=r}}else{n=0;s=o;while(1){s=s+-1|0;f=d[k+(c[v+(s<<2)>>2]|0)>>0]|0;if(!(Tl(w,u+(d[135879+n>>0]|0)|0)|0)){o=d[135887+n>>0]|0;n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Xl(w);n=c[w>>2]|0}j=c[t>>2]|0;r=j<<17;n=n-r|0;q=n>>31;n=(q&r)+n|0;c[w>>2]=n;r=o;p=~q;o=j}else{o=u+(d[135903+n>>0]|0)|0;r=d[135895+n>>0]|0;n=2;while(1){if(n>>>0>=15){n=0;x=18;break}if(!(Tl(w,o)|0))break;n=n+1|0}if((x|0)==18){while(1){x=0;if((n|0)<23&(Yl(w)|0)!=0){n=n+1|0;x=18}else{o=1;break}}while(1){if(!n)break;n=n+-1|0;o=(Yl(w)|0)+(o<<1)|0}n=o+14|0}o=c[w>>2]<<1;c[w>>2]=o;if(!(o&65534)){Xl(w);o=c[w>>2]|0}j=c[t>>2]|0;p=j<<17;o=o-p|0;q=o>>31;o=(q&p)+o|0;c[w>>2]=o;p=q^0-n;n=o;o=j}c[h+(f<<2)>>2]=p-q;if(!s)break;else n=r}}c[B>>2]=o;c[y>>2]=n;c[z>>2]=c[A>>2];l=C;return}function Vl(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=l;l=l+304|0;if((l|0)>=(m|0))W(304);v=C+48|0;w=C;y=f+32860|0;u=w+4|0;c[u>>2]=c[y>>2];z=f+32856|0;c[w>>2]=c[z>>2];A=f+32872|0;B=w+16|0;c[B>>2]=c[A>>2];p=c[f+21828>>2]|0;q=(c[102696+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;r=(c[102808+(p*56|0)+(h<<2)>>2]|0)+(f+32904)|0;t=(c[102920+(h<<2)>>2]|0)+(f+32904)|0;s=(n|0)==64;a:do if(s){o=0;n=0;while(1){if((o|0)>=63)break;if(Tl(w,q+(d[135919+(p*63|0)+o>>0]|0)|0)|0){D=r+(d[122195+o>>0]|0)|0;h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Tl(w,D)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==63){c[v+(n<<2)>>2]=63;n=n+1|0}}else{p=n+-1|0;o=0;n=0;while(1){if((o|0)>=(p|0))break;if(Tl(w,q+o|0)|0){h=n+1|0;c[v+(n<<2)>>2]=o;if(!(Tl(w,r+o|0)|0))n=h;else{n=h;break a}}o=o+1|0}if((o|0)==(p|0)){c[v+(n<<2)>>2]=p;n=n+1|0}}while(0);if(s){D=(d[146491+i>>0]|0)+(f+27824)|0;i=n*257&65535;b[D>>1]=i;b[D+8>>1]=i}else a[(d[146491+i>>0]|0)+(f+27824)>>0]=n;if(!(c[e+25664>>2]|0)){q=n;h=0;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Tl(w,t+(d[135879+h>>0]|0)|0)|0)){n=d[135887+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Xl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135903+h>>0]|0)|0;p=d[135895+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=44;break}if(!(Tl(w,n)|0))break;h=h+1|0}if((x|0)==44){while(1){x=0;if((h|0)<23&(Yl(w)|0)!=0){h=h+1|0;x=44}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Yl(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Xl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}b[g+(r<<1)>>1]=o>>>6;if(!q)break;else h=p}}else{h=0;q=n;while(1){q=q+-1|0;r=d[j+(c[v+(q<<2)>>2]|0)>>0]|0;if(!(Tl(w,t+(d[135879+h>>0]|0)|0)|0)){n=d[135887+h>>0]|0;o=0-(c[k+(r<<2)>>2]|0)|0;h=c[w>>2]<<1;c[w>>2]=h;if(!(h&65534)){Xl(w);h=c[w>>2]|0}D=c[u>>2]|0;p=D<<17;f=h-p|0;i=f>>31;h=(i&p)+f|0;c[w>>2]=h;p=n;o=(f>>>31|32)+(i^o)|0;n=D}else{n=t+(d[135903+h>>0]|0)|0;p=d[135895+h>>0]|0;h=2;while(1){if(h>>>0>=15){h=0;x=28;break}if(!(Tl(w,n)|0))break;h=h+1|0}if((x|0)==28){while(1){x=0;if((h|0)<23&(Yl(w)|0)!=0){h=h+1|0;x=28}else{n=1;break}}while(1){if(!h)break;h=h+-1|0;n=(Yl(w)|0)+(n<<1)|0}h=n+14|0}n=c[w>>2]<<1;c[w>>2]=n;if(!(n&65534)){Xl(w);n=c[w>>2]|0}D=c[u>>2]|0;i=D<<17;n=n-i|0;o=n>>31;n=(o&i)+n|0;c[w>>2]=n;o=(N((o^0-h)-o|0,c[k+(r<<2)>>2]|0)|0)+32|0;h=n;n=D}c[g+(r<<2)>>2]=o>>6;if(!q)break;else h=p}}c[y>>2]=n;c[z>>2]=h;c[A>>2]=c[B>>2];l=C;return}function Wl(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+304|0;if((l|0)>=(m|0))W(304);s=A+48|0;t=A;y=g+32860|0;u=t+4|0;c[u>>2]=c[y>>2];z=g+32856|0;c[t>>2]=c[z>>2];w=g+32872|0;x=t+16|0;c[x>>2]=c[w>>2];q=c[g+21828>>2]|0;p=(c[102696+(q*56|0)+12>>2]|0)+(g+32904)|0;q=(c[102808+(q*56|0)+12>>2]|0)+(g+32904)|0;r=g+33161|0;o=0;k=0;while(1){if((o|0)>=7){v=6;break}j=d[135872+o>>0]|0;if(Tl(t,p+j|0)|0){n=k+1|0;c[s+(k<<2)>>2]=o;if(!(Tl(t,q+j|0)|0))k=n;else{k=n;break}}o=o+1|0}if((v|0)==6)if((o|0)==7){c[s+(k<<2)>>2]=7;k=k+1|0}q=(c[f+26392>>2]|0)+(c[g+21796>>2]<<1)|0;b[q>>1]=64<>1]|0);a[(d[146491+i>>0]|0)+(g+27824)>>0]=k;if(!(c[f+25664>>2]|0)){q=k;j=0;while(1){q=q+-1|0;f=d[123899+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Tl(t,r+(d[135879+j>>0]|0)|0)|0)){k=d[135887+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Xl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135911+j>>0]|0)|0;p=d[135895+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=34;break}if(!(Tl(t,k)|0))break;j=j+1|0}if((v|0)==34){while(1){v=0;if((j|0)<23&(Yl(t)|0)!=0){j=j+1|0;v=34}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Yl(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Xl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}b[h+(f<<1)>>1]=n-o;if(!q)break;else j=p}}else{j=0;q=k;while(1){q=q+-1|0;f=d[123899+(c[s+(q<<2)>>2]|0)>>0]|0;if(!(Tl(t,r+(d[135879+j>>0]|0)|0)|0)){k=d[135887+j>>0]|0;j=c[t>>2]<<1;c[t>>2]=j;if(!(j&65534)){Xl(t);j=c[t>>2]|0}i=c[u>>2]|0;p=i<<17;j=j-p|0;o=j>>31;j=(o&p)+j|0;c[t>>2]=j;p=k;n=~o;k=i}else{k=r+(d[135911+j>>0]|0)|0;p=d[135895+j>>0]|0;j=2;while(1){if(j>>>0>=15){j=0;v=18;break}if(!(Tl(t,k)|0))break;j=j+1|0}if((v|0)==18){while(1){v=0;if((j|0)<23&(Yl(t)|0)!=0){j=j+1|0;v=18}else{k=1;break}}while(1){if(!j)break;j=j+-1|0;k=(Yl(t)|0)+(k<<1)|0}j=k+14|0}k=c[t>>2]<<1;c[t>>2]=k;if(!(k&65534)){Xl(t);k=c[t>>2]|0}i=c[u>>2]|0;n=i<<17;k=k-n|0;o=k>>31;k=(o&n)+k|0;c[t>>2]=k;n=o^0-j;j=k;k=i}c[h+(f<<2)>>2]=n-o;if(!q)break;else j=p}}c[y>>2]=k;c[z>>2]=j;c[w>>2]=c[x>>2];l=A;return}function Xl(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);c[b>>2]=e+2;return}function Yl(a){a=a|0;var b=0,d=0;b=c[a>>2]<<1;c[a>>2]=b;if(!(b&65534)){Xl(a);b=c[a>>2]|0}d=c[a+4>>2]<<17;if((b|0)<(d|0))b=0;else{c[a>>2]=b-d;b=1}return b|0}function Zl(a){a=a|0;var b=0,e=0,f=0;f=c[a>>2]|0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9)+-65535<<7-(d[120915+((f+-1^f)>>>15)>>0]|0))+f;c[b>>2]=e+2;return}function _l(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){$l(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function $l(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))Xl(a);return}function am(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=u;s=b+556|0;p=c[s>>2]|0;q=(N(p,f)|0)+e|0;r=b+552|0;n=c[r>>2]|0;o=n+-1|0;q=(q|0)<0?0:(q|0)>(o|0)?o:q;h=(N(p,h)|0)+g|0;h=(h|0)<0?0:(h|0)>(n|0)?n:h;n=b+548|0;p=c[n>>2]|0;o=c[p+(q<<2)>>2]|0;p=c[p+(h<<2)>>2]|0;e=c[b>>2]|0;g=c[e+592>>2]|0;if(!((g|0)!=0?(c[g+32>>2]|0)!=0:0))k=3;do if((k|0)==3){if((p|0)<(o|0)|(q|0)>(h|0)){ig(e,16,136206,j);break}if(c[e+572>>2]|0){if(!(i&18))e=-2;else{e=b+572|0;c[e>>2]=(c[e>>2]|0)+(q+~h);e=-20}if(i&36){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-38}if(i&72){k=b+572|0;c[k>>2]=(c[k>>2]|0)+(q+~h);e=e&-73}if(i&14|0){c[b+576>>2]=1;c[b+572>>2]=2147483647}g=b+580|0;a:do if((e|0)==-128)yX((c[g>>2]|0)+o|0,0,p-o|0)|0;else{f=o;while(1){if((f|0)>=(p|0))break a;k=(c[g>>2]|0)+f|0;a[k>>0]=e&(d[k>>0]|0);f=f+1|0}}while(0);if((h|0)==(c[r>>2]|0))c[b+572>>2]=2147483647;else{r=(c[g>>2]|0)+p|0;a[r>>0]=e&(d[r>>0]|0);r=(c[g>>2]|0)+p|0;a[r>>0]=d[r>>0]|0|i}i=(c[g>>2]|0)+o|0;a[i>>0]=a[i>>0]|1;if(((((o|0)>0?(t=c[b>>2]|0,(c[t+696>>2]&2|0)==0):0)?hj(b)|0:0)?(N(c[s>>2]|0,c[t+268>>2]|0)|0)<(q|0):0)?(a[(c[g>>2]|0)+(c[(c[n>>2]|0)+(q+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){c[b+576>>2]=1;c[b+572>>2]=2147483647}}}while(0);l=u;return}function bm(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=c[a+16>>2]|0;b=(c[d>>2]|0)+b|0;c[d>>2]=a>>>0>b>>>0?b:a;return}function cm(a,b,c){a=a|0;b=b|0;c=c|0;em(a,b,c,0);return}function dm(a,b,c){a=a|0;b=b|0;c=c|0;em(a,b,c,1);return}function em(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=i;if((c[e>>2]|0)>>>0>=f>>>0){if(f|0?(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)==0:0){c[h>>2]=148741;c[h+4>>2]=144438;c[h+8>>2]=33;ig(0,0,159900,h);Tb()}}else{h=f+32+(f>>>4)|0;h=h>>>0>f>>>0?h:f;eg(b);if(!g)f=qg(h)|0;else f=$g(h)|0;a[b>>0]=f;a[b+1>>0]=f>>8;a[b+2>>0]=f>>16;a[b+3>>0]=f>>24;c[e>>2]=(f|0)==0?0:h}l=i;return}function fm(a){a=a|0;var b=0,d=0;b=a+64|0;AX(b|0)|0;d=a+140|0;a=a+92|0;while(1){if(!(c[d>>2]|0))break;uc(a|0,b|0)|0}c[d>>2]=1;BX(b|0)|0;return}function gm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+112|0;if((l|0)>=(m|0))W(112);E=F+96|0;D=F+88|0;B=F+80|0;A=F+72|0;s=F+64|0;r=F+56|0;o=F+48|0;n=F+40|0;k=F+32|0;j=F+24|0;i=F+16|0;g=F;if((c[b+25628>>2]|0)==(e|0)?(c[b+29560>>2]|0)==0:0)if(!(c[b+29588>>2]|0))p=1;else{c[g>>2]=147602;c[g+4>>2]=133704;c[g+8>>2]=1681;ig(0,0,159900,g);Tb()}else p=0;C=e+4|0;g=e+21808|0;c[g>>2]=gN(C)|0;h=hN(C)|0;a:do if(h>>>0<=9){i=h>>>0>4;c[e+844>>2]=i&1;i=a[123794+(i?h+-5|0:h)>>0]|0;w=i&255;x=e+836|0;c[x>>2]=w;w=w&3;u=e+840|0;c[u>>2]=w;t=f+44|0;if(!((w|0)==1|(c[t>>2]|0)!=5)){ig(c[b+4>>2]|0,16,147652,j);g=-1094995529;break}h=iN(C)|0;c[e+27776>>2]=h;if(h>>>0>255){g=c[b+4>>2]|0;c[k>>2]=h;ig(g,16,151037,k);g=-1094995529;break}g=c[b+27180+(h<<2)>>2]|0;if(!g){g=c[b+4>>2]|0;c[n>>2]=h;ig(g,16,151061,n);g=-1094995529;break}w=c[g+4>>2]|0;g=c[w>>2]|0;h=c[b+27052+(g<<2)>>2]|0;if(!h){E=c[b+4>>2]|0;c[o>>2]=g;ig(E,16,151093,o);g=-1094995529;break}o=c[h+4>>2]|0;j=o+20|0;g=jN(C,c[j>>2]|0)|0;h=e+34732|0;c[h>>2]=g;if(!p?(q=c[b+28244>>2]|0,(q|0)!=(g|0)):0){E=c[b+4>>2]|0;c[r>>2]=q;c[r+4>>2]=g;ig(E,16,147691,r);g=-1094995529;break}c[e+21832>>2]=0;if(!(c[o+64>>2]|0)){if(i<<24>>24==3&(c[o+72>>2]|0)==0){ig(c[b+4>>2]|0,16,147723,s);g=-1;break}if(kN(C)|0)n=(kN(C)|0)+1|0;else n=3}else n=3;c[e+21824>>2]=n;c[e+21828>>2]=(n|0)!=3&1;i=(n|0)==3;g=c[h>>2]|0;if(i)h=c[j>>2]|0;else{h=(c[j>>2]|0)+1|0;g=g<<1|1}c[e+34752>>2]=g;c[e+34756>>2]=1<>2]|0)==5)gN(C)|0;h=o+24|0;g=c[h>>2]|0;if(!g){c[e+34736>>2]=jN(C,c[o+28>>2]|0)|0;if(i&(c[w+8>>2]|0)==1)c[e+34740>>2]=lN(C)|0;g=c[h>>2]|0}if(((g|0)==1?(c[o+32>>2]|0)==0:0)?(c[e+34744>>2]=lN(C)|0,i&(c[w+8>>2]|0)==1):0)c[e+34748>>2]=lN(C)|0;g=e+21836|0;c[g>>2]=0;if(c[w+60>>2]|0)c[g>>2]=iN(C)|0;g=c[u>>2]|0;if((g|0)==3){c[e+21844>>2]=kN(C)|0;g=c[u>>2]|0}i=e+23404|0;k=b+4|0;g=mN(e+23412|0,i,C,w,g,n,c[k>>2]|0)|0;if((g|0)>=0){if((c[u>>2]|0)!=1?(v=nN(e,c[k>>2]|0)|0,(v|0)<0):0){c[i>>2]=0;c[e+23408>>2]=0;g=v;break}h=e+880|0;c[h>>2]=0;g=0;while(1){if((g|0)==2)break;c[e+896+(g<<2)>>2]=0;c[e+904+(g<<2)>>2]=0;g=g+1|0}if((c[w+28>>2]|0)!=0?(c[u>>2]|0)==2:0){y=2;g=51}else g=49;if(((g|0)==49?(c[w+32>>2]|0)==1:0)?(c[u>>2]|0)==3:0){y=3;g=51}if((g|0)==51?(z=oN(C,o,i,y,h,n,c[k>>2]|0)|0,(z|0)<0):0){g=z;break}c[e+34728>>2]=0;do if(c[f+64>>2]|0){if((pN(e,C,f,c[k>>2]|0)|0)>=0)break;if(c[(c[k>>2]|0)+580>>2]&8|0){g=-1094995529;break a}}while(0);do if((c[u>>2]|0)!=1){if(!(c[w+4>>2]|0))break;g=hN(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[A>>2]=g;ig(E,16,147793,A);g=-1094995529;break a}else{c[e+33928>>2]=g;break}}while(0);c[e+864>>2]=0;g=c[w+36>>2]|0;g=(lN(C)|0)+g|0;if(g>>>0>(((c[o+1184>>2]|0)*6|0)+3|0)>>>0){E=c[k>>2]|0;c[B>>2]=g;ig(E,16,147821,B);g=-1094995529;break}c[e+848>>2]=g;c[e+852>>2]=d[w+548+g>>0];c[e+856>>2]=d[w+636+g>>0];g=c[x>>2]|0;if((g|0)==6){kN(C)|0;g=c[x>>2]|0}if((g+-5|0)>>>0<2)lN(C)|0;h=e+868|0;c[h>>2]=1;j=e+872|0;c[j>>2]=0;i=e+876|0;c[i>>2]=0;if(!(c[w+52>>2]|0)){g=0;break}g=hN(C)|0;if(g>>>0>2){E=c[k>>2]|0;c[D>>2]=g;ig(E,16,147841,D);g=-1094995529;break}D=(g|0)==2?2:g^1;c[h>>2]=D;if(!D){g=0;break}h=lN(C)|0;g=lN(C)|0;if((h+6|0)>>>0>12|(g+6|0)>>>0>12){D=c[k>>2]|0;c[E>>2]=h;c[E+4>>2]=g;ig(D,16,147880,E);g=-1094995529;break}else{c[j>>2]=h<<1;c[i>>2]=g<<1;g=0;break}}}else{E=c[b+4>>2]|0;g=c[g>>2]|0;c[i>>2]=h;c[i+4>>2]=g;ig(E,16,147621,i);g=-1094995529}while(0);l=F;return g|0}function hm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+96|0;if((l|0)>=(m|0))W(96);z=G+72|0;y=G+56|0;w=G+48|0;q=G+40|0;r=G+32|0;n=G+16|0;k=G;e=ym(a,b,e)|0;a:do if((e|0)>=0){B=a+28216|0;s=c[B>>2]|0;o=a+25684|0;p=c[o>>2]|0;F=a+26380|0;x=c[F>>2]|0;D=d+64|0;c[o>>2]=(c[D>>2]|0)==0&1;e=c[b+21824>>2]|0;c[F>>2]=e;f=c[b+34732>>2]|0;A=a+28224|0;E=a+28244|0;c[E>>2]=f;c[A>>2]=c[b+34736>>2];c[a+28232>>2]=c[b+34740>>2];c[a+28236>>2]=c[b+34744>>2];c[a+28240>>2]=c[b+34748>>2];t=a+28264|0;g=c[t>>2]|0;if((f|0)!=(g|0)?(h=1<>2],C=c[s+48>>2]|0,i=f-C|0,(f-g+((f|0)<(g|0)?h:0)|0)>(C|0)):0)c[t>>2]=i+-1+((i|0)<1?h:0);C=a+26384|0;do if(c[C>>2]|0){i=(x|0)==2;f=i&1;j=a+24312|0;g=c[j>>2]|0;if(!g){c[k>>2]=145402;c[k+4>>2]=133704;c[k+8>>2]=1446;ig(0,0,159900,k);Tb()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[n>>2]=145417;c[n+4>>2]=133704;c[n+8>>2]=1447;ig(0,0,159900,n);Tb()}h=a+4|0;if((c[g+8+(f<<2)>>2]|0)==(c[h>>2]|0)){Oi(g+4|0,2147483647,f);e=c[F>>2]|0}if((e|0)==3|(e|0)==(x|0)){if((x|0)==3){p=j;break}Oi((c[j>>2]|0)+4|0,2147483647,(x|0)==1&1);p=j;break}f=c[j>>2]|0;if((c[f+88>>2]|0)!=(c[E>>2]|0)){if((x|0)==3){p=j;break}Oi(f+4|0,2147483647,(x|0)==1&1);p=j;break}if(!((x|0)==1&(e|0)==2|i&(e|0)==1)){a=c[h>>2]|0;c[r>>2]=x;c[r+4>>2]=e;ig(a,16,145443,r);c[F>>2]=x;c[o>>2]=p;e=-1094995529;break a}if((p|0)==(c[o>>2]|0))p=j;else{$i(c[h>>2]|0,145481,q);c[F>>2]=x;c[o>>2]=p;e=-1163346256;break a}}else{h=a+4|0;p=a+24312|0}while(0);k=s+20|0;n=a+29556|0;g=s+52|0;o=a+29548|0;j=a+28348|0;while(1){i=c[E>>2]|0;e=c[t>>2]|0;f=(c[C>>2]|0)==0;if((i|0)==(e|0)){g=45;break}if(!f){g=46;break}if((i|0)==((e+1|0)%(1<>2]|0)|0|0)){g=57;break}if(!(c[n>>2]|0))f=0;else f=c[j>>2]|0;s=c[h>>2]|0;c[w>>2]=i;c[w+4>>2]=e;ig(s,48,145547,w);b:do if(!(c[g>>2]|0)){e=0;while(1){if((e|0)==16)break b;c[a+28676+(e<<2)>>2]=-2147483648;e=e+1|0}}while(0);e=zm(a)|0;if((e|0)<0){g=33;break}s=((c[t>>2]|0)+1|0)%(1<>2]|0)|0;c[t>>2]=s;e=c[p>>2]|0;c[e+88>>2]=s;c[e+648>>2]=(c[g>>2]|0)==0&1;Oi(e+4|0,2147483647,0);Oi((c[p>>2]|0)+4|0,2147483647,1);c[o>>2]=0;e=Ni(a)|0;if((e|0)<0?c[(c[h>>2]|0)+580>>2]&8|0:0)break a;if(!(c[n>>2]|0))continue;e=c[j>>2]|0;if((((f|0)!=0?(u=c[e>>2]|0,v=c[f>>2]|0,(c[u+68>>2]|0)==(c[v+68>>2]|0)):0)?(c[u+72>>2]|0)==(c[v+72>>2]|0):0)?(c[u+80>>2]|0)==(c[v+80>>2]|0):0){e=f+4|0;kj(e,2147483647,0);if(c[f+636>>2]|0)kj(e,2147483647,1);s=c[c[j>>2]>>2]|0;e=c[f>>2]|0;ci(s,s+32|0,e,e+32|0,c[e+80>>2]|0,c[e+68>>2]|0,c[e+72>>2]|0);e=c[j>>2]|0;c[e+84>>2]=(c[f+84>>2]|0)+2}c[e+88>>2]=c[t>>2]}if((g|0)==33){c[C>>2]=0;break}else if((g|0)==45)if(f)g=57;else g=46;do if((g|0)==46){g=c[p>>2]|0;if(!g){c[y>>2]=145402;c[y+4>>2]=133704;c[y+8>>2]=1553;ig(0,0,159900,y);Tb()}if(!(c[(c[g>>2]|0)+248>>2]|0)){c[z>>2]=145417;c[z+4>>2]=133704;c[z+8>>2]=1554;ig(0,0,159900,z);Tb()}e=c[F>>2]|0;f=a+29584|0;if((e|0)==3|(e|0)==(x|0)){c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=0;f=(e|0)!=3&1;c[C>>2]=f;break}c[f>>2]=0;if((c[g+88>>2]|0)!=(i|0)){Oi(g+4|0,2147483647,(e|0)==2&1);c[C>>2]=1;c[p>>2]=0;e=c[F>>2]|0;f=1;break}if(!(c[g+640>>2]&4)){c[C>>2]=0;f=0;break}else{c[C>>2]=1;c[p>>2]=0;f=1;break}}else if((g|0)==57){e=c[F>>2]|0;f=(e|0)!=3&1;c[C>>2]=f}while(0);if(!((e|0)!=3&(f|0)==0)){if((zm(a)|0)<0){c[C>>2]=0;e=-1094995529;break}}else{Am(a,0);c[(c[p>>2]|0)+8+(((e|0)==2&1)<<2)>>2]=c[h>>2]}e=c[F>>2]|0;c:do if((e|0)==3)yX(c[a+26372>>2]|0,-1,(N(c[a+27008>>2]<<1,c[a+27016>>2]|0)|0)+-2|0)|0;else{g=a+27008|0;h=a+26372|0;i=a+27016|0;e=(e|0)==2&1;while(1){f=c[g>>2]|0;if((e|0)>=(f|0))break c;y=c[i>>2]|0;z=e+1|0;yX((c[h>>2]|0)+((N(y,e)|0)<<1)|0,-1,y-((z|0)==(f|0)&1)<<1|0)|0;e=z}}while(0);e=c[p>>2]|0;e=Bm(e+76|0,e+84|0,c[B>>2]|0,A,c[F>>2]|0,c[D>>2]|0)|0;if((e|0)>=0){k=b+34724|0;wX(a+28748|0,b+33932|0,(c[k>>2]|0)*12|0)|0;c[a+29540>>2]=c[k>>2];c[o>>2]=c[b+34728>>2];k=(c[d+44>>2]|0)==5;j=k&1;c[a+25712>>2]=j;h=c[a+29716>>2]|0;do if((h|0)>-1){i=c[E>>2]|0;if(!((i|0)==(h|0)?(c[b+840>>2]|0)==1:0))c[a+29568>>2]=1;g=a+29572|0;f=c[g>>2]|0;if((f|0)>=0){e=c[(c[B>>2]|0)+20>>2]|0;if(((1<>>0<=h>>>0)break}else e=c[(c[B>>2]|0)+20>>2]|0;B=(1<>2]=B;c[g>>2]=(c[a+29568>>2]|0)==0?i:B}while(0);f=c[p>>2]|0;e=(c[f>>2]|0)+84|0;c[e>>2]=c[e>>2]|j;e=a+29572|0;if(k){c[e>>2]=-1;c[f+644>>2]=1;E=a+29576|0;e=c[E>>2]|1;c[E>>2]=e}else{if((c[e>>2]|0)==(c[E>>2]|0)?c[D>>2]|0:0){c[e>>2]=-1;c[f+644>>2]=1}e=c[a+29576>>2]|0}E=f+644|0;c[E>>2]=c[E>>2]|e;if(((c[F>>2]|0)!=3?c[C>>2]|0:0)?(c[a+29584>>2]|0)<=1:0){e=0;break}Cm(a);Dm(a);e=0}}while(0);l=G;return e|0}function im(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+160|0;if((l|0)>=(m|0))W(160);F=G+24|0;o=G+16|0;g=G+8|0;f=G;x=G+96|0;if((c[a+25712>>2]|0)!=0?(c[e+44>>2]|0)!=5:0){ig(c[a+4>>2]|0,16,144727,f);f=-1094995529}else y=4;do if((y|0)==4){h=c[d+21808>>2]|0;j=a+26376|0;i=(c[j>>2]|0)==0;if(i)f=(c[a+26380>>2]|0)!=3;else f=1;E=c[a+27020>>2]|0;if(!(h<<(f&1)>>>0>>0&h>>>0>>0)){ig(c[a+4>>2]|0,16,144766,g);f=-1094995529;break}A=a+27012|0;f=c[A>>2]|0;w=(h>>>0)%(f>>>0)|0;B=d+21788|0;c[B>>2]=w;c[d+21800>>2]=w;w=a+26380|0;E=c[w>>2]|0;f=((h>>>0)/(f>>>0)|0)<<(((E|0)!=3|i^1)&1);v=d+21792|0;c[v>>2]=f;n=d+21804|0;c[n>>2]=f;if((E|0)==2){E=f+1|0;c[v>>2]=E;c[n>>2]=E}f=jm(a,d)|0;if((f|0)>=0){h=a+28212|0;g=d+840|0;if((c[(c[h>>2]|0)+32>>2]|0)==2){if((c[g>>2]|0)==3){km(a,d,-1);if(!(c[j>>2]|0))y=15;else{km(a,d,0);km(a,d,1);y=15}}}else y=15;if(((y|0)==15?(c[g>>2]|0)==3:0)?(c[d+21844>>2]|0)==0:0)lm(a,d);if(!(c[a+29588>>2]|0))mm(a,d);u=a+4|0;k=c[u>>2]|0;f=c[k+724>>2]|0;a:do if((f|0)<=47){do if((f|0)>31)if((c[a+27028>>2]|0)==5)y=24;else{y=29;break a}else if((f|0)<=23)if((f|0)>15)if((c[g>>2]|0)==3){y=29;break a}else break;else if((f|0)>7)break;else break a;else y=24;while(0);if((y|0)==24?(c[g>>2]|0)!=1:0){y=29;break}if(!(c[e+64>>2]|0))y=29}else y=29;while(0);if((y|0)==29)c[d+868>>2]=0;C=d+868|0;do if((c[C>>2]|0)==1?(c[a+25632>>2]|0)>1:0)if(!(c[k+64>>2]&1)){c[a+25708>>2]=1;break}else{c[C>>2]=2;break}while(0);D=d+872|0;i=c[D>>2]|0;E=d+876|0;j=c[E>>2]|0;g=c[h>>2]|0;f=g+44|0;h=c[f>>2]|0;z=(h|0)<0;g=g+48|0;h=((z?0:h)|0)<=(c[g>>2]|0);if(h|z^1)f=c[(h?g:f)>>2]|0;else f=0;c[d+860>>2]=-33-((i|0)>(j|0)?j:i)-f+((c[(c[a+28216>>2]|0)+1184>>2]|0)*6|0);t=a+29560|0;g=c[t>>2]|0;h=g+1|0;c[t>>2]=h;t=d+832|0;c[t>>2]=h;if(!h)f=c[n>>2]|0;else{f=c[n>>2]|0;b[a+29600+((g&31)<<1)>>1]=f}z=b[a+29600+((h&31)<<1)>>1]|0;if((g|0)>30&((f|0)>=(z|0)&(z+3|0)>=(f|0))){c[o>>2]=h;c[o+4>>2]=32;ig(k,24,144794,o)}p=d+23412|0;q=a+29556|0;r=a+29552|0;o=0;while(1){if((o|0)==2)break;s=c[t>>2]&31;k=d+23404+(o<<2)|0;j=0;while(1){if((j|0)==16)break;n=x+(j<<2)|0;c[n>>2]=60;b:do if(o>>>0<(c[p>>2]|0)>>>0?j>>>0<(c[k>>2]|0)>>>0:0){f=c[(c[c[d+23416+(o*1920|0)+(j*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!f)break;h=c[f>>2]|0;i=c[q>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;if((c[c[(c[c[a+28348+(f<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(h|0)){y=53;break}f=f+1|0}if((y|0)==53){y=0;c[n>>2]=f}g=c[r>>2]|0;f=0;while(1){if((f|0)>=(g|0))break b;z=c[a+28476+(f<<2)>>2]|0;if(z|0?(c[c[(c[z>>2]|0)+248>>2]>>2]|0)==(h|0):0)break;f=f+1|0}c[n>>2]=i+f}while(0);j=j+1|0}c[a+29940+(s<<9)+(o<<8)+4>>2]=-1;c[a+29940+(s<<9)+(o<<8)>>2]=-1;f=0;while(1){if((f|0)==16)break;c[a+29940+(s<<9)+(o<<8)+(f+2<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f<<2)>>2]<<2;f=f+1|0}c[a+29940+(s<<9)+(o<<8)+76>>2]=-1;c[a+29940+(s<<9)+(o<<8)+72>>2]=-1;f=16;while(1){if((f|0)==48)break;c[a+29940+(s<<9)+(o<<8)+(f+4<<2)>>2]=c[d+23416+(o*1920|0)+(f*40|0)+24>>2]&3|c[x+(f+-16>>1<<2)>>2]<<2;f=f+1|0}o=o+1|0}z=c[u>>2]|0;if(!(c[z+576>>2]&1))f=0;else{y=c[t>>2]|0;x=c[w>>2]|0;u=N(c[A>>2]|0,c[v>>2]|0)|0;u=u+(c[B>>2]|0)|0;f=d+836|0;v=(ij(c[f>>2]|0)|0)<<24>>24;w=c[d+844>>2]|0?144895:262784;s=(c[e+44>>2]|0)==5?144900:262784;t=c[a+28244>>2]|0;o=c[a+24312>>2]|0;n=c[o+76>>2]|0;o=c[o+80>>2]|0;p=c[d+23404>>2]|0;q=c[d+23408>>2]|0;r=c[d+848>>2]|0;k=c[C>>2]|0;j=c[D>>2]|0;g=c[E>>2]|0;h=c[d+880>>2]|0;if((h|0)==1)i=c[d+884>>2]|0?144905:262784;else i=262784;if((c[f>>2]|0)==3)f=c[d+21844>>2]|0?144907:144912;else f=262784;c[F>>2]=y;c[F+4>>2]=(x|0)==3?144893:(x|0)==1?144889:144891;c[F+8>>2]=u;c[F+12>>2]=v;c[F+16>>2]=w;c[F+20>>2]=s;c[F+24>>2]=t;c[F+28>>2]=n;c[F+32>>2]=o;c[F+36>>2]=p;c[F+40>>2]=q;c[F+44>>2]=r;c[F+48>>2]=k;c[F+52>>2]=j;c[F+56>>2]=g;c[F+60>>2]=h;c[F+64>>2]=i;c[F+68>>2]=f;ig(z,48,144917,F);f=0}}}while(0);l=G;return f|0}function jm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+64|0;if((l|0)>=(m|0))W(64);I=K+48|0;J=K+40|0;E=K+32|0;D=K+16|0;C=K+8|0;B=K;w=K+60|0;Ui(b);Vi(b);pm(b,d);F=d+23412|0;x=d+34752|0;z=d+34756|0;A=b+29556|0;G=b+4|0;H=b+26380|0;u=0;a:while(1){e=c[F>>2]|0;if(u>>>0>=e>>>0){p=0;r=29;break}s=d+27768+(u<<2)|0;t=d+23404+(u<<2)|0;p=0;e=c[x>>2]|0;while(1){if((p|0)>=(c[s>>2]|0))break;f=a[d+27256+(u<<8)+(p<<3)>>0]|0;i=c[d+27256+(u<<8)+(p<<3)+4>>2]|0;b:do switch(f<<24>>24){case 1:case 0:{g=i+1|0;h=c[z>>2]|0;if(g>>>0>h>>>0){r=11;break a}e=h+-1&(f<<24>>24==0?~i:g)+e;g=Qi(b,e,w)|0;i=c[w>>2]|0;f=c[A>>2]|0;while(1){r=f;f=f+-1|0;if((r|0)<=0){r=18;break b}h=c[b+28348+(f<<2)>>2]|0;if((c[h+88>>2]|0)!=(g|0))continue;if(i&c[h+640>>2]|0){o=e;r=15;break}}break}case 2:{f=Qi(b,i,w)|0;if(f>>>0>31){r=16;break a}f=c[b+28476+(f<<2)>>2]|0;if((f|0)!=0?(y=c[w>>2]|0,(y&c[f+640>>2]|0)!=0):0){o=e;h=f;e=i;i=y;r=15}else r=18;break}default:{r=17;break a}}while(0);if((r|0)==15){c[h+96>>2]=e;f=h+96|0;g=c[t>>2]|0;j=h+100|0;e=p;while(1){k=e+1|0;if(k>>>0>=g>>>0)break;n=c[d+23416+(u*1920|0)+(e*40|0)+36>>2]|0;if(!n){e=k;continue}if((c[j>>2]|0)!=(c[n+100>>2]|0)){e=k;continue}if((c[f>>2]|0)==(c[d+23416+(u*1920|0)+(e*40|0)+32>>2]|0))break;else e=k}while(1){if((e|0)<=(p|0))break;g=e+-1|0;f=d+23416+(u*1920|0)+(e*40|0)|0;e=d+23416+(u*1920|0)+(g*40|0)|0;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=g}e=d+23416+(u*1920|0)+(p*40|0)|0;qm(e,h);if((c[H>>2]|0)==3)e=o;else{rm(e,i);e=o}}else if((r|0)==18){ig(c[G>>2]|0,16,145185,E);f=d+23416+(u*1920|0)+(p*40|0)|0;q=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(q|0))}p=p+1|0}u=u+1|0}c:do if((r|0)==11){ig(c[G>>2]|0,16,145130,B);v=-1094995529}else if((r|0)==16){ig(c[G>>2]|0,16,145157,C);v=-1094995529}else if((r|0)==17){c[D>>2]=165905;c[D+4>>2]=127983;c[D+8>>2]=373;ig(0,0,159900,D);Tb()}else if((r|0)==29){d:while(1){r=0;if(p>>>0>=e>>>0)break;i=d+23404+(p<<2)|0;j=b+28268+(p*40|0)|0;k=b+28268+(p*40|0)+28|0;n=b+28268+(p*40|0)+36|0;o=b+28268+(p*40|0)+24|0;h=0;while(1){if(h>>>0>=(c[i>>2]|0)>>>0)break;f=d+23416+(p*1920|0)+(h*40|0)|0;g=d+23416+(p*1920|0)+(h*40|0)+36|0;e=c[g>>2]|0;if(e){if((c[H>>2]|0)==3?(c[d+23416+(p*1920|0)+(h*40|0)+24>>2]&3|0)!=3:0)r=35}else r=35;if((r|0)==35){r=0;e=c[G>>2]|0;c[J>>2]=c[k>>2];ig(e,16,145227,J);e=0;while(1){if((e|0)==16)break;c[b+28676+(e<<2)>>2]=-2147483648;e=e+1|0}if(!(c[n>>2]|0)){v=-1;break c}if((c[H>>2]|0)==3?(c[o>>2]&3|0)!=3:0){v=-1;break c}e=j;q=f+40|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(q|0));e=c[g>>2]|0}if((sm(c[(c[e>>2]|0)+248>>2]|0)|0)>0)h=h+1|0;else{r=43;break d}}p=p+1|0;e=c[F>>2]|0;r=29}if((r|0)==43){c[I>>2]=145269;c[I+4>>2]=127983;c[I+8>>2]=411;ig(0,0,159900,I);Tb()}if(!(c[b+26376>>2]|0))v=0;else{tm(d);v=0}}while(0);l=K;return v|0}function km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=0;while(1){if((e|0)==2)break;c[b+896+(e<<2)>>2]=0;c[b+904+(e<<2)>>2]=0;e=e+1|0}n=(d|0)<0;if(n){g=c[a+26380>>2]|0;e=c[a+24312>>2]|0;g=c[((g|0)==3?e+84|0:e+76+(g+-1<<2)|0)>>2]|0;e=c[b+23404>>2]|0;f=c[b+23408>>2]|0;if((e|0)==1)if((f|0)==1)if((c[a+26376>>2]|0)==0?(l=c[b+23444>>2]|0,m=c[b+25364>>2]|0,l=hX(m|0,((m|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0,m=g<<1,(l|0)==(m|0)&(y|0)==(((m|0)<0)<<31>>31|0)):0){c[b+880>>2]=0;c[b+884>>2]=0}else{m=0;e=1;f=1;h=11}else{m=0;e=1;h=11}else{m=0;h=11}}else{m=16;e=(c[b+23404>>2]<<1)+16|0;f=(c[b+23408>>2]<<1)+16|0;g=c[(c[a+24312>>2]|0)+76+(d<<2)>>2]|0;h=11}a:do if((h|0)==11){c[b+880>>2]=2;c[b+884>>2]=2;c[b+888>>2]=5;c[b+892>>2]=5;a=m;while(1){if((a|0)>=(e|0))break a;j=c[b+23416+(a*40|0)+28>>2]|0;k=b+23416+(a*40|0)+36|0;l=g-j|0;l=((l+128|0)>>>0>255?l>>31^127:l)<<24>>24;h=m;while(1){if((h|0)>=(f|0))break;if(((c[(c[k>>2]|0)+100>>2]|0)==0?(c[(c[b+25336+(h*40|0)+36>>2]|0)+100>>2]|0)==0:0)?(p=(c[b+25336+(h*40|0)+28>>2]|0)-j|0,p=(p+128|0)>>>0>255?p>>31^127:p,o=p&255,p=p<<24>>24,o<<24>>24!=0):0){i=(N((((o<<24>>24>-1?p:0-p|0)>>1)+16384|0)/(p|0)|0,l)|0)+32>>8;i=(i+64|0)>>>0<193?64-i|0:32}else i=32;if(n){c[b+3216+(a*384|0)+(h<<3)+4>>2]=i;c[b+3216+(a*384|0)+(h<<3)>>2]=i}else c[b+3216+(a*384|0)+(h<<3)+(d<<2)>>2]=i;h=h+1|0}a=a+1|0}}while(0);return}function lm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=c[a+26380>>2]|0;i=a+24312|0;k=c[i>>2]|0;j=c[((j|0)==3?k+84|0:k+76+(((j|0)==2&1)<<2)|0)>>2]|0;k=c[b+25364>>2]|0;a:do if(!(c[a+26376>>2]|0))d=b+23404|0;else{f=b+25372|0;d=b+23404|0;e=0;while(1){if((e|0)==2)break a;g=c[(c[i>>2]|0)+76+(e<<2)>>2]|0;h=c[(c[f>>2]|0)+76+(e<<2)>>2]|0;a=0;while(1){if(a>>>0>=c[d>>2]<<1>>>0)break;c[b+21996+(e<<7)+((a^e)<<2)>>2]=om(b,g,h,a+16|0)|0;a=a+1|0}e=e+1|0}}while(0);a=0;while(1){if(a>>>0>=(c[d>>2]|0)>>>0)break;c[b+21868+(a<<2)>>2]=om(b,j,k,a)|0;a=a+1|0}return}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;j=s;o=a+24312|0;h=c[o>>2]|0;n=a+26380|0;q=c[n>>2]&1^1;p=b+25360|0;f=c[p>>2]&1;k=b+23412|0;d=0;while(1){if(d>>>0>=(c[k>>2]|0)>>>0)break;g=b+23404+(d<<2)|0;c[h+616+(q<<3)+(d<<2)>>2]=c[g>>2];e=0;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break;c[h+104+(q<<8)+(d<<7)+(e<<2)>>2]=c[b+23416+(d*1920|0)+(e*40|0)+24>>2]&3|c[(c[b+23416+(d*1920|0)+(e*40|0)+36>>2]|0)+88>>2]<<2;e=e+1|0}d=d+1|0}i=f^1;if((c[n>>2]|0)==3){e=h+616|0;f=c[e+4>>2]|0;g=h+624|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;wX(h+360|0,h+104|0,256)|0}if(c[a+29560>>2]|0){if((c[h+632>>2]|0)!=(c[a+26376>>2]|0)){c[j>>2]=145007;c[j+4>>2]=145039;c[j+8>>2]=144;ig(0,0,159900,j);Tb()}}else c[h+632>>2]=c[a+26376>>2];f=b+21852|0;c[f>>2]=0;a:do if((c[k>>2]|0)==2?c[b+23408>>2]|0:0){e=c[n>>2]|0;if((e|0)!=3){d=c[p>>2]|0;if((d&e|0)==0?(c[(c[b+25372>>2]|0)+632>>2]|0)==0:0){c[f>>2]=(d<<1)+-3;d=q}else d=q}else{d=c[(c[o>>2]|0)+84>>2]|0;f=c[b+25372>>2]|0;e=c[f+76>>2]|0;f=c[f+80>>2]|0;if((e|0)==2147483647&(f|0)==2147483647){ig(c[a+4>>2]|0,16,145064,r);d=1}else{r=e-d|0;d=f-d|0;d=(((r|0)>-1?r:0-r|0)|0)>=(((d|0)>-1?d:0-d|0)|0)&1}c[b+21848>>2]=d;i=d}if((c[b+840>>2]|0)==3?(c[b+21844>>2]|0)==0:0){g=b+22252|0;h=a+26376|0;f=0;while(1){if((f|0)==2)break a;nm(a,b,g,f,d,i,0);b:do if(c[h>>2]|0){e=0;while(1){if((e|0)==2)break b;nm(a,b,b+22636+(e*384|0)|0,f,e,e,1);e=e+1|0}}while(0);f=f+1|0}}}while(0);l=s;return}function nm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b+25372>>2]|0;r=(h|0)!=0;p=r?16:0;q=c[b+23404>>2]|0;q=r?(q<<1)+16|0:q;if(r)n=1;else n=(c[a+26380>>2]|0)!=3;yX(d+(e*192|0)|0,0,192)|0;k=s+616+(g<<3)+(e<<2)|0;l=s+632|0;h=0;a:while(1){if((h|0)==2)break;m=h+1|0;o=n&(h|0)!=(f|0);j=(h^f)+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0)){h=m;continue a}h=c[s+104+(g<<8)+(e<<7)+(i<<2)>>2]|0;if(n)a=(h&3|0)==3?m+(h&-4)|0:h;else a=h|3;h=p;while(1){if((h|0)>=(q|0))break;if((c[b+23416+(h*40|0)+24>>2]&3|c[(c[b+23416+(h*40|0)+36>>2]|0)+88>>2]<<2|0)==(a|0)){t=13;break}h=h+1|0}if((t|0)==13){t=0;h=r?h+-16^f:h;if(c[l>>2]|0)c[d+(e*192|0)+(j+(i<<1)<<2)>>2]=h;if(!o)c[d+(e*192|0)+(i<<2)>>2]=h}i=i+1|0}}return}function om(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k+8|0;h=c[a+23416+(e*40|0)+28>>2]|0;i=((h|0)<0)<<31>>31;d=iX(d|0,((d|0)<0)<<31>>31|0,h|0,i|0)|0;g=(d+128|0)>>>0>255?d>>31^127:d;f=g&255;g=g<<24>>24;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))$i(c[(c[a>>2]|0)+4>>2]|0,145093,k);if(f<<24>>24!=0?(c[(c[a+23416+(e*40|0)+36>>2]|0)+100>>2]|0)==0:0){d=iX(b|0,((b|0)<0)<<31>>31|0,h|0,i|0)|0;if(!((d|0)==(d|0)&(y|0)==(((d|0)<0)<<31>>31|0)))ig(c[(c[a>>2]|0)+4>>2]|0,48,145111,j);j=(N((((f<<24>>24>-1?g:0-g|0)>>1)+16384|0)/(g|0)|0,((d+128|0)>>>0>255?d>>31^127:d)<<24>>24)|0)+32|0;d=j>>6;d=(d+1024|0)>>>0>2047?j>>31^1023:d}else d=256;l=k;return d|0}function pm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+240|0;if((l|0)>=(m|0))W(240);t=u+48|0;d=u+32|0;p=u+16|0;o=u;n=u+104|0;q=u+96|0;r=u+56|0;s=b+840|0;do if((c[s>>2]|0)==3){k=a+26380|0;g=c[k>>2]|0;h=c[a+24312>>2]|0;g=c[((g|0)==3?h+84|0:h+76+(((g|0)==2&1)<<2)|0)>>2]|0;h=a+28348|0;i=a+29556|0;j=a+28476|0;f=0;while(1){if((f|0)>=2){d=11;break}d=um(n,h,c[i>>2]|0,g,f^1)|0;d=(um(n+(d<<2)|0,h,c[i>>2]|0,g,f)|0)+d|0;if((d|0)>=33){d=5;break}d=vm(b+23416+(f*1920|0)|0,48,n,d,0,c[k>>2]|0)|0;d=(vm(b+23416+(f*1920|0)+(d*40|0)|0,48-d|0,j,16,1,c[k>>2]|0)|0)+d|0;if((d|0)>=33){d=7;break}e=c[b+23404+(f<<2)>>2]|0;if(e>>>0>d>>>0)yX(b+23416+(f*1920|0)+(d*40|0)|0,0,(e-d|0)*40|0)|0;c[q+(f<<2)>>2]=d;f=f+1|0}if((d|0)==5){c[o>>2]=145342;c[o+4>>2]=127983;c[o+8>>2]=153;ig(0,0,159900,o);Tb()}else if((d|0)==7){c[p>>2]=145342;c[p+4>>2]=127983;c[p+8>>2]=160;ig(0,0,159900,p);Tb()}else if((d|0)==11){e=c[q>>2]|0;q=c[q+4>>2]|0;if((e|0)==(q|0)&(q|0)>1){d=0;while(1){if((d|0)>=(e|0))break;if((c[c[(c[c[b+23416+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(c[c[(c[c[b+25336+(d*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break;d=d+1|0}if((d|0)==(e|0)){d=b+25376|0;j=r;f=d;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));e=b+25336|0;j=d;f=e;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));j=e;f=r;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0))}}break}}else{r=a+26380|0;e=vm(b+23416|0,48,a+28348|0,c[a+29556>>2]|0,0,c[r>>2]|0)|0;e=(vm(b+23416+(e*40|0)|0,48-e|0,a+28476|0,16,1,c[r>>2]|0)|0)+e|0;if((e|0)>=33){c[d>>2]=145342;c[d+4>>2]=127983;c[d+8>>2]=181;ig(0,0,159900,d);Tb()}d=c[b+23404>>2]|0;if(d>>>0>e>>>0)yX(b+23416+(e*40|0)|0,0,(d-e|0)*40|0)|0}while(0);h=a+4|0;f=0;while(1){if((f|0)>=(((c[s>>2]|0)==3?2:1)|0))break;i=b+23404+(f<<2)|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;e=b+23416+(f*1920|0)+(g*40|0)|0;d=c[b+23416+(f*1920|0)+(g*40|0)+36>>2]|0;if(d|0?wm(a,d)|0:0){ig(c[h>>2]|0,16,145352,t);j=e;k=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0))}g=g+1|0}f=f+1|0}e=b+23412|0;d=0;while(1){if(d>>>0>=(c[e>>2]|0)>>>0)break;j=a+28268+(d*40|0)|0;f=b+23416+(d*1920|0)|0;k=j+40|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(k|0));d=d+1|0}l=u;return}function qm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];d=a+12|0;e=(c[b>>2]|0)+32|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[a+24>>2]=c[b+640>>2];c[a+28>>2]=c[b+84>>2];c[a+32>>2]=c[b+96>>2];c[a+36>>2]=b;return}function rm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=(b|0)==2;f=a+24|0;d=0;while(1){if((d|0)==3)break;g=a+(d<<2)|0;h=a+12+(d<<2)|0;if(e)c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[f>>2]=b;c[h>>2]=c[h>>2]<<1;d=d+1|0}c[a+28>>2]=c[(c[a+36>>2]|0)+76+((e&1)<<2)>>2];return}function sm(a){a=a|0;return c[(c[a>>2]|0)+8>>2]|0}function tm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+23412|0;g=0;while(1){if(g>>>0>=(c[i>>2]|0)>>>0)break;k=a+23404+(g<<2)|0;h=0;while(1){if(h>>>0>=(c[k>>2]|0)>>>0)break;f=(h<<1)+16|0;j=a+23416+(g*1920|0)+(f*40|0)|0;b=j;d=a+23416+(g*1920|0)+(h*40|0)|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=0;while(1){if((b|0)==3)break;e=a+23416+(g*1920|0)+(f*40|0)+12+(b<<2)|0;c[e>>2]=c[e>>2]<<1;b=b+1|0}c[a+23416+(g*1920|0)+(f*40|0)+24>>2]=1;c[a+23416+(g*1920|0)+(f*40|0)+28>>2]=c[(c[a+23416+(g*1920|0)+(f*40|0)+36>>2]|0)+76>>2];b=j+40|0;d=j;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));d=a+23416+(g*1920|0)+(h*40|0)+36|0;b=0;while(1){if((b|0)==3)break;f=j+40+(b<<2)|0;c[f>>2]=(c[f>>2]|0)+(c[(c[c[d>>2]>>2]|0)+32+(b<<2)>>2]|0);b=b+1|0}c[j+64>>2]=2;c[j+68>>2]=c[(c[j+76>>2]|0)+80>>2];h=h+1|0}g=g+1|0}return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f|0?-2147483648:2147483647;j=0;while(1){l=a+(j<<2)|0;g=m;k=0;while(1){if((k|0)>=(d|0))break;h=c[b+(k<<2)>>2]|0;i=c[h+84>>2]|0;if(((i|0)>(e|0)|0)!=(f|0)?((i|0)<(g|0)|0)!=(f|0):0){c[l>>2]=h;g=i}k=k+1|0}if((g|0)==(m|0))break;e=(c[(c[l>>2]|0)+84>>2]|0)-f|0;j=j+1|0}return j|0}function vm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;if((l|0)>=(m|0))W(32);r=s+16|0;q=s;p=g^3;o=(f|0)==0;j=0;f=0;h=0;while(1){if(!((f|0)<(e|0)|(h|0)<(e|0))){f=24;break}while(1){if((f|0)>=(e|0)){i=0;break}n=c[d+(f<<2)>>2]|0;if(n|0?c[n+640>>2]&g|0:0){i=1;break}f=f+1|0}n=h;while(1){if((n|0)>=(e|0)){k=0;break}k=c[d+(n<<2)>>2]|0;if(k|0?c[k+640>>2]&p|0:0){k=1;break}n=n+1|0}if(i){if((j|0)>=(b|0)){f=14;break}i=c[d+(f<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=f;c[i+96>>2]=h;xm(a+(j*40|0)|0,i,g,1);j=j+1|0;f=f+1|0}if(!k){h=n;continue}if((j|0)>=(b|0)){f=20;break}i=c[d+(n<<2)>>2]|0;if(o)h=c[i+88>>2]|0;else h=n;c[i+96>>2]=h;xm(a+(j*40|0)|0,i,p,0);j=j+1|0;h=n+1|0}if((f|0)==14){c[q>>2]=145386;c[q+4>>2]=127983;c[q+8>>2]=90;ig(0,0,159900,q);Tb()}else if((f|0)==20){c[r>>2]=145386;c[r+4>>2]=127983;c[r+8>>2]=95;ig(0,0,159900,r);Tb()}else if((f|0)==24){l=s;return j|0}return 0}function wm(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;b=c[c[a+24312>>2]>>2]|0;if((c[b+68>>2]|0)==(c[d+68>>2]|0)?(c[b+72>>2]|0)==(c[d+72>>2]|0):0)b=(c[b+80>>2]|0)!=(c[d+80>>2]|0)&1;else b=1;return b|0}function xm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(c[b+640>>2]&d|0?(qm(a,b),(d|0)!=3):0){rm(a,d);d=a+32|0;c[d>>2]=(c[d>>2]<<1)+e}return}function ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;if((l|0)>=(m|0))W(64);o=t+56|0;n=t+48|0;s=t+40|0;r=t+24|0;q=t;k=(d|0)!=0;if(k){i=a+28204|0;Pg(i);f=a+28212|0;c[f>>2]=0;d=Rh(c[a+27180+(c[b+27776>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d)d=-12;else{d=c[d+4>>2]|0;c[f>>2]=d;g=5}}else{d=a+28212|0;f=d;d=c[d>>2]|0;g=5}a:do if((g|0)==5){h=a+28216|0;g=c[h>>2]|0;do if((g|0)==(c[(c[a+27052+(c[d>>2]<<2)>>2]|0)+4>>2]|0))d=0;else{i=a+28208|0;Pg(i);c[h>>2]=0;d=Rh(c[a+27052+(c[c[f>>2]>>2]<<2)>>2]|0)|0;c[i>>2]=d;if(!d){d=-12;break a}g=c[d+4>>2]|0;c[h>>2]=g;if((((c[a+27012>>2]|0)==(c[g+56>>2]|0)?(c[a+27008>>2]|0)==(c[g+60>>2]|0):0)?(e=c[a+29596>>2]|0,(e|0)==(c[g+1184>>2]|0)):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)d=0;else{d=1;e=c[g+1184>>2]|0}if((c[a+27044>>2]|0)==(e|0)?(c[a+27048>>2]|0)==(c[g+12>>2]|0):0)break;d=1}while(0);i=a+25692|0;if(c[i>>2]|0){f=c[g+56>>2]|0;h=a+4|0;e=c[h>>2]|0;if(((((f<<4|0)==(c[e+100>>2]|0)?(j=c[g+60>>2]|0,(j<<4|0)==(c[e+104>>2]|0)):0)?(c[a+29596>>2]|0)==(c[g+1184>>2]|0):0)?(c[a+29592>>2]|0)==(c[g+12>>2]|0):0)?(c[a+27012>>2]|0)==(f|0):0)f=(c[a+27008>>2]|0)!=(j|0)&1;else f=1}else{e=a+4|0;h=e;f=0;e=c[e>>2]|0}e=c[e+112>>2]|0;if(!((e|0)!=-1?(j=Sn(e)|0,(j|0)==(Sn(Tn(a,0)|0)|0)):0))f=1;if(k){j=g+100|0;k=(c[h>>2]|0)+188|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];o=(Un(n,o)|0)==0;f=o?f:1}if(((c[a+29588>>2]|0)==0?(o=Vn(g)|0,n=c[h>>2]|0,c[n+716>>2]=o,c[n+720>>2]=c[g+8>>2],c[n+300>>2]=c[g+48>>2],n=c[g+56>>2]|0,c[a+27012>>2]=n,o=c[g+60>>2]|0,c[a+27008>>2]=o,c[a+27020>>2]=N(o,n)|0,c[a+27016>>2]=n+1,c[a+26368>>2]=n<<2,c[a+25680>>2]=(c[g+12>>2]|0)<2&1,c[a+25668>>2]=n<<4,c[a+25672>>2]=o<<4,Wn(a),(c[g+108>>2]|0)!=0):0)?(p=c[h>>2]|0,c[p+328>>2]=(c[g+112>>2]|0)>0?2:1,(c[g+116>>2]|0)!=0):0){o=p+324|0;n=c[g+128>>2]|0;d=(c[o>>2]|0)==(n|0)?d:1;c[p+316>>2]=c[g+120>>2];c[p+320>>2]=c[g+124>>2];c[o>>2]=n}e=(c[i>>2]|0)==0;if((d|f|0)!=0|e){c[i>>2]=0;if((c[a+25628>>2]|0)!=(b|0)){d=c[h>>2]|0;p=c[d+100>>2]|0;b=c[a+25672>>2]|0;r=c[d+104>>2]|0;s=(c[a+29560>>2]|0)+1|0;c[q>>2]=c[a+25668>>2];c[q+4>>2]=p;c[q+8>>2]=b;c[q+12>>2]=r;c[q+16>>2]=s;ig(d,16,146136,q);d=-1094995529;break}if(!e)gh(a);d=Tn(a,1)|0;if((d|0)>=0){q=c[h>>2]|0;c[q+112>>2]=d;p=c[a+25668>>2]|0;b=c[a+25672>>2]|0;d=Eh(d)|0;c[r>>2]=p;c[r+4>>2]=b;c[r+8>>2]=d;ig(q,40,146191,r);d=Xn(a)|0;if((d|0)<0)ig(c[h>>2]|0,16,146229,s);else d=0}}else d=0}while(0);l=t;return d|0}function zm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=p+8|0;f=p+16|0;n=c[b+25664>>2]|0;o=b+28216|0;g=c[o>>2]|0;c[f>>2]=1<<(c[g+1184>>2]|0)+-1;g=1<<(c[g+1188>>2]|0)+-1;c[f+4>>2]=g;c[f+8>>2]=g;c[f+12>>2]=-1;g=b+4|0;do if(Hm(c[g>>2]|0)|0){Am(b,1);k=b+24312|0;c[k>>2]=0;d=Im(b)|0;if((d|0)<0){ig(c[g>>2]|0,16,145696,e);break}i=b+696+(d*656|0)|0;j=b+26380|0;h=c[j>>2]|0;c[b+696+(d*656|0)+640>>2]=(c[b+25684>>2]|0)==0?h:0;e=b+25688|0;q=c[e>>2]|0;c[e>>2]=q+1;e=c[i>>2]|0;c[e+128>>2]=q;c[b+696+(d*656|0)+636>>2]=(h|0)!=3&1;c[b+696+(d*656|0)+88>>2]=c[b+28244>>2];c[e+84>>2]=0;c[b+696+(d*656|0)+92>>2]=0;c[b+696+(d*656|0)+644>>2]=0;c[b+696+(d*656|0)+648>>2]=0;c[b+696+(d*656|0)+652>>2]=c[b+29716>>2];h=b+25628|0;c[e+88>>2]=c[(c[h>>2]|0)+836>>2];c[e+392>>2]=c[b+25716>>2];c[e+396>>2]=c[b+25720>>2];c[e+384>>2]=c[b+25724>>2];c[e+388>>2]=c[b+25728>>2];d=Jm(b,i)|0;if((d|0)>=0){if((c[b+29576>>2]|0)==0?(c[(c[g>>2]|0)+592>>2]|0)==0:0)Km(c[i>>2]|0,f);c[k>>2]=i;d=b+24316|0;ih(b,d);fj((c[h>>2]|0)+696|0,0);d=yi(b,d,c[k>>2]|0)|0;if((d|0)>=0){e=c[b+25632>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;g=c[c[k>>2]>>2]|0;q=c[h>>2]|0;c[q+(d*34768|0)+21772>>2]=c[g+32>>2];c[q+(d*34768|0)+21776>>2]=c[g+36>>2];d=d+1|0}if(!(c[b+29672>>2]|0))d=0;else{Lm((c[h>>2]|0)+24|0);fj((c[h>>2]|0)+728|0,0);fj((c[h>>2]|0)+760|0,0);d=0}while(1){if((d|0)==16){d=0;break}q=a[146491+d>>0]|0;h=((q<<2&255)+16&28)<>3;c[b+25976+(d<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<2,q)|0);c[b+25976+(d+48<<2)>>2]=h+(N(c[(c[i>>2]|0)+32>>2]<<3,q)|0);d=d+1|0}while(1){if((d|0)==16)break;q=a[146491+d>>0]|0;h=((q<<2&255)+16&28)<>3;g=h+(N(c[(c[i>>2]|0)+36>>2]<<2,q)|0)|0;c[b+25976+(d+32<<2)>>2]=g;c[b+25976+(d+16<<2)>>2]=g;q=h+(N(c[(c[i>>2]|0)+36>>2]<<3,q)|0)|0;c[b+25976+(d+80<<2)>>2]=q;c[b+25976+(d+64<<2)>>2]=q;d=d+1|0}q=c[k>>2]|0;c[q+640>>2]=0;c[q+80>>2]=2147483647;c[q+76>>2]=2147483647;c[b+28740>>2]=0;c[b+25708>>2]=0;if(!(c[(c[o>>2]|0)+68>>2]|0))d=0;else d=(c[j>>2]|0)==3&1;c[b+26376>>2]=d;d=c[b+29712>>2]|0;if((d|0)>-1){c[b+25704>>2]=d;d=0}else d=0}}}else{ig(c[g>>2]|0,16,145650,p);d=-1}while(0);l=p;return d|0}function Am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(b|0)==0;e=a+24312|0;b=0;while(1){if((b|0)==36)break;f=a+696+(b*656|0)|0;do if(c[(c[f>>2]|0)+248>>2]|0?(c[a+696+(b*656|0)+640>>2]|0)==0:0){if(d?(f|0)==(c[e>>2]|0):0)break;ih(a,f)}while(0);b=b+1|0}return}function Bm(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=c[e+20>>2]|0;i=c[f+36>>2]|0;j=f+32|0;c[j>>2]=i;l=c[f+20>>2]|0;if((l|0)<(c[f+40>>2]|0)){i=i+(1<>2]=i}switch(c[e+24>>2]|0){case 0:{i=1<>2];k=c[f>>2]|0;j=c[f+28>>2]|0;if((j|0)>(k|0)?(j-k|0)>=((i|0)/2|0|0):0)i=(c[f+24>>2]|0)+i|0;else m=7;do if((m|0)==7){if((j|0)<(k|0)?(j-k|0)<((i|0)/-2|0|0):0){i=(c[f+24>>2]|0)-i|0;break}i=c[f+24>>2]|0}while(0);c[f+4>>2]=i;j=k+i|0;l=((j|0)<0)<<31>>31;if((g|0)==3){k=c[f+8>>2]|0;k=hX(k|0,((k|0)<0)<<31>>31|0,j|0,l|0)|0;i=j;h=l;j=y}else{i=j;h=l;k=j;j=l}break}case 1:{m=c[e+44>>2]|0;k=(m|0)==0?0:l+i|0;h=(h|0)==0;j=(h&(k|0)>0)<<31>>31;i=0;l=0;while(1){if((i|0)>=(m|0))break;n=l+(b[e+148+(i<<1)>>1]|0)|0;i=i+1|0;l=n}i=k+j|0;a:do if((i|0)>0){i=i+-1|0;k=(i|0)%(m|0)|0;i=N((i|0)/(m|0)|0,l)|0;j=0;while(1){if((j|0)>(k|0))break a;i=i+(b[e+148+(j<<1)>>1]|0)|0;j=j+1|0}}else i=0;while(0);if(h)i=(c[e+36>>2]|0)+i|0;i=(c[f+12>>2]|0)+i|0;l=((i|0)<0)<<31>>31;k=c[e+40>>2]|0;k=hX(i|0,l|0,k|0,((k|0)<0)<<31>>31|0)|0;j=y;if((g|0)==3){h=c[f+16>>2]|0;k=hX(k|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=l;j=y}else h=l;break}default:{k=(l+i<<1)+(((h|0)==0)<<31>>31)|0;j=((k|0)<0)<<31>>31;i=k;h=j}}if((i|0)==(i|0)&(h|0)==(((i|0)<0)<<31>>31|0)?(k|0)==(k|0)&(j|0)==(((k|0)<0)<<31>>31|0):0){if((g|0)!=2?(c[a>>2]=i,(g|0)==1):0)j=a+4|0;else{j=a+4|0;c[j>>2]=k;i=c[a>>2]|0}c[d>>2]=c[a+(((i|0)>(c[j>>2]|0)&1)<<2)>>2];i=0}else i=-1094995529;return i|0}function Cm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+28216>>2]|0;q=c[b+24312>>2]|0;j=c[q>>2]|0;g=j+212|0;c[g>>2]=0;d=j+208|0;c[d>>2]=0;i=(c[i+1160>>2]|0)==0;if(!i?(c[b+29676>>2]|0)!=0:0){f=c[b+29680>>2]|0;switch(f|0){case 8:{c[d>>2]=4;d=0;break}case 2:case 1:{c[g>>2]=1;d=1;break}case 4:case 3:{if((c[b+26376>>2]|0)==0?(c[b+26380>>2]|0)==3:0)d=c[b+29564>>2]|0;else d=1;c[g>>2]=d;break}case 6:case 5:{c[d>>2]=1;d=0;break}case 7:{c[d>>2]=2;d=0;break}default:d=0}e=c[b+29684>>2]|0;if((e&3|0)!=0&f>>>0<5){d=e>>>1&1;h=17}}else{if(!(c[b+26376>>2]|0))d=(c[b+26380>>2]|0)!=3;else d=1;d=d&1;h=17}if((h|0)==17)c[g>>2]=d;c[b+29564>>2]=d;e=c[q+76>>2]|0;f=c[q+80>>2]|0;do if((e|0)==(f|0)){if(!i?c[b+29676>>2]|0:0){switch(c[b+29680>>2]|0){case 5:case 3:{d=1;break}default:d=0}c[j+216>>2]=d;break}c[j+216>>2]=(d|0)!=0&1}else c[j+216>>2]=(e|0)<(f|0)&1;while(0);if(((c[b+29852>>2]|0?(k=b+29864|0,(c[k>>2]|0)>>>0<7):0)?(l=b+29872|0,((c[l>>2]|0)+-1|0)>>>0<2):0)?(m=Em(j)|0,m|0):0){switch(c[k>>2]|0){case 0:{c[m>>2]=4;break}case 1:{c[m>>2]=7;break}case 2:{c[m>>2]=6;break}case 3:{c[m>>2]=c[b+29876>>2]|0?5:1;break}case 4:{c[m>>2]=2;break}case 5:{c[m>>2]=3;break}case 6:{c[m>>2]=0;break}default:{}}if((c[l>>2]|0)==2)c[m+4>>2]=1;if((c[k>>2]|0)==5)c[m+8>>2]=c[b+29880>>2]|0?1:2}do if(c[b+29884>>2]|0){d=c[b+29888>>2]|0;if(((d|0)==0?(c[b+29892>>2]|0)==0:0)?(c[b+29896>>2]|0)==0:0)break;e=ni(c[q>>2]|0,6,36)|0;if(e|0){m=e+4|0;Fm(c[m>>2]|0,+(d*360|0)*.0000152587890625);Gm(c[m>>2]|0,c[b+29892>>2]|0,c[b+29896>>2]|0)}}while(0);d=b+29696|0;if(c[d>>2]|0?(n=ni(c[q>>2]|0,7,1)|0,n|0):0){a[c[n+4>>2]>>0]=a[b+29700>>0]|0;c[d>>2]=0}d=b+29708|0;if(c[d>>2]|0){e=b+29704|0;f=ni(c[q>>2]|0,1,c[e>>2]|0)|0;if(f|0)wX(c[f+4>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;eg(d);c[e>>2]=0;n=(c[b+4>>2]|0)+848|0;c[n>>2]=c[n>>2]|2}if((c[b+29916>>2]|0?(o=b+29920|0,Oj(c[o>>2]|0)|0):0)?(p=c[o>>2]|0,(p|0)!=2):0){c[(c[q>>2]|0)+308>>2]=p;c[(c[b+4>>2]|0)+320>>2]=p}return}function Dm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))W(48);r=s+32|0;o=s+16|0;k=s+8|0;h=s;d=c[a+28216>>2]|0;n=c[a+24312>>2]|0;j=a+29544|0;i=n+92|0;c[i>>2]=c[j>>2];c[j>>2]=0;j=d+660|0;b=c[a+4>>2]|0;if(!((c[j>>2]|0)==0?(c[b+568>>2]|0)<=0:0)){p=b+140|0;f=c[p>>2]|0;g=c[d+664>>2]|0;c[p>>2]=(f|0)>(g|0)?f:g}g=n+84|0;b=0;while(1){f=c[g>>2]|0;if((b|0)==16){b=16;p=8;break}d=c[a+28676+(b<<2)>>2]|0;e=(b|0)==0;if((f|0)<(d|0)){p=7;break}if(!e)c[a+28676+(b+-1<<2)>>2]=d;b=b+1|0}if((p|0)==7)if(e)b=0;else p=8;if((p|0)==8)c[a+28676+(b+-1<<2)>>2]=f;e=16-b|0;if((c[(c[n>>2]|0)+88>>2]|0)==3)if((e|0)>1)p=17;else p=16;else{p=c[a+28732>>2]|0;if((p|0)!=-2147483648?!((e|0)>1?1:((c[a+28736>>2]|0)-p|0)<3):0)p=16;else p=17}if((p|0)==16){b=a+4|0;e=1;d=c[b>>2]|0;p=22}else if((p|0)==17){f=a+4|0;d=c[f>>2]|0;if(!b){e=a+28676|0;b=c[e>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=b;ig(d,40,145568,h);b=1;while(1){if((b|0)==16)break;c[a+28676+(b<<2)>>2]=-2147483648;b=b+1|0}c[e>>2]=c[g>>2];c[i>>2]=1;h=f}else{b=f;p=22}}if((p|0)==22)if((c[d+140>>2]|0)<(e|0)?(c[j>>2]|0)==0:0){h=(c[d+360>>2]|0)>1?24:40;c[k>>2]=e;ig(d,h,145587,k);c[(c[b>>2]|0)+140>>2]=e;h=b}else h=b;k=0;while(1){b=a+28604+(k<<2)|0;if(!(c[b>>2]|0))break;else k=k+1|0}if((k|0)>=17){c[o>>2]=145620;c[o+4>>2]=133704;c[o+8>>2]=1337;ig(0,0,159900,o);Tb()}c[b>>2]=n;b=n+640|0;if(!(c[b>>2]|0))c[b>>2]=4;j=a+28604|0;f=c[j>>2]|0;n=f;i=0;b=1;while(1){d=c[a+28604+(b<<2)>>2]|0;if(!d)break;if(c[(c[d>>2]|0)+84>>2]|0)break;if(c[d+92>>2]|0)break;p=(c[d+84>>2]|0)<(c[n+84>>2]|0);n=p?d:n;i=p?b:i;b=b+1|0}b=c[h>>2]|0;e=c[b+140>>2]|0;do if(!e){if((c[(c[f>>2]|0)+84>>2]|0)==0?(c[f+92>>2]|0)==0:0)break;c[a+28744>>2]=-2147483648}while(0);d=c[n+84>>2]|0;g=a+28744|0;f=(d|0)<(c[g>>2]|0);do if(!((k|0)<(e|0)&(f^1))){b=n+640|0;c[b>>2]=c[b>>2]&-5;b=i;e=c[a+28604+(i<<2)>>2]|0;while(1){if(!e)break;p=b+1|0;e=c[a+28604+(p<<2)>>2]|0;c[a+28604+(b<<2)>>2]=e;b=p}if(f){b=c[h>>2]|0;p=61;break}else{e=c[h>>2]|0;b=e;e=c[e+140>>2]|0;p=47;break}}else p=47;while(0);do if((p|0)==47){if((k|0)<(e|0)){p=61;break}h=a+28740|0;c[h>>2]=n;if((i|0)==0?(q=c[j>>2]|0,(q|0)!=0):0)if((c[(c[q>>2]|0)+84>>2]|0)==0?(c[q+92>>2]|0)==0:0)p=53;else d=-2147483648;else p=53;c[g>>2]=d;f=n+644|0;g=c[f>>2]|0;e=a+29576|0;d=c[e>>2]|0;if(g){d=d|2;c[e>>2]=d}a=d>>>1&1|g;c[f>>2]=a;if(!a){if((c[b+60>>2]&8|0)==0?(c[b+64>>2]&4194304|0)==0:0){c[h>>2]=0;break}a=(c[n>>2]|0)+296|0;c[a>>2]=c[a>>2]|1}}while(0);if((p|0)==61){c[r>>2]=f?145631:262784;ig(b,48,145635,r)}l=s;return}function Em(b){b=b|0;var d=0,e=0;b=ni(b,2,12)|0;if(!b)b=0;else{b=b+4|0;d=c[b>>2]|0;e=d+12|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));b=c[b>>2]|0}return b|0}function Fm(a,b){a=a|0;b=+b;var d=0,e=0.0;b=b*-3.141592653589793/180.0;e=+D(+b);b=+E(+b);d=a+8|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;d=~~(e*65536.0);c[a>>2]=d;c[a+4>>2]=~~(b*-65536.0);c[a+12>>2]=~~(b*65536.0);c[a+16>>2]=d;c[a+32>>2]=1073741824;return}function Gm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=1-(((b|0)!=0&1)<<1);c[e+4>>2]=1-(((d|0)!=0&1)<<1);c[e+8>>2]=1;a:do if(d|b|0){b=0;while(1){if((b|0)==9)break a;d=a+(b<<2)|0;c[d>>2]=N(c[d>>2]|0,c[e+(((b|0)%3|0)<<2)>>2]|0)|0;b=b+1|0}}while(0);l=f;return}function Hm(a){a=a|0;var b=0;if((c[a+696>>2]&1|0)!=0?(c[(c[(c[a+28>>2]|0)+20>>2]|0)+300>>2]|0)!=1:0)if(!(c[(c[a+12>>2]|0)+68>>2]|0))if((c[a+700>>2]|0)==0?(c[a+400>>2]|0)!=12:0)a=0;else b=6;else a=0;else b=6;if((b|0)==6)a=1;return a|0}function Im(a){a=a|0;var b=0;b=0;while(1){if((b|0)>=36){b=-1094995529;break}if(!(c[(c[a+696+(b*656|0)>>2]|0)+248>>2]|0))break;b=b+1|0}return b|0}function Jm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=k+16|0;e=k;d=c[b>>2]|0;if(c[d>>2]|0){c[e>>2]=145746;c[e+4>>2]=133704;c[e+8>>2]=192;ig(0,0,159900,e);Tb()}i=b+4|0;c[i>>2]=d;e=a+4|0;d=Fn(c[e>>2]|0,i,(c[b+640>>2]|0)!=0&1)|0;a:do if((d|0)>=0){e=c[(c[e>>2]|0)+592>>2]|0;if(e|0){f=b+56|0;if(c[f>>2]|0){c[g>>2]=145763;c[g+4>>2]=133704;c[g+8>>2]=202;ig(0,0,159900,g);Tb()}e=c[e+40>>2]|0;if(e|0){e=Jh(e)|0;c[b+52>>2]=e;if(!e){d=-12;break}c[f>>2]=c[e+4>>2]}}f=a+29924|0;e=c[f>>2]|0;if(!e){d=Gn(a)|0;if((d|0)<0){j=18;break}e=c[f>>2]|0}f=b+20|0;c[f>>2]=yh(e)|0;e=yh(c[a+29928>>2]|0)|0;c[b+44>>2]=e;f=c[f>>2]|0;if((e|0)==0|(f|0)==0)j=18;else{g=c[a+27016>>2]<<1;c[b+48>>2]=(c[e+4>>2]|0)+(g<<2)+4;c[b+24>>2]=(c[f+4>>2]|0)+g+1;f=a+29932|0;g=a+29936|0;e=0;while(1){if((e|0)>=2){d=0;break a}i=b+28+(e<<2)|0;c[i>>2]=yh(c[f>>2]|0)|0;h=yh(c[g>>2]|0)|0;c[b+60+(e<<2)>>2]=h;i=c[i>>2]|0;if((h|0)==0|(i|0)==0){j=18;break a}c[b+36+(e<<2)>>2]=(c[i+4>>2]|0)+16;c[b+68+(e<<2)>>2]=c[h+4>>2];e=e+1|0}}}else j=18;while(0);if((j|0)==18){ih(a,b);d=(d|0)<0?d:-12}l=k;return d|0}function Km(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=v;g=Dh(c[a+80>>2]|0)|0;if(0==0?(c[g+8>>2]&16|0)==0:0){c[f>>2]=145723;c[f+4>>2]=127302;c[f+8>>2]=410;ig(0,0,159900,f);Tb()}q=g+4|0;r=a+68|0;s=g+5|0;t=a+72|0;u=g+6|0;o=g+32|0;n=0;while(1){if((n|0)>=(d[q>>0]|0|0))break;f=c[r>>2]|0;if((n+-1|0)>>>0<2){p=0-(0-(c[t>>2]|0)>>(d[u>>0]|0))|0;f=0-(0-f>>(d[s>>0]|0))|0}else p=c[t>>2]|0;j=a+32+(n<<2)|0;k=e+(n<<2)|0;g=0;i=c[a+(n<<2)>>2]|0;while(1){if((g|0)>=(p|0))break;a:do if((c[o>>2]|0)>8){h=0;while(1){if((h|0)>=(f|0))break a;b[i+(h<<1)>>1]=c[k>>2];h=h+1|0}}else yX(i|0,c[k>>2]&255|0,f|0)|0;while(0);g=g+1|0;i=i+(c[j>>2]|0)|0}n=n+1|0}l=v;return}function Lm(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(c[b+572>>2]|0){d=a+544|0;if(!(c[d>>2]|0)){Mm(a+4|0,b);c[d>>2]=1}yX(c[a+580>>2]|0,127,N(c[a+560>>2]|0,c[a+564>>2]|0)|0)|0;c[a+572>>2]=(c[a+552>>2]|0)*3;c[a+576>>2]=0}return}function Mm(a,b){a=a|0;b=b|0;c[a>>2]=19;c[a+484>>2]=2;c[a+488>>2]=3;c[a+492>>2]=4;c[a+496>>2]=5;c[a+500>>2]=6;c[a+504>>2]=7;c[a+508>>2]=8;c[a+512>>2]=9;c[a+52>>2]=10;c[a+56>>2]=11;c[a+68>>2]=12;c[a+72>>2]=13;c[a+76>>2]=14;c[a+80>>2]=15;c[a+292>>2]=16;c[a+296>>2]=17;c[a+316>>2]=18;c[a+320>>2]=19;c[a+4>>2]=2;c[a+8>>2]=6;c[a+28>>2]=20;c[a+32>>2]=21;c[a+36>>2]=22;c[a+100>>2]=23;c[a+104>>2]=24;c[a+148>>2]=25;c[a+152>>2]=26;c[a+124>>2]=27;c[a+128>>2]=28;c[a+172>>2]=29;c[a+176>>2]=30;c[a+188>>2]=31;c[a+192>>2]=32;c[a+196>>2]=33;c[a+200>>2]=34;c[a+212>>2]=35;c[a+216>>2]=36;c[a+220>>2]=37;c[a+224>>2]=38;c[a+516>>2]=39;c[a+520>>2]=40;return}function Nm(a){a=a|0;var c=0,d=0,e=0,f=0;c=0;d=0;while(1){if((c|0)==64)break;f=b[a+(c<<1)>>1]|0;e=f<<16>>16;c=c+1|0;d=(f<<16>>16>-1?e:0-e|0)+d|0}return d|0}function Om(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;w=(d[b>>0]|0)-(d[a>>0]|0)|0;v=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;u=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;t=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;s=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;r=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;q=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;p=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;o=(d[b+8>>0]|0)-(d[a+8>>0]|0)|0;n=(d[b+9>>0]|0)-(d[a+9>>0]|0)|0;m=(d[b+10>>0]|0)-(d[a+10>>0]|0)|0;l=(d[b+11>>0]|0)-(d[a+11>>0]|0)|0;k=(d[b+12>>0]|0)-(d[a+12>>0]|0)|0;j=(d[b+13>>0]|0)-(d[a+13>>0]|0)|0;i=(d[b+14>>0]|0)-(d[a+14>>0]|0)|0;c=(d[b+15>>0]|0)-(d[a+15>>0]|0)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Pm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;v=d[a+1>>0]|0;w=(d[b>>0]|0)-(((d[a>>0]|0)+1+v|0)>>>1)|0;u=d[a+2>>0]|0;v=(d[b+1>>0]|0)-((v+1+u|0)>>>1)|0;t=d[a+3>>0]|0;u=(d[b+2>>0]|0)-((u+1+t|0)>>>1)|0;s=d[a+4>>0]|0;t=(d[b+3>>0]|0)-((t+1+s|0)>>>1)|0;r=d[a+5>>0]|0;s=(d[b+4>>0]|0)-((s+1+r|0)>>>1)|0;q=d[a+6>>0]|0;r=(d[b+5>>0]|0)-((r+1+q|0)>>>1)|0;p=d[a+7>>0]|0;q=(d[b+6>>0]|0)-((q+1+p|0)>>>1)|0;o=d[a+8>>0]|0;p=(d[b+7>>0]|0)-((p+1+o|0)>>>1)|0;n=d[a+9>>0]|0;o=(d[b+8>>0]|0)-((o+1+n|0)>>>1)|0;m=d[a+10>>0]|0;n=(d[b+9>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+11>>0]|0;m=(d[b+10>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+12>>0]|0;l=(d[b+11>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+13>>0]|0;k=(d[b+12>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+14>>0]|0;j=(d[b+13>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+15>>0]|0;i=(d[b+14>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+15>>0]|0)-((c+1+(d[a+16>>0]|0)|0)>>>1)|0;g=g+1|0;h=((w|0)>-1?w:0-w|0)+h+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Qm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;x=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;w=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;v=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;u=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;t=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;s=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;r=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;q=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;p=(d[b+8>>0]|0)-(((d[a+8>>0]|0)+1+(d[c+8>>0]|0)|0)>>>1)|0;o=(d[b+9>>0]|0)-(((d[a+9>>0]|0)+1+(d[c+9>>0]|0)|0)>>>1)|0;n=(d[b+10>>0]|0)-(((d[a+10>>0]|0)+1+(d[c+10>>0]|0)|0)>>>1)|0;m=(d[b+11>>0]|0)-(((d[a+11>>0]|0)+1+(d[c+11>>0]|0)|0)>>>1)|0;l=(d[b+12>>0]|0)-(((d[a+12>>0]|0)+1+(d[c+12>>0]|0)|0)>>>1)|0;k=(d[b+13>>0]|0)-(((d[a+13>>0]|0)+1+(d[c+13>>0]|0)|0)>>>1)|0;j=(d[b+14>>0]|0)-(((d[a+14>>0]|0)+1+(d[c+14>>0]|0)|0)>>>1)|0;i=(d[b+15>>0]|0)-(((d[a+15>>0]|0)+1+(d[c+15>>0]|0)|0)>>>1)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Rm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;y=d[a+1>>0]|0;w=d[c+1>>0]|0;x=(d[b>>0]|0)-(((d[a>>0]|0)+2+y+(d[c>>0]|0)+w|0)>>>2)|0;z=d[a+2>>0]|0;v=d[c+2>>0]|0;w=(d[b+1>>0]|0)-((y+2+w+z+v|0)>>>2)|0;y=d[a+3>>0]|0;u=d[c+3>>0]|0;v=(d[b+2>>0]|0)-((z+2+v+y+u|0)>>>2)|0;z=d[a+4>>0]|0;t=d[c+4>>0]|0;u=(d[b+3>>0]|0)-((y+2+u+z+t|0)>>>2)|0;y=d[a+5>>0]|0;s=d[c+5>>0]|0;t=(d[b+4>>0]|0)-((z+2+t+y+s|0)>>>2)|0;z=d[a+6>>0]|0;r=d[c+6>>0]|0;s=(d[b+5>>0]|0)-((y+2+s+z+r|0)>>>2)|0;y=d[a+7>>0]|0;q=d[c+7>>0]|0;r=(d[b+6>>0]|0)-((z+2+r+y+q|0)>>>2)|0;z=d[a+8>>0]|0;p=d[c+8>>0]|0;q=(d[b+7>>0]|0)-((y+2+q+z+p|0)>>>2)|0;y=d[a+9>>0]|0;o=d[c+9>>0]|0;p=(d[b+8>>0]|0)-((z+2+p+y+o|0)>>>2)|0;z=d[a+10>>0]|0;n=d[c+10>>0]|0;o=(d[b+9>>0]|0)-((y+2+o+z+n|0)>>>2)|0;y=d[a+11>>0]|0;m=d[c+11>>0]|0;n=(d[b+10>>0]|0)-((z+2+n+y+m|0)>>>2)|0;z=d[a+12>>0]|0;l=d[c+12>>0]|0;m=(d[b+11>>0]|0)-((y+2+m+z+l|0)>>>2)|0;y=d[a+13>>0]|0;k=d[c+13>>0]|0;l=(d[b+12>>0]|0)-((z+2+l+y+k|0)>>>2)|0;z=d[a+14>>0]|0;j=d[c+14>>0]|0;k=(d[b+13>>0]|0)-((y+2+k+z+j|0)>>>2)|0;y=d[a+15>>0]|0;i=d[c+15>>0]|0;j=(d[b+14>>0]|0)-((z+2+j+y+i|0)>>>2)|0;i=(d[b+15>>0]|0)-((y+2+i+(d[a+16>>0]|0)+(d[c+16>>0]|0)|0)>>>2)|0;g=g+1|0;h=((x|0)>-1?x:0-x|0)+h+((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Sm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;o=(d[b>>0]|0)-(d[a>>0]|0)|0;n=(d[b+1>>0]|0)-(d[a+1>>0]|0)|0;m=(d[b+2>>0]|0)-(d[a+2>>0]|0)|0;l=(d[b+3>>0]|0)-(d[a+3>>0]|0)|0;k=(d[b+4>>0]|0)-(d[a+4>>0]|0)|0;j=(d[b+5>>0]|0)-(d[a+5>>0]|0)|0;i=(d[b+6>>0]|0)-(d[a+6>>0]|0)|0;c=(d[b+7>>0]|0)-(d[a+7>>0]|0)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Tm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;h=0;a=c;while(1){if((g|0)>=(f|0))break;n=d[a+1>>0]|0;o=(d[b>>0]|0)-(((d[a>>0]|0)+1+n|0)>>>1)|0;m=d[a+2>>0]|0;n=(d[b+1>>0]|0)-((n+1+m|0)>>>1)|0;l=d[a+3>>0]|0;m=(d[b+2>>0]|0)-((m+1+l|0)>>>1)|0;k=d[a+4>>0]|0;l=(d[b+3>>0]|0)-((l+1+k|0)>>>1)|0;j=d[a+5>>0]|0;k=(d[b+4>>0]|0)-((k+1+j|0)>>>1)|0;i=d[a+6>>0]|0;j=(d[b+5>>0]|0)-((j+1+i|0)>>>1)|0;c=d[a+7>>0]|0;i=(d[b+6>>0]|0)-((i+1+c|0)>>>1)|0;c=(d[b+7>>0]|0)-((c+1+(d[a+8>>0]|0)|0)>>>1)|0;g=g+1|0;h=((o|0)>-1?o:0-o|0)+h+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((c|0)>-1?c:0-c|0)|0;b=b+e|0;a=a+e|0}return h|0}function Um(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;p=(d[b>>0]|0)-(((d[a>>0]|0)+1+(d[c>>0]|0)|0)>>>1)|0;o=(d[b+1>>0]|0)-(((d[a+1>>0]|0)+1+(d[c+1>>0]|0)|0)>>>1)|0;n=(d[b+2>>0]|0)-(((d[a+2>>0]|0)+1+(d[c+2>>0]|0)|0)>>>1)|0;m=(d[b+3>>0]|0)-(((d[a+3>>0]|0)+1+(d[c+3>>0]|0)|0)>>>1)|0;l=(d[b+4>>0]|0)-(((d[a+4>>0]|0)+1+(d[c+4>>0]|0)|0)>>>1)|0;k=(d[b+5>>0]|0)-(((d[a+5>>0]|0)+1+(d[c+5>>0]|0)|0)>>>1)|0;j=(d[b+6>>0]|0)-(((d[a+6>>0]|0)+1+(d[c+6>>0]|0)|0)>>>1)|0;i=(d[b+7>>0]|0)-(((d[a+7>>0]|0)+1+(d[c+7>>0]|0)|0)>>>1)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Vm(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=0;h=0;a=c;while(1){c=a+e|0;if((g|0)>=(f|0))break;q=d[a+1>>0]|0;o=d[c+1>>0]|0;p=(d[b>>0]|0)-(((d[a>>0]|0)+2+q+(d[c>>0]|0)+o|0)>>>2)|0;r=d[a+2>>0]|0;n=d[c+2>>0]|0;o=(d[b+1>>0]|0)-((q+2+o+r+n|0)>>>2)|0;q=d[a+3>>0]|0;m=d[c+3>>0]|0;n=(d[b+2>>0]|0)-((r+2+n+q+m|0)>>>2)|0;r=d[a+4>>0]|0;l=d[c+4>>0]|0;m=(d[b+3>>0]|0)-((q+2+m+r+l|0)>>>2)|0;q=d[a+5>>0]|0;k=d[c+5>>0]|0;l=(d[b+4>>0]|0)-((r+2+l+q+k|0)>>>2)|0;r=d[a+6>>0]|0;j=d[c+6>>0]|0;k=(d[b+5>>0]|0)-((q+2+k+r+j|0)>>>2)|0;q=d[a+7>>0]|0;i=d[c+7>>0]|0;j=(d[b+6>>0]|0)-((r+2+j+q+i|0)>>>2)|0;i=(d[b+7>>0]|0)-((q+2+i+(d[a+8>>0]|0)+(d[c+8>>0]|0)|0)>>>2)|0;g=g+1|0;h=((p|0)>-1?p:0-p|0)+h+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((m|0)>-1?m:0-m|0)+((l|0)>-1?l:0-l|0)+((k|0)>-1?k:0-k|0)+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)|0;b=b+e|0;a=c}return h|0}function Wm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Xm(a,b,c,d,8)|0;f=(Xm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Xm(a,g,b,d,8)|0)+f|0;f=f+(Xm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Xm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;i=l;l=l+256|0;if((l|0)>=(m|0))W(256);h=i;a=0;while(1){if((a|0)==8){a=0;g=0;break}j=N(a,f)|0;r=j+1|0;t=d[e+r>>0]|0;r=d[b+r>>0]|0;k=(d[e+j>>0]|0)-(d[b+j>>0]|0)|0;q=k+t-r|0;g=a<<3;r=k-t+r|0;t=j+2|0;k=j+3|0;s=d[e+k>>0]|0;k=d[b+k>>0]|0;t=(d[e+t>>0]|0)-(d[b+t>>0]|0)|0;o=t+s-k|0;k=t-s+k|0;s=j+4|0;t=j+5|0;u=d[e+t>>0]|0;t=d[b+t>>0]|0;s=(d[e+s>>0]|0)-(d[b+s>>0]|0)|0;p=s+u-t|0;t=s-u+t|0;u=j+6|0;j=j+7|0;s=d[e+j>>0]|0;j=d[b+j>>0]|0;u=(d[e+u>>0]|0)-(d[b+u>>0]|0)|0;n=u+s-j|0;j=u-s+j|0;s=o+q|0;o=q-o|0;q=k+r|0;k=r-k|0;r=n+p|0;n=p-n|0;p=j+t|0;j=t-j|0;c[h+(g<<2)>>2]=r+s;c[h+((g|4)<<2)>>2]=s-r;c[h+((g|1)<<2)>>2]=p+q;c[h+((g|5)<<2)>>2]=q-p;c[h+((g|2)<<2)>>2]=n+o;c[h+((g|6)<<2)>>2]=o-n;c[h+((g|3)<<2)>>2]=j+k;c[h+((g|7)<<2)>>2]=k-j;a=a+1|0}while(1){if((g|0)==8)break;y=h+(g<<2)|0;s=c[y>>2]|0;w=h+(g+8<<2)|0;v=c[w>>2]|0;x=v+s|0;v=s-v|0;s=h+(g+16<<2)|0;b=c[s>>2]|0;n=h+(g+24<<2)|0;k=c[n>>2]|0;u=k+b|0;k=b-k|0;b=h+(g+32<<2)|0;p=c[b>>2]|0;f=h+(g+40<<2)|0;j=c[f>>2]|0;e=j+p|0;j=p-j|0;p=h+(g+48<<2)|0;q=c[p>>2]|0;o=h+(g+56<<2)|0;t=c[o>>2]|0;r=t+q|0;t=q-t|0;q=u+x|0;c[y>>2]=q;u=x-u|0;c[s>>2]=u;s=k+v|0;c[w>>2]=s;k=v-k|0;c[n>>2]=k;n=r+e|0;c[b>>2]=n;r=e-r|0;c[p>>2]=r;p=t+j|0;c[f>>2]=p;t=j-t|0;c[o>>2]=t;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=r+u|0;r=u-r|0;u=k+t|0;t=k-t|0;a=((n|0)>-1?n:0-n|0)+a+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)+((t|0)>-1?t:0-t|0)+((u|0)>-1?u:0-u|0)|0;g=g+1|0}l=i;return a|0}function Ym(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=Zm(a,b,c,d,8)|0;f=(Zm(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(Zm(a,g,b,d,8)|0)+f|0;f=f+(Zm(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function Zm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=l;l=l+256|0;if((l|0)>=(m|0))W(256);g=h;a=0;while(1){if((a|0)==8){a=0;e=0;break}i=N(a,f)|0;r=d[b+i>>0]|0;q=d[b+(i+1)>>0]|0;p=q+r|0;e=a<<3;q=r-q|0;r=d[b+(i+2)>>0]|0;j=d[b+(i+3)>>0]|0;n=j+r|0;j=r-j|0;r=d[b+(i+4)>>0]|0;s=d[b+(i+5)>>0]|0;o=s+r|0;s=r-s|0;r=d[b+(i+6)>>0]|0;i=d[b+(i+7)>>0]|0;k=i+r|0;i=r-i|0;r=n+p|0;n=p-n|0;p=j+q|0;j=q-j|0;q=k+o|0;k=o-k|0;o=i+s|0;i=s-i|0;c[g+(e<<2)>>2]=q+r;c[g+((e|4)<<2)>>2]=r-q;c[g+((e|1)<<2)>>2]=o+p;c[g+((e|5)<<2)>>2]=p-o;c[g+((e|2)<<2)>>2]=k+n;c[g+((e|6)<<2)>>2]=n-k;c[g+((e|3)<<2)>>2]=i+j;c[g+((e|7)<<2)>>2]=j-i;a=a+1|0}while(1){if((e|0)==8)break;y=g+(e<<2)|0;q=c[y>>2]|0;w=g+(e+8<<2)|0;v=c[w>>2]|0;x=v+q|0;v=q-v|0;q=g+(e+16<<2)|0;u=c[q>>2]|0;j=g+(e+24<<2)|0;i=c[j>>2]|0;s=i+u|0;i=u-i|0;u=g+(e+32<<2)|0;n=c[u>>2]|0;b=g+(e+40<<2)|0;f=c[b>>2]|0;t=f+n|0;f=n-f|0;n=g+(e+48<<2)|0;o=c[n>>2]|0;k=g+(e+56<<2)|0;r=c[k>>2]|0;p=r+o|0;r=o-r|0;o=s+x|0;c[y>>2]=o;s=x-s|0;c[q>>2]=s;q=i+v|0;c[w>>2]=q;i=v-i|0;c[j>>2]=i;j=p+t|0;c[u>>2]=j;p=t-p|0;c[n>>2]=p;n=r+f|0;c[b>>2]=n;r=f-r|0;c[k>>2]=r;k=j+o|0;j=o-j|0;o=n+q|0;n=q-n|0;q=p+s|0;p=s-p|0;s=i+r|0;r=i-r|0;a=((j|0)>-1?j:0-j|0)+a+((k|0)>-1?k:0-k|0)+((n|0)>-1?n:0-n|0)+((o|0)>-1?o:0-o|0)+((p|0)>-1?p:0-p|0)+((q|0)>-1?q:0-q|0)+((r|0)>-1?r:0-r|0)+((s|0)>-1?s:0-s|0)|0;e=e+1|0}y=(c[g+128>>2]|0)+(c[g>>2]|0)|0;l=h;return a-((y|0)>-1?y:0-y|0)|0}function _m(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=$m(a,b,c,d,8)|0;f=($m(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=($m(a,g,b,d,8)|0)+f|0;f=f+($m(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function $m(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=l;l=l+128|0;if((l|0)>=(m|0))W(128);g=f;Td[c[a+2964>>2]&255](g,b,d,e);Qd[c[a+2032>>2]&63](g);e=Jd[c[a+2372>>2]&31](g)|0;l=f;return e|0}function an(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=bn(a,b,c,d,8)|0;f=(bn(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(bn(a,g,b,d,8)|0)+f|0;f=f+(bn(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function bn(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Td[c[a+2964>>2]&255](h,d,e,f);Qd[c[a+2032>>2]&63](h);g=0;a=0;while(1){if((g|0)==64)break;e=b[h+(g<<1)>>1]|0;f=e<<16>>16;f=e<<16>>16>-1?f:0-f|0;g=g+1|0;a=(a|0)>(f|0)?a:f}l=i;return a|0}function cn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=dn(a,b,c,d,8)|0;f=(dn(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(dn(a,g,b,d,8)|0)+f|0;f=f+(dn(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function dn(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;Td[c[a+2964>>2]&255](h,d,e,f);g=0;while(1){if((g|0)==8){g=0;a=0;break}w=h+(g<<4)|0;A=b[w>>1]|0;f=h+(g<<4)+14|0;p=b[f>>1]|0;C=p+A|0;v=h+(g<<4)+2|0;z=b[v>>1]|0;a=h+(g<<4)+12|0;y=b[a>>1]|0;B=y+z|0;u=h+(g<<4)+4|0;o=b[u>>1]|0;n=h+(g<<4)+10|0;x=b[n>>1]|0;j=x+o|0;t=h+(g<<4)+6|0;d=b[t>>1]|0;q=h+(g<<4)+8|0;e=b[q>>1]|0;k=e+d|0;s=k+C|0;r=j+B|0;k=C-k|0;j=B-j|0;p=A-p|0;y=z-y|0;x=o-x|0;e=d-e|0;d=(p>>1)+p+y+x|0;o=p-e-((x>>1)+x)|0;p=p-y-(y>>1)+e|0;e=e+(y-x)+(e>>1)|0;b[w>>1]=s+r;b[v>>1]=(e>>>2)+d;b[u>>1]=k+(j>>>1);b[t>>1]=o+(p>>>2);b[q>>1]=s-r;b[n>>1]=p-(o>>>2);b[a>>1]=(k>>>1)-j;b[f>>1]=(d>>>2)-e;g=g+1|0}while(1){if((a|0)==8)break;y=b[h+(a<<1)>>1]|0;s=b[h+112+(a<<1)>>1]|0;p=s+y|0;w=b[h+16+(a<<1)>>1]|0;C=b[h+96+(a<<1)>>1]|0;q=C+w|0;A=b[h+32+(a<<1)>>1]|0;v=b[h+80+(a<<1)>>1]|0;z=v+A|0;u=b[h+48+(a<<1)>>1]|0;B=b[h+64+(a<<1)>>1]|0;t=B+u|0;r=t+p|0;x=z+q|0;t=p-t|0;z=q-z|0;s=y-s|0;C=w-C|0;v=A-v|0;B=u-B|0;u=(s>>1)+s+C+v|0;A=s-B-((v>>1)+v)|0;s=s-C-(C>>1)+B|0;B=B+(C-v)+(B>>1)|0;v=r+x|0;C=(B>>2)+u|0;w=t+(z>>1)|0;y=A+(s>>2)|0;x=r-x|0;A=s-(A>>2)|0;z=(t>>1)-z|0;B=(u>>2)-B|0;g=((v|0)>-1?v:0-v|0)+g+((w|0)>-1?w:0-w|0)+((x|0)>-1?x:0-x|0)+((y|0)>-1?y:0-y|0)+((z|0)>-1?z:0-z|0)+((A|0)>-1?A:0-A|0)+((B|0)>-1?B:0-B|0)+((C|0)>-1?C:0-C|0)|0;a=a+1|0}l=i;return g|0}function en(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[104e3+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[104e3+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+8>>0]|0)-(d[a+8>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+9>>0]|0)-(d[a+9>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+10>>0]|0)-(d[a+10>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+11>>0]|0)-(d[a+11>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+12>>0]|0)-(d[a+12>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+13>>0]|0)-(d[a+13>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+14>>0]|0)-(d[a+14>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+15>>0]|0)-(d[a+15>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function fn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[104e3+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[104e3+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+4>>0]|0)-(d[a+4>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+5>>0]|0)-(d[a+5>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+6>>0]|0)-(d[a+6>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+7>>0]|0)-(d[a+7>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function gn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=0;i=0;a=e;while(1){if((h|0)>=(g|0))break;e=(c[104e3+((d[b>>0]|0)-(d[a>>0]|0)<<2)>>2]|0)+i+(c[104e3+((d[b+1>>0]|0)-(d[a+1>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+2>>0]|0)-(d[a+2>>0]|0)<<2)>>2]|0)+(c[104e3+((d[b+3>>0]|0)-(d[a+3>>0]|0)<<2)>>2]|0)|0;b=b+f|0;h=h+1|0;i=e;a=a+f|0}return i|0}function hn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=jn(a,b,c,d,8)|0;f=(jn(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(jn(a,g,b,d,8)|0)+f|0;f=f+(jn(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function jn(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+272|0;if((l|0)>=(m|0))W(272);i=k;h=k+256|0;j=i+128|0;c[a+4304>>2]=0;Td[c[a+2964>>2]&255](i,d,e,f);g=j;d=i;e=g+128|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(e|0));g=a+1920|0;c[a+16>>2]=Nd[c[a+6244>>2]&63](a,i,0,c[g>>2]|0,h)|0;Td[c[a+6236>>2]&255](a,i,0,c[g>>2]|0);Cn(i);g=0;d=0;while(1){if((d|0)==64)break;a=(b[i+(d<<1)>>1]|0)-(b[j+(d<<1)>>1]|0)|0;g=(N(a,a)|0)+g|0;d=d+1|0}l=k;return g|0}function kn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=ln(a,b,c,d,8)|0;f=(ln(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(ln(a,g,b,d,8)|0)+f|0;f=f+(ln(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function ln(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+272|0;if((l|0)>=(m|0))W(272);r=u+128|0;s=u+64|0;t=u;p=u+256|0;q=c[a+4908>>2]|0;Bn(s,e,g);Bn(t,f,g);Td[c[a+2960>>2]&255](r,s,t,8);k=a+1920|0;n=Nd[c[a+6244>>2]&63](a,r,0,c[k>>2]|0,p)|0;c[a+16>>2]=n;o=(c[a+4304>>2]|0)==0;if(o){g=0;e=a+4932|0;f=a+4928|0;h=0}else{g=1;e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[r>>1]|0)+256)>>0]|0}j=c[e>>2]|0;i=c[f>>2]|0;do if((n|0)>=(g|0)){f=0;while(1){c[p>>2]=g;if((g|0)>=(n|0))break;e=b[r+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=q;f=0;h=e+h|0}g=g+1|0}e=d[a+204+n>>0]|0;c[p>>2]=e;e=(b[r+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+q|0;break}}while(0);do if((n|0)>-1)if(o){Td[c[a+6236>>2]&255](a,r,0,c[k>>2]|0);break}else{Td[c[a+6232>>2]&255](a,r,0,c[k>>2]|0);break}while(0);Sd[c[a+2300>>2]&1023](t,8,r);a=Nd[c[a+2404>>2]&63](0,t,s,8,8)|0;t=c[k>>2]|0;a=((N(N(h*109|0,t)|0,t)|0)+64>>7)+a|0;l=u;return a|0}function mn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=nn(a,b,c,d,8)|0;f=(nn(a,b+8|0,c+8|0,d,8)|0)+f|0;h=d<<3;g=b+h|0;b=c+h|0;if((e|0)==16){f=(nn(a,g,b,d,8)|0)+f|0;f=f+(nn(a,g+8|0,b+8|0,d,8)|0)|0}return f|0}function nn(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+144|0;if((l|0)>=(m|0))W(144);n=q;o=q+128|0;p=c[a+4908>>2]|0;Td[c[a+2964>>2]&255](n,e,f,g);k=Nd[c[a+6244>>2]&63](a,n,0,c[a+1920>>2]|0,o)|0;c[a+16>>2]=k;if(!(c[a+4304>>2]|0)){e=a+4932|0;f=a+4928|0;h=0;g=0}else{e=a+4916|0;f=a+4912|0;h=d[(c[a+4936>>2]|0)+((b[n>>1]|0)+256)>>0]|0;g=1}j=c[e>>2]|0;i=c[f>>2]|0;do if((k|0)>=(g|0)){f=0;while(1){c[o>>2]=g;if((g|0)>=(k|0))break;e=b[n+(d[a+204+g>>0]<<1)>>1]|0;if(!(e<<16>>16))f=f+1|0;else{e=(e<<16>>16)+64|0;if(e>>>0<128)e=d[i+(e+(f<<7))>>0]|0;else e=p;f=0;h=e+h|0}g=g+1|0}e=d[a+204+k>>0]|0;c[o>>2]=e;e=(b[n+(e<<1)>>1]|0)+64|0;if(e>>>0<128){h=h+(d[j+(e+(f<<7))>>0]|0)|0;break}else{h=h+p|0;break}}while(0);l=q;return h|0}function on(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function pn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=((i|0)>-1?i:0-i|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function qn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function rn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;j=c+e|0;k=(d[b+c>>0]|0)-(d[b+j>>0]|0)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(j+1)>>0]|0)|0;i=c|2;i=(d[b+i>>0]|0)-(d[b+(i+e)>>0]|0)|0;h=c|3;h=(d[b+h>>0]|0)-(d[b+(h+e)>>0]|0)|0;c=c+4|0;a=((k|0)>-1?k:0-k|0)+a+((j|0)>-1?j:0-j|0)+((i|0)>-1?i:0-i|0)+((h|0)>-1?h:0-h|0)|0}g=g+1|0;b=b+e|0}return a|0}function sn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==16)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function tn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=1;a=0;while(1){if((h|0)<(f|0))g=0;else break;while(1){if((g|0)==8)break;i=g+e|0;i=(d[b+g>>0]|0)-(d[c+g>>0]|0)-(d[b+i>>0]|0)+(d[c+i>>0]|0)|0;g=g+1|0;a=(N(i,i)|0)+a|0}h=h+1|0;b=b+e|0;c=c+e|0}return a|0}function un(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=16)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function vn(a,b,c,e,f){a=a|0;b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=1;a=0;while(1){if((g|0)<(f|0))c=0;else break;while(1){if((c|0)>=8)break;h=c+e|0;k=(d[b+c>>0]|0)-(d[b+h>>0]|0)|0;k=N(k,k)|0;j=(d[b+(c|1)>>0]|0)-(d[b+(h+1)>>0]|0)|0;j=N(j,j)|0;i=(d[b+(c|2)>>0]|0)-(d[b+(h+2)>>0]|0)|0;i=N(i,i)|0;h=(d[b+(c|3)>>0]|0)-(d[b+(h+3)>>0]|0)|0;c=c+4|0;a=k+a+j+i+(N(h,h)|0)|0}g=g+1|0;b=b+e|0}return a|0}function wn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==16)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==15)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function xn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=0;h=0;k=0;while(1){if((j|0)<(g|0))i=0;else break;while(1){if((i|0)==8)break;l=(d[b+i>>0]|0)-(d[e+i>>0]|0)|0;i=i+1|0;k=(N(l,l)|0)+k|0}j=j+1|0;a:do if((j|0)<(g|0)){i=0;while(1){if((i|0)==7)break a;o=i+f|0;n=i+1|0;l=o+1|0;m=(d[b+i>>0]|0)-(d[b+o>>0]|0)-(d[b+n>>0]|0)+(d[b+l>>0]|0)|0;l=(d[e+i>>0]|0)-(d[e+o>>0]|0)-(d[e+n>>0]|0)+(d[e+l>>0]|0)|0;i=n;h=((m|0)>-1?m:0-m|0)+h-((l|0)>-1?l:0-l|0)|0}}while(0);b=b+f|0;e=e+f|0}b=(h|0)>-1?h:0-h|0;if(!a)b=b<<3;else b=N(c[(c[a+596>>2]|0)+712>>2]|0,b)|0;return b+k|0}function yn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=(d[c>>0]|0)-(d[e>>0]|0)|0;u=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;w=u-v|0;t=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;u=t-u|0;s=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;t=s-t|0;r=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;s=r-s|0;q=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;r=q-r|0;p=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;q=p-q|0;o=(d[c+7>>0]|0)-(d[e+7>>0]|0)|0;p=o-p|0;n=(d[c+8>>0]|0)-(d[e+8>>0]|0)|0;o=n-o|0;h=(d[c+9>>0]|0)-(d[e+9>>0]|0)|0;n=h-n|0;i=(d[c+10>>0]|0)-(d[e+10>>0]|0)|0;h=i-h|0;j=(d[c+11>>0]|0)-(d[e+11>>0]|0)|0;i=j-i|0;k=(d[c+12>>0]|0)-(d[e+12>>0]|0)|0;j=k-j|0;l=(d[c+13>>0]|0)-(d[e+13>>0]|0)|0;k=l-k|0;b=(d[c+14>>0]|0)-(d[e+14>>0]|0)|0;l=b-l|0;b=(d[c+15>>0]|0)-(d[e+15>>0]|0)-b|0;m=1;b=((w|0)>-1?w:0-w|0)+((v|0)>-1?v:0-v|0)+((u|0)>-1?u:0-u|0)+((t|0)>-1?t:0-t|0)+((s|0)>-1?s:0-s|0)+((r|0)>-1?r:0-r|0)+((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((o|0)>-1?o:0-o|0)+((n|0)>-1?n:0-n|0)+((h|0)>-1?h:0-h|0)+((i|0)>-1?i:0-i|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((b|0)>-1?b:0-b|0)|0;while(1){k=c+f|0;l=e+f|0;if((m|0)>=(g|0))break;h=a[k>>0]|0;i=a[l>>0]|0;w=(d[e>>0]|0)-(d[c>>0]|0)+((h&255)-(i&255))|0;j=1;b=((w|0)>-1?w:0-w|0)+b|0;while(1){if((j|0)==16)break;v=a[k+j>>0]|0;w=a[l+j>>0]|0;t=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;s=(h&255)-(i&255)|0;u=j-f+-1|0;u=(v&255)-(w&255)-(An(t,s,s+t-(d[k+u>>0]|0)+(d[l+u>>0]|0)|0)|0)|0;j=j+1|0;b=((u|0)>-1?u:0-u|0)+b|0;h=v;i=w}m=m+1|0;e=l;c=k}return b|0}function zn(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=a[c>>0]|0;h=a[e>>0]|0;p=(b&255)-(h&255)|0;j=(d[c+1>>0]|0)-(d[e+1>>0]|0)|0;q=j-p|0;k=(d[c+2>>0]|0)-(d[e+2>>0]|0)|0;j=k-j|0;l=(d[c+3>>0]|0)-(d[e+3>>0]|0)|0;k=l-k|0;m=(d[c+4>>0]|0)-(d[e+4>>0]|0)|0;l=m-l|0;n=(d[c+5>>0]|0)-(d[e+5>>0]|0)|0;m=n-m|0;i=(d[c+6>>0]|0)-(d[e+6>>0]|0)|0;n=i-n|0;i=(d[c+7>>0]|0)-(d[e+7>>0]|0)-i|0;o=1;i=((q|0)>-1?q:0-q|0)+((p|0)>-1?p:0-p|0)+((j|0)>-1?j:0-j|0)+((k|0)>-1?k:0-k|0)+((l|0)>-1?l:0-l|0)+((m|0)>-1?m:0-m|0)+((n|0)>-1?n:0-n|0)+((i|0)>-1?i:0-i|0)|0;while(1){k=c+f|0;l=e+f|0;if((o|0)>=(g|0))break;m=a[k>>0]|0;n=a[l>>0]|0;b=(h&255)-(b&255)+((m&255)-(n&255))|0;j=1;b=((b|0)>-1?b:0-b|0)+i|0;h=m;i=n;while(1){if((j|0)==8)break;p=a[k+j>>0]|0;q=a[l+j>>0]|0;s=(d[c+j>>0]|0)-(d[e+j>>0]|0)|0;t=(h&255)-(i&255)|0;r=j-f+-1|0;r=(p&255)-(q&255)-(An(s,t,t+s-(d[k+r>>0]|0)+(d[l+r>>0]|0)|0)|0)|0;j=j+1|0;b=((r|0)>-1?r:0-r|0)+b|0;h=p;i=q}o=o+1|0;i=b;e=l;c=k;b=m;h=n}return i|0}function An(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function Bn(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==8)break;h=c;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;c=c+e|0;b=b+8|0}return}function Cn(a){a=a|0;var b=0;b=0;while(1){if((b|0)==8){b=0;break}Dn(a+(b<<3<<1)|0);b=b+1|0}while(1){if((b|0)==8)break;En(a+(b<<1)|0);b=b+1|0}return}function Dn(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=a+4|0;e=c[p>>2]|0;q=a+8|0;r=a+12|0;l=c[r>>2]|0;s=a+2|0;f=b[s>>1]|0;d=b[a>>1]|0;if(!(c[q>>2]|e|l|f)){s=d<<3&65528|d<<19;c[a>>2]=s;c[p>>2]=s;c[q>>2]=s;c[r>>2]=s}else{o=(d*16383|0)+1024|0;h=e<<16>>16;j=h*21407|0;d=j+o|0;h=h*8867|0;g=h+o|0;h=o-h|0;j=o-j|0;o=a+6|0;e=b[o>>1]|0;m=(e*19266|0)+(f*22725|0)|0;k=(N(e,-4520)|0)+(f*19266|0)|0;i=(N(e,-22725)|0)+(f*12873|0)|0;e=(N(e,-12873)|0)+(f*4520|0)|0;n=q;f=c[n>>2]|0;if((f|0)==0&(c[n+4>>2]|0)==0){n=e;l=m;e=a+10|0;f=a+14|0}else{x=f<<16>>16;v=x*16383|0;w=l<<16>>16;u=w*8867|0;x=N(x,-16383)|0;w=w*21407|0;t=a+10|0;y=b[t>>1]|0;f=a+14|0;l=b[f>>1]|0;n=(y*19266|0)+e+(N(l,-22725)|0)|0;i=(y*4520|0)+i+(l*19266|0)|0;k=(N(y,-22725)|0)+k+(N(l,-12873)|0)|0;l=(y*12873|0)+m+(l*4520|0)|0;j=v+j-u|0;h=x+h+w|0;g=x+g-w|0;d=v+d+u|0;e=t}b[a>>1]=(l+d|0)>>>11;b[f>>1]=(d-l|0)>>>11;b[s>>1]=(k+g|0)>>>11;b[r>>1]=(g-k|0)>>>11;b[p>>1]=(i+h|0)>>>11;b[e>>1]=(h-i|0)>>>11;b[o>>1]=(n+j|0)>>>11;b[q>>1]=(j-n|0)>>>11}return}function En(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=((b[a>>1]|0)*16383|0)+524256|0;s=a+32|0;j=b[s>>1]|0;d=n+(N(j,-8867)|0)|0;r=n+(N(j,-21407)|0)|0;o=a+16|0;c=b[o>>1]|0;p=a+48|0;q=b[p>>1]|0;f=(q*19266|0)+(c*22725|0)|0;e=(N(q,-4520)|0)+(c*19266|0)|0;g=(N(q,-22725)|0)+(c*12873|0)|0;c=(N(q,-12873)|0)+(c*4520|0)|0;q=a+64|0;h=b[q>>1]|0;m=h<<16>>16==0;h=h<<16>>16;i=N(h,-16383)|0;h=m?0:h*16383|0;l=n+(j*21407|0)+h|0;i=m?0:i;j=n+(j*8867|0)+i|0;i=d+i|0;h=r+h|0;r=a+80|0;d=b[r>>1]|0;if(!(d<<16>>16)){m=f;d=g}else{d=d<<16>>16;c=(d*19266|0)+c|0;e=(N(d,-22725)|0)+e|0;m=(d*12873|0)+f|0;d=(d*4520|0)+g|0}n=a+96|0;f=b[n>>1]|0;if(!(f<<16>>16)){k=i;g=l}else{g=f<<16>>16;h=(N(g,-8867)|0)+h|0;k=(g*21407|0)+i|0;j=(N(g,-21407)|0)+j|0;g=(g*8867|0)+l|0}i=a+112|0;f=b[i>>1]|0;if(!(f<<16>>16))f=m;else{l=f<<16>>16;c=(N(l,-22725)|0)+c|0;e=(N(l,-12873)|0)+e|0;f=(l*4520|0)+m|0;d=(l*19266|0)+d|0}b[a>>1]=f+g>>20;b[o>>1]=e+j>>20;b[s>>1]=d+k>>20;b[p>>1]=c+h>>20;b[q>>1]=h-c>>20;b[r>>1]=k-d>>20;b[n>>1]=j-e>>20;b[i>>1]=g-f>>20;return}function Fn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=Hn(a,b,c)|0;if((b|0)<0)ig(a,16,145793,d);l=d;return b|0}function Gn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+27016|0;g=c[i>>2]|0;f=c[a+27008>>2]|0;e=(N(f+1|0,g)|0)+1|0;h=N(f<<4,c[a+27012>>2]<<2|1)|0;b=a+29924|0;c[b>>2]=Kh(e+g|0,17)|0;d=a+29928|0;c[d>>2]=Kh((c[i>>2]|0)+e<<2,17)|0;e=a+29932|0;c[e>>2]=Kh(h+16|0,17)|0;f=Kh(N(g<<2,f)|0,17)|0;a=a+29936|0;c[a>>2]=f;if(((c[b>>2]|0)!=0?(c[d>>2]|0)!=0:0)?!((f|0)==0|(c[e>>2]|0)==0):0)a=0;else{kh(b);kh(d);kh(e);kh(a);a=-12}return a|0}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;e=a+28|0;i=c[(c[e>>2]|0)+20>>2]|0;c[b+8>>2]=a;c[b+4>>2]=a;a:do if(!(c[a+696>>2]&1))e=In(a,c[b>>2]|0,d)|0;else{h=i+300|0;do if((c[h>>2]|0)!=1){if(!(c[(c[a+12>>2]|0)+68>>2]|0)){if(c[a+700>>2]|0)break;if((c[a+400>>2]|0)==12)break}ig(a,16,145821,f);e=-1;break a}while(0);if(c[(c[e>>2]|0)+4>>2]|0){e=Oh(8)|0;c[b+12>>2]=e;if(!e){e=-12;break}g=c[e+4>>2]|0;c[g>>2]=-1;c[g+4>>2]=-1}AX((c[i>>2]|0)+8|0)|0;g=a+700|0;if((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0){f=i+184|0;AX(f|0)|0;c[i+316>>2]=c[b>>2];c[i+320>>2]=d;c[h>>2]=2;e=i+60|0;zX(e|0)|0;while(1){if((c[h>>2]|0)==1)break;uc(e|0,f|0)|0}e=c[i+296>>2]|0;BX(f|0)|0}else e=In(a,c[b>>2]|0,d)|0;if(((c[g>>2]|0)==0?(c[a+400>>2]|0)!=12:0)?(c[(c[a+12>>2]|0)+68>>2]|0)==0:0)Zi(a);if(e|0)Pg(b+12|0);BX((c[i>>2]|0)+8|0)|0}while(0);l=j;return e|0}function In(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=Jn(a,b,d)|0;if((d|0)<0){ig(a,16,145883,e);c[b+72>>2]=0;c[b+68>>2]=0}l=e;return d|0}function Jn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=o+8|0;e=o;j=c[a+592>>2]|0;k=a+8|0;do if(!(c[k>>2]|0)){h=a+92|0;g=a+96|0;f=a+872|0;if((ki(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[f+4>>2]|0,-1,0,a)|0)>=0?(c[a+112>>2]|0)>=0:0){f=b+68|0;e=b+72|0;if((c[f>>2]|0)>=1?(c[e>>2]|0)>=1:0)e=1;else{q=c[h>>2]|0;h=c[a+680>>2]|0;p=0-(0-(c[a+100>>2]|0)>>h)|0;c[f>>2]=(q|0)>(p|0)?q:p;g=c[g>>2]|0;h=0-(0-(c[a+104>>2]|0)>>h)|0;c[e>>2]=(g|0)>(h|0)?g:h;e=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(c[b+8>>2]|0)==0:0)?(c[b+12>>2]|0)==0:0){f=e;n=13;break}ig(a,16,145948,i);e=-22;break}ig(a,16,145904,e);e=-22}else{f=1;n=13}while(0);if((n|0)==13){e=Kn(a,b)|0;if((e|0)>=0){if(j){e=c[j+20>>2]|0;if(!e)n=18;else e=Kd[e&15](a,b)|0}else{c[a+768>>2]=c[a+112>>2];n=18}if((n|0)==18){e=Ld[c[a+400>>2]&15](a,b,d)|0;if((e|0)>=0){Ln(a,b);e=Mn(b)|0}}if((c[k>>2]|f|0)==0?(c[(c[a+12>>2]|0)+116>>2]&16|0)==0:0){c[b+68>>2]=c[a+92>>2];c[b+72>>2]=c[a+96>>2]}if((e|0)<0)oh(b)}}l=o;return e|0}function Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+24|0;k=n+16|0;j=n+8|0;i=n;g=c[(c[a+28>>2]|0)+40>>2]|0;do if(g){f=g+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;d=b+104|0;c[d>>2]=e;c[d+4>>2]=f;d=b+112|0;c[d>>2]=e;c[d+4>>2]=f;d=g+56|0;f=c[d+4>>2]|0;e=b+328|0;c[e>>2]=c[d>>2];c[e+4>>2]=f;e=g+48|0;f=c[e+4>>2]|0;d=b+336|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[b+356>>2]=c[g+28>>2];d=0;while(1){if(d>>>0>=8){e=9;break}e=Ei(g,c[105024+(d<<3)>>2]|0,h)|0;if(e|0){f=ni(b,c[105024+(d<<3)+4>>2]|0,c[h>>2]|0)|0;if(!f){e=7;break}wX(c[f+4>>2]|0,e|0,c[h>>2]|0)|0}d=d+1|0}if((e|0)==7){d=-12;break}else if((e|0)==9){On(g,b);f=b+296|0;d=c[f>>2]|0;c[f>>2]=(c[g+36>>2]&4|0)==0?d&-5:d|4;e=10;break}}else e=10;while(0);a:do if((e|0)==10){f=a+584|0;g=c[f+4>>2]|0;d=b+224|0;c[d>>2]=c[f>>2];c[d+4>>2]=g;d=b+304|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+316>>2];d=b+308|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+320>>2];d=b+312|0;if((c[d>>2]|0)==2)c[d>>2]=c[a+324>>2];d=b+300|0;if(!(c[d>>2]|0))c[d>>2]=c[a+328>>2];d=b+316|0;if(!(c[d>>2]|0))c[d>>2]=c[a+332>>2];switch(c[(c[a+12>>2]|0)+8>>2]|0){case 0:{c[b+80>>2]=c[a+112>>2];d=b+92|0;if(!(c[d>>2]|0)){g=a+188|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}e=c[b+68>>2]|0;if(!e){d=0;break a}f=c[b+72>>2]|0;if(!f){d=0;break a};c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];if((Pn(e,f,h)|0)>=0){d=0;break a}k=b+96|0;j=c[k>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;ig(a,24,172480,i);c[b+92>>2]=0;c[k>>2]=1;d=0;break a}case 1:break;default:{d=0;break a}}d=b+232|0;if(!(c[d>>2]|0))c[d>>2]=c[a+344>>2];d=b+80|0;if((c[d>>2]|0)<0)c[d>>2]=c[a+352>>2];f=b+240|0;i=f;do if((c[i>>2]|0)==0&(c[i+4>>2]|0)==0){g=a+376|0;e=g;d=c[e>>2]|0;e=c[e+4>>2]|0;if((d|0)==0&(e|0)==0){d=c[a+348>>2]|0;if(d>>>0<=64)break;c[k>>2]=d;ig(a,16,146112,k);d=-38;break a}d=ii(d,e)|0;if((d|0)==(c[a+348>>2]|0)){j=g;k=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2];c[a+4>>2]=k;break}else{ig(a,16,146075,j);d=-22;break a}}else d=c[a+348>>2]|0;while(0);c[b+352>>2]=d;d=0}while(0);l=n;return d|0}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=j+16|0;g=j;a:do if(!(c[a+8>>2]|0)){d=b+80|0;e=bi(c[d>>2]|0)|0;d=Dh(c[d>>2]|0)|0;if(!d)f=0;else f=c[d+8>>2]|0;e=(e|0)!=1|(f&2|0)==0?e:2;d=0;while(1){if((d|0)>=(e|0))break;if(!(c[b+(d<<2)>>2]|0)){h=7;break}else d=d+1|0}if((h|0)==7){c[g>>2]=145991;c[g+4>>2]=124842;c[g+8>>2]=1782;ig(0,0,159900,g);Tb()}d=(f&64|0)==0|(e|0)!=1?e:2;e=(d|0)>0;while(1){if(!(e&d>>>0<8))break a;f=b+(d<<2)|0;if(c[f>>2]|0)ig(a,16,146006,i);c[f>>2]=0;d=d+1|0}}while(0);l=j;return}function Mn(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;b=a+400|0;Pg(b);a=$g(20)|0;c[d>>2]=a;do if(a){a=Ah(a,20,17,0,1)|0;if(!a){eg(d);a=-12;break}else{c[b>>2]=a;a=0;break}}else a=-12;while(0);l=e;return a|0}function Nn(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=b;a=c[b+8>>2]|0;if(a|0)Qd[a&63](c[b+4>>2]|0);a=c[b+16>>2]|0;if(a|0)Qd[a&63](c[b+12>>2]|0);eg(d);l=e;return}function On(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;a=Ei(a,13,e)|0;Rn(a,c[e>>2]|0,b+344|0)|0;l=d;return}function Pn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[d+4>>2]|0;if((e|0)>=1?(f=c[d>>2]|0,(f|0)>=0):0){d=(f|0)<(e|0);if((f|0)==0|(f|0)==(e|0))d=0;else{g=d?e:f;f=d?f:e;d=Qn(d?a:b,0,f,((f|0)<0)<<31>>31,g,((g|0)<0)<<31>>31,0)|0;f=y;d=(f|0)>0|(f|0)==0&d>>>0>0?0:-22}}else d=-22;return d|0} +function Qn(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if(!((d|0)<0|((f|0)<0|(f|0)==0&e>>>0<1))?(j=g&-8193,!(j>>>0>5|(j|0)==4)):0){if(g&8192){j=hX(a|0,b|0,1,-2147483648)|0;i=y;if(i>>>0<0|(i|0)==0&j>>>0<2)break;g=g+-8192|0}if((b|0)<0){j=(b|0)>-2147483648|(b|0)==-2147483648&a>>>0>1;j=iX(0,0,(j?a:1)|0,(j?b:-2147483648)|0)|0;f=Qn(j,y,c,d,e,f,g>>>1&1^g)|0;f=iX(0,0,f|0,y|0)|0;return f|0}if((g|0)==5){g=lX(e|0,f|0,2,0)|0;h=y}else{h=(g&1|0)==0;g=hX(e|0,f|0,-1,-1)|0;g=h?0:g;h=h?0:y}if(!(((d|0)<0|(d|0)==0&c>>>0<2147483648)&((f|0)<0|(f|0)==0&e>>>0<2147483648))){l=qX(c|0,d|0,32)|0;k=y;j=nX(l|0,k|0,a|0,0)|0;d=y;i=nX(c|0,0,b|0,0)|0;i=hX(j|0,d|0,i|0,y|0)|0;d=y;c=nX(c|0,0,a|0,0)|0;c=hX(0,i|0,c|0,y|0)|0;j=y;a=nX(l|0,k|0,b|0,0)|0;a=hX(d|0,0,a|0,y|0)|0;a=hX(a|0,y|0,(j>>>0>>0|(j|0)==(i|0)&c>>>0<0)&1|0,0)|0;b=y;j=hX(g|0,h|0,c|0,j|0)|0;c=y;b=hX(a|0,b|0,(c>>>0>>0|(c|0)==(h|0)&j>>>0>>0)&1|0,0)|0;a=63;g=y;h=d;while(1){if((a|0)<=-1)break;d=rX(j|0,c|0,a|0)|0;n=sX(b|0,g|0,1)|0;m=y;n=d&1|n;d=sX(i|0,h|0,1)|0;l=y;k=m>>>0>>0|(m|0)==(f|0)&n>>>0>>0;m=iX(n|0,m|0,(k?0:e)|0,(k?0:f)|0)|0;a=a+-1|0;b=m;g=y;i=d|(k^1)&1;h=l}a=(h|0)<0;b=a?-2147483648:h;a=a?0:i;break}if((b|0)<0|(b|0)==0&a>>>0<2147483648){a=nX(c|0,d|0,a|0,b|0)|0;a=hX(g|0,h|0,a|0,y|0)|0;a=lX(a|0,y|0,e|0,f|0)|0;b=y;break}i=lX(a|0,b|0,e|0,f|0)|0;j=y;a=oX(a|0,b|0,e|0,f|0)|0;a=nX(a|0,y|0,c|0,d|0)|0;a=hX(a|0,y|0,g|0,h|0)|0;a=lX(a|0,y|0,e|0,f|0)|0;b=y;if(((c|0)!=0|(d|0)!=0)&((j|0)>0|(j|0)==0&i>>>0>2147483646)?(n=iX(-1,2147483647,a|0,b|0)|0,n=lX(n|0,y|0,c|0,d|0)|0,m=y,(j|0)>(m|0)|(j|0)==(m|0)&i>>>0>n>>>0):0){b=-2147483648;a=0;break}n=nX(i|0,j|0,c|0,d|0)|0;a=hX(a|0,b|0,n|0,y|0)|0;b=y}else{b=-2147483648;a=0}while(0);y=b;return a|0}function Rn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=b+c|0;a:do if((c|0)!=0&((b|0)!=0&(d|0)!=0))if(!(a[f+-1>>0]|0)){e=b;b=0;while(1){if(e>>>0>=f>>>0)break a;c=e+(RU(e)|0)+1|0;if(c>>>0>=f>>>0){b=-1094995529;break a}if(!(a[e>>0]|0)){b=-1094995529;break a}b=qi(d,e,c,0)|0;if((b|0)<0)break a;e=c+(RU(c)|0)+1|0}}else b=-1094995529;else b=0;while(0);return b|0}function Sn(a){a=a|0;switch(a|0){case 12:{a=0;break}case 13:{a=4;break}case 14:{a=5;break}default:{}}return a|0}function Tn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;h=j+8|0;d=c[a+28216>>2]|0;e=c[d+1184>>2]|0;a:do switch(e|0){case 9:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?75:68;g=23;break a}else{e=h+4|0;d=(d|0)==2?72:62;g=23;break a}}case 10:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?77:70;g=23;break a}else{e=h+4|0;d=(d|0)==2?66:64;g=23;break a}}case 12:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?137:133;g=23;break a}else{e=h+4|0;d=(d|0)==2?129:125;g=23;break a}}case 14:{d=c[d+12>>2]|0;if((d|0)==3){e=h+4|0;d=(c[(c[a+4>>2]|0)+324>>2]|0)==0?139:135;g=23;break a}else{e=h+4|0;d=(d|0)==2?131:127;g=23;break a}}case 8:{e=c[d+12>>2]|0;if((e|0)==3){d=c[a+4>>2]|0;if(!(c[d+324>>2]|0)){e=h+4|0;d=73;g=23;break a}else{e=h+4|0;d=(c[d+328>>2]|0)==2?14:5;g=23;break a}}d=a+4|0;f=c[d>>2]|0;if((e|0)==2){e=h+4|0;d=(c[f+328>>2]|0)==2?13:4;g=23;break a}e=c[(c[f+12>>2]|0)+24>>2]|0;if(!e){e=h+4|0;d=(c[f+328>>2]|0)==2?12:0;g=23}else{i=e;e=h;g=24}break}default:{d=c[a+4>>2]|0;c[f>>2]=e;ig(d,16,146289,f);d=-1094995529}}while(0);if((g|0)==23){c[h>>2]=d;i=h;d=a+4|0;g=24}b:do if((g|0)==24){c[e>>2]=-1;g=c[d>>2]|0;h=g+112|0;f=(b|0)!=0;e=0;while(1){d=c[i+(e<<2)>>2]|0;if((d|0)==-1)break;if(f|(d|0)!=(c[h>>2]|0))e=e+1|0;else break b}d=aN(g,i)|0}while(0);l=j;return d|0}function Un(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a>>2]|0;g=c[b+4>>2]|0;h=nX(g|0,((g|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;d=y;e=c[b>>2]|0;b=c[a+4>>2]|0;a=nX(b|0,((b|0)<0)<<31>>31|0,e|0,((e|0)<0)<<31>>31|0)|0;a=iX(h|0,d|0,a|0,y|0)|0;d=y;if((a|0)==0&(d|0)==0)if((g|0)==0|(b|0)==0)if(!f)b=-2147483648;else return ((e|0)==0?-2147483648:(f>>31)-(e>>31)|0)|0;else b=0;else{b=b^g;b=qX(a^b|0,d^((b|0)<0)<<31>>31|0,63)|0;b=b|1}return b|0}function Vn(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;switch(b|0){case 66:{d=512;e=3;break}case 244:case 122:case 110:{d=2048;e=3;break}default:{}}if((e|0)==3)b=c[a+1196>>2]<<8&d|b;return b|0}function Wn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))W(32);i=q+16|0;h=q;f=c[a+28216>>2]|0;b=c[f+84>>2]|0;d=c[f+80>>2]|0;e=c[f+88>>2]|0;f=c[f+92>>2]|0;o=c[a+25668>>2]|0;r=d+b|0;k=o-r|0;p=c[a+25672>>2]|0;g=f+e|0;j=p-g|0;if(o>>>0<=r>>>0){c[h>>2]=146847;c[h+4>>2]=133704;c[h+8>>2]=878;ig(0,0,159900,h);Tb()}if(p>>>0<=g>>>0){c[i>>2]=146901;c[i+4>>2]=133704;c[i+8>>2]=879;ig(0,0,159900,i);Tb()}g=a+29664|0;i=c[g>>2]|0;h=a+29668|0;if((((i|0)>0?(n=c[h>>2]|0,(e|d|0)==0&(n|0)>0):0)?(i+15^k+15)>>>0<16:0)?!((n|0)>(j|0)|((i|0)>(k|0)|(n+15^j+15)>>>0>15)):0){h=n;g=i;f=p-n|0;e=0;d=0;b=o-i|0}else{c[g>>2]=0;c[h>>2]=0;h=j;g=k}r=c[a+4>>2]|0;c[r+100>>2]=o;c[r+104>>2]=p;c[r+92>>2]=g;c[r+96>>2]=h;c[a+25720>>2]=b;c[a+25716>>2]=d;c[a+25724>>2]=e;c[a+25728>>2]=f;l=q;return}function Xn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=p+32|0;k=p+24|0;g=p+16|0;f=p+8|0;e=c[a+28216>>2]|0;n=a+4|0;i=c[n>>2]|0;h=e+100|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];Yn(i,j)|0;Zn(c[(c[n>>2]|0)+112>>2]|0,a+25676|0,a+25680|0)|0;if(c[e+132>>2]|0){j=sX(c[e+140>>2]|0,0,(c[a+25704>>2]|0)>>>0<44|0)|0;i=c[n>>2]|0;_n(i+764|0,i+760|0,N(c[i+84>>2]|0,c[e+136>>2]|0)|0,0,j,y,1073741824,0)|0}jh(a);c[a+26384>>2]=0;c[a+29564>>2]=1;$n(a);b=ao(a)|0;a:do if((b|0)<0){ig(c[n>>2]|0,16,146262,p);o=15}else{b=e+1184|0;d=c[b>>2]|0;b:do if((d+-8|0)>>>0<=6){switch(d|0){case 11:case 13:break b;default:{}}c[(c[n>>2]|0)+676>>2]=d;c[a+29596>>2]=d;j=e+12|0;i=c[j>>2]|0;c[a+29592>>2]=i;c[a+25664>>2]=(d|0)>8&1;c[a+27048>>2]=i;c[a+27044>>2]=d;bo(a+16|0,d,i);co(a+152|0,c[e+1188>>2]|0);eo(a+184|0,c[b>>2]|0);fo(a+25736|0,c[(c[n>>2]|0)+16>>2]|0,c[b>>2]|0,c[j>>2]|0);go(a+8|0,c[b>>2]|0);if(!(c[(c[n>>2]|0)+696>>2]&2)){b=ho(a,c[a+25628>>2]|0)|0;if((b|0)>=0){b=0;d=1;break a}ig(c[n>>2]|0,16,146315,g);o=15;break a}e=a+25632|0;f=a+25628|0;g=a+25732|0;h=a+27016|0;i=a+26400|0;j=a+26404|0;d=0;while(1){if((d|0)>=(c[e>>2]|0)){b=0;d=1;break a}q=c[f>>2]|0;b=q+(d*34768|0)|0;c[b>>2]=a;r=N(c[h>>2]|0,d<<4)|0;c[q+(d*34768|0)+21704>>2]=(c[g>>2]|0)+r;c[q+(d*34768|0)+32848>>2]=(c[i>>2]|0)+(r<<1);c[q+(d*34768|0)+32852>>2]=(c[j>>2]|0)+(r<<1);b=ho(a,b)|0;if((b|0)<0)break;else d=d+1|0}ig(c[n>>2]|0,16,146315,k);o=15;break a}while(0);b=c[n>>2]|0;c[f>>2]=d;ig(b,16,146289,f);b=-1094995529;o=15}while(0);if((o|0)==15){jh(a);d=0}c[a+25692>>2]=d;l=p;return b|0}function Yn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=f+8|0;e=f;h=c[a+92>>2]|0;g=c[a+96>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];d=Pn(h,g,d)|0;if((d|0)<0){h=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=h;ig(a,24,146818,e);c[a+188>>2]=0;c[a+192>>2]=1}else{g=b;h=c[g+4>>2]|0;d=a+188|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;d=0}l=f;return d|0}function Zn(a,b,e){a=a|0;b=b|0;e=e|0;a=Dh(a)|0;if(!a)a=-38;else{c[b>>2]=d[a+5>>0];c[e>>2]=d[a+6>>0];a=0}return a|0}function _n(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0;x=g^e;k=(e|0)>-1|(e|0)==-1&d>>>0>4294967295;j=iX(0,0,d|0,e|0)|0;j=k?d:j;k=k?e:y;m=(g|0)>-1|(g|0)==-1&f>>>0>4294967295;l=iX(0,0,f|0,g|0)|0;l=m?f:l;m=m?g:y;n=$M(j,k,l,m)|0;o=y;if(!((n|0)==0&(o|0)==0)){d=lX(j|0,k|0,n|0,o|0)|0;e=y;f=lX(l|0,m|0,n|0,o|0)|0;g=y}w=(e|0)>(i|0)|(e|0)==(i|0)&d>>>0>h>>>0;v=(g|0)>(i|0)|(g|0)==(i|0)&f>>>0>h>>>0;j=v|w;k=j?1:d;j=j?0:f;a:do if(!((f|0)==0&(g|0)==0|(v|w)^1)){w=0;v=1;while(1){m=lX(d|0,e|0,f|0,g|0)|0;l=y;n=nX(m|0,l|0,f|0,g|0)|0;n=iX(d|0,e|0,n|0,y|0)|0;o=y;r=((k|0)<0)<<31>>31;p=nX(m|0,l|0,k|0,r|0)|0;s=((w|0)<0)<<31>>31;p=hX(p|0,y|0,w|0,s|0)|0;A=y;t=((j|0)<0)<<31>>31;q=nX(m|0,l|0,j|0,t|0)|0;u=((v|0)<0)<<31>>31;q=hX(q|0,y|0,v|0,u|0)|0;z=y;if((A|0)>(i|0)|(A|0)==(i|0)&p>>>0>h>>>0|((z|0)>(i|0)|(z|0)==(i|0)&q>>>0>h>>>0))break;if((n|0)==0&(o|0)==0){k=p;j=q;f=0;g=0;break a}else{e=g;d=f;v=j;w=k;k=p;j=q;f=n;g=o}}if(k){m=iX(h|0,i|0,w|0,s|0)|0;m=lX(m|0,y|0,k|0,r|0)|0;l=y}if(j){i=iX(h|0,i|0,v|0,u|0)|0;i=lX(i|0,y|0,j|0,t|0)|0;A=y;z=l>>>0>A>>>0|(l|0)==(A|0)&m>>>0>i>>>0;m=z?i:m;l=z?A:l}z=sX(j|0,t|0,1)|0;z=nX(z|0,y|0,m|0,l|0)|0;z=hX(z|0,y|0,v|0,u|0)|0;z=nX(z|0,y|0,f|0,g|0)|0;h=y;A=nX(d|0,e|0,j|0,t|0)|0;i=y;if(h>>>0>i>>>0|(h|0)==(i|0)&z>>>0>A>>>0){j=nX(m|0,l|0,j|0,t|0)|0;j=hX(j|0,y|0,v|0,u|0)|0;k=nX(m|0,l|0,k|0,r|0)|0;k=hX(k|0,y|0,w|0,s|0)|0}}else{f=0;g=0}while(0);c[a>>2]=(x|0)<0?0-k|0:k;c[b>>2]=j;return (f|0)==0&(g|0)==0&1|0}function $n(b){b=b|0;var e=0,f=0,g=0;e=0;while(1){if((e|0)==16){e=0;break}g=d[131796+e>>0]|0;a[b+26428+e>>0]=g<<2&12|g>>>2;g=d[146542+e>>0]|0;a[b+26572+e>>0]=g<<2&12|g>>>2;e=e+1|0}while(1){if((e|0)==64)break;g=d[131813+e>>0]|0;a[b+26444+e>>0]=g<<3&56|g>>>3;g=d[146559+e>>0]|0;a[b+26508+e>>0]=g<<3&56|g>>>3;g=d[146624+e>>0]|0;a[b+26588+e>>0]=g<<3&56|g>>>3;g=d[146689+e>>0]|0;a[b+26652+e>>0]=g<<3&56|g>>>3;e=e+1|0}e=b+26716|0;if(!(c[(c[b+28216>>2]|0)+16>>2]|0)){f=b+26428|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26732|0;f=b+26444|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26796|0;f=b+26508|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26860|0;f=b+26572|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=b+26876|0;f=b+26588|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=b+26940|0;f=b+26652|0;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0))}else{f=131796;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26732|0;f=131813;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26796|0;f=146559;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26860|0;f=146542;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26876|0;f=146624;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=b+26940|0;f=146689;g=e+64|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0))}return}function ao(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+96|0;if((l|0)>=(m|0))W(96);t=x+80|0;s=x+72|0;r=x+64|0;q=x+56|0;n=x+48|0;i=x+40|0;g=x+32|0;f=x+24|0;e=x+16|0;d=x+8|0;u=a+27016|0;h=c[u>>2]|0;v=a+27008|0;p=N((c[v>>2]|0)+1|0,h)|0;b=c[a+25632>>2]|0;h=N((b|0)>1?b:1,h<<1)|0;b=xh(h,8)|0;c[a+25732>>2]=b;a:do if(!b){ig(c[a+4>>2]|0,16,146339,x);w=29}else{j=a+25628|0;c[(c[j>>2]|0)+21704>>2]=b;k=$g(p*48|0)|0;c[a+25972>>2]=k;o=(p|0)==0;if(!(o|(k|0)!=0)){ig(c[a+4>>2]|0,16,146339,d);w=29;break}d=$g((c[u>>2]|0)+p<<1)|0;k=a+28220|0;c[k>>2]=d;if((d|0)==0?(c[u>>2]|0)+p&2147483647|0:0){ig(c[a+4>>2]|0,16,146339,e);w=29;break}d=p<<1;e=$g(d)|0;c[a+26392>>2]=e;if(!((d|0)==0|(e|0)!=0)){ig(c[a+4>>2]|0,16,146339,f);w=29;break}f=$g(p)|0;c[a+26396>>2]=f;if(!(o|(f|0)!=0)){ig(c[a+4>>2]|0,16,146339,g);w=29;break}g=xh(h,16)|0;d=a+26400|0;c[d>>2]=g;if(!g){ig(c[a+4>>2]|0,16,146339,i);w=29;break}i=xh(h,16)|0;b=a+26404|0;c[b>>2]=i;if(!i){ig(c[a+4>>2]|0,16,146339,n);w=29;break}c[(c[j>>2]|0)+32848>>2]=c[d>>2];c[(c[j>>2]|0)+32852>>2]=c[b>>2];b=p<<2;n=$g(b)|0;c[a+26408>>2]=n;d=(b|0)==0;if(!(d|(n|0)!=0)){ig(c[a+4>>2]|0,16,146339,q);w=29;break}q=$g(p)|0;c[a+26388>>2]=q;if(!(o|(q|0)!=0)){ig(c[a+4>>2]|0,16,146339,r);w=29;break}yX(c[k>>2]|0,-1,(c[u>>2]|0)+p<<1|0)|0;c[a+26372>>2]=(c[k>>2]|0)+(c[u>>2]<<1<<1)+2;r=$g(b)|0;h=a+26360|0;c[h>>2]=r;if(!(d|(r|0)!=0)){ig(c[a+4>>2]|0,16,146339,s);w=29;break}g=$g(b)|0;c[a+26364>>2]=g;if(!(d|(g|0)!=0)){ig(c[a+4>>2]|0,16,146339,t);w=29;break}f=a+27012|0;e=a+26368|0;d=0;while(1){if((d|0)<(c[v>>2]|0))b=0;else{b=0;break a}while(1){if((b|0)>=(c[f>>2]|0))break;a=(N(c[u>>2]|0,d)|0)+b|0;t=(N(c[e>>2]|0,d)|0)+b<<2;c[(c[h>>2]|0)+(a<<2)>>2]=t;c[g+(a<<2)>>2]=((a|0)%(c[u>>2]<<1|0)|0)<<3;b=b+1|0}d=d+1|0}}while(0);if((w|0)==29){jh(a);b=-12}l=x;return b|0}function bo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;h=(b+-9|0)>>>0<8;c[a+128>>2]=h?9:8;c[a+124>>2]=h?11:10;a:do switch(b|0){case 9:{c[a+84>>2]=12;c[a+88>>2]=13;c[a+92>>2]=14;c[a+96>>2]=15;c[a+100>>2]=4;c[a+104>>2]=5;e=(d|0)<2;c[a+108>>2]=e?7:6;c[a+112>>2]=8;c[a+116>>2]=16;c[a+120>>2]=e?19:18;c[a>>2]=5;c[a+4>>2]=6;c[a+8>>2]=7;c[a+12>>2]=8;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=3;c[a+28>>2]=4;c[a+32>>2]=9;c[a+36>>2]=10;c[a+40>>2]=11;c[a+44>>2]=7;c[a+48>>2]=8;c[a+52>>2]=9;c[a+56>>2]=12;c[a+60>>2]=e?14:13;c[a+64>>2]=e?16:15;c[a+68>>2]=10;c[a+72>>2]=e?12:11;e=e?14:13;break}case 10:{c[a+84>>2]=17;c[a+88>>2]=18;c[a+92>>2]=19;c[a+96>>2]=20;c[a+100>>2]=17;c[a+104>>2]=18;e=(d|0)<2;c[a+108>>2]=e?20:19;c[a+112>>2]=21;c[a+116>>2]=21;c[a+120>>2]=e?21:20;c[a>>2]=9;c[a+4>>2]=10;c[a+8>>2]=11;c[a+12>>2]=12;c[a+16>>2]=5;c[a+20>>2]=6;c[a+24>>2]=7;c[a+28>>2]=8;c[a+32>>2]=22;c[a+36>>2]=23;c[a+40>>2]=24;c[a+44>>2]=15;c[a+48>>2]=16;c[a+52>>2]=17;c[a+56>>2]=25;c[a+60>>2]=e?27:26;c[a+64>>2]=e?29:28;c[a+68>>2]=18;c[a+72>>2]=e?20:19;e=e?22:21;break}case 12:{c[a+84>>2]=22;c[a+88>>2]=23;c[a+92>>2]=24;c[a+96>>2]=25;c[a+100>>2]=30;c[a+104>>2]=31;e=(d|0)<2;c[a+108>>2]=e?33:32;c[a+112>>2]=34;c[a+116>>2]=26;c[a+120>>2]=e?23:22;c[a>>2]=13;c[a+4>>2]=14;c[a+8>>2]=15;c[a+12>>2]=16;c[a+16>>2]=9;c[a+20>>2]=10;c[a+24>>2]=11;c[a+28>>2]=12;c[a+32>>2]=35;c[a+36>>2]=36;c[a+40>>2]=37;c[a+44>>2]=23;c[a+48>>2]=24;c[a+52>>2]=25;c[a+56>>2]=38;c[a+60>>2]=e?40:39;c[a+64>>2]=e?42:41;c[a+68>>2]=26;c[a+72>>2]=e?28:27;e=e?30:29;break}case 14:{c[a+84>>2]=27;c[a+88>>2]=28;c[a+92>>2]=29;c[a+96>>2]=30;c[a+100>>2]=43;c[a+104>>2]=44;e=(d|0)<2;c[a+108>>2]=e?46:45;c[a+112>>2]=47;c[a+116>>2]=31;c[a+120>>2]=e?25:24;c[a>>2]=17;c[a+4>>2]=18;c[a+8>>2]=19;c[a+12>>2]=20;c[a+16>>2]=13;c[a+20>>2]=14;c[a+24>>2]=15;c[a+28>>2]=16;c[a+32>>2]=48;c[a+36>>2]=49;c[a+40>>2]=50;c[a+44>>2]=31;c[a+48>>2]=32;c[a+52>>2]=33;c[a+56>>2]=51;c[a+60>>2]=e?53:52;c[a+64>>2]=e?55:54;c[a+68>>2]=34;c[a+72>>2]=e?36:35;e=e?38:37;break}default:if((b|0)<9){c[a+84>>2]=32;c[a+88>>2]=33;c[a+92>>2]=34;c[a+96>>2]=35;c[a+100>>2]=56;c[a+104>>2]=57;e=(d|0)<2;c[a+108>>2]=e?59:58;c[a+112>>2]=60;c[a+116>>2]=36;c[a+120>>2]=e?27:26;c[a>>2]=21;c[a+4>>2]=22;c[a+8>>2]=23;c[a+12>>2]=24;c[a+16>>2]=17;c[a+20>>2]=18;c[a+24>>2]=19;c[a+28>>2]=20;c[a+32>>2]=61;c[a+36>>2]=62;c[a+40>>2]=63;c[a+44>>2]=39;c[a+48>>2]=40;c[a+52>>2]=41;c[a+56>>2]=64;c[a+60>>2]=e?66:65;c[a+64>>2]=e?68:67;c[a+68>>2]=42;c[a+72>>2]=e?44:43;e=e?46:45;break a}else{c[f>>2]=146451;c[f+4>>2]=146464;c[f+8>>2]=150;ig(0,0,159900,f);Tb()}}while(0);c[a+76>>2]=e;c[a+80>>2]=0;c[a+132>>2]=9;l=g;return}function co(a,b){a=a|0;b=b|0;b=(b+-9|0)>>>0<8;c[a>>2]=b?26:25;c[a+4>>2]=b?28:27;c[a+8>>2]=b?30:29;c[a+12>>2]=b?32:31;c[a+16>>2]=b?34:33;c[a+20>>2]=b?36:35;c[a+24>>2]=b?38:37;c[a+28>>2]=b?40:39;return}function eo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;switch(b|0){case 9:{b=101;d=105;e=109;f=113;g=102;h=106;i=110;j=114;k=103;l=107;m=111;n=115;o=104;p=108;q=112;r=116;s=133;t=137;u=141;v=145;w=134;x=138;y=142;z=146;A=135;B=139;C=143;D=147;E=136;F=140;G=144;H=148;I=117;J=121;K=125;L=129;M=118;N=122;O=126;P=130;Q=119;R=123;S=127;T=131;U=120;V=124;W=128;X=132;Y=37;Z=41;_=45;$=49;aa=38;ba=42;ca=46;da=50;ea=39;fa=43;ga=47;ha=51;ia=40;ja=44;ka=48;la=52;ma=85;na=89;oa=93;pa=97;qa=86;ra=90;sa=94;ta=98;ua=87;va=91;wa=95;xa=99;ya=88;za=92;Aa=96;Ba=100;Ca=69;Da=73;Ea=77;Fa=81;Ga=70;Ha=74;Ia=78;Ja=82;Ka=71;La=75;Ma=79;Na=83;Oa=72;Pa=76;Qa=80;Ra=84;Sa=53;Ta=57;Ua=61;Va=65;Wa=54;Xa=58;Ya=62;Za=66;_a=55;$a=59;ab=63;bb=67;cb=56;db=60;eb=64;fb=68;break}case 10:{b=325;d=329;e=333;f=337;g=326;h=330;i=334;j=338;k=327;l=331;m=335;n=339;o=328;p=332;q=336;r=340;s=357;t=361;u=365;v=369;w=358;x=362;y=366;z=370;A=359;B=363;C=367;D=371;E=360;F=364;G=368;H=372;I=341;J=345;K=349;L=353;M=342;N=346;O=350;P=354;Q=343;R=347;S=351;T=355;U=344;V=348;W=352;X=356;Y=261;Z=265;_=269;$=273;aa=262;ba=266;ca=270;da=274;ea=263;fa=267;ga=271;ha=275;ia=264;ja=268;ka=272;la=276;ma=309;na=313;oa=317;pa=321;qa=310;ra=314;sa=318;ta=322;ua=311;va=315;wa=319;xa=323;ya=312;za=316;Aa=320;Ba=324;Ca=293;Da=297;Ea=301;Fa=305;Ga=294;Ha=298;Ia=302;Ja=306;Ka=295;La=299;Ma=303;Na=307;Oa=296;Pa=300;Qa=304;Ra=308;Sa=277;Ta=281;Ua=285;Va=289;Wa=278;Xa=282;Ya=286;Za=290;_a=279;$a=283;ab=287;bb=291;cb=280;db=284;eb=288;fb=292;break}case 12:{b=437;d=441;e=445;f=449;g=438;h=442;i=446;j=450;k=439;l=443;m=447;n=451;o=440;p=444;q=448;r=452;s=469;t=473;u=477;v=481;w=470;x=474;y=478;z=482;A=471;B=475;C=479;D=483;E=472;F=476;G=480;H=484;I=453;J=457;K=461;L=465;M=454;N=458;O=462;P=466;Q=455;R=459;S=463;T=467;U=456;V=460;W=464;X=468;Y=373;Z=377;_=381;$=385;aa=374;ba=378;ca=382;da=386;ea=375;fa=379;ga=383;ha=387;ia=376;ja=380;ka=384;la=388;ma=421;na=425;oa=429;pa=433;qa=422;ra=426;sa=430;ta=434;ua=423;va=427;wa=431;xa=435;ya=424;za=428;Aa=432;Ba=436;Ca=405;Da=409;Ea=413;Fa=417;Ga=406;Ha=410;Ia=414;Ja=418;Ka=407;La=411;Ma=415;Na=419;Oa=408;Pa=412;Qa=416;Ra=420;Sa=389;Ta=393;Ua=397;Va=401;Wa=390;Xa=394;Ya=398;Za=402;_a=391;$a=395;ab=399;bb=403;cb=392;db=396;eb=400;fb=404;break}case 14:{b=549;d=553;e=557;f=561;g=550;h=554;i=558;j=562;k=551;l=555;m=559;n=563;o=552;p=556;q=560;r=564;s=581;t=585;u=589;v=593;w=582;x=586;y=590;z=594;A=583;B=587;C=591;D=595;E=584;F=588;G=592;H=596;I=565;J=569;K=573;L=577;M=566;N=570;O=574;P=578;Q=567;R=571;S=575;T=579;U=568;V=572;W=576;X=580;Y=485;Z=489;_=493;$=497;aa=486;ba=490;ca=494;da=498;ea=487;fa=491;ga=495;ha=499;ia=488;ja=492;ka=496;la=500;ma=533;na=537;oa=541;pa=545;qa=534;ra=538;sa=542;ta=546;ua=535;va=539;wa=543;xa=547;ya=536;za=540;Aa=544;Ba=548;Ca=517;Da=521;Ea=525;Fa=529;Ga=518;Ha=522;Ia=526;Ja=530;Ka=519;La=523;Ma=527;Na=531;Oa=520;Pa=524;Qa=528;Ra=532;Sa=501;Ta=505;Ua=509;Va=513;Wa=502;Xa=506;Ya=510;Za=514;_a=503;$a=507;ab=511;bb=515;cb=504;db=508;eb=512;fb=516;break}default:{b=213;d=217;e=221;f=225;g=214;h=218;i=222;j=226;k=215;l=219;m=223;n=227;o=216;p=220;q=224;r=228;s=245;t=249;u=253;v=257;w=246;x=250;y=254;z=258;A=247;B=251;C=255;D=259;E=248;F=252;G=256;H=260;I=229;J=233;K=237;L=241;M=230;N=234;O=238;P=242;Q=231;R=235;S=239;T=243;U=232;V=236;W=240;X=244;Y=149;Z=153;_=157;$=161;aa=150;ba=154;ca=158;da=162;ea=151;fa=155;ga=159;ha=163;ia=152;ja=156;ka=160;la=164;ma=197;na=201;oa=205;pa=209;qa=198;ra=202;sa=206;ta=210;ua=199;va=203;wa=207;xa=211;ya=200;za=204;Aa=208;Ba=212;Ca=181;Da=185;Ea=189;Fa=193;Ga=182;Ha=186;Ia=190;Ja=194;Ka=183;La=187;Ma=191;Na=195;Oa=184;Pa=188;Qa=192;Ra=196;Sa=165;Ta=169;Ua=173;Va=177;Wa=166;Xa=170;Ya=174;Za=178;_a=167;$a=171;ab=175;bb=179;cb=168;db=172;eb=176;fb=180}}c[a>>2]=Y;c[a+4>>2]=aa;c[a+8>>2]=ea;c[a+12>>2]=ia;c[a+16>>2]=Z;c[a+20>>2]=ba;c[a+24>>2]=fa;c[a+28>>2]=ja;c[a+32>>2]=_;c[a+36>>2]=ca;c[a+40>>2]=ga;c[a+44>>2]=ka;c[a+48>>2]=$;c[a+52>>2]=da;c[a+56>>2]=ha;c[a+60>>2]=la;c[a+64>>2]=Sa;c[a+68>>2]=Wa;c[a+72>>2]=_a;c[a+76>>2]=cb;c[a+80>>2]=Ta;c[a+84>>2]=Xa;c[a+88>>2]=$a;c[a+92>>2]=db;c[a+96>>2]=Ua;c[a+100>>2]=Ya;c[a+104>>2]=ab;c[a+108>>2]=eb;c[a+112>>2]=Va;c[a+116>>2]=Za;c[a+120>>2]=bb;c[a+124>>2]=fb;c[a+128>>2]=Ca;c[a+132>>2]=Ga;c[a+136>>2]=Ka;c[a+140>>2]=Oa;c[a+144>>2]=Da;c[a+148>>2]=Ha;c[a+152>>2]=La;c[a+156>>2]=Pa;c[a+160>>2]=Ea;c[a+164>>2]=Ia;c[a+168>>2]=Ma;c[a+172>>2]=Qa;c[a+176>>2]=Fa;c[a+180>>2]=Ja;c[a+184>>2]=Na;c[a+188>>2]=Ra;c[a+192>>2]=ma;c[a+196>>2]=qa;c[a+200>>2]=ua;c[a+204>>2]=ya;c[a+208>>2]=na;c[a+212>>2]=ra;c[a+216>>2]=va;c[a+220>>2]=za;c[a+224>>2]=oa;c[a+228>>2]=sa;c[a+232>>2]=wa;c[a+236>>2]=Aa;c[a+240>>2]=pa;c[a+244>>2]=ta;c[a+248>>2]=xa;c[a+252>>2]=Ba;c[a+256>>2]=b;c[a+260>>2]=g;c[a+264>>2]=k;c[a+268>>2]=o;c[a+272>>2]=d;c[a+276>>2]=h;c[a+280>>2]=l;c[a+284>>2]=p;c[a+288>>2]=e;c[a+292>>2]=i;c[a+296>>2]=m;c[a+300>>2]=q;c[a+304>>2]=f;c[a+308>>2]=j;c[a+312>>2]=n;c[a+316>>2]=r;c[a+320>>2]=I;c[a+324>>2]=M;c[a+328>>2]=Q;c[a+332>>2]=U;c[a+336>>2]=J;c[a+340>>2]=N;c[a+344>>2]=R;c[a+348>>2]=V;c[a+352>>2]=K;c[a+356>>2]=O;c[a+360>>2]=S;c[a+364>>2]=W;c[a+368>>2]=L;c[a+372>>2]=P;c[a+376>>2]=T;c[a+380>>2]=X;c[a+384>>2]=s;c[a+388>>2]=w;c[a+392>>2]=A;c[a+396>>2]=E;c[a+400>>2]=t;c[a+404>>2]=x;c[a+408>>2]=B;c[a+412>>2]=F;c[a+416>>2]=u;c[a+420>>2]=y;c[a+424>>2]=C;c[a+428>>2]=G;c[a+432>>2]=v;c[a+436>>2]=z;c[a+440>>2]=D;c[a+444>>2]=H;return}function fo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;switch(d|0){case 9:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=611;g=610}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=597;c[a+12>>2]=(b|0)==23?599:598;c[a+16>>2]=600;c[a+20>>2]=601;c[a+24>>2]=602;c[a+28>>2]=d?604:603;c[a+32>>2]=605;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=608;c[a+52>>2]=609;c[a+40>>2]=610;d=14;f=611;break}default:{c[d>>2]=606;d=10;f=615}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=616;i=10}}else{c[a>>2]=610;c[a+4>>2]=611;c[a+8>>2]=597;c[a+12>>2]=612;c[a+16>>2]=600;c[a+20>>2]=601;c[a+24>>2]=602;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=606;c[a+40>>2]=615;c[a+44>>2]=616;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=10}if((i|0)==10)c[a+(d<<2)>>2]=f;c[a+60>>2]=47;c[a+64>>2]=48;c[a+68>>2]=49;c[a+72>>2]=50;c[a+76>>2]=51;c[a+80>>2]=52;c[a+84>>2]=53;c[a+88>>2]=54;c[a+92>>2]=55;c[a+96>>2]=56;c[a+100>>2]=57;c[a+104>>2]=58;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?29:28;c[a+112>>2]=e?31:30;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?33:32}a:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break a}c[a+136>>2]=50;d=8;f=175;i=20;break}default:if(e){c[d>>2]=35;c[a+124>>2]=36;c[a+128>>2]=37;c[a+136>>2]=38;c[a+140>>2]=39;c[a+144>>2]=40;d=10;f=173;i=20;break a}else{c[d>>2]=41;c[a+124>>2]=42;c[a+128>>2]=43;c[a+136>>2]=44;c[a+140>>2]=45;c[a+144>>2]=46;d=10;f=174;i=20;break a}}while(0);if((i|0)==20)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?52:51;c[a+152>>2]=53;c[a+160>>2]=54;c[a+156>>2]=55;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=57;d=8;f=178;break}default:{d=3;f=179}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=58;c[a+172>>2]=59;c[a+176>>2]=60;c[a+188>>2]=619;c[a+192>>2]=620;c[a+196>>2]=621;c[a+200>>2]=622;c[a+204>>2]=69;c[a+208>>2]=70;f=128;g=127;h=e?62:61;d=e?60:59;break}case 10:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=634;g=633}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=623;c[a+12>>2]=(b|0)==23?599:624;c[a+16>>2]=625;c[a+20>>2]=626;c[a+24>>2]=627;c[a+28>>2]=d?604:628;c[a+32>>2]=629;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=631;c[a+52>>2]=632;c[a+40>>2]=633;d=14;f=634;break}default:{c[d>>2]=630;d=10;f=635}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=636;i=34}}else{c[a>>2]=633;c[a+4>>2]=634;c[a+8>>2]=623;c[a+12>>2]=612;c[a+16>>2]=625;c[a+20>>2]=626;c[a+24>>2]=627;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=630;c[a+40>>2]=635;c[a+44>>2]=636;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=34}if((i|0)==34)c[a+(d<<2)>>2]=f;c[a+60>>2]=63;c[a+64>>2]=64;c[a+68>>2]=65;c[a+72>>2]=66;c[a+76>>2]=67;c[a+80>>2]=68;c[a+84>>2]=69;c[a+88>>2]=70;c[a+92>>2]=71;c[a+96>>2]=72;c[a+100>>2]=73;c[a+104>>2]=74;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?62:61;c[a+112>>2]=e?64:63;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?66:65}b:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break b}c[a+136>>2]=79;d=8;f=182;i=44;break}default:if(e){c[d>>2]=67;c[a+124>>2]=68;c[a+128>>2]=69;c[a+136>>2]=70;c[a+140>>2]=71;c[a+144>>2]=72;d=10;f=180;i=44;break b}else{c[d>>2]=73;c[a+124>>2]=74;c[a+128>>2]=75;c[a+136>>2]=76;c[a+140>>2]=77;c[a+144>>2]=78;d=10;f=181;i=44;break b}}while(0);if((i|0)==44)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?81:80;c[a+152>>2]=82;c[a+160>>2]=83;c[a+156>>2]=84;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=85;d=8;f=183;break}default:{d=3;f=184}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=86;c[a+172>>2]=87;c[a+176>>2]=88;c[a+188>>2]=637;c[a+192>>2]=638;c[a+196>>2]=639;c[a+200>>2]=640;c[a+204>>2]=71;c[a+208>>2]=72;f=130;g=129;h=e?78:77;d=e?76:75;break}case 12:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=652;g=651}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=641;c[a+12>>2]=(b|0)==23?599:642;c[a+16>>2]=643;c[a+20>>2]=644;c[a+24>>2]=645;c[a+28>>2]=d?604:646;c[a+32>>2]=647;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=649;c[a+52>>2]=650;c[a+40>>2]=651;d=14;f=652;break}default:{c[d>>2]=648;d=10;f=653}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=654;i=58}}else{c[a>>2]=651;c[a+4>>2]=652;c[a+8>>2]=641;c[a+12>>2]=612;c[a+16>>2]=643;c[a+20>>2]=644;c[a+24>>2]=645;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=648;c[a+40>>2]=653;c[a+44>>2]=654;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=58}if((i|0)==58)c[a+(d<<2)>>2]=f;c[a+60>>2]=79;c[a+64>>2]=80;c[a+68>>2]=81;c[a+72>>2]=82;c[a+76>>2]=83;c[a+80>>2]=84;c[a+84>>2]=85;c[a+88>>2]=86;c[a+92>>2]=87;c[a+96>>2]=88;c[a+100>>2]=89;c[a+104>>2]=90;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?90:89;c[a+112>>2]=e?92:91;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?94:93}c:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break c}c[a+136>>2]=107;d=8;f=187;i=68;break}default:if(e){c[d>>2]=95;c[a+124>>2]=96;c[a+128>>2]=97;c[a+136>>2]=98;c[a+140>>2]=99;c[a+144>>2]=100;d=10;f=185;i=68;break c}else{c[d>>2]=101;c[a+124>>2]=102;c[a+128>>2]=103;c[a+136>>2]=104;c[a+140>>2]=105;c[a+144>>2]=106;d=10;f=186;i=68;break c}}while(0);if((i|0)==68)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?109:108;c[a+152>>2]=110;c[a+160>>2]=111;c[a+156>>2]=112;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=113;d=8;f=188;break}default:{d=3;f=189}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=114;c[a+172>>2]=115;c[a+176>>2]=116;c[a+188>>2]=655;c[a+192>>2]=656;c[a+196>>2]=657;c[a+200>>2]=658;c[a+204>>2]=73;c[a+208>>2]=74;f=132;g=131;h=e?94:93;d=e?92:91;break}case 14:{if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=670;g=669}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=659;c[a+12>>2]=(b|0)==23?599:660;c[a+16>>2]=661;c[a+20>>2]=662;c[a+24>>2]=663;c[a+28>>2]=d?604:664;c[a+32>>2]=665;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=667;c[a+52>>2]=668;c[a+40>>2]=669;d=14;f=670;break}default:{c[d>>2]=666;d=10;f=671}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=672;i=82}}else{c[a>>2]=669;c[a+4>>2]=670;c[a+8>>2]=659;c[a+12>>2]=612;c[a+16>>2]=661;c[a+20>>2]=662;c[a+24>>2]=663;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=666;c[a+40>>2]=671;c[a+44>>2]=672;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=82}if((i|0)==82)c[a+(d<<2)>>2]=f;c[a+60>>2]=95;c[a+64>>2]=96;c[a+68>>2]=97;c[a+72>>2]=98;c[a+76>>2]=99;c[a+80>>2]=100;c[a+84>>2]=101;c[a+88>>2]=102;c[a+92>>2]=103;c[a+96>>2]=104;c[a+100>>2]=105;c[a+104>>2]=106;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?118:117;c[a+112>>2]=e?120:119;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?122:121}d:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break d}c[a+136>>2]=135;d=8;f=192;i=92;break}default:if(e){c[d>>2]=123;c[a+124>>2]=124;c[a+128>>2]=125;c[a+136>>2]=126;c[a+140>>2]=127;c[a+144>>2]=128;d=10;f=190;i=92;break d}else{c[d>>2]=129;c[a+124>>2]=130;c[a+128>>2]=131;c[a+136>>2]=132;c[a+140>>2]=133;c[a+144>>2]=134;d=10;f=191;i=92;break d}}while(0);if((i|0)==92)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?137:136;c[a+152>>2]=138;c[a+160>>2]=139;c[a+156>>2]=140;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=141;d=8;f=193;break}default:{d=3;f=194}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=142;c[a+172>>2]=143;c[a+176>>2]=144;c[a+188>>2]=673;c[a+192>>2]=674;c[a+196>>2]=675;c[a+200>>2]=676;c[a+204>>2]=75;c[a+208>>2]=76;f=134;g=133;h=e?110:109;d=e?108:107;break}default:{if((d|0)>=9){c[f>>2]=146451;c[f+4>>2]=146429;c[f+8>>2]=590;ig(0,0,159900,f);Tb()}if((b|0)!=69){h=(b|0)==139;d=(b|0)==179|h;switch(b|0){case 139:case 179:{f=696;g=695;break}default:{f=688;g=687}}c[a>>2]=g;c[a+4>>2]=f;c[a+8>>2]=677;c[a+12>>2]=(b|0)==23?599:678;c[a+16>>2]=679;c[a+20>>2]=680;c[a+24>>2]=681;c[a+28>>2]=d?604:682;c[a+32>>2]=683;d=a+36|0;switch(b|0){case 139:case 179:{c[d>>2]=607;c[a+48>>2]=685;c[a+52>>2]=686;c[a+40>>2]=687;d=14;f=688;break}default:{c[d>>2]=684;d=10;f=689}}c[a+(d<<2)>>2]=f;if(!h){d=11;f=690;i=108}}else{c[a>>2]=687;c[a+4>>2]=688;c[a+8>>2]=677;c[a+12>>2]=612;c[a+16>>2]=679;c[a+20>>2]=680;c[a+24>>2]=681;c[a+28>>2]=613;c[a+32>>2]=614;c[a+36>>2]=684;c[a+40>>2]=689;c[a+44>>2]=690;c[a+48>>2]=617;c[a+52>>2]=618;d=14;f=697;i=108}if((i|0)==108)c[a+(d<<2)>>2]=f;c[a+60>>2]=111;c[a+64>>2]=112;c[a+68>>2]=113;c[a+72>>2]=114;c[a+76>>2]=115;c[a+80>>2]=116;c[a+84>>2]=117;c[a+88>>2]=118;c[a+92>>2]=119;c[a+96>>2]=120;c[a+100>>2]=121;c[a+104>>2]=122;e=(e|0)<2;d=a+108|0;c[a+116>>2]=e?146:145;c[a+112>>2]=e?148:147;switch(b|0){case 139:case 179:{c[a+120>>2]=34;break}default:c[a+120>>2]=e?150:149}e:do switch(b|0){case 69:case 139:case 179:{c[d>>2]=47;c[a+124>>2]=48;c[a+128>>2]=49;switch(b|0){case 139:case 179:break;default:break e}c[a+136>>2]=163;d=8;f=197;i=118;break}default:if(e){c[d>>2]=151;c[a+124>>2]=152;c[a+128>>2]=153;c[a+136>>2]=154;c[a+140>>2]=155;c[a+144>>2]=156;d=10;f=195;i=118;break e}else{c[d>>2]=157;c[a+124>>2]=158;c[a+128>>2]=159;c[a+136>>2]=160;c[a+140>>2]=161;c[a+144>>2]=162;d=10;f=196;i=118;break e}}while(0);if((i|0)==118)c[a+108+(d<<2)>>2]=f;c[a+132>>2]=e?165:164;c[a+152>>2]=166;c[a+160>>2]=167;c[a+156>>2]=168;switch(b|0){case 23:{d=3;f=176;break}case 69:{d=3;f=177;break}case 139:case 179:{c[a+164>>2]=56;c[a+180>>2]=169;d=8;f=198;break}default:{d=3;f=199}}c[a+152+(d<<2)>>2]=f;c[a+168>>2]=170;c[a+172>>2]=171;c[a+176>>2]=172;c[a+188>>2]=691;c[a+192>>2]=692;c[a+196>>2]=693;c[a+200>>2]=694;c[a+204>>2]=77;c[a+208>>2]=78;f=136;g=135;h=e?126:125;d=e?124:123}}c[a+220>>2]=d;c[a+216>>2]=h;c[a+232>>2]=g;c[a+228>>2]=f;l=j;return}function go(a,b){a=a|0;b=b|0;c[a+4>>2]=698;c[a>>2]=(b|0)<9?2:1;return}function ho(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+32|0;if((l|0)>=(m|0))W(32);v=x+24|0;p=x+16|0;o=x+8|0;g=x;f=e+24|0;k=d+27008|0;r=c[k>>2]|0;t=d+27016|0;w=c[t>>2]|0;n=N(w,r)|0;u=d+27012|0;q=N(c[u>>2]<<1|1,r<<1|1)|0;r=N(w,r+1|0)|0;w=q+(r<<1)|0;a[e+28344>>0]=-2;a[e+28336>>0]=-2;a[e+28328>>0]=-2;a[e+28304>>0]=-2;a[e+28296>>0]=-2;a[e+28288>>0]=-2;a:do if((c[d+25628>>2]|0)==(e|0)){s=d+4|0;c[f>>2]=c[s>>2];c[e+824>>2]=1;c[e+828>>2]=d;c[e+812>>2]=1;i=d+27020|0;j=c[i>>2]|0;c[e+576>>2]=j;h=c[u>>2]|0;c[e+580>>2]=h;c[e+584>>2]=c[k>>2];c[e+588>>2]=c[t>>2];c[e+592>>2]=h<<1|1;j=$g((j<<2)+4|0)|0;c[e+572>>2]=j;if((j|0)==0?(c[i>>2]&1073741823|0)!=1073741823:0){ig(c[s>>2]|0,16,146339,g);d=-12;break}g=c[k>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=c[u>>2]|0;i=N(h,d)|0;f=0;while(1){if((f|0)>=(h|0))break;c[j+(i+f<<2)>>2]=(N(c[t>>2]|0,d)|0)+f;f=f+1|0}d=d+1|0}h=N(c[t>>2]|0,g+-1|0)|0;i=c[u>>2]|0;c[j+((N(i,g)|0)<<2)>>2]=h+i;j=$g(n)|0;c[e+604>>2]=j;if(!((n|0)==0|(j|0)!=0)){ig(c[s>>2]|0,16,146339,o);d=-12;break}o=qg(N((c[k>>2]|0)*17|0,c[t>>2]|0)|0)|0;c[e+608>>2]=o;if((o|0)==0?N((c[k>>2]|0)*17|0,c[t>>2]|0)|0:0){ig(c[s>>2]|0,16,146339,p);d=-12;break}p=w<<1;f=$g(p)|0;c[e+27784>>2]=f;if(!((p|0)==0|(f|0)!=0)){ig(c[s>>2]|0,16,146339,v);d=-12;break}c[e+612>>2]=f+(c[u>>2]<<1<<1)+4;d=f+(q<<1)+(c[t>>2]<<1)+2|0;c[e+616>>2]=d;c[e+620>>2]=d+(r<<1);d=0;while(1){if((d|0)>=(w|0)){d=0;break a}b[f+(d<<1)>>1]=1024;d=d+1|0}}else{yX(f|0,0,808)|0;d=0}while(0);l=x;return d|0}function io(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q+8|0;j=q;o=a+25628|0;k=c[o>>2]|0;c[k+21788>>2]=h;c[k+21792>>2]=i;n=k+21796|0;c[n>>2]=(N(c[a+27016>>2]|0,i)|0)+h;e=k+27824|0;f=e+120|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=(c[k+23404>>2]|0)>>>0>d>>>0?d:0;if(!(c[k+23416+(e*40|0)>>2]|0)){ig(c[a+4>>2]|0,48,146364,j);e=0}if((c[k+23416+(e*40|0)+24>>2]&3|0)==3){d=(c[a+24384>>2]|0)+(c[n>>2]<<2)|0;p=e*257&65535;b[d>>1]=p;b[d+2>>1]=p;d=N(e,16843009)|0;c[k+28284>>2]=d;c[k+28292>>2]=d;c[k+28300>>2]=d;c[k+28308>>2]=d;g=c[g+4>>2]<<16|c[g>>2]&65535;c[k+28e3>>2]=g;c[k+28004>>2]=g;c[k+28008>>2]=g;c[k+28012>>2]=g;c[k+28032>>2]=g;c[k+28036>>2]=g;c[k+28040>>2]=g;c[k+28044>>2]=g;c[k+28064>>2]=g;c[k+28068>>2]=g;c[k+28072>>2]=g;c[k+28076>>2]=g;c[k+28096>>2]=g;c[k+28100>>2]=g;c[k+28104>>2]=g;c[k+28108>>2]=g;c[k+21828>>2]=0;c[k+21832>>2]=0;Ik(a,c[o>>2]|0)}else ig(c[a+4>>2]|0,48,146410,p);l=q;return}function jo(a,b,c){a=a|0;b=b|0;c=c|0;return}function ko(b,c,d,e,f,g,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){o=(0-g|0)<(i|0);p=1-g|0;n=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;c=o?c:n;i=o?i:p}else{p=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(p,e)|0)|0;i=p}if((h|0)<(j|0)){o=(0-f|0)<(h|0);p=1-f|0;l=o?h:p;h=o?c:c+(p-h)|0}else{p=j+-1|0;l=p;h=c+(p-h)|0}c=0-i|0;c=(c|0)>0?c:0;p=0-l|0;p=(p|0)>0?p:0;m=k-i|0;n=(m|0)<(g|0);o=j-l|0;o=(o|0)<(f|0)?o:f;j=o-p|0;i=h+(p+(N(c,e)|0))|0;k=p+(N(c,d)|0)|0;h=b+p|0;l=0;while(1){if((l|0)>=(c|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=b+k|0;while(1){if((c|0)>=(l|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=o+-1|0;c=g;h=h+(0-((N(g,d)|0)+p))|0;while(1){l=c+-1|0;if(!c)break a;i=h+p|0;c=0;while(1){if((c|0)>=(p|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}i=h+k|0;c=o;while(1){if((c|0)>=(f|0))break;a[h+c>>0]=a[i>>0]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function lo(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;a:do if((j|0)!=0&(k|0)!=0){if((i|0)<(k|0)){p=(0-g|0)<(i|0);q=1-g|0;o=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;c=p?c:o;i=p?i:q}else{q=k+-1|0;c=c+(N(0-e|0,i)|0)+(N(q,e)|0)|0;i=q}if((h|0)<(j|0)){p=(0-f|0)<(h|0);q=1-f|0;l=p?h:q;h=p?c:c+(q-h<<1)|0}else{q=j+-1|0;l=q;h=c+(q-h<<1)|0}c=0-i|0;c=(c|0)>0?c:0;q=0-l|0;q=(q|0)>0?q:0;m=k-i|0;n=(m|0)<(g|0);p=j-l|0;p=(p|0)<(f|0)?p:f;o=q<<1;i=h+(o+(N(c,e)|0))|0;j=p-q<<1;k=(N(c,d)|0)+o|0;h=a+o|0;l=0;while(1){if((l|0)>=(c|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;l=l+1|0}l=n?m:g;h=a+k|0;while(1){if((c|0)>=(l|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0;i=i+e|0}i=i+(0-e)|0;while(1){if((c|0)>=(g|0))break;wX(h|0,i|0,j|0)|0;h=h+d|0;c=c+1|0}k=p+-1|0;c=g;h=h+(0-((N(g,d)|0)+o))|0;while(1){l=c+-1|0;if(!c)break a;i=h+(q<<1)|0;c=0;while(1){if((c|0)>=(q|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}i=h+(k<<1)|0;c=p;while(1){if((c|0)>=(f|0))break;b[h+(c<<1)>>1]=b[i>>1]|0;c=c+1|0}c=l;h=h+d|0}}while(0);return}function mo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function no(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=d[a+(0-e)>>0]|0;h=d[a+(1-e)>>0]|0;g=d[a+(2-e)>>0]|0;f=d[a+(3-e)>>0]|0;b=(i+2+(h<<1)+g|0)>>>2<<8|((d[a+~e>>0]|0)+2+(i<<1)+h|0)>>>2|(h+2+(g<<1)+f|0)>>>2<<16|(g+2+(f<<1)+(d[b>>0]|0)|0)>>>2<<24;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function oo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=nX(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=nX(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function po(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=d[a+-1>>0]|0;i=d[a+(e+-1)>>0]|0;h=e<<1;g=d[a+(h+-1)>>0]|0;b=e*3|0;f=d[a+(b+-1)>>0]|0;c[a>>2]=N(((d[a+~e>>0]|0)+2+(j<<1)+i|0)>>>2,16843009)|0;c[a+e>>2]=N((j+2+(i<<1)+g|0)>>>2,16843009)|0;c[a+h>>2]=N((i+2+(g<<1)+f|0)>>>2,16843009)|0;c[a+b>>2]=N((g+2+f+(f<<1)|0)>>>2,16843009)|0;return}function qo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ro(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;f=e<<1;j=d[b+(f+-1)>>0]|0;g=e*3|0;h=d[b+(g+-1)>>0]|0;a[b>>0]=((d[b+(e+-1)>>0]|0)+(d[b+(1-e)>>0]|0)|0)>>>1;i=(j+i|0)>>>1&255;a[b+e>>0]=i;a[b+1>>0]=i;c=(h+c|0)>>>1&255;a[b+(g+3)>>0]=c;a[b+(g+2)>>0]=c;a[b+(f+3)>>0]=c;a[b+(g+1)>>0]=c;a[b+(f+2)>>0]=c;a[b+(e+3)>>0]=c;a[b+g>>0]=c;a[b+(f|1)>>0]=c;a[b+(e+2)>>0]=c;a[b+3>>0]=c;a[b+f>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;return}function so(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function to(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function uo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function vo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function wo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;h=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=(n+1+m|0)>>>1;c=(m+1+l|0)>>>1&255;i=e<<1;a[b+i>>0]=c;a[b+1>>0]=c;c=(l+1+k|0)>>>1&255;a[b+(i|1)>>0]=c;a[b+2>>0]=c;c=(k+1+j|0)>>>1&255;a[b+(i+2)>>0]=c;a[b+3>>0]=c;a[b+e>>0]=(n+2+(m<<1)+l|0)>>>2;m=(m+2+(l<<1)+k|0)>>>2&255;c=e*3|0;a[b+c>>0]=m;a[b+(e+1)>>0]=m;l=(l+2+(k<<1)+j|0)>>>2&255;a[b+(c+1)>>0]=l;a[b+(e+2)>>0]=l;k=(k+2+(j<<1)+h|0)>>>2&255;a[b+(c+2)>>0]=k;a[b+(e+3)>>0]=k;a[b+(i+3)>>0]=(j+2+(h<<1)+g|0)>>>2;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function xo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function yo(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function zo(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nX(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Ao(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=129934+(0-(d[b+~e>>0]|0))|0;f=b+(0-e)|0;g=f+1|0;h=f+2|0;i=f+3|0;c=b;b=0;while(1){if((b|0)==4)break;k=j+(d[c+-1>>0]|0)|0;a[c>>0]=a[k+(d[f>>0]|0)>>0]|0;a[c+1>>0]=a[k+(d[g>>0]|0)>>0]|0;a[c+2>>0]=a[k+(d[h>>0]|0)>>0]|0;a[c+3>>0]=a[k+(d[i>>0]|0)>>0]|0;c=c+e|0;b=b+1|0}return}function Bo(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;b=a+(d<<1<<1)|0;c[b>>2]=16711935;c[b+4>>2]=16711935;d=a+(d*3<<1)|0;c[d>>2]=16711935;c[d+4>>2]=16711935;return}function Co(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;b=a+(d<<1<<1)|0;c[b>>2]=16843009;c[b+4>>2]=16843009;d=a+(d*3<<1)|0;c[d>>2]=16843009;c[d+4>>2]=16843009;return}function Do(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nX(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Eo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=d[b+(1-e)>>0]|0;r=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;n=d[c>>0]|0;l=d[c+1>>0]|0;i=d[c+2>>0]|0;h=d[c+3>>0]|0;s=d[b+(e+-1)>>0]|0;j=e<<1;q=d[b+(j+-1)>>0]|0;c=e*3|0;o=d[b+(c+-1)>>0]|0;m=d[b+((e<<2)+-1)>>0]|0;k=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;f=d[b+((e*7|0)+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+r+(d[b+-1>>0]|0)+q+(s+t<<1)|0)>>>3;s=(t+4+p+s+o+(q+r<<1)|0)>>>3&255;a[b+e>>0]=s;a[b+1>>0]=s;q=(r+4+n+q+m+(o+p<<1)|0)>>>3&255;a[b+j>>0]=q;a[b+(e+1)>>0]=q;a[b+2>>0]=q;o=(p+4+l+o+k+(m+n<<1)|0)>>>3&255;a[b+c>>0]=o;a[b+(j|1)>>0]=o;a[b+(e+2)>>0]=o;a[b+3>>0]=o;m=(n+4+i+m+g+(k+l<<1)|0)>>>3&255;a[b+(c+1)>>0]=m;a[b+(j+2)>>0]=m;a[b+(e+3)>>0]=m;e=(l+4+h+k+f+(g+i<<1)|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(j+3)>>0]=e;a[b+(c+3)>>0]=(i+2+h+g+f|0)>>>2;return}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;mv(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,d[a+((c*3|0)+-1)>>0]|0,d[a+((c<<2)+-1)>>0]|0);return}function Go(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=d[b+-1>>0]|0;q=d[b+(e+-1)>>0]|0;j=e<<1;m=d[b+(j+-1)>>0]|0;f=e*3|0;l=d[b+(f+-1)>>0]|0;i=d[b+((e<<2)+-1)>>0]|0;h=d[b+((e*5|0)+-1)>>0]|0;g=d[b+((e*6|0)+-1)>>0]|0;o=d[b+(2-e)>>0]|0;r=d[b+(3-e)>>0]|0;p=d[c>>0]|0;n=d[c+1>>0]|0;k=d[c+2>>0]|0;c=d[c+3>>0]|0;t=q<<1;s=t+4|0;a[b>>0]=(s+(d[b+(1-e)>>0]|0)+r+(o+u<<1)|0)>>>3;a[b+1>>0]=(u+4+t+m+o+(r<<1)+p|0)>>>3;o=m<<1;r=(s+o+r+(p<<1)+n|0)>>>3&255;a[b+e>>0]=r;a[b+2>>0]=r;p=(q+4+o+l+p+(n<<1)+k|0)>>>3&255;a[b+(e+1)>>0]=p;a[b+3>>0]=p;n=(o+4+n+c+(k+l<<1)|0)>>>3&255;a[b+j>>0]=n;a[b+(e+2)>>0]=n;m=(m+4+k+((c+l|0)*3|0)|0)>>>3&255;a[b+(j|1)>>0]=m;a[b+(e+3)>>0]=m;e=l+2|0;l=(e+(i<<1)+h|0)>>>2&255;a[b+(f+1)>>0]=l;a[b+(j+3)>>0]=l;e=(e+i+k+c|0)>>>2&255;a[b+(j+2)>>0]=e;a[b+f>>0]=e;a[b+(f+2)>>0]=(i+1+h|0)>>>1;a[b+(f+3)>>0]=(i+2+(h<<1)+g|0)>>>2;return}function Ho(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;b=a+(d<<1<<1)|0;c[b>>2]=16777472;c[b+4>>2]=16777472;d=a+(d*3<<1)|0;c[d>>2]=16777472;c[d+4>>2]=16777472;return}function Io(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=d[b+(1-e)>>0]|0;n=d[b+(2-e)>>0]|0;m=d[b+(3-e)>>0]|0;l=d[c>>0]|0;k=d[c+1>>0]|0;h=d[c+2>>0]|0;g=d[c+3>>0]|0;o=d[b+(e+-1)>>0]|0;i=e<<1;j=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+4+n+(d[b+-1>>0]|0)+j+(o+p<<1)|0)>>>3;o=(p+4+m+o+f+(j+n<<1)|0)>>>3&255;a[b+e>>0]=o;a[b+1>>0]=o;j=(n+4+l+(m<<1)+j+(f*3|0)|0)>>>3&255;a[b+i>>0]=j;a[b+(e+1)>>0]=j;a[b+2>>0]=j;j=f<<2;m=(m+4+k+(l<<1)+j|0)>>>3&255;a[b+c>>0]=m;a[b+(i|1)>>0]=m;a[b+(e+2)>>0]=m;a[b+3>>0]=m;l=(l+4+h+(k<<1)+j|0)>>>3&255;a[b+(c+1)>>0]=l;a[b+(i+2)>>0]=l;a[b+(e+3)>>0]=l;e=(k+4+g+(h<<1)+j|0)>>>3&255;a[b+(c+2)>>0]=e;a[b+(i+3)>>0]=e;a[b+(c+3)>>0]=(h+2+g+(f<<1)|0)>>>2;return}function Jo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[b+-1>>0]|0;o=d[b+(e+-1)>>0]|0;h=e<<1;l=d[b+(h+-1)>>0]|0;f=e*3|0;g=a[b+(f+-1)>>0]|0;k=g&255;n=d[b+(2-e)>>0]|0;p=d[b+(3-e)>>0]|0;j=d[c>>0]|0;m=d[c+1>>0]|0;i=d[c+2>>0]|0;c=d[c+3>>0]|0;r=o<<1;q=r+4|0;a[b>>0]=(q+(d[b+(1-e)>>0]|0)+p+(n+s<<1)|0)>>>3;a[b+1>>0]=(s+4+r+l+n+(p<<1)+j|0)>>>3;n=l<<1;p=(q+n+p+(j<<1)+m|0)>>>3&255;a[b+e>>0]=p;a[b+2>>0]=p;j=(o+4+n+k+j+(m<<1)+i|0)>>>3&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=k<<1;m=(n+4+j+m+(i<<1)+c|0)>>>3&255;a[b+h>>0]=m;a[b+(e+2)>>0]=m;k=(l+4+i+((c+k|0)*3|0)|0)>>>3&255;a[b+(h|1)>>0]=k;a[b+(e+3)>>0]=k;a[b+(f+1)>>0]=g;a[b+(h+3)>>0]=g;e=(j+2+i+c|0)>>>2&255;a[b+(h+2)>>0]=e;a[b+f>>0]=e;a[b+(f+3)>>0]=g;a[b+(f+2)>>0]=g;return}function Ko(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;e=d[a+((c*3|0)+-1)>>0]|0;mv(a,b,c,d[a+(c+-1)>>0]|0,d[a+((c<<1)+-1)>>0]|0,e,e);return}function Lo(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Mo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nX((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nX((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nX((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nX((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nX((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nX((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nX((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nX((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function No(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Oo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Po(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Qo(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Ro(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function So(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function To(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Uo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nX(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Vo(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Wo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=16777472;c[e+4>>2]=16777472;e=a+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0;a=a+(d<<1)|0}return}function Xo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Yo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Zo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function _o(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function $o(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+i>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+j>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function ap(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=d+p>>5;b[c+2>>1]=a>>>0<512?a:0-a>>31&511;a=d+k>>5;b[c+4>>1]=a>>>0<512?a:0-a>>31&511;a=d+h>>5;b[c+6>>1]=a>>>0<512?a:0-a>>31&511;a=d+l>>5;b[c+8>>1]=a>>>0<512?a:0-a>>31&511;a=d+m>>5;b[c+10>>1]=a>>>0<512?a:0-a>>31&511;a=d+n>>5;b[c+12>>1]=a>>>0<512?a:0-a>>31&511;a=d+o>>5;b[c+14>>1]=a>>>0<512?a:0-a>>31&511;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function bp(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=129934+(0-(d[b+~c>>0]|0))|0;n=b+(0-c)|0;f=n+1|0;g=n+2|0;h=n+3|0;i=n+4|0;j=n+5|0;k=n+6|0;l=n+7|0;e=0;while(1){if((e|0)==8)break;o=m+(d[b+-1>>0]|0)|0;a[b>>0]=a[o+(d[n>>0]|0)>>0]|0;a[b+1>>0]=a[o+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[o+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[o+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[o+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[o+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[o+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[o+(d[l>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function cp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=nX(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nX(k|0,l|0,65537,65537)|0;h=y;d=nX(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function dp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nX(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nX(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function ep(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function fp(a,b){a=a|0;b=b|0;ep(a,b);qo(a,0,b);return}function gp(a,b){a=a|0;b=b|0;cp(a,b);Do(a,0,b);return}function hp(a,b){a=a|0;b=b|0;dp(a,b);a=a+(b<<2)|0;Ho(a,0,b);Ho(a+8|0,0,b);return}function ip(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=nX(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nX(m|0,n|0,65537,65537)|0;q=y;m=nX(f|0,o|0,65537,65537)|0;n=y;k=nX(r|0,s|0,65537,65537)|0;l=y;i=nX(g|0,t|0,65537,65537)|0;j=y;g=nX(u|0,v|0,65537,65537)|0;h=y;d=nX(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function jp(a,b){a=a|0;b=b|0;dp(a,b);dp(a+(b<<3)|0,b);return}function kp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function lp(a,b){a=a|0;b=b|0;kp(a,b);qo(a,0,b);return}function mp(a,b){a=a|0;b=b|0;ip(a,b);Do(a,0,b);return}function np(a,b){a=a|0;b=b|0;jp(a,b);a=a+(b<<2)|0;Ho(a,0,b);Ho(a+8|0,0,b);return}function op(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=0;f=0;while(1){if((f|0)==4)break;h=d[a+((N(f,b)|0)+-1)>>0]|0;g=f+4|0;e=e+h+(d[a+(f-b)>>0]|0)+(d[a+(g-b)>>0]|0)+(d[a+((N(g,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+8|0)>>>4,16843009)|0;e=0;while(1){if((e|0)==4){e=4;break}h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}while(1){if((e|0)==8)break;h=a+(N(e,b)|0)|0;c[h>>2]=f;c[h+4>>2]=f;e=e+1|0}return}function pp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+((N(f,b)|0)+-1)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function qp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=0;f=0;while(1){if((f|0)==8)break;e=e+(d[a+(f-b)>>0]|0)|0;f=f+1|0}f=N((e+4|0)>>>3,16843009)|0;e=0;while(1){if((e|0)==8)break;g=a+(N(e,b)|0)|0;c[g+4>>2]=f;c[g>>2]=f;e=e+1|0}return}function rp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16711935;c[f+4>>2]=16711935;e=e+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+1|0}return}function sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16843009;c[f+4>>2]=16843009;e=e+8|0;c[e>>2]=16843009;c[e+4>>2]=16843009;b=b+1|0}return}function tp(a,b){a=a|0;b=b|0;jp(a,b);Ho(a,0,b);Ho(a+8|0,0,b);return}function up(a,b){a=a|0;b=b|0;dp(a,b);Ho(a,0,b);Ho(a+8|0,0,b);return}function vp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=16777472;c[f+4>>2]=16777472;e=e+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+1|0}return}function wp(a,b){a=a|0;b=b|0;vp(a,b);vp(a+(b<<3)|0,b);return}function xp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function yp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function zp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ap(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=129934+(0-(d[b+~c>>0]|0))|0;v=b+(0-c)|0;f=v+1|0;g=v+2|0;h=v+3|0;i=v+4|0;j=v+5|0;k=v+6|0;l=v+7|0;m=v+8|0;n=v+9|0;o=v+10|0;p=v+11|0;q=v+12|0;r=v+13|0;s=v+14|0;t=v+15|0;e=0;while(1){if((e|0)==16)break;w=u+(d[b+-1>>0]|0)|0;a[b>>0]=a[w+(d[v>>0]|0)>>0]|0;a[b+1>>0]=a[w+(d[f>>0]|0)>>0]|0;a[b+2>>0]=a[w+(d[g>>0]|0)>>0]|0;a[b+3>>0]=a[w+(d[h>>0]|0)>>0]|0;a[b+4>>0]=a[w+(d[i>>0]|0)>>0]|0;a[b+5>>0]=a[w+(d[j>>0]|0)>>0]|0;a[b+6>>0]=a[w+(d[k>>0]|0)>>0]|0;a[b+7>>0]=a[w+(d[l>>0]|0)>>0]|0;a[b+8>>0]=a[w+(d[m>>0]|0)>>0]|0;a[b+9>>0]=a[w+(d[n>>0]|0)>>0]|0;a[b+10>>0]=a[w+(d[o>>0]|0)>>0]|0;a[b+11>>0]=a[w+(d[p>>0]|0)>>0]|0;a[b+12>>0]=a[w+(d[q>>0]|0)>>0]|0;a[b+13>>0]=a[w+(d[r>>0]|0)>>0]|0;a[b+14>>0]=a[w+(d[s>>0]|0)>>0]|0;a[b+15>>0]=a[w+(d[t>>0]|0)>>0]|0;b=b+c|0;e=e+1|0}return}function Bp(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+8|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+16|0;c[e>>2]=16711935;c[e+4>>2]=16711935;e=b+24|0;c[e>>2]=16711935;c[e+4>>2]=16711935;b=b+(d<<1)|0;a=a+1|0}return}function Cp(a,b){a=a|0;b=b|0;lv(a,b);return}function Dp(a,b){a=a|0;b=b|0;var d=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;c[b>>2]=16843009;c[b+4>>2]=16843009;c[b+8>>2]=16843009;c[b+12>>2]=16843009;c[b+16>>2]=16843009;c[b+20>>2]=16843009;c[b+24>>2]=16843009;c[b+28>>2]=16843009;b=b+(d<<1)|0;a=a+1|0}return}function Ep(a,b){a=a|0;b=b|0;hv(a,b,0,1);return}function Fp(a,b){a=a|0;b=b|0;hv(a,b,1,0);return}function Gp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Hp(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Ip(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+8|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+16|0;c[e>>2]=16777472;c[e+4>>2]=16777472;e=b+24|0;c[e>>2]=16777472;c[e+4>>2]=16777472;b=b+(d<<1)|0;a=a+1|0}return}function Jp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Kp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Lp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yX(d|0,0,256)|0;return}function Mp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yX(d|0,0,256)|0;return}function Np(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}yX(d|0,0,256)|0;l=s;return}function Op(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yX(d|0,0,256)|0;l=k;return}function Pp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Jp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Qp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Jp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Jp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Rp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Kp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Kp(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Kp(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Tp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function Up(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=nX(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=nX(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function Vp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Wp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function Xp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function Yp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Zp(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function _p(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function $p(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function aq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nX(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function bq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;b=a+(d<<1<<1)|0;c[b>>2]=33489407;c[b+4>>2]=33489407;d=a+(d*3<<1)|0;c[d>>2]=33489407;c[d+4>>2]=33489407;return}function cq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;b=a+(d<<1<<1)|0;c[b>>2]=33620481;c[b+4>>2]=33620481;d=a+(d*3<<1)|0;c[d>>2]=33620481;c[d+4>>2]=33620481;return}function dq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nX(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function eq(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;b=a+(d<<1<<1)|0;c[b>>2]=33554944;c[b+4>>2]=33554944;d=a+(d*3<<1)|0;c[d>>2]=33554944;c[d+4>>2]=33554944;return}function fq(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function gq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nX((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nX((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nX((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nX((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nX((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nX((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nX((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nX((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function hq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function iq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function jq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function kq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function lq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function mq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function nq(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function oq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nX(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function pq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function qq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=33554944;c[e+4>>2]=33554944;e=a+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0;a=a+(d<<1)|0}return}function rq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function sq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function tq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function uq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function vq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+i>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+j>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function wq(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+p>>5;b[c+2>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+k>>5;b[c+4>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+h>>5;b[c+6>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+l>>5;b[c+8>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+m>>5;b[c+10>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+n>>5;b[c+12>>1]=a>>>0<1024?a:0-a>>31&1023;a=d+o>>5;b[c+14>>1]=a>>>0<1024?a:0-a>>31&1023;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function xq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=nX(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nX(k|0,l|0,65537,65537)|0;h=y;d=nX(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nX(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nX(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Aq(a,b){a=a|0;b=b|0;zq(a,b);Vp(a,0,b);return}function Bq(a,b){a=a|0;b=b|0;xq(a,b);dq(a,0,b);return}function Cq(a,b){a=a|0;b=b|0;yq(a,b);a=a+(b<<2)|0;eq(a,0,b);eq(a+8|0,0,b);return} +function IG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<1024?m:0-m>>31&1023;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<1024?m:0-m>>31&1023;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function JG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function KG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<1024?K:0-K>>31&1023;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<1024?J:0-J>>31&1023;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<1024?H:0-H>>31&1023;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<1024?F:0-F>>31&1023;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;g=g+1|0;f=f+2|0;d=d+2|0}return}function LG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=LF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=LF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=LF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=LF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function MG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<4096?m:0-m>>31&4095;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<4096?m:0-m>>31&4095;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function NG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function OG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<4096?E:0-E>>31&4095;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;g=g+1|0;f=f+2|0;d=d+2|0}return}function PG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=LF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=LF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=LF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=LF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function QG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;j=c+2|0;i=c+-2|0;k=c+4|0;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+6|0;m=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+m+(e[l>>1]|0)>>5;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[l>>1]|0)+(e[c>>1]|0)|0,-5)|0;n=c+8|0;m=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+m+(e[n>>1]|0)>>5;b[d+2>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[n>>1]|0)+(e[j>>1]|0)|0,-5)|0;i=c+10|0;m=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+m+(e[i>>1]|0)>>5;b[d+4>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[i>>1]|0)+(e[k>>1]|0)|0,-5)|0;a=c+12|0;m=(((e[n>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+m+(e[a>>1]|0)>>5;b[d+6>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[a>>1]|0)+(e[l>>1]|0)|0,-5)|0;j=c+14|0;m=(((e[i>>1]|0)+(e[n>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+m+(e[j>>1]|0)>>5;b[d+8>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[j>>1]|0)+(e[n>>1]|0)|0,-5)|0;k=c+16|0;m=(((e[a>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+m+(e[k>>1]|0)>>5;b[d+10>>1]=m>>>0<16384?m:0-m>>31&16383;m=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;l=c+18|0;m=(((e[j>>1]|0)+(e[a>>1]|0)|0)*20|0)+16+(e[n>>1]|0)+m+(e[l>>1]|0)>>5;b[d+12>>1]=m>>>0<16384?m:0-m>>31&16383;a=N((e[l>>1]|0)+(e[a>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+20>>1]|0)>>5;b[d+14>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function RG(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==13)break;j=c;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+8|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+8|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function SG(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;J=e[d+(w<<1)>>1]|0;I=e[d>>1]|0;H=e[d+(u<<1)>>1]|0;G=e[d+(x<<1)>>1]|0;F=e[d+(y<<1)>>1]|0;E=e[d+(h<<1)>>1]|0;D=e[d+(i<<1)>>1]|0;c=e[d+(j<<1)>>1]|0;A=e[d+(k<<1)>>1]|0;B=e[d+(l<<1)>>1]|0;a=e[d+(m<<1)>>1]|0;C=e[d+(n<<1)>>1]|0;K=(e[d+(v<<1)>>1]|0)+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[f>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[f+(z<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+16+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[f+(o<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+16+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>5;b[f+(p<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+16+A+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>5;b[f+(q<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+16+B+((c+D|0)*20|0)+(N(A+E|0,-5)|0)>>5;b[f+(r<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;E=E+16+a+((A+c|0)*20|0)+(N(B+D|0,-5)|0)>>5;b[f+(s<<1)>>1]=E>>>0<16384?E:0-E>>31&16383;c=D+16+C+((B+A|0)*20|0)+(N(a+c|0,-5)|0)>>5;b[f+(t<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;g=g+1|0;f=f+2|0;d=d+2|0}return}function TG(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=0;while(1){if((j|0)>=(i|0))break;p=N(j,g)|0;s=b+p|0;t=s;s=s+4|0;l=N(j,h)|0;o=e+l|0;r=o;o=o+4|0;k=N(j,f)|0;q=a+k|0;m=q;n=c[m>>2]|0;m=c[m+4>>2]|0;o=LF(d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24,d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24,d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0;o=LF(n,m,o,y)|0;c[q>>2]=o;c[q+4>>2]=y;p=b+(p+8)|0;q=p;p=p+4|0;l=e+(l+8)|0;o=l;l=l+4|0;k=a+(k+8)|0;m=k;n=c[m>>2]|0;m=c[m+4>>2]|0;l=LF(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24,d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;l=LF(n,m,l,y)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function UG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;J=b[h+(f<<1)>>1]|0;I=b[h>>1]|0;H=b[h+(g<<1)>>1]|0;G=b[h+(l<<1)>>1]|0;F=b[h+(m<<1)>>1]|0;E=b[h+(n<<1)>>1]|0;D=b[h+(o<<1)>>1]|0;c=b[h+(p<<1)>>1]|0;a=b[h+(q<<1)>>1]|0;B=b[h+(r<<1)>>1]|0;A=b[h+(s<<1)>>1]|0;C=b[h+(t<<1)>>1]|0;K=(b[h+(k<<1)>>1]|0)+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[j>>1]=K>>>0<512?K:0-K>>31&511;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[j+(d<<1)>>1]=J>>>0<512?J:0-J>>31&511;I=I+512+D+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[j+(u<<1)>>1]=I>>>0<512?I:0-I>>31&511;H=H+512+c+((E+F|0)*20|0)+(N(D+G|0,-5)|0)>>10;b[j+(v<<1)>>1]=H>>>0<512?H:0-H>>31&511;G=G+512+a+((D+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;b[j+(w<<1)>>1]=G>>>0<512?G:0-G>>31&511;F=F+512+B+((c+D|0)*20|0)+(N(a+E|0,-5)|0)>>10;b[j+(x<<1)>>1]=F>>>0<512?F:0-F>>31&511;E=E+512+A+((a+c|0)*20|0)+(N(B+D|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<512?E:0-E>>31&511;c=D+512+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<512?c:0-c>>31&511;j=j+2|0;h=h+2|0;i=i+1|0}return}function VG(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;K=b[f+(l<<1)>>1]|0;J=b[f>>1]|0;I=b[f+(h<<1)>>1]|0;H=b[f+(m<<1)>>1]|0;G=b[f+(n<<1)>>1]|0;F=b[f+(o<<1)>>1]|0;E=b[f+(p<<1)>>1]|0;B=b[f+(q<<1)>>1]|0;c=b[f+(r<<1)>>1]|0;C=b[f+(s<<1)>>1]|0;e=b[f+(t<<1)>>1]|0;D=b[f+(u<<1)>>1]|0;L=(b[f+(i<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[k>>0]=L>>>0>255?(L^-2147483648)>>31:L;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[k+g>>0]=K>>>0>255?(K^-2147483648)>>31:K;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[k+v>>0]=J>>>0>255?(J^-2147483648)>>31:J;I=I+512+B+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;a[k+w>>0]=I>>>0>255?(I^-2147483648)>>31:I;H=H+512+c+((E+F|0)*20|0)+(N(B+G|0,-5)|0)>>10;a[k+x>>0]=H>>>0>255?(H^-2147483648)>>31:H;G=G+512+C+((B+E|0)*20|0)+(N(c+F|0,-5)|0)>>10;a[k+y>>0]=G>>>0>255?(G^-2147483648)>>31:G;F=F+512+e+((c+B|0)*20|0)+(N(C+E|0,-5)|0)>>10;a[k+z>>0]=F>>>0>255?(F^-2147483648)>>31:F;B=E+512+D+((C+c|0)*20|0)+(N(e+B|0,-5)|0)>>10;a[k+A>>0]=B>>>0>255?(B^-2147483648)>>31:B;k=k+1|0;f=f+2|0;j=j+1|0}return}function WG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;Q=b[h+(f<<1)>>1]|0;O=b[h>>1]|0;P=O+10230|0;L=b[h+(g<<1)>>1]|0;M=L+10230|0;J=b[h+(l<<1)>>1]|0;K=J+10230|0;H=b[h+(m<<1)>>1]|0;I=H+10230|0;F=b[h+(n<<1)>>1]|0;G=F+10230|0;D=b[h+(o<<1)>>1]|0;E=D+10230|0;c=(b[h+(p<<1)>>1]|0)+10230|0;a=(b[h+(q<<1)>>1]|0)+10230|0;B=(b[h+(r<<1)>>1]|0)+10230|0;A=(b[h+(s<<1)>>1]|0)+10230|0;C=b[h+(t<<1)>>1]|0;R=(b[h+(k<<1)>>1]|0)+10742+I+((M+P|0)*20|0)+(N(K+(Q+10230)|0,-5)|0)>>10;b[j>>1]=R>>>0<1024?R:0-R>>31&1023;P=Q+10742+G+((K+M|0)*20|0)+(N(I+P|0,-5)|0)>>10;b[j+(d<<1)>>1]=P>>>0<1024?P:0-P>>31&1023;M=O+10742+E+((I+K|0)*20|0)+(N(G+M|0,-5)|0)>>10;b[j+(u<<1)>>1]=M>>>0<1024?M:0-M>>31&1023;K=L+10742+c+((G+I|0)*20|0)+(N(E+K|0,-5)|0)>>10;b[j+(v<<1)>>1]=K>>>0<1024?K:0-K>>31&1023;I=J+10742+a+((E+G|0)*20|0)+(N(c+I|0,-5)|0)>>10;b[j+(w<<1)>>1]=I>>>0<1024?I:0-I>>31&1023;G=H+10742+B+((c+E|0)*20|0)+(N(a+G|0,-5)|0)>>10;b[j+(x<<1)>>1]=G>>>0<1024?G:0-G>>31&1023;E=F+10742+A+((a+c|0)*20|0)+(N(B+E|0,-5)|0)>>10;b[j+(y<<1)>>1]=E>>>0<1024?E:0-E>>31&1023;c=D+20972+C+((B+a|0)*20|0)+(N(A+c|0,-5)|0)>>10;b[j+(z<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;j=j+2|0;h=h+2|0;i=i+1|0}return}function XG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<4096?L:0-L>>31&4095;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<4096?K:0-K>>31&4095;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<4096?J:0-J>>31&4095;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<4096?I:0-I>>31&4095;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<4096?H:0-H>>31&4095;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<4096?G:0-G>>31&4095;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<4096?F:0-F>>31&4095;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<4096?d:0-d>>31&4095;k=k+2|0;i=i+4|0;j=j+1|0}return}function YG(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;K=c[i+(g<<2)>>2]|0;J=c[i>>2]|0;I=c[i+(h<<2)>>2]|0;H=c[i+(m<<2)>>2]|0;G=c[i+(n<<2)>>2]|0;F=c[i+(o<<2)>>2]|0;E=c[i+(p<<2)>>2]|0;d=c[i+(q<<2)>>2]|0;a=c[i+(r<<2)>>2]|0;C=c[i+(s<<2)>>2]|0;B=c[i+(t<<2)>>2]|0;D=c[i+(u<<2)>>2]|0;L=(c[i+(l<<2)>>2]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[k>>1]=L>>>0<16384?L:0-L>>31&16383;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[k+(f<<1)>>1]=K>>>0<16384?K:0-K>>31&16383;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[k+(v<<1)>>1]=J>>>0<16384?J:0-J>>31&16383;I=I+512+d+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[k+(w<<1)>>1]=I>>>0<16384?I:0-I>>31&16383;H=H+512+a+((E+F|0)*20|0)+(N(d+G|0,-5)|0)>>10;b[k+(x<<1)>>1]=H>>>0<16384?H:0-H>>31&16383;G=G+512+C+((d+E|0)*20|0)+(N(a+F|0,-5)|0)>>10;b[k+(y<<1)>>1]=G>>>0<16384?G:0-G>>31&16383;F=F+512+B+((a+d|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[k+(z<<1)>>1]=F>>>0<16384?F:0-F>>31&16383;d=E+512+D+((C+a|0)*20|0)+(N(B+d|0,-5)|0)>>10;b[k+(A<<1)>>1]=d>>>0<16384?d:0-d>>31&16383;k=k+2|0;i=i+4|0;j=j+1|0}return}function ZG(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;K=b[h+(f<<1)>>1]|0;J=b[h>>1]|0;I=b[h+(g<<1)>>1]|0;H=b[h+(l<<1)>>1]|0;G=b[h+(m<<1)>>1]|0;F=b[h+(n<<1)>>1]|0;E=b[h+(o<<1)>>1]|0;A=b[h+(p<<1)>>1]|0;B=b[h+(q<<1)>>1]|0;C=b[h+(r<<1)>>1]|0;a=b[h+(s<<1)>>1]|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=j+(d<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(u<<1)|0;J=J+512+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;I=I+512+A+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>10;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;H=H+512+B+((E+F|0)*20|0)+(N(A+G|0,-5)|0)>>10;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;G=G+512+C+((A+E|0)*20|0)+(N(B+F|0,-5)|0)>>10;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=F+512+a+((B+A|0)*20|0)+(N(C+E|0,-5)|0)>>10;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+512+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<512?A:0-A>>31&511)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function _G(c,e,f,g,h,i){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;B=h*13|0;j=e;k=0;f=f+(0-(i<<1))|0;while(1){if((k|0)==13)break;y=f+1|0;z=f+-1|0;x=f+2|0;v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+3|0;b[j>>1]=(((d[y>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+v+(d[w>>0]|0);v=N((d[w>>0]|0)+(d[f>>0]|0)|0,-5)|0;u=f+4|0;b[j+2>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+v+(d[u>>0]|0);v=N((d[u>>0]|0)+(d[y>>0]|0)|0,-5)|0;z=f+5|0;b[j+4>>1]=(((d[w>>0]|0)+(d[x>>0]|0)|0)*20|0)+(d[f>>0]|0)+v+(d[z>>0]|0);v=N((d[z>>0]|0)+(d[x>>0]|0)|0,-5)|0;A=f+6|0;b[j+6>>1]=(((d[u>>0]|0)+(d[w>>0]|0)|0)*20|0)+(d[y>>0]|0)+v+(d[A>>0]|0);v=N((d[A>>0]|0)+(d[w>>0]|0)|0,-5)|0;y=f+7|0;b[j+8>>1]=(((d[z>>0]|0)+(d[u>>0]|0)|0)*20|0)+(d[x>>0]|0)+v+(d[y>>0]|0);v=N((d[y>>0]|0)+(d[u>>0]|0)|0,-5)|0;x=f+8|0;b[j+10>>1]=(((d[A>>0]|0)+(d[z>>0]|0)|0)*20|0)+(d[w>>0]|0)+v+(d[x>>0]|0);v=N((d[x>>0]|0)+(d[z>>0]|0)|0,-5)|0;w=f+9|0;b[j+12>>1]=(((d[y>>0]|0)+(d[A>>0]|0)|0)*20|0)+(d[u>>0]|0)+v+(d[w>>0]|0);A=N((d[w>>0]|0)+(d[A>>0]|0)|0,-5)|0;b[j+14>>1]=(((d[x>>0]|0)+(d[y>>0]|0)|0)*20|0)+(d[z>>0]|0)+A+(d[f+10>>0]|0);j=j+(h<<1)|0;k=k+1|0;f=f+i|0}i=N(h,-2)|0;l=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=g<<1;w=g*3|0;x=g<<2;y=g*5|0;z=g*6|0;A=g*7|0;k=c;f=e+(B<<1)+((N(h,-11)|0)<<1)|0;j=0;while(1){if((j|0)==8)break;L=b[f+(l<<1)>>1]|0;K=b[f>>1]|0;J=b[f+(h<<1)>>1]|0;I=b[f+(m<<1)>>1]|0;H=b[f+(n<<1)>>1]|0;G=b[f+(o<<1)>>1]|0;F=b[f+(p<<1)>>1]|0;e=b[f+(q<<1)>>1]|0;C=b[f+(r<<1)>>1]|0;D=b[f+(s<<1)>>1]|0;c=b[f+(t<<1)>>1]|0;E=b[f+(u<<1)>>1]|0;B=(b[f+(i<<1)>>1]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;a[k>>0]=((d[k>>0]|0)+1+((B>>>0>255?(B^-2147483648)>>31:B)&255)|0)>>>1;B=k+g|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;a[B>>0]=((d[B>>0]|0)+1+((L>>>0>255?(L^-2147483648)>>31:L)&255)|0)>>>1;B=k+v|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;a[B>>0]=(((K>>>0>255?(K^-2147483648)>>31:K)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+w|0;J=J+512+e+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;a[B>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+x|0;I=I+512+C+((F+G|0)*20|0)+(N(e+H|0,-5)|0)>>10;a[B>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+y|0;H=H+512+D+((e+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;a[B>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+z|0;G=G+512+c+((C+e|0)*20|0)+(N(D+F|0,-5)|0)>>10;a[B>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[B>>0]|0)|0)>>>1;B=k+A|0;e=F+512+E+((D+C|0)*20|0)+(N(c+e|0,-5)|0)>>10;a[B>>0]=(((e>>>0>255?(e^-2147483648)>>31:e)&255)+1+(d[B>>0]|0)|0)>>>1;k=k+1|0;f=f+2|0;j=j+1|0}return}function $G(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0;k=h>>1;A=g*13|0;i=c;j=0;h=d+(0-(k<<1)<<1)|0;while(1){if((j|0)==13)break;x=h+2|0;y=h+-2|0;w=h+4|0;u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+6|0;b[i>>1]=(((e[x>>1]|0)+(e[h>>1]|0)|0)*20|0)+55306+(e[h+-4>>1]|0)+u+(e[v>>1]|0);u=N((e[v>>1]|0)+(e[h>>1]|0)|0,-5)|0;t=h+8|0;b[i+2>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+u+(e[t>>1]|0);u=N((e[t>>1]|0)+(e[x>>1]|0)|0,-5)|0;y=h+10|0;b[i+4>>1]=(((e[v>>1]|0)+(e[w>>1]|0)|0)*20|0)+55306+(e[h>>1]|0)+u+(e[y>>1]|0);u=N((e[y>>1]|0)+(e[w>>1]|0)|0,-5)|0;z=h+12|0;b[i+6>>1]=(((e[t>>1]|0)+(e[v>>1]|0)|0)*20|0)+55306+(e[x>>1]|0)+u+(e[z>>1]|0);u=N((e[z>>1]|0)+(e[v>>1]|0)|0,-5)|0;x=h+14|0;b[i+8>>1]=(((e[y>>1]|0)+(e[t>>1]|0)|0)*20|0)+55306+(e[w>>1]|0)+u+(e[x>>1]|0);u=N((e[x>>1]|0)+(e[t>>1]|0)|0,-5)|0;w=h+16|0;b[i+10>>1]=(((e[z>>1]|0)+(e[y>>1]|0)|0)*20|0)+55306+(e[v>>1]|0)+u+(e[w>>1]|0);u=N((e[w>>1]|0)+(e[y>>1]|0)|0,-5)|0;v=h+18|0;b[i+12>>1]=(((e[x>>1]|0)+(e[z>>1]|0)|0)*20|0)+55306+(e[t>>1]|0)+u+(e[v>>1]|0);z=N((e[v>>1]|0)+(e[z>>1]|0)|0,-5)|0;b[i+14>>1]=(((e[w>>1]|0)+(e[x>>1]|0)|0)*20|0)+55306+(e[y>>1]|0)+z+(e[h+20>>1]|0);i=i+(g<<1)|0;j=j+1|0;h=h+(k<<1)|0}d=f>>1;k=N(g,-2)|0;f=0-g|0;l=g<<1;m=g*3|0;n=g<<2;o=g*5|0;p=g*6|0;q=g*7|0;r=g<<3;s=g*9|0;t=g*10|0;u=d<<1;v=d*3|0;w=d<<2;x=d*5|0;y=d*6|0;z=d*7|0;j=a;h=c+(A<<1)+((N(g,-11)|0)<<1)|0;i=0;while(1){if((i|0)==8)break;R=b[h+(f<<1)>>1]|0;P=b[h>>1]|0;Q=P+10230|0;M=b[h+(g<<1)>>1]|0;O=M+10230|0;K=b[h+(l<<1)>>1]|0;L=K+10230|0;I=b[h+(m<<1)>>1]|0;J=I+10230|0;G=b[h+(n<<1)>>1]|0;H=G+10230|0;E=b[h+(o<<1)>>1]|0;F=E+10230|0;A=(b[h+(p<<1)>>1]|0)+10230|0;B=(b[h+(q<<1)>>1]|0)+10230|0;C=(b[h+(r<<1)>>1]|0)+10230|0;a=(b[h+(s<<1)>>1]|0)+10230|0;D=b[h+(t<<1)>>1]|0;c=(b[h+(k<<1)>>1]|0)+10742+J+((O+Q|0)*20|0)+(N(L+(R+10230)|0,-5)|0)>>10;b[j>>1]=((e[j>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=j+(d<<1)|0;Q=R+10742+H+((L+O|0)*20|0)+(N(J+Q|0,-5)|0)>>10;b[c>>1]=((e[c>>1]|0)+1+(Q>>>0<1024?Q:0-Q>>31&1023)|0)>>>1;c=j+(u<<1)|0;O=P+10742+F+((J+L|0)*20|0)+(N(H+O|0,-5)|0)>>10;b[c>>1]=((O>>>0<1024?O:0-O>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(v<<1)|0;L=M+10742+A+((H+J|0)*20|0)+(N(F+L|0,-5)|0)>>10;b[c>>1]=((L>>>0<1024?L:0-L>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(w<<1)|0;J=K+10742+B+((F+H|0)*20|0)+(N(A+J|0,-5)|0)>>10;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(x<<1)|0;H=I+10742+C+((A+F|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(y<<1)|0;F=G+10742+a+((B+A|0)*20|0)+(N(C+F|0,-5)|0)>>10;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=j+(z<<1)|0;A=E+20972+D+((C+B|0)*20|0)+(N(a+A|0,-5)|0)>>10;b[c>>1]=((A>>>0<1024?A:0-A>>31&1023)+1+(e[c>>1]|0)|0)>>>1;j=j+2|0;h=h+2|0;i=i+1|0}return}function aH(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<4096?d:0-d>>31&4095)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<4096?L:0-L>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<4096?B:0-B>>31&4095)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function bH(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;l=i>>1;B=h*13|0;j=d;k=0;i=f+(0-(l<<1)<<1)|0;while(1){if((k|0)==13)break;A=e[i>>1]|0;y=e[i+2>>1]|0;z=e[i+-2>>1]|0;x=e[i+4>>1]|0;v=N(x+z|0,-5)|0;w=e[i+6>>1]|0;c[j>>2]=((y+A|0)*20|0)+(e[i+-4>>1]|0)+v+w;v=N(w+A|0,-5)|0;u=e[i+8>>1]|0;c[j+4>>2]=((x+y|0)*20|0)+z+v+u;v=N(u+y|0,-5)|0;z=e[i+10>>1]|0;c[j+8>>2]=((w+x|0)*20|0)+A+v+z;v=N(z+x|0,-5)|0;A=e[i+12>>1]|0;c[j+12>>2]=((u+w|0)*20|0)+y+v+A;v=N(A+w|0,-5)|0;y=e[i+14>>1]|0;c[j+16>>2]=((z+u|0)*20|0)+x+v+y;v=N(y+u|0,-5)|0;x=e[i+16>>1]|0;c[j+20>>2]=((A+z|0)*20|0)+w+v+x;v=N(x+z|0,-5)|0;w=e[i+18>>1]|0;c[j+24>>2]=((y+A|0)*20|0)+u+v+w;A=N(w+A|0,-5)|0;c[j+28>>2]=((x+y|0)*20|0)+z+A+(e[i+20>>1]|0);j=j+(h<<2)|0;k=k+1|0;i=i+(l<<1)|0}f=g>>1;l=N(h,-2)|0;g=0-h|0;m=h<<1;n=h*3|0;o=h<<2;p=h*5|0;q=h*6|0;r=h*7|0;s=h<<3;t=h*9|0;u=h*10|0;v=f<<1;w=f*3|0;x=f<<2;y=f*5|0;z=f*6|0;A=f*7|0;k=a;i=d+(B<<2)+((N(h,-11)|0)<<2)|0;j=0;while(1){if((j|0)==8)break;L=c[i+(g<<2)>>2]|0;K=c[i>>2]|0;J=c[i+(h<<2)>>2]|0;I=c[i+(m<<2)>>2]|0;H=c[i+(n<<2)>>2]|0;G=c[i+(o<<2)>>2]|0;F=c[i+(p<<2)>>2]|0;B=c[i+(q<<2)>>2]|0;C=c[i+(r<<2)>>2]|0;D=c[i+(s<<2)>>2]|0;a=c[i+(t<<2)>>2]|0;E=c[i+(u<<2)>>2]|0;d=(c[i+(l<<2)>>2]|0)+512+H+((J+K|0)*20|0)+(N(I+L|0,-5)|0)>>10;b[k>>1]=((d>>>0<16384?d:0-d>>31&16383)+1+(e[k>>1]|0)|0)>>>1;d=k+(f<<1)|0;L=L+512+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>10;b[d>>1]=((L>>>0<16384?L:0-L>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(v<<1)|0;K=K+512+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>10;b[d>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(w<<1)|0;J=J+512+B+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>10;b[d>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(x<<1)|0;I=I+512+C+((F+G|0)*20|0)+(N(B+H|0,-5)|0)>>10;b[d>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(y<<1)|0;H=H+512+D+((B+F|0)*20|0)+(N(C+G|0,-5)|0)>>10;b[d>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(z<<1)|0;G=G+512+a+((C+B|0)*20|0)+(N(D+F|0,-5)|0)>>10;b[d>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[d>>1]|0)|0)>>>1;d=k+(A<<1)|0;B=F+512+E+((D+C|0)*20|0)+(N(a+B|0,-5)|0)>>10;b[d>>1]=((B>>>0<16384?B:0-B>>31&16383)+1+(e[d>>1]|0)|0)>>>1;k=k+2|0;i=i+4|0;j=j+1|0}return}function cH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<512?c:0-c>>31&511)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<512?K:0-K>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<512?J:0-J>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<512?I:0-I>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<512?H:0-H>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<512?G:0-G>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<512?F:0-F>>31&511)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<512?a:0-a>>31&511)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function dH(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;s=N(f,-2)|0;t=0-f|0;u=f<<1;v=f*3|0;w=f<<2;x=f*5|0;h=f*6|0;i=f*7|0;j=f<<3;k=f*9|0;l=f*10|0;m=e<<1;n=e*3|0;o=e<<2;p=e*5|0;q=e*6|0;r=e*7|0;g=0;while(1){if((g|0)==8)break;K=d[c+t>>0]|0;J=d[c>>0]|0;I=d[c+f>>0]|0;H=d[c+u>>0]|0;G=d[c+v>>0]|0;F=d[c+w>>0]|0;E=d[c+x>>0]|0;z=d[c+h>>0]|0;B=d[c+i>>0]|0;C=d[c+j>>0]|0;A=d[c+k>>0]|0;D=d[c+l>>0]|0;y=(d[c+s>>0]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((y>>>0>255?(y^-2147483648)>>31:y)&255)|0)>>>1;y=b+e|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;a[y>>0]=((d[y>>0]|0)+1+((K>>>0>255?(K^-2147483648)>>31:K)&255)|0)>>>1;y=b+m|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;a[y>>0]=(((J>>>0>255?(J^-2147483648)>>31:J)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+n|0;I=I+16+z+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;a[y>>0]=(((I>>>0>255?(I^-2147483648)>>31:I)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+o|0;H=H+16+B+((E+F|0)*20|0)+(N(z+G|0,-5)|0)>>5;a[y>>0]=(((H>>>0>255?(H^-2147483648)>>31:H)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+p|0;G=G+16+C+((z+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;a[y>>0]=(((G>>>0>255?(G^-2147483648)>>31:G)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+q|0;F=F+16+A+((B+z|0)*20|0)+(N(C+E|0,-5)|0)>>5;a[y>>0]=(((F>>>0>255?(F^-2147483648)>>31:F)&255)+1+(d[y>>0]|0)|0)>>>1;y=b+r|0;z=E+16+D+((C+B|0)*20|0)+(N(A+z|0,-5)|0)>>5;a[y>>0]=(((z>>>0>255?(z^-2147483648)>>31:z)&255)+1+(d[y>>0]|0)|0)>>>1;g=g+1|0;b=b+1|0;c=c+1|0}return}function eH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<1024?c:0-c>>31&1023)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<1024?K:0-K>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<1024?J:0-J>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<1024?I:0-I>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<1024?H:0-H>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<1024?G:0-G>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<1024?F:0-F>>31&1023)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<1024?a:0-a>>31&1023)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function fH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<4096?c:0-c>>31&4095)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<4096?K:0-K>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<4096?J:0-J>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<4096?I:0-I>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<4096?H:0-H>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<4096?G:0-G>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<4096?F:0-F>>31&4095)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<4096?a:0-a>>31&4095)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function gH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=d>>1;u=f>>1;v=N(u,-2)|0;w=0-u|0;x=u<<1;y=u*3|0;h=u<<2;i=u*5|0;j=u*6|0;k=u*7|0;l=u<<3;m=u*9|0;n=u*10|0;o=z<<1;p=z*3|0;q=z<<2;r=z*5|0;s=z*6|0;t=z*7|0;g=0;f=a;d=c;while(1){if((g|0)==8)break;K=e[d+(w<<1)>>1]|0;J=e[d>>1]|0;I=e[d+(u<<1)>>1]|0;H=e[d+(x<<1)>>1]|0;G=e[d+(y<<1)>>1]|0;F=e[d+(h<<1)>>1]|0;E=e[d+(i<<1)>>1]|0;a=e[d+(j<<1)>>1]|0;B=e[d+(k<<1)>>1]|0;C=e[d+(l<<1)>>1]|0;A=e[d+(m<<1)>>1]|0;D=e[d+(n<<1)>>1]|0;c=(e[d+(v<<1)>>1]|0)+16+G+((I+J|0)*20|0)+(N(H+K|0,-5)|0)>>5;b[f>>1]=((e[f>>1]|0)+1+(c>>>0<16384?c:0-c>>31&16383)|0)>>>1;c=f+(z<<1)|0;K=K+16+F+((H+I|0)*20|0)+(N(G+J|0,-5)|0)>>5;b[c>>1]=((K>>>0<16384?K:0-K>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(o<<1)|0;J=J+16+E+((G+H|0)*20|0)+(N(F+I|0,-5)|0)>>5;b[c>>1]=((J>>>0<16384?J:0-J>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(p<<1)|0;I=I+16+a+((F+G|0)*20|0)+(N(E+H|0,-5)|0)>>5;b[c>>1]=((I>>>0<16384?I:0-I>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(q<<1)|0;H=H+16+B+((E+F|0)*20|0)+(N(a+G|0,-5)|0)>>5;b[c>>1]=((H>>>0<16384?H:0-H>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(r<<1)|0;G=G+16+C+((a+E|0)*20|0)+(N(B+F|0,-5)|0)>>5;b[c>>1]=((G>>>0<16384?G:0-G>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(s<<1)|0;F=F+16+A+((B+a|0)*20|0)+(N(C+E|0,-5)|0)>>5;b[c>>1]=((F>>>0<16384?F:0-F>>31&16383)+1+(e[c>>1]|0)|0)>>>1;c=f+(t<<1)|0;a=E+16+D+((C+B|0)*20|0)+(N(A+a|0,-5)|0)>>5;b[c>>1]=((a>>>0<16384?a:0-a>>31&16383)+1+(e[c>>1]|0)|0)>>>1;g=g+1|0;f=f+2|0;d=d+2|0}return}function hH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<512?a:0-a>>31&511)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<512?n:0-n>>31&511)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<512?i:0-i>>31&511)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function iH(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=0;while(1){if((g|0)==8)break;k=c+1|0;j=c+-1|0;l=c+2|0;h=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+3|0;h=(((d[k>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+h+(d[m>>0]|0)>>5;a[b>>0]=((d[b>>0]|0)+1+((h>>>0>255?(h^-2147483648)>>31:h)&255)|0)>>>1;h=b+1|0;n=N((d[m>>0]|0)+(d[c>>0]|0)|0,-5)|0;o=c+4|0;n=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+n+(d[o>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+2|0;n=N((d[o>>0]|0)+(d[k>>0]|0)|0,-5)|0;j=c+5|0;n=(((d[m>>0]|0)+(d[l>>0]|0)|0)*20|0)+16+(d[c>>0]|0)+n+(d[j>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+3|0;n=N((d[j>>0]|0)+(d[l>>0]|0)|0,-5)|0;i=c+6|0;n=(((d[o>>0]|0)+(d[m>>0]|0)|0)*20|0)+16+(d[k>>0]|0)+n+(d[i>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+4|0;n=N((d[i>>0]|0)+(d[m>>0]|0)|0,-5)|0;k=c+7|0;n=(((d[j>>0]|0)+(d[o>>0]|0)|0)*20|0)+16+(d[l>>0]|0)+n+(d[k>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+5|0;n=N((d[k>>0]|0)+(d[o>>0]|0)|0,-5)|0;l=c+8|0;n=(((d[i>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[m>>0]|0)+n+(d[l>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+6|0;n=N((d[l>>0]|0)+(d[j>>0]|0)|0,-5)|0;m=c+9|0;n=(((d[k>>0]|0)+(d[i>>0]|0)|0)*20|0)+16+(d[o>>0]|0)+n+(d[m>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((n>>>0>255?(n^-2147483648)>>31:n)&255)|0)>>>1;h=b+7|0;i=N((d[m>>0]|0)+(d[i>>0]|0)|0,-5)|0;i=(((d[l>>0]|0)+(d[k>>0]|0)|0)*20|0)+16+(d[j>>0]|0)+i+(d[c+10>>0]|0)>>5;a[h>>0]=((d[h>>0]|0)+1+((i>>>0>255?(i^-2147483648)>>31:i)&255)|0)>>>1;c=c+f|0;b=b+e|0;g=g+1|0}return}function jH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<1024?a:0-a>>31&1023)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<1024?n:0-n>>31&1023)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<1024?i:0-i>>31&1023)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function kH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<4096?a:0-a>>31&4095)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<4096?n:0-n>>31&4095)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<4096?i:0-i>>31&4095)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function lH(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==8)break;k=c+2|0;j=c+-2|0;l=c+4|0;a=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+6|0;a=(((e[k>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+a+(e[m>>1]|0)>>5;b[d>>1]=((e[d>>1]|0)+1+(a>>>0<16384?a:0-a>>31&16383)|0)>>>1;a=d+2|0;n=N((e[m>>1]|0)+(e[c>>1]|0)|0,-5)|0;o=c+8|0;n=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+n+(e[o>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+4|0;n=N((e[o>>1]|0)+(e[k>>1]|0)|0,-5)|0;j=c+10|0;n=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+16+(e[c>>1]|0)+n+(e[j>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+6|0;n=N((e[j>>1]|0)+(e[l>>1]|0)|0,-5)|0;i=c+12|0;n=(((e[o>>1]|0)+(e[m>>1]|0)|0)*20|0)+16+(e[k>>1]|0)+n+(e[i>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+8|0;n=N((e[i>>1]|0)+(e[m>>1]|0)|0,-5)|0;k=c+14|0;n=(((e[j>>1]|0)+(e[o>>1]|0)|0)*20|0)+16+(e[l>>1]|0)+n+(e[k>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+10|0;n=N((e[k>>1]|0)+(e[o>>1]|0)|0,-5)|0;l=c+16|0;n=(((e[i>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[m>>1]|0)+n+(e[l>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+12|0;n=N((e[l>>1]|0)+(e[j>>1]|0)|0,-5)|0;m=c+18|0;n=(((e[k>>1]|0)+(e[i>>1]|0)|0)*20|0)+16+(e[o>>1]|0)+n+(e[m>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(n>>>0<16384?n:0-n>>31&16383)|0)>>>1;a=d+14|0;i=N((e[m>>1]|0)+(e[i>>1]|0)|0,-5)|0;i=(((e[l>>1]|0)+(e[k>>1]|0)|0)*20|0)+16+(e[j>>1]|0)+i+(e[c+20>>1]|0)>>5;b[a>>1]=((e[a>>1]|0)+1+(i>>>0<16384?i:0-i>>31&16383)|0)>>>1;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function mH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=LF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=LF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function nH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=QF(c[a>>2]|0,d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24)|0;h=a+4|0;i=b+4|0;c[h>>2]=QF(c[h>>2]|0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;g=g+1|0;a=a+e|0;b=b+e|0}return}function oH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=LF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=LF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function pH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=LF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=LF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function qH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=0;while(1){if((g|0)>=(f|0))break;i=a;k=b;h=k;k=k+4|0;k=LF(c[i>>2]|0,c[i+4>>2]|0,d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;h=a;c[h>>2]=k;c[h+4>>2]=y;h=a+8|0;k=h;i=b+8|0;j=i;i=i+4|0;i=LF(c[k>>2]|0,c[k+4>>2]|0,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;c[h>>2]=i;c[h+4>>2]=y;g=g+1|0;a=a+e|0;b=b+e|0}return}function rH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;AG(a,b,c,d);AG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;AG(a,b,c,d);AG(a+16|0,b+16|0,c,d);return}function sH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function tH(a,b,c){a=a|0;b=b|0;c=c|0;CG(a,b,c,32);CG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;CG(a,b+256|0,c,32);CG(a+16|0,b+272|0,c,32);return}function uH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;DG(a,b,c,d,e,32,16);DG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function vH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;EG(a,b,c,d);EG(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;EG(a,b,c,d);EG(a+8|0,b+8|0,c,d);return}function wH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=0;while(1){if((f|0)==21)break;h=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=h;a[b+1>>0]=h>>8;a[b+2>>0]=h>>16;a[b+3>>0]=h>>24;h=c+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;g=c+8|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=b+8|0;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;h=c+12|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+12|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+16|0;c=c+e|0}return}function xH(a,b,c){a=a|0;b=b|0;c=c|0;GG(a,b,c,16);GG(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;GG(a,b+128|0,c,16);GG(a+8|0,b+136|0,c,16);return}function yH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;HG(a,b,c,d,e,16,16);HG(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function zH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;IG(a,b,c,d);IG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;IG(a,b,c,d);IG(a+16|0,b+16|0,c,d);return}function AH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function BH(a,b,c){a=a|0;b=b|0;c=c|0;KG(a,b,c,32);KG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;KG(a,b+256|0,c,32);KG(a+16|0,b+272|0,c,32);return}function CH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;LG(a,b,c,d,e,32,16);LG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function DH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;MG(a,b,c,d);MG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;MG(a,b,c,d);MG(a+16|0,b+16|0,c,d);return}function EH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function FH(a,b,c){a=a|0;b=b|0;c=c|0;OG(a,b,c,32);OG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;OG(a,b+256|0,c,32);OG(a+16|0,b+272|0,c,32);return}function GH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;PG(a,b,c,d,e,32,16);PG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function HH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;QG(a,b,c,d);QG(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;QG(a,b,c,d);QG(a+16|0,b+16|0,c,d);return}function IH(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=0;while(1){if((f|0)==21)break;g=c;h=g;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+4|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=b;j=i;a[j>>0]=h;a[j+1>>0]=h>>8;a[j+2>>0]=h>>16;a[j+3>>0]=h>>24;i=i+4|0;a[i>>0]=g;a[i+1>>0]=g>>8;a[i+2>>0]=g>>16;a[i+3>>0]=g>>24;i=c+8|0;g=i;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=b+8|0;h=j;a[h>>0]=g;a[h+1>>0]=g>>8;a[h+2>>0]=g>>16;a[h+3>>0]=g>>24;j=j+4|0;a[j>>0]=i;a[j+1>>0]=i>>8;a[j+2>>0]=i>>16;a[j+3>>0]=i>>24;j=c+16|0;i=j;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=b+16|0;g=h;a[g>>0]=i;a[g+1>>0]=i>>8;a[g+2>>0]=i>>16;a[g+3>>0]=i>>24;h=h+4|0;a[h>>0]=j;a[h+1>>0]=j>>8;a[h+2>>0]=j>>16;a[h+3>>0]=j>>24;h=c+24|0;j=h;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=b+24|0;i=g;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;g=g+4|0;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+1|0;b=b+32|0;c=c+e|0}return}function JH(a,b,c){a=a|0;b=b|0;c=c|0;SG(a,b,c,32);SG(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;SG(a,b+256|0,c,32);SG(a+16|0,b+272|0,c,32);return}function KH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;TG(a,b,c,d,e,32,16);TG(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function LH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;UG(a,b,c,d,32,e);f=b+16|0;UG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;UG(a,b,c,d,32,e);UG(a+16|0,f,c+16|0,d,32,e);return}function MH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;VG(a,b,c,d,16,e);f=b+16|0;VG(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;VG(a,b,c,d,16,e);VG(a+8|0,f,c+8|0,d,16,e);return}function NH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;WG(a,b,c,d,32,e);f=b+16|0;WG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;WG(a,b,c,d,32,e);WG(a+16|0,f,c+16|0,d,32,e);return}function OH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;XG(a,b,c,d,32,e);f=b+32|0;XG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;XG(a,b,c,d,32,e);XG(a+16|0,f,c+16|0,d,32,e);return}function PH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;YG(a,b,c,d,32,e);f=b+32|0;YG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;YG(a,b,c,d,32,e);YG(a+16|0,f,c+16|0,d,32,e);return}function QH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;ZG(a,b,c,d,32,e);f=b+16|0;ZG(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;ZG(a,b,c,d,32,e);ZG(a+16|0,f,c+16|0,d,32,e);return}function RH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;_G(a,b,c,d,16,e);f=b+16|0;_G(a+8|0,f,c+8|0,d,16,e);c=c+(e<<3)|0;a=a+(d<<3)|0;_G(a,b,c,d,16,e);_G(a+8|0,f,c+8|0,d,16,e);return}function SH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;$G(a,b,c,d,32,e);f=b+16|0;$G(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;$G(a,b,c,d,32,e);$G(a+16|0,f,c+16|0,d,32,e);return}function TH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;aH(a,b,c,d,32,e);f=b+32|0;aH(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;aH(a,b,c,d,32,e);aH(a+16|0,f,c+16|0,d,32,e);return}function UH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;bH(a,b,c,d,32,e);f=b+32|0;bH(a+16|0,f,c+16|0,d,32,e);c=c+(e<<3)|0;a=a+(d<<3)|0;bH(a,b,c,d,32,e);bH(a+16|0,f,c+16|0,d,32,e);return}function VH(a,b,c){a=a|0;b=b|0;c=c|0;cH(a,b,c,32);cH(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;cH(a,b+256|0,c,32);cH(a+16|0,b+272|0,c,32);return}function WH(a,b,c){a=a|0;b=b|0;c=c|0;dH(a,b,c,16);dH(a+8|0,b+8|0,c,16);a=a+(c<<3)|0;dH(a,b+128|0,c,16);dH(a+8|0,b+136|0,c,16);return}function XH(a,b,c){a=a|0;b=b|0;c=c|0;eH(a,b,c,32);eH(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;eH(a,b+256|0,c,32);eH(a+16|0,b+272|0,c,32);return}function YH(a,b,c){a=a|0;b=b|0;c=c|0;fH(a,b,c,32);fH(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;fH(a,b+256|0,c,32);fH(a+16|0,b+272|0,c,32);return}function ZH(a,b,c){a=a|0;b=b|0;c=c|0;gH(a,b,c,32);gH(a+16|0,b+16|0,c,32);a=a+(c<<3)|0;gH(a,b+256|0,c,32);gH(a+16|0,b+272|0,c,32);return}function _H(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hH(a,b,c,d);hH(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;hH(a,b,c,d);hH(a+16|0,b+16|0,c,d);return}function $H(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;iH(a,b,c,d);iH(a+8|0,b+8|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;iH(a,b,c,d);iH(a+8|0,b+8|0,c,d);return}function aI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;jH(a,b,c,d);jH(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;jH(a,b,c,d);jH(a+16|0,b+16|0,c,d);return}function bI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kH(a,b,c,d);kH(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;kH(a,b,c,d);kH(a+16|0,b+16|0,c,d);return}function cI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;lH(a,b,c,d);lH(a+16|0,b+16|0,c,d);b=b+(d<<3)|0;a=a+(c<<3)|0;lH(a,b,c,d);lH(a+16|0,b+16|0,c,d);return}function dI(a,b,c){a=a|0;b=b|0;c=c|0;mH(a,b,c,16);mH(a+16|0,b+16|0,c,16);return}function eI(a,b,c){a=a|0;b=b|0;c=c|0;nH(a,b,c,16);nH(a+8|0,b+8|0,c,16);return}function fI(a,b,c){a=a|0;b=b|0;c=c|0;oH(a,b,c,16);oH(a+16|0,b+16|0,c,16);return}function gI(a,b,c){a=a|0;b=b|0;c=c|0;pH(a,b,c,16);pH(a+16|0,b+16|0,c,16);return}function hI(a,b,c){a=a|0;b=b|0;c=c|0;qH(a,b,c,16);qH(a+16|0,b+16|0,c,16);return}function iI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<512?l:0-l>>31&511;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<512?a:0-a>>31&511;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function jI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function kI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<512?c:0-c>>31&511;f=f+1|0;a=a+2|0;d=d+2|0}return}function lI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=LF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function mI(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=0;while(1){if((g|0)==2)break;j=c+1|0;i=c+-1|0;k=c+2|0;l=N((d[k>>0]|0)+(d[i>>0]|0)|0,-5)|0;h=c+3|0;l=(((d[j>>0]|0)+(d[c>>0]|0)|0)*20|0)+16+(d[c+-2>>0]|0)+l+(d[h>>0]|0)>>5;a[b>>0]=l>>>0>255?(l^-2147483648)>>31:l;h=N((d[h>>0]|0)+(d[c>>0]|0)|0,-5)|0;h=(((d[k>>0]|0)+(d[j>>0]|0)|0)*20|0)+16+(d[i>>0]|0)+h+(d[c+4>>0]|0)>>5;a[b+1>>0]=h>>>0>255?(h^-2147483648)>>31:h;c=c+f|0;b=b+e|0;g=g+1|0}return}function nI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8;a[b>>0]=g;a[b+1>>0]=g>>8;f=f+1|0;c=c+e|0;b=b+2|0}return}function oI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=0;while(1){if((f|0)==2)break;l=d[c+-2>>0]|0;g=d[c>>0]|0;i=d[c+2>>0]|0;j=d[c+4>>0]|0;h=d[c+6>>0]|0;k=d[c+8>>0]|0;m=(d[c+-4>>0]|0)+16+h+((i+g|0)*20|0)+(N(j+l|0,-5)|0)>>5;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;g=l+16+k+((j+i|0)*20|0)+(N(h+g|0,-5)|0)>>5;a[b+e>>0]=g>>>0>255?(g^-2147483648)>>31:g;f=f+1|0;b=b+1|0;c=c+1|0}return}function pI(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=c+(N(h,g)|0)|0;i=e+(h<<1)|0;b[a+(N(h,f)|0)>>1]=QF((d[j>>0]|d[j+1>>0]<<8)&65535,(d[i>>0]|d[i+1>>0]<<8)&65535)|0;h=h+1|0}return}function qI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<1024?l:0-l>>31&1023;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<1024?a:0-a>>31&1023;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function rI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function sI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<1024?c:0-c>>31&1023;f=f+1|0;a=a+2|0;d=d+2|0}return}function tI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=LF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function uI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<4096?l:0-l>>31&4095;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<4096?a:0-a>>31&4095;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function vI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function wI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<4096?c:0-c>>31&4095;f=f+1|0;a=a+2|0;d=d+2|0}return}function xI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=LF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function yI(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=d>>1;g=f>>1;d=a;f=0;while(1){if((f|0)==2)break;j=c+2|0;i=c+-2|0;k=c+4|0;l=N((e[k>>1]|0)+(e[i>>1]|0)|0,-5)|0;a=c+6|0;l=(((e[j>>1]|0)+(e[c>>1]|0)|0)*20|0)+16+(e[c+-4>>1]|0)+l+(e[a>>1]|0)>>5;b[d>>1]=l>>>0<16384?l:0-l>>31&16383;a=N((e[a>>1]|0)+(e[c>>1]|0)|0,-5)|0;a=(((e[k>>1]|0)+(e[j>>1]|0)|0)*20|0)+16+(e[i>>1]|0)+a+(e[c+8>>1]|0)>>5;b[d+2>>1]=a>>>0<16384?a:0-a>>31&16383;c=c+(g<<1)|0;d=d+(h<<1)|0;f=f+1|0}return}function zI(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=0;while(1){if((f|0)==7)break;g=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;a[b>>0]=g;a[b+1>>0]=g>>8;a[b+2>>0]=g>>16;a[b+3>>0]=g>>24;f=f+1|0;c=c+e|0;b=b+4|0}return}function AI(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=d>>1;f=0;d=c;while(1){if((f|0)==2)break;l=e[d+-4>>1]|0;c=e[d>>1]|0;i=e[d+4>>1]|0;j=e[d+8>>1]|0;h=e[d+12>>1]|0;k=e[d+16>>1]|0;m=(e[d+-8>>1]|0)+16+h+((i+c|0)*20|0)+(N(j+l|0,-5)|0)>>5;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=l+16+k+((j+i|0)*20|0)+(N(h+c|0,-5)|0)>>5;b[a+(g<<1)>>1]=c>>>0<16384?c:0-c>>31&16383;f=f+1|0;a=a+2|0;d=d+2|0}return}function BI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==2)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;i=LF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,0,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,0)|0;c[a+(N(h,f)|0)>>2]=i;h=h+1|0}return}function CI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=b[g>>1]|0;l=b[g+8>>1]|0;k=b[g+16>>1]|0;m=b[g+24>>1]|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+512+m+((l+n|0)*20|0)+(N(k+f|0,-5)|0)>>10;b[a>>1]=j>>>0<512?j:0-j>>31&511;n=f+512+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<512?n:0-n>>31&511;a=a+2|0;g=g+2|0;h=h+1|0}return}function DI(c,e,f,g,h){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=e;j=0;f=f+(0-(h<<1))|0;while(1){if((j|0)==7)break;m=f+1|0;l=f+-1|0;n=f+2|0;o=N((d[n>>0]|0)+(d[l>>0]|0)|0,-5)|0;k=f+3|0;b[i>>1]=(((d[m>>0]|0)+(d[f>>0]|0)|0)*20|0)+(d[f+-2>>0]|0)+o+(d[k>>0]|0);k=N((d[k>>0]|0)+(d[f>>0]|0)|0,-5)|0;b[i+2>>1]=(((d[n>>0]|0)+(d[m>>0]|0)|0)*20|0)+(d[l>>0]|0)+k+(d[f+4>>0]|0);i=i+4|0;j=j+1|0;f=f+h|0}f=e+8|0;i=0;while(1){if((i|0)==2)break;e=b[f+-4>>1]|0;o=b[f>>1]|0;m=b[f+4>>1]|0;l=b[f+8>>1]|0;n=b[f+12>>1]|0;k=b[f+16>>1]|0;h=(b[f+-8>>1]|0)+512+n+((m+o|0)*20|0)+(N(l+e|0,-5)|0)>>10;a[c>>0]=h>>>0>255?(h^-2147483648)>>31:h;o=e+512+k+((l+m|0)*20|0)+(N(n+o|0,-5)|0)>>10;a[c+g>>0]=o>>>0>255?(o^-2147483648)>>31:o;c=c+1|0;f=f+2|0;i=i+1|0}return}function EI(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=g>>1;h=c;i=0;g=d+(0-(j<<1)<<1)|0;while(1){if((i|0)==7)break;l=g+2|0;k=g+-2|0;m=g+4|0;n=N((e[m>>1]|0)+(e[k>>1]|0)|0,-5)|0;d=g+6|0;b[h>>1]=(((e[l>>1]|0)+(e[g>>1]|0)|0)*20|0)+55306+(e[g+-4>>1]|0)+n+(e[d>>1]|0);d=N((e[d>>1]|0)+(e[g>>1]|0)|0,-5)|0;b[h+2>>1]=(((e[m>>1]|0)+(e[l>>1]|0)|0)*20|0)+55306+(e[k>>1]|0)+d+(e[g+8>>1]|0);h=h+8|0;i=i+1|0;g=g+(j<<1)|0}i=f>>1;g=c+16|0;h=0;while(1){if((h|0)==2)break;f=b[g+-8>>1]|0;n=(b[g>>1]|0)+10230|0;l=(b[g+8>>1]|0)+10230|0;k=(b[g+16>>1]|0)+10230|0;m=(b[g+24>>1]|0)+10230|0;c=b[g+32>>1]|0;j=(b[g+-16>>1]|0)+10742+m+((l+n|0)*20|0)+(N(k+(f+10230)|0,-5)|0)>>10;b[a>>1]=j>>>0<1024?j:0-j>>31&1023;n=f+20972+c+((k+l|0)*20|0)+(N(m+n|0,-5)|0)>>10;b[a+(i<<1)>>1]=n>>>0<1024?n:0-n>>31&1023;a=a+2|0;g=g+2|0;h=h+1|0}return}function FI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<4096?g:0-g>>31&4095;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<4096?p:0-p>>31&4095;a=a+2|0;h=h+4|0;i=i+1|0}return}function GI(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=h>>1;i=d;j=0;h=f+(0-(k<<1)<<1)|0;while(1){if((j|0)==7)break;f=e[h>>1]|0;m=e[h+2>>1]|0;l=e[h+-2>>1]|0;n=e[h+4>>1]|0;p=N(n+l|0,-5)|0;o=e[h+6>>1]|0;c[i>>2]=((m+f|0)*20|0)+(e[h+-4>>1]|0)+p+o;f=N(o+f|0,-5)|0;c[i+4>>2]=((n+m|0)*20|0)+l+f+(e[h+8>>1]|0);i=i+16|0;j=j+1|0;h=h+(k<<1)|0}j=g>>1;h=d+32|0;i=0;while(1){if((i|0)==2)break;d=c[h+-16>>2]|0;p=c[h>>2]|0;n=c[h+16>>2]|0;m=c[h+32>>2]|0;o=c[h+48>>2]|0;l=c[h+64>>2]|0;g=(c[h+-32>>2]|0)+512+o+((n+p|0)*20|0)+(N(m+d|0,-5)|0)>>10;b[a>>1]=g>>>0<16384?g:0-g>>31&16383;p=d+512+l+((m+n|0)*20|0)+(N(o+p|0,-5)|0)>>10;b[a+(j<<1)>>1]=p>>>0<16384?p:0-p>>31&16383;a=a+2|0;h=h+4|0;i=i+1|0}return}function HI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function II(a,c,e){a=a|0;c=c|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;b[a>>1]=d[c>>0]|d[c+1>>0]<<8;f=f+1|0;c=c+e|0;a=a+e|0}return}function JI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function KI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function LI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==2)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function MI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=LF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function NI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=0;while(1){if((h|0)==4)break;j=b+(N(h,g)|0)|0;i=e+(h<<2)|0;c[a+(N(h,f)|0)>>2]=QF(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)|0;h=h+1|0}return}function OI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=LF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function PI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=LF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function QI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=0;while(1){if((h|0)==4)break;k=b+(N(h,g)|0)|0;l=k;k=k+4|0;j=e+(h<<3)|0;i=j;j=j+4|0;j=LF(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)|0;i=a+(N(h,f)|0)|0;c[i>>2]=j;c[i+4>>2]=y;h=h+1|0}return}function RI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function SI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;f=f+1|0;b=b+e|0;a=a+e|0}return}function TI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function UI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function VI(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=0;while(1){if((f|0)==4)break;h=b;i=h;h=h+4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=a;c[g>>2]=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;c[g+4>>2]=h;f=f+1|0;b=b+e|0;a=a+e|0}return}function WI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=LF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function XI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=0;while(1){if((j|0)>=(i|0))break;m=N(j,g)|0;o=b+m|0;l=N(j,h)|0;n=e+l|0;k=N(j,f)|0;c[a+k>>2]=QF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24)|0;m=b+(m+4)|0;l=e+(l+4)|0;c[a+(k+4)>>2]=QF(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;j=j+1|0}return}function YI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=LF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function ZI(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=LF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function _I(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=0;while(1){if((j|0)>=(i|0))break;n=N(j,g)|0;o=b+n|0;p=o;o=o+4|0;l=N(j,h)|0;m=e+l|0;k=m;m=m+4|0;m=LF(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24,d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)|0;k=N(j,f)|0;o=a+k|0;c[o>>2]=m;c[o+4>>2]=y;n=b+(n+8)|0;o=n;n=n+4|0;l=e+(l+8)|0;m=l;l=l+4|0;l=LF(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24,d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24,d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24,d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)|0;k=a+(k+8)|0;c[k>>2]=l;c[k+4>>2]=y;j=j+1|0}return}function $I(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function aJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(f|0))break;c[a>>2]=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;h=b+4|0;c[a+4>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=g+1|0;a=a+e|0;b=b+e|0}return}function bJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function cJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function dJ(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=0;while(1){if((g|0)>=(f|0))break;j=b;h=j;j=j+4|0;j=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;i=a;c[i>>2]=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;c[i+4>>2]=j;i=b+8|0;j=i;i=i+4|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=a+8|0;c[h>>2]=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;c[h+4>>2]=i;g=g+1|0;a=a+e|0;b=b+e|0}return}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;WI(a,b,c,d,e,32,16);WI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;XI(a,b,c,d,e,16,16);XI(a+8|0,b+8|0,c+8|0,d,e,16,16);return}function gJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;YI(a,b,c,d,e,32,16);YI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function hJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ZI(a,b,c,d,e,32,16);ZI(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function iJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_I(a,b,c,d,e,32,16);_I(a+16|0,b+16|0,c+16|0,d,e,32,16);return}function jJ(a,b,c){a=a|0;b=b|0;c=c|0;$I(a,b,c,16);$I(a+16|0,b+16|0,c,16);return}function kJ(a,b,c){a=a|0;b=b|0;c=c|0;aJ(a,b,c,16);aJ(a+8|0,b+8|0,c,16);return}function lJ(a,b,c){a=a|0;b=b|0;c=c|0;bJ(a,b,c,16);bJ(a+16|0,b+16|0,c,16);return}function mJ(a,b,c){a=a|0;b=b|0;c=c|0;cJ(a,b,c,16);cJ(a+16|0,b+16|0,c,16);return}function nJ(a,b,c){a=a|0;b=b|0;c=c|0;dJ(a,b,c,16);dJ(a+16|0,b+16|0,c,16);return}function oJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(s,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(s,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(s,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(s,e[c+6>>1]|0)|0)+32|0)>>>6;b[a+8>>1]=((N(s,e[c+8>>1]|0)|0)+32|0)>>>6;b[a+10>>1]=((N(s,e[c+10>>1]|0)|0)+32|0)>>>6;b[a+12>>1]=((N(s,e[c+12>>1]|0)|0)+32|0)>>>6;b[a+14>>1]=((N(s,e[c+14>>1]|0)|0)+32|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=(q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+2>>1]|0)|0;b[a+2>>1]=(q+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+4>>1]|0)|0;b[a+4>>1]=(q+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+6>>1]|0)|0;b[a+6>>1]=(q+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+8>>1]|0)|0;b[a+8>>1]=(q+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+10>>1]|0)|0;b[a+10>>1]=(q+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+12>>1]|0)|0;b[a+12>>1]=(q+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6;q=N(s,e[c+14>>1]|0)|0;b[a+14>>1]=(q+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,e[c>>1]|0)|0;u=c+2|0;x=N(p,e[u>>1]|0)|0;t=c+(r<<1)|0;y=N(q,e[t>>1]|0)|0;w=c+(h<<1)|0;b[a>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+4|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(d<<1)|0;b[a+2>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+6|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(i<<1)|0;b[a+4>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=c+8|0;x=N(p,e[v>>1]|0)|0;u=N(q,e[u>>1]|0)|0;y=c+(j<<1)|0;b[a+6>>1]=(w+32+x+u+(N(o,e[y>>1]|0)|0)|0)>>>6;v=N(s,e[v>>1]|0)|0;u=c+10|0;x=N(p,e[u>>1]|0)|0;y=N(q,e[y>>1]|0)|0;w=c+(k<<1)|0;b[a+8>>1]=(v+32+x+y+(N(o,e[w>>1]|0)|0)|0)>>>6;u=N(s,e[u>>1]|0)|0;y=c+12|0;x=N(p,e[y>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(l<<1)|0;b[a+10>>1]=(u+32+x+w+(N(o,e[v>>1]|0)|0)|0)>>>6;y=N(s,e[y>>1]|0)|0;w=c+14|0;x=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;u=c+(m<<1)|0;b[a+12>>1]=(y+32+x+v+(N(o,e[u>>1]|0)|0)|0)>>>6;w=N(s,e[w>>1]|0)|0;v=N(p,e[c+16>>1]|0)|0;u=N(q,e[u>>1]|0)|0;b[a+14>>1]=(w+32+v+u+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function pJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(s,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(s,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(s,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(s,d[c+3>>0]|0)|0)+32|0)>>>6;a[b+4>>0]=((N(s,d[c+4>>0]|0)|0)+32|0)>>>6;a[b+5>>0]=((N(s,d[c+5>>0]|0)|0)+32|0)>>>6;a[b+6>>0]=((N(s,d[c+6>>0]|0)|0)+32|0)>>>6;a[b+7>>0]=((N(s,d[c+7>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=(r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6;r=N(s,d[c+1>>0]|0)|0;a[b+1>>0]=(r+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6;r=N(s,d[c+2>>0]|0)|0;a[b+2>>0]=(r+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6;r=N(s,d[c+3>>0]|0)|0;a[b+3>>0]=(r+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6;r=N(s,d[c+4>>0]|0)|0;a[b+4>>0]=(r+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6;r=N(s,d[c+5>>0]|0)|0;a[b+5>>0]=(r+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6;r=N(s,d[c+6>>0]|0)|0;a[b+6>>0]=(r+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6;r=N(s,d[c+7>>0]|0)|0;a[b+7>>0]=(r+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;v=N(s,d[c>>0]|0)|0;u=c+1|0;x=N(q,d[u>>0]|0)|0;t=c+e|0;y=N(r,d[t>>0]|0)|0;w=c+i|0;a[b>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+2|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+j|0;a[b+1>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+3|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+k|0;a[b+2>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=c+4|0;x=N(q,d[v>>0]|0)|0;u=N(r,d[u>>0]|0)|0;y=c+l|0;a[b+3>>0]=(w+32+x+u+(N(h,d[y>>0]|0)|0)|0)>>>6;v=N(s,d[v>>0]|0)|0;u=c+5|0;x=N(q,d[u>>0]|0)|0;y=N(r,d[y>>0]|0)|0;w=c+m|0;a[b+4>>0]=(v+32+x+y+(N(h,d[w>>0]|0)|0)|0)>>>6;u=N(s,d[u>>0]|0)|0;y=c+6|0;x=N(q,d[y>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+n|0;a[b+5>>0]=(u+32+x+w+(N(h,d[v>>0]|0)|0)|0)>>>6;y=N(s,d[y>>0]|0)|0;w=c+7|0;x=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;u=c+o|0;a[b+6>>0]=(y+32+x+v+(N(h,d[u>>0]|0)|0)|0)>>>6;w=N(s,d[w>>0]|0)|0;v=N(q,d[c+8>>0]|0)|0;u=N(r,d[u>>0]|0)|0;a[b+7>>0]=(w+32+v+u+(N(h,d[c+p>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=t}}while(0);return}function qJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(o,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(o,e[c+2>>1]|0)|0)+32|0)>>>6;b[a+4>>1]=((N(o,e[c+4>>1]|0)|0)+32|0)>>>6;b[a+6>>1]=((N(o,e[c+6>>1]|0)|0)+32|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=(m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+2>>1]|0)|0;b[a+2>>1]=(m+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+4>>1]|0)|0;b[a+4>>1]=(m+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6;m=N(o,e[c+6>>1]|0)|0;b[a+6>>1]=(m+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,e[c>>1]|0)|0;q=c+2|0;t=N(l,e[q>>1]|0)|0;p=c+(n<<1)|0;u=N(m,e[p>>1]|0)|0;s=c+(h<<1)|0;b[a>>1]=(r+32+t+u+(N(k,e[s>>1]|0)|0)|0)>>>6;q=N(o,e[q>>1]|0)|0;u=c+4|0;t=N(l,e[u>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(d<<1)|0;b[a+2>>1]=(q+32+t+s+(N(k,e[r>>1]|0)|0)|0)>>>6;u=N(o,e[u>>1]|0)|0;s=c+6|0;t=N(l,e[s>>1]|0)|0;r=N(m,e[r>>1]|0)|0;q=c+(i<<1)|0;b[a+4>>1]=(u+32+t+r+(N(k,e[q>>1]|0)|0)|0)>>>6;s=N(o,e[s>>1]|0)|0;r=N(l,e[c+8>>1]|0)|0;q=N(m,e[q>>1]|0)|0;b[a+6>>1]=(s+32+r+q+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function rJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(o,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(o,d[c+1>>0]|0)|0)+32|0)>>>6;a[b+2>>0]=((N(o,d[c+2>>0]|0)|0)+32|0)>>>6;a[b+3>>0]=((N(o,d[c+3>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=(n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6;n=N(o,d[c+1>>0]|0)|0;a[b+1>>0]=(n+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6;n=N(o,d[c+2>>0]|0)|0;a[b+2>>0]=(n+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6;n=N(o,d[c+3>>0]|0)|0;a[b+3>>0]=(n+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(o,d[c>>0]|0)|0;q=c+1|0;t=N(m,d[q>>0]|0)|0;p=c+e|0;u=N(n,d[p>>0]|0)|0;s=c+i|0;a[b>>0]=(r+32+t+u+(N(h,d[s>>0]|0)|0)|0)>>>6;q=N(o,d[q>>0]|0)|0;u=c+2|0;t=N(m,d[u>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+j|0;a[b+1>>0]=(q+32+t+s+(N(h,d[r>>0]|0)|0)|0)>>>6;u=N(o,d[u>>0]|0)|0;s=c+3|0;t=N(m,d[s>>0]|0)|0;r=N(n,d[r>>0]|0)|0;q=c+k|0;a[b+2>>0]=(u+32+t+r+(N(h,d[q>>0]|0)|0)|0)>>>6;s=N(o,d[s>>0]|0)|0;r=N(m,d[c+4>>0]|0)|0;q=N(n,d[q>>0]|0)|0;a[b+3>>0]=(s+32+r+q+(N(h,d[c+l>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=p}}while(0);return}function sJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;b[a+2>>1]=((N(m,e[c+2>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;c=c+(l<<1)|0;g=g+1|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;k=N(m,e[c+2>>1]|0)|0;b[a+2>>1]=(k+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;q=c+2|0;r=N(j,e[q>>1]|0)|0;n=c+(l<<1)|0;p=N(k,e[n>>1]|0)|0;o=c+(h<<1)|0;b[a>>1]=(s+32+r+p+(N(i,e[o>>1]|0)|0)|0)>>>6;q=N(m,e[q>>1]|0)|0;p=N(j,e[c+4>>1]|0)|0;o=N(k,e[o>>1]|0)|0;b[a+2>>1]=(q+32+p+o+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function tJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(m,d[c>>0]|0)|0)+32|0)>>>6;a[b+1>>0]=((N(m,d[c+1>>0]|0)|0)+32|0)>>>6;b=b+e|0;c=c+e|0;g=g+1|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=(l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6;l=N(m,d[c+1>>0]|0)|0;a[b+1>>0]=(l+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;q=c+1|0;r=N(k,d[q>>0]|0)|0;n=c+e|0;p=N(l,d[n>>0]|0)|0;o=c+i|0;a[b>>0]=(s+32+r+p+(N(h,d[o>>0]|0)|0)|0)>>>6;q=N(m,d[q>>0]|0)|0;p=N(k,d[c+2>>0]|0)|0;o=N(l,d[o>>0]|0)|0;a[b+1>>0]=(q+32+p+o+(N(h,d[c+j>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=n}}while(0);return}function uJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((N(m,e[c>>1]|0)|0)+32|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=(k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=(p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function vJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((N(l,d[c>>0]|0)|0)+32|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=(k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=(p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6;b=b+e|0;g=g+1|0;c=m}}while(0);return}function wJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=8-g|0;p=8-h|0;s=N(p,q)|0;p=N(p,g)|0;q=N(q,h)|0;o=N(h,g)|0;r=d>>1;a:do if(!o){o=p+q|0;if(!o){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(s,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+2|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+4|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+6|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+8|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+8>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+10|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+10>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+12|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+12>>1]|0)|0)+32|0)>>>6)|0)>>>1;q=a+14|0;b[q>>1]=((e[q>>1]|0)+1+(((N(s,e[c+14>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}h=q|0?r:1;d=h+1|0;i=h+2|0;j=h+3|0;k=h+4|0;l=h+5|0;m=h+6|0;n=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;q=N(s,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((q+32+(N(o,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;p=N(s,e[c+2>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;p=N(s,e[c+4>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;p=N(s,e[c+6>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+8|0;p=N(s,e[c+8>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(k<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+10|0;p=N(s,e[c+10>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(l<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+12|0;p=N(s,e[c+12>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(m<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+14|0;p=N(s,e[c+14>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((p+32+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=c+(r<<1)|0}}else{h=r+1|0;d=r+2|0;i=r+3|0;j=r+4|0;k=r+5|0;l=r+6|0;m=r+7|0;n=r+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,e[c>>1]|0)|0;v=c+2|0;z=N(p,e[v>>1]|0)|0;t=c+(r<<1)|0;u=N(q,e[t>>1]|0)|0;x=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((y+32+z+u+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+2|0;v=N(s,e[v>>1]|0)|0;z=c+4|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(d<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+4|0;z=N(s,e[z>>1]|0)|0;x=c+6|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(i<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+6|0;x=N(s,e[x>>1]|0)|0;w=c+8|0;y=N(p,e[w>>1]|0)|0;v=N(q,e[v>>1]|0)|0;z=c+(j<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+y+v+(N(o,e[z>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+8|0;w=N(s,e[w>>1]|0)|0;v=c+10|0;y=N(p,e[v>>1]|0)|0;z=N(q,e[z>>1]|0)|0;x=c+(k<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((w+32+y+z+(N(o,e[x>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+10|0;v=N(s,e[v>>1]|0)|0;z=c+12|0;y=N(p,e[z>>1]|0)|0;x=N(q,e[x>>1]|0)|0;w=c+(l<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((v+32+y+x+(N(o,e[w>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+12|0;z=N(s,e[z>>1]|0)|0;x=c+14|0;y=N(p,e[x>>1]|0)|0;w=N(q,e[w>>1]|0)|0;v=c+(m<<1)|0;b[u>>1]=((e[u>>1]|0)+1+((z+32+y+w+(N(o,e[v>>1]|0)|0)|0)>>>6)|0)>>>1;u=a+14|0;x=N(s,e[x>>1]|0)|0;w=N(p,e[c+16>>1]|0)|0;v=N(q,e[v>>1]|0)|0;b[u>>1]=((e[u>>1]|0)+1+((x+32+w+v+(N(o,e[c+(n<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(r<<1)|0;g=g+1|0;c=t}}while(0);return}function xJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;r=8-g|0;q=8-h|0;s=N(q,r)|0;q=N(q,g)|0;r=N(r,h)|0;h=N(h,g)|0;a:do if(!h){p=q+r|0;if(!p){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(s,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+1|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+2|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+3|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+4|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+4>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+5|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+5>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+6|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+6>>0]|0)|0)+32|0)>>>6)|0)>>>1;r=b+7|0;a[r>>0]=((d[r>>0]|0)+1+(((N(s,d[c+7>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=r|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;l=h+4|0;m=h+5|0;n=h+6|0;o=h+7|0;g=0;while(1){if((g|0)>=(f|0))break a;r=N(s,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((r+32+(N(p,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+1|0;q=N(s,d[c+1>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+2|0;q=N(s,d[c+2>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+3|0;q=N(s,d[c+3>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+4|0;q=N(s,d[c+4>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+5|0;q=N(s,d[c+5>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+m>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+6|0;q=N(s,d[c+6>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+n>>0]|0)|0)|0)>>>6)|0)>>>1;r=b+7|0;q=N(s,d[c+7>>0]|0)|0;a[r>>0]=((d[r>>0]|0)+1+((q+32+(N(p,d[c+o>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;m=e+5|0;n=e+6|0;o=e+7|0;p=e+8|0;g=0;while(1){if((g|0)>=(f|0))break a;y=N(s,d[c>>0]|0)|0;v=c+1|0;z=N(q,d[v>>0]|0)|0;t=c+e|0;u=N(r,d[t>>0]|0)|0;x=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((y+32+z+u+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+1|0;v=N(s,d[v>>0]|0)|0;z=c+2|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+j|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+2|0;z=N(s,d[z>>0]|0)|0;x=c+3|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+k|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+3|0;x=N(s,d[x>>0]|0)|0;w=c+4|0;y=N(q,d[w>>0]|0)|0;v=N(r,d[v>>0]|0)|0;z=c+l|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+y+v+(N(h,d[z>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+4|0;w=N(s,d[w>>0]|0)|0;v=c+5|0;y=N(q,d[v>>0]|0)|0;z=N(r,d[z>>0]|0)|0;x=c+m|0;a[u>>0]=((d[u>>0]|0)+1+((w+32+y+z+(N(h,d[x>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+5|0;v=N(s,d[v>>0]|0)|0;z=c+6|0;y=N(q,d[z>>0]|0)|0;x=N(r,d[x>>0]|0)|0;w=c+n|0;a[u>>0]=((d[u>>0]|0)+1+((v+32+y+x+(N(h,d[w>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+6|0;z=N(s,d[z>>0]|0)|0;x=c+7|0;y=N(q,d[x>>0]|0)|0;w=N(r,d[w>>0]|0)|0;v=c+o|0;a[u>>0]=((d[u>>0]|0)+1+((z+32+y+w+(N(h,d[v>>0]|0)|0)|0)>>>6)|0)>>>1;u=b+7|0;x=N(s,d[x>>0]|0)|0;w=N(q,d[c+8>>0]|0)|0;v=N(r,d[v>>0]|0)|0;a[u>>0]=((d[u>>0]|0)+1+((x+32+w+v+(N(h,d[c+p>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=t}}while(0);return}function yJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=8-g|0;l=8-h|0;o=N(l,m)|0;l=N(l,g)|0;m=N(m,h)|0;k=N(h,g)|0;n=d>>1;a:do if(!k){k=l+m|0;if(!k){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(o,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+2|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+4|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+4>>1]|0)|0)+32|0)>>>6)|0)>>>1;m=a+6|0;b[m>>1]=((e[m>>1]|0)+1+(((N(o,e[c+6>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}h=m|0?n:1;d=h+1|0;i=h+2|0;j=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;m=N(o,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((m+32+(N(k,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+2|0;l=N(o,e[c+2>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+4|0;l=N(o,e[c+4>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(i<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;m=a+6|0;l=N(o,e[c+6>>1]|0)|0;b[m>>1]=((e[m>>1]|0)+1+((l+32+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=c+(n<<1)|0}}else{h=n+1|0;d=n+2|0;i=n+3|0;j=n+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,e[c>>1]|0)|0;r=c+2|0;v=N(l,e[r>>1]|0)|0;p=c+(n<<1)|0;q=N(m,e[p>>1]|0)|0;t=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((u+32+v+q+(N(k,e[t>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+2|0;r=N(o,e[r>>1]|0)|0;v=c+4|0;u=N(l,e[v>>1]|0)|0;t=N(m,e[t>>1]|0)|0;s=c+(d<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((r+32+u+t+(N(k,e[s>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+4|0;v=N(o,e[v>>1]|0)|0;t=c+6|0;u=N(l,e[t>>1]|0)|0;s=N(m,e[s>>1]|0)|0;r=c+(i<<1)|0;b[q>>1]=((e[q>>1]|0)+1+((v+32+u+s+(N(k,e[r>>1]|0)|0)|0)>>>6)|0)>>>1;q=a+6|0;t=N(o,e[t>>1]|0)|0;s=N(l,e[c+8>>1]|0)|0;r=N(m,e[r>>1]|0)|0;b[q>>1]=((e[q>>1]|0)+1+((t+32+s+r+(N(k,e[c+(j<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(n<<1)|0;g=g+1|0;c=p}}while(0);return}function zJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=8-g|0;m=8-h|0;o=N(m,n)|0;m=N(m,g)|0;n=N(n,h)|0;h=N(h,g)|0;a:do if(!h){l=m+n|0;if(!l){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(o,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+1|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+2|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+2>>0]|0)|0)+32|0)>>>6)|0)>>>1;n=b+3|0;a[n>>0]=((d[n>>0]|0)+1+(((N(o,d[c+3>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=n|0?e:1;i=h+1|0;j=h+2|0;k=h+3|0;g=0;while(1){if((g|0)>=(f|0))break a;n=N(o,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((n+32+(N(l,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+1|0;m=N(o,d[c+1>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+2|0;m=N(o,d[c+2>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;n=b+3|0;m=N(o,d[c+3>>0]|0)|0;a[n>>0]=((d[n>>0]|0)+1+((m+32+(N(l,d[c+k>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;k=e+3|0;l=e+4|0;g=0;while(1){if((g|0)>=(f|0))break a;u=N(o,d[c>>0]|0)|0;r=c+1|0;v=N(m,d[r>>0]|0)|0;p=c+e|0;q=N(n,d[p>>0]|0)|0;t=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((u+32+v+q+(N(h,d[t>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+1|0;r=N(o,d[r>>0]|0)|0;v=c+2|0;u=N(m,d[v>>0]|0)|0;t=N(n,d[t>>0]|0)|0;s=c+j|0;a[q>>0]=((d[q>>0]|0)+1+((r+32+u+t+(N(h,d[s>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+2|0;v=N(o,d[v>>0]|0)|0;t=c+3|0;u=N(m,d[t>>0]|0)|0;s=N(n,d[s>>0]|0)|0;r=c+k|0;a[q>>0]=((d[q>>0]|0)+1+((v+32+u+s+(N(h,d[r>>0]|0)|0)|0)>>>6)|0)>>>1;q=b+3|0;t=N(o,d[t>>0]|0)|0;s=N(m,d[c+4>>0]|0)|0;r=N(n,d[r>>0]|0)|0;a[q>>0]=((d[q>>0]|0)+1+((t+32+s+r+(N(h,d[c+l>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=p}}while(0);return}function AJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;k=a+2|0;b[k>>1]=((e[k>>1]|0)+1+(((N(m,e[c+2>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;d=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;k=a+2|0;j=N(m,e[c+2>>1]|0)|0;b[k>>1]=((e[k>>1]|0)+1+((j+32+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;d=l+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,e[c>>1]|0)|0;r=c+2|0;q=N(j,e[r>>1]|0)|0;n=c+(l<<1)|0;o=N(k,e[n>>1]|0)|0;p=c+(h<<1)|0;b[a>>1]=((e[a>>1]|0)+1+((s+32+q+o+(N(i,e[p>>1]|0)|0)|0)>>>6)|0)>>>1;o=a+2|0;r=N(m,e[r>>1]|0)|0;q=N(j,e[c+4>>1]|0)|0;p=N(k,e[p>>1]|0)|0;b[o>>1]=((e[o>>1]|0)+1+((r+32+q+p+(N(i,e[c+(d<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=n}}while(0);return}function BJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=8-g|0;k=8-h|0;m=N(k,l)|0;k=N(k,g)|0;l=N(l,h)|0;h=N(h,g)|0;a:do if(!h){j=k+l|0;if(!j){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(m,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;l=b+1|0;a[l>>0]=((d[l>>0]|0)+1+(((N(m,d[c+1>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=l|0?e:1;i=h+1|0;g=0;while(1){if((g|0)>=(f|0))break a;l=N(m,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((l+32+(N(j,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;l=b+1|0;k=N(m,d[c+1>>0]|0)|0;a[l>>0]=((d[l>>0]|0)+1+((k+32+(N(j,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;j=e+2|0;g=0;while(1){if((g|0)>=(f|0))break a;s=N(m,d[c>>0]|0)|0;r=c+1|0;q=N(k,d[r>>0]|0)|0;n=c+e|0;o=N(l,d[n>>0]|0)|0;p=c+i|0;a[b>>0]=((d[b>>0]|0)+1+((s+32+q+o+(N(h,d[p>>0]|0)|0)|0)>>>6)|0)>>>1;o=b+1|0;r=N(m,d[r>>0]|0)|0;q=N(k,d[c+2>>0]|0)|0;p=N(l,d[p>>0]|0)|0;a[o>>0]=((d[o>>0]|0)+1+((r+32+q+p+(N(h,d[c+j>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=n}}while(0);return}function CJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;m=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;i=N(h,g)|0;l=d>>1;a:do if(!i){d=j+k|0;if(!d){g=0;while(1){if((g|0)>=(f|0))break a;b[a>>1]=((e[a>>1]|0)+1+(((N(m,e[c>>1]|0)|0)+32|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}h=k|0?l:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(m,e[c>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((k+32+(N(d,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=c+(l<<1)|0}}else{h=l+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(m,e[c>>1]|0)|0;o=N(j,e[c+2>>1]|0)|0;d=c+(l<<1)|0;n=N(k,e[d>>1]|0)|0;b[a>>1]=((e[a>>1]|0)+1+((p+32+o+n+(N(i,e[c+(h<<1)>>1]|0)|0)|0)>>>6)|0)>>>1;a=a+(l<<1)|0;g=g+1|0;c=d}}while(0);return}function DJ(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=8-g|0;j=8-h|0;l=N(j,k)|0;j=N(j,g)|0;k=N(k,h)|0;h=N(h,g)|0;a:do if(!h){i=j+k|0;if(!i){g=0;while(1){if((g|0)>=(f|0))break a;a[b>>0]=((d[b>>0]|0)+1+(((N(l,d[c>>0]|0)|0)+32|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}h=k|0?e:1;g=0;while(1){if((g|0)>=(f|0))break a;k=N(l,d[c>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((k+32+(N(i,d[c+h>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=c+e|0}}else{i=e+1|0;g=0;while(1){if((g|0)>=(f|0))break a;p=N(l,d[c>>0]|0)|0;o=N(j,d[c+1>>0]|0)|0;m=c+e|0;n=N(k,d[m>>0]|0)|0;a[b>>0]=((d[b>>0]|0)+1+((p+32+o+n+(N(h,d[c+i>>0]|0)|0)|0)>>>6)|0)>>>1;b=b+e|0;g=g+1|0;c=m}}while(0);return}function EJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function FJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==4)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);i=i+8|0;c=c+g|0;h=h+1|0}c=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function GJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;b[f>>1]=(c[g>>2]|0)+(e[f>>1]|0);i=f+2|0;b[i>>1]=(c[g+4>>2]|0)+(e[i>>1]|0);i=f+4|0;b[i>>1]=(c[g+8>>2]|0)+(e[i>>1]|0);i=f+6|0;b[i>>1]=(c[g+12>>2]|0)+(e[i>>1]|0);i=f+8|0;b[i>>1]=(c[g+16>>2]|0)+(e[i>>1]|0);i=f+10|0;b[i>>1]=(c[g+20>>2]|0)+(e[i>>1]|0);i=f+12|0;b[i>>1]=(c[g+24>>2]|0)+(e[i>>1]|0);i=f+14|0;b[i>>1]=(c[g+28>>2]|0)+(e[i>>1]|0);g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yX(d|0,0,256)|0;return}function HJ(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=f;h=0;while(1){if((h|0)==8)break;a[c>>0]=(d[c>>0]|0)+(e[i>>1]|0);j=c+1|0;a[j>>0]=(d[j>>0]|0)+(e[i+2>>1]|0);j=c+2|0;a[j>>0]=(d[j>>0]|0)+(e[i+4>>1]|0);j=c+3|0;a[j>>0]=(d[j>>0]|0)+(e[i+6>>1]|0);j=c+4|0;a[j>>0]=(d[j>>0]|0)+(e[i+8>>1]|0);j=c+5|0;a[j>>0]=(d[j>>0]|0)+(e[i+10>>1]|0);j=c+6|0;a[j>>0]=(d[j>>0]|0)+(e[i+12>>1]|0);j=c+7|0;a[j>>0]=(d[j>>0]|0)+(e[i+14>>1]|0);i=i+16|0;c=c+g|0;h=h+1|0}c=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(c|0));return}function IJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<512?k:0-k>>31&511;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<512?m:0-m>>31&511;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<512?o:0-o>>31&511;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function JJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<512?p:0-p>>31&511;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<512?r:0-r>>31&511;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<512?t:0-t>>31&511;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<512?v:0-v>>31&511;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<512?x:0-x>>31&511;g=g+1|0}yX(d|0,0,256)|0;return}function KJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function LJ(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<512?j:0-j>>31&511;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return} +function MJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else KJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;IJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function NJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else LJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;JJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function OJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function PJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IJ((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146491+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IJ((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function QJ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146491+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)KJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else IJ(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function RJ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146487+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function SJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function TJ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146485+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function UJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function VJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function WJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function XJ(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<512?a:0-a>>31&511;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<512?k:0-k>>31&511;c=c+(j<<1)|0;h=h+1|0}return}function YJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ZJ(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function _J(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<512?a:0-a>>31&511;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function $J(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<1|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<512?m:0-m>>31&511;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<512?m:0-m>>31&511;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function aK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<1;y=g<<1;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function bK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function cK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<1;w=g<<1;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<1;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<512?r:0-r>>31&511;t=s-t|0;b[l>>1]=t>>>0<512?t:0-t>>31&511}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function dK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<1;v=f<<1;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function eK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function fK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<1;r=f<<1;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function gK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<1;s=g<<1;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;u=l-u|0;b[g>>1]=u>>>0<512?u:0-u>>31&511}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function hK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function iK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function jK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<1;q=g<<1;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;s=l-s|0;b[g>>1]=s>>>0<512?s:0-s>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function kK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<1;r=g<<1;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<1;o=f+-1|0;a:do if(m<<24>>24>=1){d=1-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<512?m:0-m>>31&511;t=l-t|0;b[g>>1]=t>>>0<512?t:0-t>>31&511}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function lK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<1;j=f<<1;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function mK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function nK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function oK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function pK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<1;j=f<<1;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function qK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<1024?k:0-k>>31&1023;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<1024?m:0-m>>31&1023;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<1024?o:0-o>>31&1023;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function rK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<1024?p:0-p>>31&1023;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<1024?r:0-r>>31&1023;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<1024?t:0-t>>31&1023;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<1024?v:0-v>>31&1023;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<1024?x:0-x>>31&1023;g=g+1|0}yX(d|0,0,256)|0;return}function sK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function tK(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<1024?j:0-j>>31&1023;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function uK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else sK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;qK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function vK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else tK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;rK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function wK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)sK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else qK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function xK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)sK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else qK((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146491+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)sK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else qK((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function yK(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146491+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)sK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else qK(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function zK(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146487+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function AK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function BK(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146485+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function CK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function DK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function EK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function FK(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<1024?a:0-a>>31&1023;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<1024?k:0-k>>31&1023;c=c+(j<<1)|0;h=h+1|0}return}function GK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function HK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function IK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<1024?a:0-a>>31&1023;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function JK(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<2|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<1024?m:0-m>>31&1023;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<1024?m:0-m>>31&1023;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function KK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<2;y=g<<2;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function LK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function MK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<2;w=g<<2;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<2;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<1024?r:0-r>>31&1023;t=s-t|0;b[l>>1]=t>>>0<1024?t:0-t>>31&1023}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function NK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<2;v=f<<2;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=(z>>2)+2|0;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function OK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function PK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<2;r=f<<2;s=(t>>2)+2|0;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function QK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<2;s=g<<2;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;u=l-u|0;b[g>>1]=u>>>0<1024?u:0-u>>31&1023}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function RK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function SK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function TK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<2;q=g<<2;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;s=l-s|0;b[g>>1]=s>>>0<1024?s:0-s>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function UK(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<2;r=g<<2;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<2;o=f+-3|0;a:do if(m<<24>>24>=1){d=3-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<1024?m:0-m>>31&1023;t=l-t|0;b[g>>1]=t>>>0<1024?t:0-t>>31&1023}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function VK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<2;j=f<<2;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function WK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function XK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function YK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function ZK(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<2;j=f<<2;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function _K(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<4096?k:0-k>>31&4095;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<4096?m:0-m>>31&4095;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<4096?o:0-o>>31&4095;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function $K(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<4096?p:0-p>>31&4095;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<4096?r:0-r>>31&4095;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<4096?t:0-t>>31&4095;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<4096?v:0-v>>31&4095;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<4096?x:0-x>>31&4095;g=g+1|0}yX(d|0,0,256)|0;return}function aL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function bL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<4096?j:0-j>>31&4095;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function cL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else aL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;_K(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function dL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else bL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;$K(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function eL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)aL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else _K((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function fL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)aL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else _K((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146491+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)aL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else _K((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function gL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146491+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)aL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else _K(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function hL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146487+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function iL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function jL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146485+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function kL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function lL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function mL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function nL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<4096?k:0-k>>31&4095;c=c+(j<<1)|0;h=h+1|0}return}function oL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function pL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function qL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<4096?a:0-a>>31&4095;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function rL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<4|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<4096?m:0-m>>31&4095;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<4096?m:0-m>>31&4095;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function sL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<4;y=g<<4;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function tL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function uL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<4;w=g<<4;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<4;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<4096?r:0-r>>31&4095;t=s-t|0;b[l>>1]=t>>>0<4096?t:0-t>>31&4095}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function vL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<4;v=f<<4;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function wL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function xL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<4;r=f<<4;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function yL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<4;s=g<<4;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;u=l-u|0;b[g>>1]=u>>>0<4096?u:0-u>>31&4095}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function zL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function AL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function BL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<4;q=g<<4;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;s=l-s|0;b[g>>1]=s>>>0<4096?s:0-s>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function CL(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<4;r=g<<4;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<4;o=f+-15|0;a:do if(m<<24>>24>=1){d=15-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<4096?m:0-m>>31&4095;t=l-t|0;b[g>>1]=t>>>0<4096?t:0-t>>31&4095}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function DL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<4;j=f<<4;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function EL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function FL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function GL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function HL(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<4;j=f<<4;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function IL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==4)break;o=d+(g<<2)|0;n=c[o>>2]|0;k=d+(g+8<<2)|0;m=c[k>>2]|0;j=m+n|0;m=n-m|0;n=d+(g+4<<2)|0;h=c[n>>2]|0;i=d+(g+12<<2)|0;p=c[i>>2]|0;l=(h>>1)-p|0;h=(p>>1)+h|0;c[o>>2]=h+j;c[n>>2]=l+m;c[k>>2]=m-l;c[i>>2]=j-h;g=g+1|0}f=f>>1;h=f<<1;i=f*3|0;g=0;while(1){if((g|0)==4)break;p=g<<2;o=c[d+(p<<2)>>2]|0;l=c[d+((p|2)<<2)>>2]|0;n=l+o|0;l=o-l|0;o=c[d+((p|1)<<2)>>2]|0;p=c[d+((p|3)<<2)>>2]|0;m=(o>>1)-p|0;o=(p>>1)+o|0;p=a+(g<<1)|0;k=(o+n>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+f<<1)|0;k=(m+l>>6)+(e[p>>1]|0)|0;b[p>>1]=k>>>0<16384?k:0-k>>31&16383;p=a+(g+h<<1)|0;m=(l-m>>6)+(e[p>>1]|0)|0;b[p>>1]=m>>>0<16384?m:0-m>>31&16383;p=a+(g+i<<1)|0;o=(n-o>>6)+(e[p>>1]|0)|0;b[p>>1]=o>>>0<16384?o:0-o>>31&16383;g=g+1|0}g=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));return}function JL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[d>>2]=(c[d>>2]|0)+32;g=0;while(1){if((g|0)==8)break;w=d+(g<<2)|0;o=c[w>>2]|0;m=d+(g+32<<2)|0;l=c[m>>2]|0;j=l+o|0;l=o-l|0;o=d+(g+16<<2)|0;k=c[o>>2]|0;p=d+(g+48<<2)|0;v=c[p>>2]|0;n=(k>>1)-v|0;k=(v>>1)+k|0;v=k+j|0;r=n+l|0;n=l-n|0;k=j-k|0;j=d+(g+24<<2)|0;l=c[j>>2]|0;i=d+(g+40<<2)|0;h=c[i>>2]|0;t=d+(g+56<<2)|0;q=c[t>>2]|0;u=h-l-q-(q>>1)|0;s=d+(g+8<<2)|0;x=c[s>>2]|0;y=q-((l>>1)+l)+x|0;q=q+h+(h>>1)-x|0;x=h+l+x+(x>>1)|0;l=(x>>2)+u|0;h=(q>>2)+y|0;q=(y>>2)-q|0;u=x-(u>>2)|0;c[w>>2]=u+v;c[t>>2]=v-u;c[s>>2]=q+r;c[p>>2]=r-q;c[o>>2]=h+n;c[i>>2]=n-h;c[j>>2]=l+k;c[m>>2]=k-l;g=g+1|0}i=f>>1;j=i<<1;k=i*3|0;l=i<<2;m=i*5|0;f=i*6|0;h=i*7|0;g=0;while(1){if((g|0)==8)break;y=g<<3;q=c[d+(y<<2)>>2]|0;t=c[d+((y|4)<<2)>>2]|0;r=t+q|0;t=q-t|0;q=c[d+((y|2)<<2)>>2]|0;w=c[d+((y|6)<<2)>>2]|0;s=(q>>1)-w|0;q=(w>>1)+q|0;w=q+r|0;u=s+t|0;s=t-s|0;q=r-q|0;r=c[d+((y|3)<<2)>>2]|0;t=c[d+((y|5)<<2)>>2]|0;v=c[d+((y|7)<<2)>>2]|0;x=t-r-v-(v>>1)|0;y=c[d+((y|1)<<2)>>2]|0;p=v-((r>>1)+r)+y|0;v=v+t+(t>>1)-y|0;y=t+r+y+(y>>1)|0;r=(y>>2)+x|0;t=(v>>2)+p|0;v=(p>>2)-v|0;x=y-(x>>2)|0;y=a+(g<<1)|0;p=(x+w>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+i<<1)|0;p=(v+u>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+j<<1)|0;p=(t+s>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+k<<1)|0;p=(r+q>>6)+(e[y>>1]|0)|0;b[y>>1]=p>>>0<16384?p:0-p>>31&16383;y=a+(g+l<<1)|0;r=(q-r>>6)+(e[y>>1]|0)|0;b[y>>1]=r>>>0<16384?r:0-r>>31&16383;y=a+(g+m<<1)|0;t=(s-t>>6)+(e[y>>1]|0)|0;b[y>>1]=t>>>0<16384?t:0-t>>31&16383;y=a+(g+f<<1)|0;v=(u-v>>6)+(e[y>>1]|0)|0;b[y>>1]=v>>>0<16384?v:0-v>>31&16383;y=a+(g+h<<1)|0;x=(w-x>>6)+(e[y>>1]|0)|0;b[y>>1]=x>>>0<16384?x:0-x>>31&16383;g=g+1|0}yX(d|0,0,256)|0;return}function KL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;g=f>>>1;c[d>>2]=0;d=0;while(1){if((d|0)==4)break;else f=0;while(1){if((f|0)==4)break;i=a+(f<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;f=f+1|0}a=a+(g<<1)|0;d=d+1|0}return}function LL(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;h=(c[d>>2]|0)+32>>6;c[d>>2]=0;g=f>>>1;f=a;a=0;while(1){if((a|0)==8)break;else d=0;while(1){if((d|0)==8)break;i=f+(d<<1)|0;j=h+(e[i>>1]|0)|0;b[i>>1]=j>>>0<16384?j:0-j>>31&16383;d=d+1|0}f=f+(g<<1)|0;a=a+1|0}return}function ML(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)==16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else KL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;IL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+1|0}return}function NL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=0;while(1){if((i|0)>=16)break;switch(a[h+(d[146491+i>>0]|0)>>0]|0){case 0:break;case 1:{if(!(c[f+(i<<4<<2)>>2]|0))j=6;else LL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);break}default:j=6}if((j|0)==6){j=0;JL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}i=i+4|0}return}function OL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=1;while(1){if((i|0)==3)break;j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function PL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=1;while(1){if((i|0)==3){i=1;break}j=i<<4;k=j|4;l=b+(i+-1<<2)|0;while(1){if((j|0)>=(k|0))break;if(!(a[h+(d[146491+j>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IL((c[l>>2]|0)+(c[e+(j<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}while(1){if((i|0)==3)break;j=i<<4;k=j|8;l=b+(i+-1<<2)|0;j=j|4;while(1){if((j|0)>=(k|0))break;m=j+4|0;if(!(a[h+(d[146491+m>>0]|0)>>0]|0)){if(c[f+(j<<4<<2)>>2]|0)KL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g)}else IL((c[l>>2]|0)+(c[e+(m<<2)>>2]|0)|0,f+(j<<5<<1)|0,g);j=j+1|0}i=i+1|0}return}function QL(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=0;while(1){if((i|0)==16)break;if(!(a[h+(d[146491+i>>0]|0)>>0]|0)){if(c[f+(i<<4<<2)>>2]|0)KL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g)}else IL(b+(c[e+(i<<2)>>2]|0)|0,f+(i<<5<<1)|0,g);i=i+1|0}return}function RL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);g=h;f=0;while(1){if((f|0)==4)break;r=f<<2;n=c[b+(r<<2)>>2]|0;o=r|1;j=c[b+(o<<2)>>2]|0;q=j+n|0;j=n-j|0;n=r|2;p=c[b+(n<<2)>>2]|0;i=r|3;s=c[b+(i<<2)>>2]|0;k=p-s|0;p=s+p|0;c[g+(r<<2)>>2]=p+q;c[g+(o<<2)>>2]=q-p;c[g+(n<<2)>>2]=j-k;c[g+(i<<2)>>2]=k+j;f=f+1|0}f=0;while(1){if((f|0)==4)break;s=d[146487+f>>0]|0;r=c[g+(f<<2)>>2]|0;o=c[g+(f+8<<2)>>2]|0;q=o+r|0;o=r-o|0;r=c[g+(f+4<<2)>>2]|0;n=c[g+(f+12<<2)>>2]|0;p=r-n|0;r=n+r|0;c[a+(s<<2)>>2]=(N(r+q|0,e)|0)+128>>8;c[a+(s+16<<2)>>2]=(N(p+o|0,e)|0)+128>>8;c[a+(s+64<<2)>>2]=(N(o-p|0,e)|0)+128>>8;c[a+(s+80<<2)>>2]=(N(q-r|0,e)|0)+128>>8;f=f+1|0}l=h;return}function SL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[a>>2]|0;j=a+64|0;e=c[j>>2]|0;g=a+128|0;h=c[g>>2]|0;d=a+192|0;k=c[d>>2]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;c[a>>2]=(N(h+i|0,b)|0)>>7;c[j>>2]=(N(e+f|0,b)|0)>>7;c[g>>2]=(N(i-h|0,b)|0)>>7;c[d>>2]=(N(f-e|0,b)|0)>>7;return}function TL(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;e=0;while(1){if((e|0)==4){e=0;break}i=e<<5;j=c[a+(i<<2)>>2]|0;i=c[a+((i|16)<<2)>>2]|0;h=e<<1;c[f+(h<<2)>>2]=i+j;c[f+((h|1)<<2)>>2]=j-i;e=e+1|0}while(1){if((e|0)==2)break;j=d[146485+e>>0]|0;i=c[f+(e<<2)>>2]|0;n=c[f+(e+4<<2)>>2]|0;h=n+i|0;n=i-n|0;i=c[f+(e+2<<2)>>2]|0;o=c[f+(e+6<<2)>>2]|0;k=i-o|0;i=o+i|0;c[a+(j<<2)>>2]=(N(i+h|0,b)|0)+128>>8;c[a+(j+32<<2)>>2]=(N(k+n|0,b)|0)+128>>8;c[a+(j+64<<2)>>2]=(N(n-k|0,b)|0)+128>>8;c[a+(j+96<<2)>>2]=(N(h-i|0,b)|0)+128>>8;e=e+1|0}l=g;return}function UL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+16|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+18|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+20|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+22|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+24|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+26|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+28|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+30|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function VL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+8|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+10|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+12|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+14|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function WL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+4|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;a=c+6|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function XL(a,c,d,f,g,h){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=c>>1;i=(h<=(d|0))break;a=(N(e[c>>1]|0,g)|0)+i>>f;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=c+2|0;k=(N(e[a>>1]|0,g)|0)+i>>f;b[a>>1]=k>>>0<16384?k:0-k>>31&16383;c=c+(j<<1)|0;h=h+1|0}return}function YL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+16>>1]|0,i)|0;m=d+16|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+18>>1]|0,i)|0;a=d+18|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+20>>1]|0,i)|0;m=d+20|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+22>>1]|0,i)|0;a=d+22|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+24>>1]|0,i)|0;m=d+24|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+26>>1]|0,i)|0;a=d+26|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+28>>1]|0,i)|0;m=d+28|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+30>>1]|0,i)|0;a=d+30|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function ZL(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+8>>1]|0,i)|0;m=d+8|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+10>>1]|0,i)|0;a=d+10|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+12>>1]|0,i)|0;m=d+12|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+14>>1]|0,i)|0;a=d+14|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function _L(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;a=N(e[c+4>>1]|0,i)|0;m=d+4|0;a=a+k+(N(e[m>>1]|0,h)|0)>>g;b[m>>1]=a>>>0<16384?a:0-a>>31&16383;m=N(e[c+6>>1]|0,i)|0;a=d+6|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function $L(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=d>>1;k=(j<<6|1)<=(f|0))break;m=N(e[c>>1]|0,i)|0;m=m+k+(N(e[d>>1]|0,h)|0)>>g;b[d>>1]=m>>>0<16384?m:0-m>>31&16383;m=N(e[c+2>>1]|0,i)|0;a=d+2|0;m=m+k+(N(e[a>>1]|0,h)|0)>>g;b[a>>1]=m>>>0<16384?m:0-m>>31&16383;c=c+(l<<1)|0;d=d+(l<<1)|0;j=j+1|0}return}function aM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=d>>1;B=f<<6;y=g<<6;z=0-C|0;A=N(C,-2)|0;w=N(C,-3)|0;x=C<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+(z<<1)|0;q=e[p>>1]|0;d=l+(A<<1)|0;r=e[d>>1]|0;f=e[l+(w<<1)>>1]|0;s=e[l>>1]|0;i=l+(C<<1)|0;t=e[i>>1]|0;j=e[l+(x<<1)>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(B|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(y|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(y|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(y|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+2|0}}while(0);c=c+8|0;u=u+1|0}return}function bM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<2;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==4)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function cM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=d>>1;y=f<<6;w=g<<6;x=z<<1;u=0;while(1){if((u|0)==4)break;d=a[h+u>>0]|0;v=d<<24>>24<<6;a:do if(d<<24>>24>=0){m=d<<24>>24==0;n=v|1;o=0-v|0;k=0;l=c;while(1){if((k|0)==2)break a;p=l+-2|0;q=e[p>>1]|0;d=l+-4|0;r=e[d>>1]|0;f=e[l+-6>>1]|0;s=e[l>>1]|0;i=l+2|0;t=e[i>>1]|0;j=e[l+4>>1]|0;g=q-s|0;if(((((g|0)>-1?g:0-g|0)|0)<(y|0)?(g=r-q|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0)?(g=t-s|0,(((g|0)>-1?g:0-g|0)|0)<(w|0)):0){g=f-q|0;g=(((g|0)>-1?g:0-g|0)|0)>=(w|0);if(m|g)d=g?v:n;else{g=((((q+1+s|0)>>>1)+f|0)>>>1)-r|0;b[d>>1]=((g|0)<(o|0)?o:(g|0)>(v|0)?v:g)+r;d=n}g=j-s|0;if((((g|0)>-1?g:0-g|0)|0)<(w|0)){if(!m){j=((((q+1+s|0)>>>1)+j|0)>>>1)-t|0;b[i>>1]=((j|0)<(o|0)?o:(j|0)>(v|0)?v:j)+t}d=d+1|0}t=r+4-t+(s-q<<2)>>3;r=0-d|0;t=(t|0)<(r|0)?r:(t|0)>(d|0)?d:t;r=t+q|0;b[p>>1]=r>>>0<16384?r:0-r>>31&16383;t=s-t|0;b[l>>1]=t>>>0<16384?t:0-t>>31&16383}k=k+1|0;l=l+(z<<1)|0}}while(0);c=c+(x<<1)|0;u=u+1|0}return}function dM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=c>>1;z=d<<6;v=f<<6;w=N(A,-3)|0;x=N(A,-2)|0;y=0-A|0;r=A<<1;s=z>>2|2;t=N(A,-4)|0;u=A*3|0;j=0;while(1){if((j|0)==16)break;c=a+(w<<1)|0;i=e[c>>1]|0;d=a+(x<<1)|0;k=e[d>>1]|0;f=a+(y<<1)|0;l=e[f>>1]|0;m=e[a>>1]|0;n=a+(A<<1)|0;o=e[n>>1]|0;p=a+(r<<1)|0;q=e[p>>1]|0;g=l-m|0;g=(g|0)>-1?g:0-g|0;do if(((g|0)<(z|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(v|0)):0){if((g|0)>=(s|0)){b[f>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(v|0)){B=e[a+(t<<1)>>1]|0;b[f>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[d>>1]=(i+2+k+l+m|0)>>>2;f=c;d=3;g=4;h=m;c=(i*3|0)+k+(B<<1)|0}else{d=2;g=2;h=o;c=k<<1}b[f>>1]=(c+l+h+g|0)>>>d;B=q-m|0;if((((B|0)>-1?B:0-B|0)|0)<(v|0)){B=e[a+(u<<1)>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(B<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+2|0;j=j+1|0}return}function eM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==16)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function fM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=c>>1;t=d<<6;r=f<<6;s=t>>2|2;j=0;while(1){if((j|0)==8)break;g=a+-6|0;i=e[g>>1]|0;c=a+-4|0;k=e[c>>1]|0;d=a+-2|0;l=e[d>>1]|0;m=e[a>>1]|0;n=a+2|0;o=e[n>>1]|0;p=a+4|0;q=e[p>>1]|0;f=l-m|0;f=(f|0)>-1?f:0-f|0;do if(((f|0)<(t|0)?(h=k-l|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0)?(h=o-m|0,(((h|0)>-1?h:0-h|0)|0)<(r|0)):0){if((f|0)>=(s|0)){b[d>>1]=(l+2+(k<<1)+o|0)>>>2;b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}h=i-l|0;if((((h|0)>-1?h:0-h|0)|0)<(r|0)){v=e[a+-8>>1]|0;b[d>>1]=(i+4+o+(l+k+m<<1)|0)>>>3;b[c>>1]=(i+2+k+l+m|0)>>>2;d=g;f=3;g=4;h=m;c=(i*3|0)+k+(v<<1)|0}else{f=2;g=2;h=o;c=k<<1}b[d>>1]=(c+l+h+g|0)>>>f;v=q-m|0;if((((v|0)>-1?v:0-v|0)|0)<(r|0)){v=e[a+6>>1]|0;b[a>>1]=(k+4+q+(m+l+o<<1)|0)>>>3;b[n>>1]=(l+2+m+o+q|0)>>>2;b[p>>1]=(l+4+m+o+(q*3|0)+(v<<1)|0)>>>3;break}else{b[a>>1]=(k+2+m+(o<<1)|0)>>>2;break}}while(0);a=a+(u<<1)|0;j=j+1|0}return}function gM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f<<6;s=g<<6;p=d>>1;q=0-p|0;r=N(p,-2)|0;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+(q<<1)|0;j=e[i>>1]|0;k=e[g+(r<<1)>>1]|0;l=e[g>>1]|0;m=e[g+(p<<1)>>1]|0;u=j-l|0;if(((((u|0)>-1?u:0-u|0)|0)<(t|0)?(u=k-j|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0)?(u=m-l|0,(((u|0)>-1?u:0-u|0)|0)<(s|0)):0){u=k+4-m+(l-j<<2)>>3;u=(u|0)<(d|0)?d:(u|0)>(o|0)?o:u;m=u+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;u=l-u|0;b[g>>1]=u>>>0<16384?u:0-u>>31&16383}f=f+1|0;g=g+2|0}}while(0);c=c+4|0;n=n+1|0}return}function hM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function iM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<2;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==4)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function jM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=f<<6;q=g<<6;p=d>>1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==1)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;s=j-l|0;if(((((s|0)>-1?s:0-s|0)|0)<(r|0)?(s=k-j|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0)?(s=m-l|0,(((s|0)>-1?s:0-s|0)|0)<(q|0)):0){s=k+4-m+(l-j<<2)>>3;s=(s|0)<(d|0)?d:(s|0)>(o|0)?o:s;m=s+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;s=l-s|0;b[g>>1]=s>>>0<16384?s:0-s>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(p<<1)|0;n=n+1|0}return}function kM(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=f<<6;r=g<<6;p=d>>1;q=p<<1;n=0;while(1){if((n|0)==4)break;m=a[h+n>>0]|0;f=m<<24>>24<<6;o=f+-63|0;a:do if(m<<24>>24>=1){d=63-f|0;f=0;g=c;while(1){if((f|0)==2)break a;i=g+-2|0;j=e[i>>1]|0;k=e[g+-4>>1]|0;l=e[g>>1]|0;m=e[g+2>>1]|0;t=j-l|0;if(((((t|0)>-1?t:0-t|0)|0)<(s|0)?(t=k-j|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0)?(t=m-l|0,(((t|0)>-1?t:0-t|0)|0)<(r|0)):0){t=k+4-m+(l-j<<2)>>3;t=(t|0)<(d|0)?d:(t|0)>(o|0)?o:t;m=t+j|0;b[i>>1]=m>>>0<16384?m:0-m>>31&16383;t=l-t|0;b[g>>1]=t>>>0<16384?t:0-t>>31&16383}f=f+1|0;g=g+(p<<1)|0}}while(0);c=c+(q<<1)|0;n=n+1|0}return}function lM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c>>1;m=d<<6;j=f<<6;k=0-n|0;l=N(n,-2)|0;i=0;while(1){if((i|0)==8)break;h=a+(k<<1)|0;c=e[h>>1]|0;d=e[a+(l<<1)>>1]|0;f=e[a>>1]|0;g=e[a+(n<<1)>>1]|0;o=c-f|0;if(((((o|0)>-1?o:0-o|0)|0)<(m|0)?(o=d-c|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0)?(o=g-f|0,(((o|0)>-1?o:0-o|0)|0)<(j|0)):0){b[h>>1]=(c+2+(d<<1)+g|0)>>>2;b[a>>1]=(d+2+f+(g<<1)|0)>>>2}i=i+1|0;a=a+2|0}return}function mM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function nM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==16)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function oM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==4)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function pM(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c>>1;k=d<<6;j=f<<6;i=0;while(1){if((i|0)==8)break;g=a+-2|0;h=e[g>>1]|0;c=e[a+-4>>1]|0;d=e[a>>1]|0;f=e[a+2>>1]|0;m=h-d|0;if(((((m|0)>-1?m:0-m|0)|0)<(k|0)?(m=c-h|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0)?(m=f-d|0,(((m|0)>-1?m:0-m|0)|0)<(j|0)):0){b[g>>1]=(h+2+(c<<1)+f|0)>>>2;b[a>>1]=(c+2+d+(f<<1)|0)>>>2}i=i+1|0;a=a+(l<<1)|0}return}function qM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==4)break;p=f+(h<<1)|0;o=b[p>>1]|0;l=f+(h+8<<1)|0;n=b[l>>1]|0;k=n+o|0;n=o-n|0;o=f+(h+4<<1)|0;i=b[o>>1]|0;j=f+(h+12<<1)|0;q=b[j>>1]|0;m=(i>>1)-q|0;i=(q>>1)+i|0;b[p>>1]=i+k;b[o>>1]=m+n;b[l>>1]=n-m;b[j>>1]=k-i;h=h+1|0}i=g<<1;j=g*3|0;h=0;while(1){if((h|0)==4)break;q=h<<2;p=b[f+(q<<1)>>1]|0;m=b[f+((q|2)<<1)>>1]|0;o=m+p|0;m=p-m|0;p=b[f+((q|1)<<1)>>1]|0;q=b[f+((q|3)<<1)>>1]|0;n=(p>>1)-q|0;p=(q>>1)+p|0;q=c+h|0;l=(p+o>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+g)|0;l=(n+m>>6)+(d[q>>0]|0)|0;a[q>>0]=l>>>0>255?(l^-2147483648)>>31:l;q=c+(h+i)|0;n=(m-n>>6)+(d[q>>0]|0)|0;a[q>>0]=n>>>0>255?(n^-2147483648)>>31:n;q=c+(h+j)|0;p=(o-p>>6)+(d[q>>0]|0)|0;a[q>>0]=p>>>0>255?(p^-2147483648)>>31:p;h=h+1|0}h=f+32|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function rM(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b[f>>1]=(e[f>>1]|0)+32;h=0;while(1){if((h|0)==8)break;x=f+(h<<1)|0;p=b[x>>1]|0;n=f+(h+32<<1)|0;m=b[n>>1]|0;k=m+p|0;m=p-m|0;p=f+(h+16<<1)|0;l=b[p>>1]|0;q=f+(h+48<<1)|0;w=b[q>>1]|0;o=(l>>1)-w|0;l=(w>>1)+l|0;w=l+k|0;s=o+m|0;o=m-o|0;l=k-l|0;k=f+(h+24<<1)|0;m=b[k>>1]|0;j=f+(h+40<<1)|0;i=b[j>>1]|0;u=f+(h+56<<1)|0;r=b[u>>1]|0;v=i-m-r-(r>>1)|0;t=f+(h+8<<1)|0;y=b[t>>1]|0;z=r-((m>>1)+m)+y|0;r=r+i+(i>>1)-y|0;y=i+m+y+(y>>1)|0;m=(y>>2)+v|0;i=(r>>2)+z|0;r=(z>>2)-r|0;v=y-(v>>2)|0;b[x>>1]=v+w;b[u>>1]=w-v;b[t>>1]=r+s;b[q>>1]=s-r;b[p>>1]=i+o;b[j>>1]=o-i;b[k>>1]=m+l;b[n>>1]=l-m;h=h+1|0}l=g<<1;m=g*3|0;n=g<<2;i=g*5|0;j=g*6|0;k=g*7|0;h=0;while(1){if((h|0)==8)break;z=h<<3;r=b[f+(z<<1)>>1]|0;u=b[f+((z|4)<<1)>>1]|0;s=u+r|0;u=r-u|0;r=b[f+((z|2)<<1)>>1]|0;x=b[f+((z|6)<<1)>>1]|0;t=(r>>1)-x|0;r=(x>>1)+r|0;x=r+s|0;v=t+u|0;t=u-t|0;r=s-r|0;s=b[f+((z|3)<<1)>>1]|0;u=b[f+((z|5)<<1)>>1]|0;w=b[f+((z|7)<<1)>>1]|0;y=u-s-w-(w>>1)|0;z=b[f+((z|1)<<1)>>1]|0;q=w-((s>>1)+s)+z|0;w=w+u+(u>>1)-z|0;z=u+s+z+(z>>1)|0;s=(z>>2)+y|0;u=(w>>2)+q|0;w=(q>>2)-w|0;y=z-(y>>2)|0;z=c+h|0;q=(y+x>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+g)|0;q=(w+v>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+l)|0;q=(u+t>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+m)|0;q=(s+r>>6)+(d[z>>0]|0)|0;a[z>>0]=q>>>0>255?(q^-2147483648)>>31:q;z=c+(h+n)|0;s=(r-s>>6)+(d[z>>0]|0)|0;a[z>>0]=s>>>0>255?(s^-2147483648)>>31:s;z=c+(h+i)|0;u=(t-u>>6)+(d[z>>0]|0)|0;a[z>>0]=u>>>0>255?(u^-2147483648)>>31:u;z=c+(h+j)|0;w=(v-w>>6)+(d[z>>0]|0)|0;a[z>>0]=w>>>0>255?(w^-2147483648)>>31:w;z=c+(h+k)|0;y=(x-y>>6)+(d[z>>0]|0)|0;a[z>>0]=y>>>0>255?(y^-2147483648)>>31:y;h=h+1|0}h=f+128|0;do{b[f>>1]=0;f=f+2|0}while((f|0)<(h|0));return}function sM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==4)break;else e=0;while(1){if((e|0)==4)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function tM(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=(b[e>>1]|0)+32>>6;b[e>>1]=0;g=0;while(1){if((g|0)==8)break;else e=0;while(1){if((e|0)==8)break;i=c+e|0;j=h+(d[i>>0]|0)|0;a[i>>0]=j>>>0>255?(j^-2147483648)>>31:j;e=e+1|0}c=c+f|0;g=g+1|0}return}function uM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)==16)break;switch(a[i+(d[146491+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else sM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;qM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+1|0}return}function vM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;k=0;while(1){if((k|0)>=16)break;switch(a[i+(d[146491+k>>0]|0)>>0]|0){case 0:break;case 1:{j=g+(k<<4<<1)|0;if(!(b[j>>1]|0))l=7;else tM(e+(c[f+(k<<2)>>2]|0)|0,j,h);break}default:{j=g+(k<<4<<1)|0;l=7}}if((l|0)==7){l=0;rM(e+(c[f+(k<<2)>>2]|0)|0,j,h)}k=k+4|0}return}function wM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=1;while(1){if((j|0)==3)break;k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146491+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)sM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else qM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function xM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=1;while(1){if((j|0)==3){j=1;break}k=j<<4;m=k|4;n=e+(j+-1<<2)|0;while(1){if((k|0)>=(m|0))break;if(!(a[i+(d[146491+k>>0]|0)>>0]|0)){l=g+(k<<4<<1)|0;if(b[l>>1]|0)sM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,l,h)}else qM((c[n>>2]|0)+(c[f+(k<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}while(1){if((j|0)==3)break;k=j<<4;l=k|8;m=e+(j+-1<<2)|0;k=k|4;while(1){if((k|0)>=(l|0))break;n=k+4|0;if(!(a[i+(d[146491+n>>0]|0)>>0]|0)){o=g+(k<<4<<1)|0;if(b[o>>1]|0)sM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,o,h)}else qM((c[m>>2]|0)+(c[f+(n<<2)>>2]|0)|0,g+(k<<4<<1)|0,h);k=k+1|0}j=j+1|0}return}function yM(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=0;while(1){if((j|0)==16)break;if(!(a[i+(d[146491+j>>0]|0)>>0]|0)){k=g+(j<<4<<1)|0;if(b[k>>1]|0)sM(e+(c[f+(j<<2)>>2]|0)|0,k,h)}else qM(e+(c[f+(j<<2)>>2]|0)|0,g+(j<<4<<1)|0,h);j=j+1|0}return}function zM(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;i=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=i;g=0;while(1){if((g|0)==4){g=0;break}s=g<<2;o=b[e+(s<<1)>>1]|0;p=s|1;k=b[e+(p<<1)>>1]|0;r=k+o|0;k=o-k|0;o=s|2;q=b[e+(o<<1)>>1]|0;j=s|3;t=b[e+(j<<1)>>1]|0;n=q-t|0;q=t+q|0;c[h+(s<<2)>>2]=q+r;c[h+(p<<2)>>2]=r-q;c[h+(o<<2)>>2]=k-n;c[h+(j<<2)>>2]=n+k;g=g+1|0}while(1){if((g|0)==4)break;t=d[146487+g>>0]|0;s=c[h+(g<<2)>>2]|0;p=c[h+(g+8<<2)>>2]|0;r=p+s|0;p=s-p|0;s=c[h+(g+4<<2)>>2]|0;o=c[h+(g+12<<2)>>2]|0;q=s-o|0;s=o+s|0;b[a+(t<<1)>>1]=((N(s+r|0,f)|0)+128|0)>>>8;b[a+(t+16<<1)>>1]=((N(q+p|0,f)|0)+128|0)>>>8;b[a+(t+64<<1)>>1]=((N(p-q|0,f)|0)+128|0)>>>8;b[a+(t+80<<1)>>1]=((N(r-s|0,f)|0)+128|0)>>>8;g=g+1|0}l=i;return}function AM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b[a>>1]|0;j=a+32|0;e=b[j>>1]|0;g=a+64|0;h=b[g>>1]|0;d=a+96|0;k=b[d>>1]|0;f=i-e|0;i=e+i|0;e=h-k|0;h=k+h|0;b[a>>1]=(N(h+i|0,c)|0)>>>7;b[j>>1]=(N(e+f|0,c)|0)>>>7;b[g>>1]=(N(i-h|0,c)|0)>>>7;b[d>>1]=(N(f-e|0,c)|0)>>>7;return}function BM(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h;f=0;while(1){if((f|0)==4){f=0;break}j=f<<5;k=b[a+(j<<1)>>1]|0;j=b[a+((j|16)<<1)>>1]|0;i=f<<1;c[g+(i<<2)>>2]=j+k;c[g+((i|1)<<2)>>2]=k-j;f=f+1|0}while(1){if((f|0)==2)break;k=d[146485+f>>0]|0;j=c[g+(f<<2)>>2]|0;o=c[g+(f+4<<2)>>2]|0;i=o+j|0;o=j-o|0;j=c[g+(f+2<<2)>>2]|0;p=c[g+(f+6<<2)>>2]|0;n=j-p|0;j=p+j|0;b[a+(k<<1)>>1]=((N(j+i|0,e)|0)+128|0)>>>8;b[a+(k+32<<1)>>1]=((N(n+o|0,e)|0)+128|0)>>>8;b[a+(k+64<<1)>>1]=((N(o-n|0,e)|0)+128|0)>>>8;b[a+(k+96<<1)>>1]=((N(i-j|0,e)|0)+128|0)>>>8;f=f+1|0}l=h;return}function CM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+8|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+9|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+10|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+11|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+12|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+13|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+14|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+15|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function DM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+4|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+5|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+6|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+7|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function EM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+2|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;j=h+3|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function FM(b,c,e,f,g,h){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=(h<=(e|0))break;j=(N(d[h>>0]|0,g)|0)+i>>f;a[h>>0]=j>>>0>255?(j^-2147483648)>>31:j;j=h+1|0;k=(N(d[j>>0]|0,g)|0)+i>>f;a[j>>0]=k>>>0>255?(k^-2147483648)>>31:k;h=h+c|0;b=b+1|0}return}function GM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+8>>0]|0,i)|0;m=j+8|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+9>>0]|0,i)|0;b=j+9|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+10>>0]|0,i)|0;m=j+10|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+11>>0]|0,i)|0;b=j+11|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+12>>0]|0,i)|0;m=j+12|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+13>>0]|0,i)|0;b=j+13|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+14>>0]|0,i)|0;m=j+14|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+15>>0]|0,i)|0;b=j+15|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function HM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+4>>0]|0,i)|0;m=j+4|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+5>>0]|0,i)|0;b=j+5|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+6>>0]|0,i)|0;m=j+6|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+7>>0]|0,i)|0;b=j+7|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function IM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;b=N(d[c+2>>0]|0,i)|0;m=j+2|0;b=b+l+(N(d[m>>0]|0,h)|0)>>k;a[m>>0]=b>>>0>255?(b^-2147483648)>>31:b;m=N(d[c+3>>0]|0,i)|0;b=j+3|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function JM(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;l=(j+1|1)<=(f|0))break;m=N(d[c>>0]|0,i)|0;m=m+l+(N(d[j>>0]|0,h)|0)>>k;a[j>>0]=m>>>0>255?(m^-2147483648)>>31:m;m=N(d[c+1>>0]|0,i)|0;b=j+1|0;m=m+l+(N(d[b>>0]|0,h)|0)>>k;a[b>>0]=m>>>0>255?(m^-2147483648)>>31:m;c=c+e|0;j=j+e|0;g=g+1|0}return}function KM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=0-c|0;z=N(c,-2)|0;A=N(c,-3)|0;B=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+y|0;s=d[r>>0]|0;h=n+z|0;t=d[h>>0]|0;i=d[n+A>>0]|0;u=d[n>>0]|0;k=n+c|0;v=d[k>>0]|0;l=d[n+B>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+1|0}}while(0);b=b+4|0;w=w+1|0}return}function LM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<2;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==4)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function MM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=c<<1;w=0;while(1){if((w|0)==4)break;h=a[g+w>>0]|0;x=h<<24>>24;a:do if(h<<24>>24>=0){o=h<<24>>24==0;p=x+1|0;q=0-x|0;m=0;n=b;while(1){if((m|0)==2)break a;r=n+-1|0;s=d[r>>0]|0;h=n+-2|0;t=d[h>>0]|0;i=d[n+-3>>0]|0;u=d[n>>0]|0;k=n+1|0;v=d[k>>0]|0;l=d[n+2>>0]|0;j=s-u|0;if(((((j|0)>-1?j:0-j|0)|0)<(e|0)?(j=t-s|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0)?(j=v-u|0,(((j|0)>-1?j:0-j|0)|0)<(f|0)):0){j=i-s|0;j=(((j|0)>-1?j:0-j|0)|0)>=(f|0);if(o|j)h=j?x:p;else{j=((((s+1+u|0)>>>1)+i|0)>>>1)-t|0;a[h>>0]=((j|0)<(q|0)?q:(j|0)>(x|0)?x:j)+t;h=p}j=l-u|0;if((((j|0)>-1?j:0-j|0)|0)<(f|0)){if(!o){l=((((s+1+u|0)>>>1)+l|0)>>>1)-v|0;a[k>>0]=((l|0)<(q|0)?q:(l|0)>(x|0)?x:l)+v}h=h+1|0}v=t+4-v+(u-s<<2)>>3;t=0-h|0;v=(v|0)<(t|0)?t:(v|0)>(h|0)?h:v;t=v+s|0;a[r>>0]=t>>>0>255?(t^-2147483648)>>31:t;v=u-v|0;a[n>>0]=v>>>0>255?(v^-2147483648)>>31:v}m=m+1|0;n=n+c|0}}while(0);b=b+y|0;w=w+1|0}return}function NM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;w=N(c,-3)|0;x=N(c,-2)|0;y=0-c|0;z=c<<1;A=(e>>2)+2|0;u=N(c,-4)|0;v=c*3|0;m=0;while(1){if((m|0)==16)break;g=b+w|0;l=d[g>>0]|0;h=b+x|0;n=d[h>>0]|0;i=b+y|0;o=d[i>>0]|0;p=d[b>>0]|0;q=b+c|0;r=d[q>>0]|0;s=b+z|0;t=d[s>>0]|0;j=o-p|0;j=(j|0)>-1?j:0-j|0;do if(((j|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((j|0)>=(A|0)){a[i>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){B=d[b+u>>0]|0;a[i>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[h>>0]=(l+2+n+o+p|0)>>>2;i=g;h=3;j=4;k=p;g=(l*3|0)+n+(B<<1)|0}else{h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;B=t-p|0;if((((B|0)>-1?B:0-B|0)|0)<(f|0)){B=d[b+v>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(B<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+1|0;m=m+1|0}return}function OM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==16)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function PM(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=(e>>2)+2|0;m=0;while(1){if((m|0)==8)break;i=b+-3|0;l=d[i>>0]|0;j=b+-2|0;n=d[j>>0]|0;g=b+-1|0;o=d[g>>0]|0;p=d[b>>0]|0;q=b+1|0;r=d[q>>0]|0;s=b+2|0;t=d[s>>0]|0;h=o-p|0;h=(h|0)>-1?h:0-h|0;do if(((h|0)<(e|0)?(k=n-o|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=r-p|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){if((h|0)>=(u|0)){a[g>>0]=(o+2+(n<<1)+r|0)>>>2;a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}k=l-o|0;if((((k|0)>-1?k:0-k|0)|0)<(f|0)){v=d[b+-4>>0]|0;a[g>>0]=(l+4+r+(o+n+p<<1)|0)>>>3;a[j>>0]=(l+2+n+o+p|0)>>>2;h=3;j=4;k=p;g=(l*3|0)+n+(v<<1)|0}else{i=g;h=2;j=2;k=r;g=n<<1}a[i>>0]=(g+o+k+j|0)>>>h;v=t-p|0;if((((v|0)>-1?v:0-v|0)|0)<(f|0)){v=d[b+3>>0]|0;a[b>>0]=(n+4+t+(p+o+r<<1)|0)>>>3;a[q>>0]=(o+2+p+r+t|0)>>>2;a[s>>0]=(o+4+p+r+(t*3|0)+(v<<1)|0)>>>3;break}else{a[b>>0]=(n+2+p+(r<<1)|0)>>>2;break}}while(0);b=b+c|0;m=m+1|0}return}function QM(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=0-c|0;s=N(c,-2)|0;h=0;while(1){if((h|0)==4)break;p=a[g+h>>0]|0;q=p<<24>>24;a:do if(p<<24>>24>=1){k=0-q|0;i=0;j=b;while(1){if((i|0)==2)break a;l=j+r|0;m=d[l>>0]|0;n=d[j+s>>0]|0;o=d[j>>0]|0;p=d[j+c>>0]|0;t=m-o|0;if(((((t|0)>-1?t:0-t|0)|0)<(e|0)?(t=n-m|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0)?(t=p-o|0,(((t|0)>-1?t:0-t|0)|0)<(f|0)):0){t=n+4-p+(o-m<<2)>>3;t=(t|0)<(k|0)?k:(t|0)>(q|0)?q:t;p=t+m|0;a[l>>0]=p>>>0>255?(p^-2147483648)>>31:p;t=o-t|0;a[j>>0]=t>>>0>255?(t^-2147483648)>>31:t}i=i+1|0;j=j+1|0}}while(0);b=b+2|0;h=h+1|0}return} +function Dq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=nX(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nX(m|0,n|0,65537,65537)|0;q=y;m=nX(f|0,o|0,65537,65537)|0;n=y;k=nX(r|0,s|0,65537,65537)|0;l=y;i=nX(g|0,t|0,65537,65537)|0;j=y;g=nX(u|0,v|0,65537,65537)|0;h=y;d=nX(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Eq(a,b){a=a|0;b=b|0;yq(a,b);yq(a+(b<<3)|0,b);return}function Fq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Gq(a,b){a=a|0;b=b|0;Fq(a,b);Vp(a,0,b);return}function Hq(a,b){a=a|0;b=b|0;Dq(a,b);dq(a,0,b);return}function Iq(a,b){a=a|0;b=b|0;Eq(a,b);a=a+(b<<2)|0;eq(a,0,b);eq(a+8|0,0,b);return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33489407;c[f+4>>2]=33489407;e=e+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+1|0}return}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33620481;c[f+4>>2]=33620481;e=e+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+1|0}return}function Lq(a,b){a=a|0;b=b|0;Eq(a,b);eq(a,0,b);eq(a+8|0,0,b);return}function Mq(a,b){a=a|0;b=b|0;yq(a,b);eq(a,0,b);eq(a+8|0,0,b);return}function Nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=33554944;c[f+4>>2]=33554944;e=e+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+1|0}return}function Oq(a,b){a=a|0;b=b|0;Nq(a,b);Nq(a+(b<<3)|0,b);return}function Pq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Qq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function Rq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Sq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+8|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+16|0;c[e>>2]=33489407;c[e+4>>2]=33489407;e=b+24|0;c[e>>2]=33489407;c[e+4>>2]=33489407;b=b+(d<<1)|0;a=a+1|0}return}function Tq(a,b){a=a|0;b=b|0;kv(a,b);return}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+8|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+16|0;c[e>>2]=33620481;c[e+4>>2]=33620481;e=b+24|0;c[e>>2]=33620481;c[e+4>>2]=33620481;b=b+(d<<1)|0;a=a+1|0}return}function Vq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Wq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+8|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+16|0;c[e>>2]=33554944;c[e+4>>2]=33554944;e=b+24|0;c[e>>2]=33554944;c[e+4>>2]=33554944;b=b+(d<<1)|0;a=a+1|0}return}function Yq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Zq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function _q(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yX(d|0,0,256)|0;return}function $q(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yX(d|0,0,256)|0;return}function ar(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}yX(d|0,0,256)|0;l=s;return}function br(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yX(d|0,0,256)|0;l=k;return}function cr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Yq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function dr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Yq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Yq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Zq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function fr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Zq(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Zq(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=nX(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=nX(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function ir(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function jr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function kr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function lr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function mr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function nr(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function or(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function pr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nX(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function qr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;b=a+(d<<1<<1)|0;c[b>>2]=134154239;c[b+4>>2]=134154239;d=a+(d*3<<1)|0;c[d>>2]=134154239;c[d+4>>2]=134154239;return}function rr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;b=a+(d<<1<<1)|0;c[b>>2]=134285313;c[b+4>>2]=134285313;d=a+(d*3<<1)|0;c[d>>2]=134285313;c[d+4>>2]=134285313;return}function sr(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nX(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function tr(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;b=a+(d<<1<<1)|0;c[b>>2]=134219776;c[b+4>>2]=134219776;d=a+(d*3<<1)|0;c[d>>2]=134219776;c[d+4>>2]=134219776;return}function ur(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function vr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nX((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nX((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nX((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nX((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nX((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nX((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nX((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nX((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function wr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function xr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function yr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function zr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Ar(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Br(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Cr(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Dr(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nX(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Er(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Fr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=134219776;c[e+4>>2]=134219776;e=a+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0;a=a+(d<<1)|0}return}function Gr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Hr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Ir(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Jr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Kr(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+i>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+j>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Lr(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+p>>5;b[c+2>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+k>>5;b[c+4>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+h>>5;b[c+6>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+l>>5;b[c+8>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+m>>5;b[c+10>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+n>>5;b[c+12>>1]=a>>>0<4096?a:0-a>>31&4095;a=d+o>>5;b[c+14>>1]=a>>>0<4096?a:0-a>>31&4095;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function Mr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=nX(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nX(k|0,l|0,65537,65537)|0;h=y;d=nX(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function Nr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nX(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nX(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Or(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function Pr(a,b){a=a|0;b=b|0;Or(a,b);ir(a,0,b);return}function Qr(a,b){a=a|0;b=b|0;Mr(a,b);sr(a,0,b);return}function Rr(a,b){a=a|0;b=b|0;Nr(a,b);a=a+(b<<2)|0;tr(a,0,b);tr(a+8|0,0,b);return}function Sr(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=nX(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nX(m|0,n|0,65537,65537)|0;q=y;m=nX(f|0,o|0,65537,65537)|0;n=y;k=nX(r|0,s|0,65537,65537)|0;l=y;i=nX(g|0,t|0,65537,65537)|0;j=y;g=nX(u|0,v|0,65537,65537)|0;h=y;d=nX(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function Tr(a,b){a=a|0;b=b|0;Nr(a,b);Nr(a+(b<<3)|0,b);return}function Ur(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function Vr(a,b){a=a|0;b=b|0;Ur(a,b);ir(a,0,b);return}function Wr(a,b){a=a|0;b=b|0;Sr(a,b);sr(a,0,b);return}function Xr(a,b){a=a|0;b=b|0;Tr(a,b);a=a+(b<<2)|0;tr(a,0,b);tr(a+8|0,0,b);return}function Yr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134154239;c[f+4>>2]=134154239;e=e+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+1|0}return}function Zr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134285313;c[f+4>>2]=134285313;e=e+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+1|0}return}function _r(a,b){a=a|0;b=b|0;Tr(a,b);tr(a,0,b);tr(a+8|0,0,b);return}function $r(a,b){a=a|0;b=b|0;Nr(a,b);tr(a,0,b);tr(a+8|0,0,b);return}function as(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=134219776;c[f+4>>2]=134219776;e=e+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+1|0}return}function bs(a,b){a=a|0;b=b|0;as(a,b);as(a+(b<<3)|0,b);return}function cs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function es(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function fs(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+8|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+16|0;c[e>>2]=134154239;c[e+4>>2]=134154239;e=b+24|0;c[e>>2]=134154239;c[e+4>>2]=134154239;b=b+(d<<1)|0;a=a+1|0}return}function gs(a,b){a=a|0;b=b|0;jv(a,b);return}function hs(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+8|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+16|0;c[e>>2]=134285313;c[e+4>>2]=134285313;e=b+24|0;c[e>>2]=134285313;c[e+4>>2]=134285313;b=b+(d<<1)|0;a=a+1|0}return}function is(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function js(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+8|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+16|0;c[e>>2]=134219776;c[e+4>>2]=134219776;e=b+24|0;c[e>>2]=134219776;c[e+4>>2]=134219776;b=b+(d<<1)|0;a=a+1|0}return}function ls(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ms(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function ns(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yX(d|0,0,256)|0;return}function os(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yX(d|0,0,256)|0;return}function ps(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}yX(d|0,0,256)|0;l=s;return}function qs(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yX(d|0,0,256)|0;l=k;return}function rs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;ls(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ss(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}ls(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;ls(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function ts(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;ms(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function us(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}ms(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;ms(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function vs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d>>1;b=a+(0-d<<1)|0;e=c[b>>2]|0;b=c[b+4>>2]|0;f=a;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1)|0;c[f>>2]=e;c[f+4>>2]=b;f=a+(d<<1<<1)|0;c[f>>2]=e;c[f+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=e;c[d+4>>2]=b;return}function ws(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;d=d>>1;b=nX(e[a+-2>>1]|0|0,0,65537,65537)|0;f=a;c[f>>2]=b;c[f+4>>2]=y;f=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(d<<1)|0;c[b>>2]=f;c[b+4>>2]=y;b=d<<1;f=nX(e[a+(b+-1<<1)>>1]|0|0,0,65537,65537)|0;b=a+(b<<1)|0;c[b>>2]=f;c[b+4>>2]=y;d=d*3|0;b=nX(e[a+(d+-1<<1)>>1]|0|0,0,65537,65537)|0;d=a+(d<<1)|0;c[d>>2]=b;c[d+4>>2]=y;return}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=(e[a+(0-h<<1)>>1]|0)+4+(e[a+(1-h<<1)>>1]|0)+(e[a+(2-h<<1)>>1]|0)+(e[a+(3-h<<1)>>1]|0)+(e[a+-2>>1]|0)+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)>>3;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function ys(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=d>>1;g=e[a+(1-i<<1)>>1]|0;d=e[a+(2-i<<1)>>1]|0;k=e[a+(3-i<<1)>>1]|0;j=e[c>>1]|0;h=e[c+2>>1]|0;f=e[c+4>>1]|0;c=e[c+6>>1]|0;b[a>>1]=((e[a+(0-i<<1)>>1]|0)+2+d+(g<<1)|0)>>>2;g=(g+2+k+(d<<1)|0)>>>2&65535;b[a+(i<<1)>>1]=g;b[a+2>>1]=g;d=(d+2+j+(k<<1)|0)>>>2&65535;g=i<<1;b[a+(g<<1)>>1]=d;b[a+(i+1<<1)>>1]=d;b[a+4>>1]=d;k=(k+2+h+(j<<1)|0)>>>2&65535;d=i*3|0;b[a+(d<<1)>>1]=k;b[a+((g|1)<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+f+(h<<1)|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;b[a+(i+3<<1)>>1]=j;h=(h+2+c+(f<<1)|0)>>>2&65535;b[a+(d+2<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(d+3<<1)>>1]=(f+2+(c*3|0)|0)>>>2;return}function zs(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=d>>1;m=e[a+(~h<<1)>>1]|0;g=e[a+(0-h<<1)>>1]|0;f=e[a+(1-h<<1)>>1]|0;c=e[a+(2-h<<1)>>1]|0;d=e[a+(3-h<<1)>>1]|0;k=e[a+-2>>1]|0;n=e[a+(h+-1<<1)>>1]|0;j=h<<1;i=e[a+(j+-1<<1)>>1]|0;l=h*3|0;b[a+(l<<1)>>1]=(n+2+(e[a+(l+-1<<1)>>1]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&65535;b[a+(l+1<<1)>>1]=i;b[a+(j<<1)>>1]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&65535;b[a+(l+2<<1)>>1]=n;b[a+((j|1)<<1)>>1]=n;b[a+(h<<1)>>1]=n;k=((m<<1)+2+g+k|0)>>>2&65535;b[a+(l+3<<1)>>1]=k;b[a+(j+2<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;b[a>>1]=k;i=(i+(g<<1)+f|0)>>>2&65535;b[a+(j+3<<1)>>1]=i;b[a+(h+2<<1)>>1]=i;b[a+2>>1]=i;g=(g+2+(f<<1)+c|0)>>>2&65535;b[a+(h+3<<1)>>1]=g;b[a+4>>1]=g;b[a+6>>1]=(f+2+(c<<1)+d|0)>>>2;return}function As(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;i=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;k=e[a+(3-j<<1)>>1]|0;g=e[a+-2>>1]|0;f=e[a+(j+-1<<1)>>1]|0;h=j<<1;c=e[a+(h+-1<<1)>>1]|0;d=j*3|0;o=(i+1+n|0)>>>1&65535;b[a+((h|1)<<1)>>1]=o;b[a>>1]=o;o=(n+1+m|0)>>>1&65535;b[a+(h+2<<1)>>1]=o;b[a+2>>1]=o;o=(m+1+l|0)>>>1&65535;b[a+(h+3<<1)>>1]=o;b[a+4>>1]=o;b[a+6>>1]=(l+1+k|0)>>>1;o=((i<<1)+2+n+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=o;b[a+(j<<1)>>1]=o;i=i+2|0;o=(i+(n<<1)+m|0)>>>2&65535;b[a+(d+2<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;n=(n+2+(m<<1)+l|0)>>>2&65535;b[a+(d+3<<1)>>1]=n;b[a+(j+2<<1)>>1]=n;b[a+(j+3<<1)>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+(h<<1)>>1]=(i+(g<<1)+f|0)>>>2;b[a+(d<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Bs(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d>>1;k=e[a+(~j<<1)>>1]|0;n=e[a+(0-j<<1)>>1]|0;m=e[a+(1-j<<1)>>1]|0;l=e[a+(2-j<<1)>>1]|0;i=e[a+-2>>1]|0;g=e[a+(j+-1<<1)>>1]|0;h=j<<1;f=e[a+(h+-1<<1)>>1]|0;d=j*3|0;c=e[a+(d+-1<<1)>>1]|0;o=(k+1+i|0)>>>1&65535;b[a+(j+2<<1)>>1]=o;b[a>>1]=o;o=((k<<1)+2+n+i|0)>>>2&65535;b[a+(j+3<<1)>>1]=o;b[a+2>>1]=o;k=k+2|0;b[a+4>>1]=(k+(n<<1)+m|0)>>>2;b[a+6>>1]=(n+2+(m<<1)+l|0)>>>2;l=(i+1+g|0)>>>1&65535;b[a+(h+2<<1)>>1]=l;b[a+(j<<1)>>1]=l;k=(k+(i<<1)+g|0)>>>2&65535;b[a+(h+3<<1)>>1]=k;b[a+(j+1<<1)>>1]=k;j=(g+1+f|0)>>>1&65535;b[a+(d+2<<1)>>1]=j;b[a+(h<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+3<<1)>>1]=i;b[a+((h|1)<<1)>>1]=i;b[a+(d<<1)>>1]=(f+1+c|0)>>>1;b[a+(d+1<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Cs(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=d>>1;d=e[a+(0-h<<1)>>1]|0;k=e[a+(1-h<<1)>>1]|0;j=e[a+(2-h<<1)>>1]|0;i=e[a+(3-h<<1)>>1]|0;g=e[c>>1]|0;f=e[c+2>>1]|0;c=e[c+4>>1]|0;b[a>>1]=(d+1+k|0)>>>1;m=(k+1+j|0)>>>1&65535;l=h<<1;b[a+(l<<1)>>1]=m;b[a+2>>1]=m;m=(j+1+i|0)>>>1&65535;b[a+((l|1)<<1)>>1]=m;b[a+4>>1]=m;m=(i+1+g|0)>>>1&65535;b[a+(l+2<<1)>>1]=m;b[a+6>>1]=m;b[a+(l+3<<1)>>1]=(g+1+f|0)>>>1;b[a+(h<<1)>>1]=(d+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&65535;d=h*3|0;b[a+(d<<1)>>1]=k;b[a+(h+1<<1)>>1]=k;j=(j+2+(i<<1)+g|0)>>>2&65535;b[a+(d+1<<1)>>1]=j;b[a+(h+2<<1)>>1]=j;i=(i+2+(g<<1)+f|0)>>>2&65535;b[a+(d+2<<1)>>1]=i;b[a+(h+3<<1)>>1]=i;b[a+(d+3<<1)>>1]=(g+2+(f<<1)+c|0)>>>2;return}function Ds(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=d>>1;k=e[a+-2>>1]|0;j=e[a+(g+-1<<1)>>1]|0;d=g<<1;i=e[a+(d+-1<<1)>>1]|0;f=g*3|0;c=b[a+(f+-1<<1)>>1]|0;h=c&65535;b[a>>1]=(k+1+j|0)>>>1;b[a+2>>1]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&65535;b[a+(g<<1)>>1]=k;b[a+4>>1]=k;j=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(g+1<<1)>>1]=j;b[a+6>>1]=j;j=(i+1+h|0)>>>1&65535;b[a+(d<<1)>>1]=j;b[a+(g+2<<1)>>1]=j;h=(i+2+h+(h<<1)|0)>>>2&65535;b[a+((d|1)<<1)>>1]=h;b[a+(g+3<<1)>>1]=h;b[a+(f+3<<1)>>1]=c;b[a+(f+2<<1)>>1]=c;b[a+(d+2<<1)>>1]=c;b[a+(f<<1)>>1]=c;b[a+(f+1<<1)>>1]=c;b[a+(d+3<<1)>>1]=c;return}function Es(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0;h=d>>1;g=h<<1;d=h*3|0;f=nX(((e[a+-2>>1]|0)+2+(e[a+(h+-1<<1)>>1]|0)+(e[a+(g+-1<<1)>>1]|0)+(e[a+(d+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;i=a;c[i>>2]=f;c[i+4>>2]=b;h=a+(h<<1)|0;c[h>>2]=f;c[h+4>>2]=b;g=a+(g<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Fs(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;b=a+(d<<1<<1)|0;c[b>>2]=536813567;c[b+4>>2]=536813567;d=a+(d*3<<1)|0;c[d>>2]=536813567;c[d+4>>2]=536813567;return}function Gs(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;b=a+(d<<1<<1)|0;c[b>>2]=536944641;c[b+4>>2]=536944641;d=a+(d*3<<1)|0;c[d>>2]=536944641;c[d+4>>2]=536944641;return}function Hs(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0;d=d>>1;f=nX(((e[a+(0-d<<1)>>1]|0)+2+(e[a+(1-d<<1)>>1]|0)+(e[a+(2-d<<1)>>1]|0)+(e[a+(3-d<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;b=y;g=a;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1)|0;c[g>>2]=f;c[g+4>>2]=b;g=a+(d<<1<<1)|0;c[g>>2]=f;c[g+4>>2]=b;d=a+(d*3<<1)|0;c[d>>2]=f;c[d+4>>2]=b;return}function Is(a,b,d){a=a|0;b=b|0;d=d|0;d=d>>1;b=a;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;b=a+(d<<1<<1)|0;c[b>>2]=536879104;c[b+4>>2]=536879104;d=a+(d*3<<1)|0;c[d>>2]=536879104;c[d+4>>2]=536879104;return}function Js(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=g>>1;o=e[a+(0-j<<1)>>1]|0;n=e[a+(1-j<<1)>>1]|0;i=e[a+(2-j<<1)>>1]|0;m=e[a+(3-j<<1)>>1]|0;l=e[a+(4-j<<1)>>1]|0;k=e[a+(5-j<<1)>>1]|0;g=e[a+(6-j<<1)>>1]|0;h=e[a+(7-j<<1)>>1]|0;f=(g+2+(e[a+((f|0?8:7)-j<<1)>>1]|0)+(h<<1)|0)>>>2;b[a>>1]=((e[a+((((d|0)!=0)<<31>>31)-j<<1)>>1]|0)+2+(o<<1)+n|0)>>>2;b[a+2>>1]=(o+2+(n<<1)+i|0)>>>2;b[a+4>>1]=(n+2+(i<<1)+m|0)>>>2;b[a+6>>1]=(i+2+(m<<1)+l|0)>>>2;i=a+8|0;b[i>>1]=(m+2+(l<<1)+k|0)>>>2;b[a+10>>1]=(l+2+(k<<1)+g|0)>>>2;b[a+12>>1]=(k+2+(g<<1)+h|0)>>>2;b[a+14>>1]=f;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;g=1;while(1){if((g|0)==8)break;o=a+((N(g,j)|0)<<1)|0;n=o;c[n>>2]=d;c[n+4>>2]=f;o=o+8|0;c[o>>2]=h;c[o+4>>2]=i;g=g+1|0}return}function Ks(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=f>>1;u=e[a+((N(p,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;s=e[a+-2>>1]|0;q=e[a+(p+-1<<1)>>1]|0;n=p<<1;o=e[a+(n+-1<<1)>>1]|0;l=p*3|0;m=e[a+(l+-1<<1)>>1]|0;j=p<<2;k=e[a+(j+-1<<1)>>1]|0;h=p*5|0;i=e[a+(h+-1<<1)>>1]|0;g=p*6|0;d=e[a+(g+-1<<1)>>1]|0;f=p*7|0;b=e[a+(f+-1<<1)>>1]|0;u=nX((u+2+(s<<1)+q|0)>>>2|0,0,65537,65537)|0;t=y;r=a;c[r>>2]=u;c[r+4>>2]=t;r=a+8|0;c[r>>2]=u;c[r+4>>2]=t;s=nX((s+2+(q<<1)+o|0)>>>2|0,0,65537,65537)|0;r=y;p=a+(p<<1)|0;t=p;c[t>>2]=s;c[t+4>>2]=r;p=p+8|0;c[p>>2]=s;c[p+4>>2]=r;q=nX((q+2+(o<<1)+m|0)>>>2|0,0,65537,65537)|0;p=y;n=a+(n<<1)|0;r=n;c[r>>2]=q;c[r+4>>2]=p;n=n+8|0;c[n>>2]=q;c[n+4>>2]=p;o=nX((o+2+(m<<1)+k|0)>>>2|0,0,65537,65537)|0;n=y;l=a+(l<<1)|0;p=l;c[p>>2]=o;c[p+4>>2]=n;l=l+8|0;c[l>>2]=o;c[l+4>>2]=n;m=nX((m+2+(k<<1)+i|0)>>>2|0,0,65537,65537)|0;l=y;j=a+(j<<1)|0;n=j;c[n>>2]=m;c[n+4>>2]=l;j=j+8|0;c[j>>2]=m;c[j+4>>2]=l;k=nX((k+2+(i<<1)+d|0)>>>2|0,0,65537,65537)|0;j=y;h=a+(h<<1)|0;l=h;c[l>>2]=k;c[l+4>>2]=j;h=h+8|0;c[h>>2]=k;c[h+4>>2]=j;i=nX((i+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;h=y;g=a+(g<<1)|0;j=g;c[j>>2]=i;c[j+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=h;b=nX((d+2+(b*3|0)|0)>>>2|0,0,65537,65537)|0;d=y;f=a+(f<<1)|0;a=f;c[a>>2]=b;c[a+4>>2]=d;f=f+8|0;c[f>>2]=b;c[f+4>>2]=d;return}function Ls(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=f>>1;n=((b|0)!=0)<<31>>31;w=e[a+((N(h,n)|0)+-1<<1)>>1]|0;v=e[a+-2>>1]|0;u=e[a+(h+-1<<1)>>1]|0;t=e[a+((h<<1)+-1<<1)>>1]|0;s=e[a+((h*3|0)+-1<<1)>>1]|0;r=e[a+((h<<2)+-1<<1)>>1]|0;q=e[a+((h*5|0)+-1<<1)>>1]|0;p=e[a+((h*6|0)+-1<<1)>>1]|0;o=e[a+((h*7|0)+-1<<1)>>1]|0;m=e[a+(0-h<<1)>>1]|0;l=e[a+(1-h<<1)>>1]|0;k=e[a+(2-h<<1)>>1]|0;j=e[a+(3-h<<1)>>1]|0;i=e[a+(4-h<<1)>>1]|0;f=e[a+(5-h<<1)>>1]|0;b=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((e[a+(n-h<<1)>>1]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+b|0)>>>2)+((f+2+(b<<1)+g|0)>>>2)+((b+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>4;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;w=f;c[w>>2]=d;c[w+4>>2]=g;w=f+8|0;c[w>>2]=d;c[w+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Ms(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;q=f>>1;n=e[a+(0-q<<1)>>1]|0;o=e[a+(1-q<<1)>>1]|0;s=e[a+(2-q<<1)>>1]|0;p=(n+2+(o<<1)+s|0)>>>2;t=e[a+(3-q<<1)>>1]|0;r=(o+2+(s<<1)+t|0)>>>2;u=e[a+(4-q<<1)>>1]|0;s=(s+2+(t<<1)+u|0)>>>2;v=e[a+(5-q<<1)>>1]|0;t=(t+2+(u<<1)+v|0)>>>2;m=e[a+(6-q<<1)>>1]|0;u=(u+2+(v<<1)+m|0)>>>2;f=e[a+(7-q<<1)>>1]|0;v=(v+2+(m<<1)+f|0)>>>2;l=(d|0)!=0;m=(m+2+(e[a+((l?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(l){x=e[a+(8-q<<1)>>1]|0;w=e[a+(9-q<<1)>>1]|0;l=e[a+(10-q<<1)>>1]|0;k=e[a+(11-q<<1)>>1]|0;j=e[a+(12-q<<1)>>1]|0;i=e[a+(13-q<<1)>>1]|0;h=e[a+(14-q<<1)>>1]|0;g=e[a+(15-q<<1)>>1]|0;d=(h+2+(g*3|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(w+2+(l<<1)+k|0)>>>2;l=(x+2+(w<<1)+l|0)>>>2;f=(f+2+(x<<1)+w|0)>>>2}else{d=f;g=f;h=f;i=f;j=f;k=f;l=f}b[a>>1]=((((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(n<<1)+o|0)>>>2)+2+(p<<1)+r|0)>>>2;w=(p+2+(r<<1)+s|0)>>>2&65535;b[a+2>>1]=w;b[a+(q<<1)>>1]=w;w=(r+2+(s<<1)+t|0)>>>2&65535;b[a+4>>1]=w;b[a+(q+1<<1)>>1]=w;r=q<<1;b[a+(r<<1)>>1]=w;w=(s+2+(t<<1)+u|0)>>>2&65535;b[a+6>>1]=w;b[a+(q+2<<1)>>1]=w;b[a+((r|1)<<1)>>1]=w;s=q*3|0;b[a+(s<<1)>>1]=w;w=(t+2+(u<<1)+v|0)>>>2&65535;b[a+8>>1]=w;b[a+(q+3<<1)>>1]=w;b[a+(r+2<<1)>>1]=w;b[a+(s+1<<1)>>1]=w;t=q<<2;b[a+(t<<1)>>1]=w;w=(u+2+(v<<1)+m|0)>>>2&65535;b[a+10>>1]=w;b[a+(q+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(s+2<<1)>>1]=w;b[a+((t|1)<<1)>>1]=w;u=q*5|0;b[a+(u<<1)>>1]=w;w=(v+2+(m<<1)+f|0)>>>2&65535;b[a+12>>1]=w;b[a+(q+5<<1)>>1]=w;b[a+(r+4<<1)>>1]=w;b[a+(s+3<<1)>>1]=w;b[a+((t|2)<<1)>>1]=w;b[a+(u+1<<1)>>1]=w;c=q*6|0;b[a+(c<<1)>>1]=w;w=(m+2+(f<<1)+l|0)>>>2&65535;b[a+14>>1]=w;b[a+(q+6<<1)>>1]=w;b[a+(r+5<<1)>>1]=w;b[a+(s+4<<1)>>1]=w;b[a+((t|3)<<1)>>1]=w;b[a+(u+2<<1)>>1]=w;b[a+((c|1)<<1)>>1]=w;x=q*7|0;b[a+(x<<1)>>1]=w;w=(f+2+(l<<1)+k|0)>>>2&65535;b[a+(q+7<<1)>>1]=w;b[a+(r+6<<1)>>1]=w;b[a+(s+5<<1)>>1]=w;b[a+(t+4<<1)>>1]=w;b[a+(u+3<<1)>>1]=w;b[a+(c+2<<1)>>1]=w;b[a+(x+1<<1)>>1]=w;w=(l+2+(k<<1)+j|0)>>>2&65535;b[a+(r+7<<1)>>1]=w;b[a+(s+6<<1)>>1]=w;b[a+(t+5<<1)>>1]=w;b[a+(u+4<<1)>>1]=w;b[a+(c+3<<1)>>1]=w;b[a+(x+2<<1)>>1]=w;w=(k+2+(j<<1)+i|0)>>>2&65535;b[a+(s+7<<1)>>1]=w;b[a+(t+6<<1)>>1]=w;b[a+(u+5<<1)>>1]=w;b[a+(c+4<<1)>>1]=w;b[a+(x+3<<1)>>1]=w;w=(j+2+(i<<1)+h|0)>>>2&65535;b[a+(t+7<<1)>>1]=w;b[a+(u+6<<1)>>1]=w;b[a+(c+5<<1)>>1]=w;b[a+(x+4<<1)>>1]=w;w=(i+2+(h<<1)+g|0)>>>2&65535;b[a+(u+7<<1)>>1]=w;b[a+(c+6<<1)>>1]=w;b[a+(x+5<<1)>>1]=w;w=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(c+7<<1)>>1]=w;b[a+(x+6<<1)>>1]=w;b[a+(x+7<<1)>>1]=(g+2+(d*3|0)|0)>>>2;return}function Ns(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=f>>1;t=((c|0)!=0)<<31>>31;C=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;s=((e[a+(t-h<<1)>>1]|0)+2+(C<<1)+m|0)>>>2;k=e[a+(2-h<<1)>>1]|0;C=C+2|0;o=(C+(m<<1)+k|0)>>>2;i=e[a+(3-h<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;g=e[a+(4-h<<1)>>1]|0;k=(k+2+(i<<1)+g|0)>>>2;c=e[a+(5-h<<1)>>1]|0;i=(i+2+(g<<1)+c|0)>>>2;q=e[a+(6-h<<1)>>1]|0;g=(g+2+(c<<1)+q|0)>>>2;f=e[a+(7-h<<1)>>1]|0;c=(c+2+(q<<1)+f|0)>>>2;f=(q+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(f<<1)|0)>>>2;t=e[a+((N(h,t)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;v=e[a+(h+-1<<1)>>1]|0;t=(t+2+(q<<1)+v|0)>>>2;j=h<<1;w=e[a+(j+-1<<1)>>1]|0;d=(q+2+(v<<1)+w|0)>>>2;l=h*3|0;x=e[a+(l+-1<<1)>>1]|0;v=(v+2+(w<<1)+x|0)>>>2;n=h<<2;y=e[a+(n+-1<<1)>>1]|0;w=(w+2+(x<<1)+y|0)>>>2;p=h*5|0;z=e[a+(p+-1<<1)>>1]|0;x=(x+2+(y<<1)+z|0)>>>2;r=h*6|0;B=e[a+(r+-1<<1)>>1]|0;y=(y+2+(z<<1)+B|0)>>>2;u=h*7|0;A=e[a+(u+-1<<1)>>1]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((e[a+(~h<<1)>>1]|0)<<1)|0)>>>2;b[a+(u<<1)>>1]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&65535;b[a+(u+1<<1)>>1]=z;b[a+(r<<1)>>1]=z;y=(w+2+(x<<1)+y|0)>>>2&65535;b[a+(u+2<<1)>>1]=y;b[a+((r|1)<<1)>>1]=y;b[a+(p<<1)>>1]=y;x=(v+2+(w<<1)+x|0)>>>2&65535;b[a+(u+3<<1)>>1]=x;b[a+(r+2<<1)>>1]=x;b[a+(p+1<<1)>>1]=x;b[a+(n<<1)>>1]=x;w=(d+2+(v<<1)+w|0)>>>2&65535;b[a+(u+4<<1)>>1]=w;b[a+(r+3<<1)>>1]=w;b[a+(p+2<<1)>>1]=w;b[a+((n|1)<<1)>>1]=w;b[a+(l<<1)>>1]=w;v=(t+2+(d<<1)+v|0)>>>2&65535;b[a+(u+5<<1)>>1]=v;b[a+(r+4<<1)>>1]=v;b[a+(p+3<<1)>>1]=v;b[a+((n|2)<<1)>>1]=v;b[a+(l+1<<1)>>1]=v;b[a+(j<<1)>>1]=v;d=((t<<1)+2+d+q|0)>>>2&65535;b[a+(u+6<<1)>>1]=d;b[a+(r+5<<1)>>1]=d;b[a+(p+4<<1)>>1]=d;b[a+((n|3)<<1)>>1]=d;b[a+(l+2<<1)>>1]=d;b[a+((j|1)<<1)>>1]=d;b[a+(h<<1)>>1]=d;d=s+2|0;t=(d+t+(q<<1)|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(r+6<<1)>>1]=t;b[a+(p+5<<1)>>1]=t;b[a+(n+4<<1)>>1]=t;b[a+(l+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(h+1<<1)>>1]=t;b[a>>1]=t;q=((s<<1)+2+o+q|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+6<<1)>>1]=q;b[a+(n+5<<1)>>1]=q;b[a+(l+4<<1)>>1]=q;b[a+(j+3<<1)>>1]=q;b[a+(h+2<<1)>>1]=q;b[a+2>>1]=q;d=(d+(o<<1)+m|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(n+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(h+3<<1)>>1]=d;b[a+4>>1]=d;d=(o+2+(m<<1)+k|0)>>>2&65535;b[a+(n+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(h+4<<1)>>1]=d;b[a+6>>1]=d;d=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(l+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(h+5<<1)>>1]=d;b[a+8>>1]=d;d=(k+2+(i<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+10>>1]=d;d=(i+2+(g<<1)+c|0)>>>2&65535;b[a+(h+7<<1)>>1]=d;b[a+12>>1]=d;b[a+14>>1]=(g+2+(c<<1)+f|0)>>>2;return}function Os(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=f>>1;s=((c|0)!=0)<<31>>31;A=e[a+(0-g<<1)>>1]|0;q=e[a+(1-g<<1)>>1]|0;u=((e[a+(s-g<<1)>>1]|0)+2+(A<<1)+q|0)>>>2;n=e[a+(2-g<<1)>>1]|0;A=A+2|0;r=(A+(q<<1)+n|0)>>>2;k=e[a+(3-g<<1)>>1]|0;q=(q+2+(n<<1)+k|0)>>>2;h=e[a+(4-g<<1)>>1]|0;n=(n+2+(k<<1)+h|0)>>>2;c=e[a+(5-g<<1)>>1]|0;k=(k+2+(h<<1)+c|0)>>>2;t=e[a+(6-g<<1)>>1]|0;h=(h+2+(c<<1)+t|0)>>>2;f=e[a+(7-g<<1)>>1]|0;c=(c+2+(t<<1)+f|0)>>>2;f=(t+2+(e[a+((d|0?8:7)-g<<1)>>1]|0)+(f<<1)|0)>>>2;s=e[a+((N(g,s)|0)+-1<<1)>>1]|0;t=e[a+-2>>1]|0;d=e[a+(g+-1<<1)>>1]|0;s=(s+2+(t<<1)+d|0)>>>2;i=g<<1;x=e[a+(i+-1<<1)>>1]|0;v=(t+2+(d<<1)+x|0)>>>2;j=g*3|0;w=e[a+(j+-1<<1)>>1]|0;d=(d+2+(x<<1)+w|0)>>>2;l=g<<2;z=e[a+(l+-1<<1)>>1]|0;x=(x+2+(w<<1)+z|0)>>>2;m=g*5|0;B=e[a+(m+-1<<1)>>1]|0;w=(w+2+(z<<1)+B|0)>>>2;o=g*6|0;y=e[a+(o+-1<<1)>>1]|0;z=(z+2+(B<<1)+y|0)>>>2;p=g*7|0;y=(B+2+(y<<1)+(e[a+(p+-1<<1)>>1]|0)|0)>>>2;t=(A+t+((e[a+(~g<<1)>>1]|0)<<1)|0)>>>2;b[a+(o<<1)>>1]=(x+2+(w<<1)+z|0)>>>2;b[a+(p<<1)>>1]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(d<<1)+x|0)>>>2&65535;b[a+((o|1)<<1)>>1]=y;b[a+(l<<1)>>1]=y;w=(d+2+(x<<1)+w|0)>>>2&65535;b[a+(p+1<<1)>>1]=w;b[a+(m<<1)>>1]=w;w=((s<<1)+2+v+t|0)>>>2&65535;b[a+(o+2<<1)>>1]=w;b[a+((l|1)<<1)>>1]=w;b[a+(i<<1)>>1]=w;d=(s+2+(v<<1)+d|0)>>>2&65535;b[a+(p+2<<1)>>1]=d;b[a+(m+1<<1)>>1]=d;b[a+(j<<1)>>1]=d;d=u+2|0;s=(d+s+(t<<1)|0)>>>2&65535;b[a+(p+3<<1)>>1]=s;b[a+(m+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;b[a+(g<<1)>>1]=s;s=u+1|0;v=(s+t|0)>>>1&65535;b[a+(o+3<<1)>>1]=v;b[a+((l|2)<<1)>>1]=v;b[a+((i|1)<<1)>>1]=v;b[a>>1]=v;t=((u<<1)+2+r+t|0)>>>2&65535;b[a+(p+4<<1)>>1]=t;b[a+(m+3<<1)>>1]=t;b[a+(j+2<<1)>>1]=t;b[a+(g+1<<1)>>1]=t;s=(s+r|0)>>>1&65535;b[a+(o+4<<1)>>1]=s;b[a+((l|3)<<1)>>1]=s;b[a+(i+2<<1)>>1]=s;b[a+2>>1]=s;d=(d+(r<<1)+q|0)>>>2&65535;b[a+(p+5<<1)>>1]=d;b[a+(m+4<<1)>>1]=d;b[a+(j+3<<1)>>1]=d;b[a+(g+2<<1)>>1]=d;d=(r+1+q|0)>>>1&65535;b[a+(o+5<<1)>>1]=d;b[a+(l+4<<1)>>1]=d;b[a+(i+3<<1)>>1]=d;b[a+4>>1]=d;d=(r+2+(q<<1)+n|0)>>>2&65535;b[a+(p+6<<1)>>1]=d;b[a+(m+5<<1)>>1]=d;b[a+(j+4<<1)>>1]=d;b[a+(g+3<<1)>>1]=d;d=(q+1+n|0)>>>1&65535;b[a+(o+6<<1)>>1]=d;b[a+(l+5<<1)>>1]=d;b[a+(i+4<<1)>>1]=d;b[a+6>>1]=d;d=(q+2+(n<<1)+k|0)>>>2&65535;b[a+(p+7<<1)>>1]=d;b[a+(m+6<<1)>>1]=d;b[a+(j+5<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;d=(n+1+k|0)>>>1&65535;b[a+(o+7<<1)>>1]=d;b[a+(l+6<<1)>>1]=d;b[a+(i+5<<1)>>1]=d;b[a+8>>1]=d;d=(n+2+(k<<1)+h|0)>>>2&65535;b[a+(m+7<<1)>>1]=d;b[a+(j+6<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;d=(k+1+h|0)>>>1&65535;b[a+(l+7<<1)>>1]=d;b[a+(i+6<<1)>>1]=d;b[a+10>>1]=d;d=(k+2+(h<<1)+c|0)>>>2&65535;b[a+(j+7<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;d=(h+1+c|0)>>>1&65535;b[a+(i+7<<1)>>1]=d;b[a+12>>1]=d;b[a+(g+7<<1)>>1]=(h+2+(c<<1)+f|0)>>>2;b[a+14>>1]=(c+1+f|0)>>>1;return}function Ps(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;i=f>>1;o=((c|0)!=0)<<31>>31;A=e[a+(0-i<<1)>>1]|0;h=e[a+(1-i<<1)>>1]|0;n=((e[a+(o-i<<1)>>1]|0)+2+(A<<1)+h|0)>>>2;g=e[a+(2-i<<1)>>1]|0;A=A+2|0;j=(A+(h<<1)+g|0)>>>2;c=e[a+(3-i<<1)>>1]|0;h=(h+2+(g<<1)+c|0)>>>2;d=e[a+(4-i<<1)>>1]|0;g=(g+2+(c<<1)+d|0)>>>2;m=e[a+(5-i<<1)>>1]|0;c=(c+2+(d<<1)+m|0)>>>2;f=e[a+(6-i<<1)>>1]|0;d=(d+2+(m<<1)+f|0)>>>2;f=(m+2+(f<<1)+(e[a+(7-i<<1)>>1]|0)|0)>>>2;o=e[a+((N(i,o)|0)+-1<<1)>>1]|0;m=e[a+-2>>1]|0;k=e[a+(i+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;l=i<<1;t=e[a+(l+-1<<1)>>1]|0;q=(m+2+(k<<1)+t|0)>>>2;p=i*3|0;v=e[a+(p+-1<<1)>>1]|0;k=(k+2+(t<<1)+v|0)>>>2;r=i<<2;x=e[a+(r+-1<<1)>>1]|0;t=(t+2+(v<<1)+x|0)>>>2;s=i*5|0;y=e[a+(s+-1<<1)>>1]|0;v=(v+2+(x<<1)+y|0)>>>2;u=i*6|0;B=e[a+(u+-1<<1)>>1]|0;x=(x+2+(y<<1)+B|0)>>>2;w=i*7|0;z=e[a+(w+-1<<1)>>1]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((e[a+(~i<<1)>>1]|0)<<1)|0)>>>2;b[a+(w<<1)>>1]=(z+1+y|0)>>>1;b[a+(w+1<<1)>>1]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&65535;b[a+(w+2<<1)>>1]=z;b[a+(u<<1)>>1]=z;y=(v+2+(x<<1)+y|0)>>>2&65535;b[a+(w+3<<1)>>1]=y;b[a+((u|1)<<1)>>1]=y;y=(v+1+x|0)>>>1&65535;b[a+(w+4<<1)>>1]=y;b[a+(u+2<<1)>>1]=y;b[a+(s<<1)>>1]=y;x=(t+2+(v<<1)+x|0)>>>2&65535;b[a+(w+5<<1)>>1]=x;b[a+(u+3<<1)>>1]=x;b[a+(s+1<<1)>>1]=x;x=(t+1+v|0)>>>1&65535;b[a+(w+6<<1)>>1]=x;b[a+(u+4<<1)>>1]=x;b[a+(s+2<<1)>>1]=x;b[a+(r<<1)>>1]=x;v=(k+2+(t<<1)+v|0)>>>2&65535;b[a+(w+7<<1)>>1]=v;b[a+(u+5<<1)>>1]=v;b[a+(s+3<<1)>>1]=v;b[a+((r|1)<<1)>>1]=v;v=(k+1+t|0)>>>1&65535;b[a+(u+6<<1)>>1]=v;b[a+(s+4<<1)>>1]=v;b[a+((r|2)<<1)>>1]=v;b[a+(p<<1)>>1]=v;t=(q+2+(k<<1)+t|0)>>>2&65535;b[a+(u+7<<1)>>1]=t;b[a+(s+5<<1)>>1]=t;b[a+((r|3)<<1)>>1]=t;b[a+(p+1<<1)>>1]=t;t=(q+1+k|0)>>>1&65535;b[a+(s+6<<1)>>1]=t;b[a+(r+4<<1)>>1]=t;b[a+(p+2<<1)>>1]=t;b[a+(l<<1)>>1]=t;k=(o+2+(q<<1)+k|0)>>>2&65535;b[a+(s+7<<1)>>1]=k;b[a+(r+5<<1)>>1]=k;b[a+(p+3<<1)>>1]=k;b[a+((l|1)<<1)>>1]=k;k=o+1|0;s=(k+q|0)>>>1&65535;b[a+(r+6<<1)>>1]=s;b[a+(p+4<<1)>>1]=s;b[a+(l+2<<1)>>1]=s;b[a+(i<<1)>>1]=s;q=((o<<1)+2+q+m|0)>>>2&65535;b[a+(r+7<<1)>>1]=q;b[a+(p+5<<1)>>1]=q;b[a+(l+3<<1)>>1]=q;b[a+(i+1<<1)>>1]=q;k=(k+m|0)>>>1&65535;b[a+(p+6<<1)>>1]=k;b[a+(l+4<<1)>>1]=k;b[a+(i+2<<1)>>1]=k;b[a>>1]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&65535;b[a+(p+7<<1)>>1]=o;b[a+(l+5<<1)>>1]=o;b[a+(i+3<<1)>>1]=o;b[a+2>>1]=o;m=((n<<1)+2+j+m|0)>>>2&65535;b[a+(l+6<<1)>>1]=m;b[a+(i+4<<1)>>1]=m;b[a+4>>1]=m;k=(k+(j<<1)+h|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(i+5<<1)>>1]=k;b[a+6>>1]=k;j=(j+2+(h<<1)+g|0)>>>2&65535;b[a+(i+6<<1)>>1]=j;b[a+8>>1]=j;h=(h+2+(g<<1)+c|0)>>>2&65535;b[a+(i+7<<1)>>1]=h;b[a+10>>1]=h;b[a+12>>1]=(g+2+(c<<1)+d|0)>>>2;b[a+14>>1]=(c+2+(d<<1)+f|0)>>>2;return}function Qs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=f>>1;k=e[a+(0-q<<1)>>1]|0;l=e[a+(1-q<<1)>>1]|0;j=((e[a+((((c|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(k<<1)+l|0)>>>2;m=e[a+(2-q<<1)>>1]|0;k=(k+2+(l<<1)+m|0)>>>2;n=e[a+(3-q<<1)>>1]|0;l=(l+2+(m<<1)+n|0)>>>2;o=e[a+(4-q<<1)>>1]|0;m=(m+2+(n<<1)+o|0)>>>2;p=e[a+(5-q<<1)>>1]|0;n=(n+2+(o<<1)+p|0)>>>2;i=e[a+(6-q<<1)>>1]|0;o=(o+2+(p<<1)+i|0)>>>2;f=e[a+(7-q<<1)>>1]|0;p=(p+2+(i<<1)+f|0)>>>2;h=(d|0)!=0;i=(i+2+(e[a+((h?8:7)-q<<1)>>1]|0)+(f<<1)|0)>>>2;if(h){s=e[a+(8-q<<1)>>1]|0;r=e[a+(9-q<<1)>>1]|0;h=e[a+(10-q<<1)>>1]|0;g=e[a+(11-q<<1)>>1]|0;d=e[a+(12-q<<1)>>1]|0;c=(g+2+(d<<1)+(e[a+(13-q<<1)>>1]|0)|0)>>>2;d=(h+2+(g<<1)+d|0)>>>2;g=(r+2+(h<<1)+g|0)>>>2;h=(s+2+(r<<1)+h|0)>>>2;f=(f+2+(s<<1)+r|0)>>>2}else{c=f;d=f;g=f;h=f}b[a>>1]=(j+1+k|0)>>>1;b[a+(q<<1)>>1]=(j+2+(k<<1)+l|0)>>>2;s=(k+1+l|0)>>>1&65535;b[a+2>>1]=s;t=q<<1;b[a+(t<<1)>>1]=s;s=(k+2+(l<<1)+m|0)>>>2&65535;b[a+(q+1<<1)>>1]=s;j=q*3|0;b[a+(j<<1)>>1]=s;s=(l+1+m|0)>>>1&65535;b[a+4>>1]=s;b[a+((t|1)<<1)>>1]=s;k=q<<2;b[a+(k<<1)>>1]=s;s=(l+2+(m<<1)+n|0)>>>2&65535;b[a+(q+2<<1)>>1]=s;b[a+(j+1<<1)>>1]=s;l=q*5|0;b[a+(l<<1)>>1]=s;s=(m+1+n|0)>>>1&65535;b[a+6>>1]=s;b[a+(t+2<<1)>>1]=s;b[a+((k|1)<<1)>>1]=s;r=q*6|0;b[a+(r<<1)>>1]=s;m=(m+2+(n<<1)+o|0)>>>2&65535;b[a+(q+3<<1)>>1]=m;b[a+(j+2<<1)>>1]=m;b[a+(l+1<<1)>>1]=m;s=q*7|0;b[a+(s<<1)>>1]=m;m=(n+1+o|0)>>>1&65535;b[a+8>>1]=m;b[a+(t+3<<1)>>1]=m;b[a+((k|2)<<1)>>1]=m;b[a+((r|1)<<1)>>1]=m;n=(n+2+(o<<1)+p|0)>>>2&65535;b[a+(q+4<<1)>>1]=n;b[a+(j+3<<1)>>1]=n;b[a+(l+2<<1)>>1]=n;b[a+(s+1<<1)>>1]=n;n=(o+1+p|0)>>>1&65535;b[a+10>>1]=n;b[a+(t+4<<1)>>1]=n;b[a+((k|3)<<1)>>1]=n;b[a+(r+2<<1)>>1]=n;o=(o+2+(p<<1)+i|0)>>>2&65535;b[a+(q+5<<1)>>1]=o;b[a+(j+4<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(s+2<<1)>>1]=o;o=(p+1+i|0)>>>1&65535;b[a+12>>1]=o;b[a+(t+5<<1)>>1]=o;b[a+(k+4<<1)>>1]=o;b[a+(r+3<<1)>>1]=o;p=(p+2+(i<<1)+f|0)>>>2&65535;b[a+(q+6<<1)>>1]=p;b[a+(j+5<<1)>>1]=p;b[a+(l+4<<1)>>1]=p;b[a+(s+3<<1)>>1]=p;p=(i+1+f|0)>>>1&65535;b[a+14>>1]=p;b[a+(t+6<<1)>>1]=p;b[a+(k+5<<1)>>1]=p;b[a+(r+4<<1)>>1]=p;p=(i+2+(f<<1)+h|0)>>>2&65535;b[a+(q+7<<1)>>1]=p;b[a+(j+6<<1)>>1]=p;b[a+(l+5<<1)>>1]=p;b[a+(s+4<<1)>>1]=p;q=(f+1+h|0)>>>1&65535;b[a+(t+7<<1)>>1]=q;b[a+(k+6<<1)>>1]=q;b[a+(r+5<<1)>>1]=q;q=(f+2+(h<<1)+g|0)>>>2&65535;b[a+(j+7<<1)>>1]=q;b[a+(l+6<<1)>>1]=q;b[a+(s+5<<1)>>1]=q;q=(h+1+g|0)>>>1&65535;b[a+(k+7<<1)>>1]=q;b[a+(r+6<<1)>>1]=q;q=(h+2+(g<<1)+d|0)>>>2&65535;b[a+(l+7<<1)>>1]=q;b[a+(s+6<<1)>>1]=q;b[a+(r+7<<1)>>1]=(g+1+d|0)>>>1;b[a+(s+7<<1)>>1]=(g+2+(d<<1)+c|0)>>>2;return}function Rs(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=f>>1;r=e[a+((N(n,((c|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;q=e[a+-2>>1]|0;p=e[a+(n+-1<<1)>>1]|0;r=(r+2+(q<<1)+p|0)>>>2;l=n<<1;o=e[a+(l+-1<<1)>>1]|0;q=(q+2+(p<<1)+o|0)>>>2;j=n*3|0;m=e[a+(j+-1<<1)>>1]|0;p=(p+2+(o<<1)+m|0)>>>2;h=n<<2;k=e[a+(h+-1<<1)>>1]|0;o=(o+2+(m<<1)+k|0)>>>2;g=n*5|0;i=e[a+(g+-1<<1)>>1]|0;m=(m+2+(k<<1)+i|0)>>>2;c=n*6|0;s=e[a+(c+-1<<1)>>1]|0;k=(k+2+(i<<1)+s|0)>>>2;f=n*7|0;d=e[a+(f+-1<<1)>>1]|0;i=(i+2+(s<<1)+d|0)>>>2;d=(s+2+(d*3|0)|0)>>>2;b[a>>1]=(r+1+q|0)>>>1;b[a+2>>1]=(r+2+(q<<1)+p|0)>>>2;r=(q+1+p|0)>>>1&65535;b[a+4>>1]=r;b[a+(n<<1)>>1]=r;q=(q+2+(p<<1)+o|0)>>>2&65535;b[a+6>>1]=q;b[a+(n+1<<1)>>1]=q;q=(p+1+o|0)>>>1&65535;b[a+8>>1]=q;b[a+(n+2<<1)>>1]=q;b[a+(l<<1)>>1]=q;p=(p+2+(o<<1)+m|0)>>>2&65535;b[a+10>>1]=p;b[a+(n+3<<1)>>1]=p;b[a+((l|1)<<1)>>1]=p;p=(o+1+m|0)>>>1&65535;b[a+12>>1]=p;b[a+(n+4<<1)>>1]=p;b[a+(l+2<<1)>>1]=p;b[a+(j<<1)>>1]=p;o=(o+2+(m<<1)+k|0)>>>2&65535;b[a+14>>1]=o;b[a+(n+5<<1)>>1]=o;b[a+(l+3<<1)>>1]=o;b[a+(j+1<<1)>>1]=o;o=(m+1+k|0)>>>1&65535;b[a+(n+6<<1)>>1]=o;b[a+(l+4<<1)>>1]=o;b[a+(j+2<<1)>>1]=o;b[a+(h<<1)>>1]=o;m=(m+2+(k<<1)+i|0)>>>2&65535;b[a+(n+7<<1)>>1]=m;b[a+(l+5<<1)>>1]=m;b[a+(j+3<<1)>>1]=m;b[a+((h|1)<<1)>>1]=m;m=(k+1+i|0)>>>1&65535;b[a+(l+6<<1)>>1]=m;b[a+(j+4<<1)>>1]=m;b[a+((h|2)<<1)>>1]=m;b[a+(g<<1)>>1]=m;k=(k+2+d+(i<<1)|0)>>>2&65535;b[a+(l+7<<1)>>1]=k;b[a+(j+5<<1)>>1]=k;b[a+((h|3)<<1)>>1]=k;b[a+(g+1<<1)>>1]=k;k=(d+1+i|0)>>>1&65535;b[a+(j+6<<1)>>1]=k;b[a+(h+4<<1)>>1]=k;b[a+(g+2<<1)>>1]=k;b[a+(c<<1)>>1]=k;i=(i+2+(d*3|0)|0)>>>2&65535;b[a+(j+7<<1)>>1]=i;b[a+(h+5<<1)>>1]=i;b[a+(g+3<<1)>>1]=i;b[a+((c|1)<<1)>>1]=i;d=d&65535;b[a+(f+7<<1)>>1]=d;b[a+(c+7<<1)>>1]=d;b[a+(g+7<<1)>>1]=d;b[a+(h+7<<1)>>1]=d;b[a+(f+6<<1)>>1]=d;b[a+(c+6<<1)>>1]=d;b[a+(g+6<<1)>>1]=d;b[a+(h+6<<1)>>1]=d;b[a+(f+5<<1)>>1]=d;b[a+(c+5<<1)>>1]=d;b[a+(g+5<<1)>>1]=d;b[a+(f+4<<1)>>1]=d;b[a+(c+4<<1)>>1]=d;b[a+(g+4<<1)>>1]=d;b[a+(f+3<<1)>>1]=d;b[a+(c+3<<1)>>1]=d;b[a+(f+2<<1)>>1]=d;b[a+(c+2<<1)>>1]=d;b[a+(f+1<<1)>>1]=d;b[a+(f<<1)>>1]=d;return}function Ss(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=f>>1;m=e[a+((N(h,((b|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;l=e[a+-2>>1]|0;k=e[a+(h+-1<<1)>>1]|0;j=e[a+((h<<1)+-1<<1)>>1]|0;i=e[a+((h*3|0)+-1<<1)>>1]|0;d=e[a+((h<<2)+-1<<1)>>1]|0;f=e[a+((h*5|0)+-1<<1)>>1]|0;g=e[a+((h*6|0)+-1<<1)>>1]|0;b=e[a+((h*7|0)+-1<<1)>>1]|0;b=((m+2+(l<<1)+k|0)>>>2)+4+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+d|0)>>>2)+((i+2+(d<<1)+f|0)>>>2)+((d+2+(f<<1)+g|0)>>>2)+((f+2+(g<<1)+b|0)>>>2)+((g+2+(b*3|0)|0)>>>2)>>3;b=nX(b|0,((b|0)<0)<<31>>31|0,65537,65537)|0;g=y;f=0;d=a;while(1){if((f|0)==8)break;m=d;c[m>>2]=b;c[m+4>>2]=g;m=d+8|0;c[m>>2]=b;c[m+4>>2]=g;f=f+1|0;d=d+(h<<1)|0}return}function Ts(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=f>>1;n=e[a+(0-h<<1)>>1]|0;m=e[a+(1-h<<1)>>1]|0;l=e[a+(2-h<<1)>>1]|0;k=e[a+(3-h<<1)>>1]|0;j=e[a+(4-h<<1)>>1]|0;i=e[a+(5-h<<1)>>1]|0;f=e[a+(6-h<<1)>>1]|0;g=e[a+(7-h<<1)>>1]|0;d=(((e[a+((((b|0)!=0)<<31>>31)-h<<1)>>1]|0)+2+(n<<1)+m|0)>>>2)+4+((n+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+f|0)>>>2)+((i+2+(f<<1)+g|0)>>>2)+((f+2+(e[a+((d|0?8:7)-h<<1)>>1]|0)+(g<<1)|0)>>>2)>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=0;f=a;while(1){if((b|0)==8)break;n=f;c[n>>2]=d;c[n+4>>2]=g;n=f+8|0;c[n>>2]=d;c[n+4>>2]=g;b=b+1|0;f=f+(h<<1)|0}return}function Us(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=e>>1;b=0;while(1){if((b|0)==8)break;e=a;c[e>>2]=536879104;c[e+4>>2]=536879104;e=a+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0;a=a+(d<<1)|0}return}function Vs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==8)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=b>>1;f=a+(0-g<<1)|0;d=f;h=c[d>>2]|0;d=c[d+4>>2]|0;f=f+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;b=0;while(1){if((b|0)==16)break;i=a+((N(b,g)|0)<<1)|0;j=i;c[j>>2]=h;c[j+4>>2]=d;i=i+8|0;c[i>>2]=e;c[i+4>>2]=f;b=b+1|0}return}function Xs(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==8)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Ys(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;f=f+8|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function Zs(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;h=0-q|0;i=a+6+(h<<1)|0;f=a+(q<<2<<1)+-2|0;p=q<<1;d=f+(0-p<<1)|0;o=a+((q*14|0)+-2)|0;p=a+(-2-p)|0;j=(e[f>>1]|0)-(e[d>>1]|0)|0;c=(e[i+2>>1]|0)-(e[i+-2>>1]|0)|0;g=2;while(1){if((g|0)==5)break;n=f+(q<<1)|0;m=d+(h<<1)|0;l=(N((e[i+(g<<1)>>1]|0)-(e[i+(0-g<<1)>>1]|0)|0,g)|0)+c|0;j=(N((e[n>>1]|0)-(e[m>>1]|0)|0,g)|0)+j|0;c=l;d=m;f=n;g=g+1|0}n=(c*17|0)+16>>5;g=(j*17|0)+16>>5;h=n<<1;i=n*3|0;j=n<<2;k=n*5|0;l=n*6|0;m=n*7|0;f=8;d=(N(g+n|0,-3)|0)+16+((e[p+16>>1]|0)+(e[o>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+i>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+j>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function _s(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=c>>1;l=0-q|0;h=a+6+(l<<1)|0;g=a+(q<<3<<1)+-2|0;f=g+(0-(q<<1)<<1)|0;j=a+((q*22|0)+-2)|0;i=a+((q*6|0)+-2)|0;c=2;d=(e[g>>1]|0)-(e[f>>1]|0)|0;k=(e[h+2>>1]|0)-(e[h+-2>>1]|0)|0;while(1){if((c|0)==5)break;p=g+(q<<1)|0;o=f+(l<<1)|0;n=(N((e[h+(c<<1)>>1]|0)-(e[h+(0-c<<1)>>1]|0)|0,c)|0)+k|0;m=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;d=m;k=n;f=o;g=p}c=5;while(1){if((c|0)>=9)break;p=j+(q<<1)|0;o=i+(l<<1)|0;d=(N((e[p>>1]|0)-(e[o>>1]|0)|0,c)|0)+d|0;c=c+1|0;i=o;j=p}p=(k*17|0)+16>>5;g=(d*5|0)+32>>6;h=p*3|0;k=p<<1;l=p<<2;m=p*5|0;n=p*6|0;o=p*7|0;f=16;d=16-h+(N(g,-7)|0)+((e[i+16>>1]|0)+(e[j>>1]|0)<<4)|0;c=a;while(1){if((f|0)<=0)break;a=d>>5;b[c>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+p>>5;b[c+2>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+k>>5;b[c+4>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+h>>5;b[c+6>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+l>>5;b[c+8>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+m>>5;b[c+10>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+n>>5;b[c+12>>1]=a>>>0<16384?a:0-a>>31&16383;a=d+o>>5;b[c+14>>1]=a>>>0<16384?a:0-a>>31&16383;f=f+-1|0;d=d+g|0;c=c+(q<<1)|0}return}function $s(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b>>1;b=0;d=0;f=0;g=0;while(1){if((b|0)==4)break;l=e[a+((N(b,n)|0)+-1<<1)>>1]|0;l=d+l+(e[a+(b-n<<1)>>1]|0)|0;m=b+4|0;b=b+1|0;d=l;f=f+(e[a+(m-n<<1)>>1]|0)|0;g=g+(e[a+((N(m,n)|0)+-1<<1)>>1]|0)|0}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;h=y;i=f+2>>2;i=nX(i|0,((i|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=g+2>>2;l=((k|0)<0)<<31>>31;f=g+4+f>>3;m=((f|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;g=a+((N(b,n)|0)<<1)|0;o=g;c[o>>2]=d;c[o+4>>2]=h;g=g+8|0;c[g>>2]=i;c[g+4>>2]=j;b=b+1|0}g=nX(k|0,l|0,65537,65537)|0;h=y;d=nX(f|0,m|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;o=a+((N(b,n)|0)<<1)|0;m=o;c[m>>2]=g;c[m+4>>2]=h;o=o+8|0;c[o>>2]=d;c[o+4>>2]=f;b=b+1|0}return}function at(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>1;b=0;d=0;f=0;while(1){if((b|0)==4)break;g=d+(e[a+((N(b,i)|0)+-1<<1)>>1]|0)|0;h=f+(e[a+((N(b+4|0,i)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=g;f=h}g=d+2>>2;g=nX(g|0,((g|0)<0)<<31>>31|0,65537,65537)|0;h=y;d=f+2>>2;f=((d|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;j=a+((N(b,i)|0)<<1)|0;k=j;c[k>>2]=g;c[k+4>>2]=h;j=j+8|0;c[j>>2]=g;c[j+4>>2]=h;b=b+1|0}d=nX(d|0,f|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8)break;k=a+((N(b,i)|0)<<1)|0;j=k;c[j>>2]=d;c[j+4>>2]=f;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function bt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==4){b=4;break}g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}while(1){if((b|0)==8)break;k=a+((N(b,j)|0)<<1)|0;g=k;c[g>>2]=h;c[g+4>>2]=i;k=k+8|0;c[k>>2]=d;c[k+4>>2]=f;b=b+1|0}return}function ct(a,b){a=a|0;b=b|0;bt(a,b);xs(a,0,b);return}function dt(a,b){a=a|0;b=b|0;$s(a,b);Hs(a,0,b);return}function et(a,b){a=a|0;b=b|0;at(a,b);a=a+(b<<2)|0;Is(a,0,b);Is(a+8|0,0,b);return}function ft(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=b>>1;b=0;d=0;h=0;f=0;g=0;i=0;while(1){if((b|0)==4)break;t=e[a+((N(b,z)|0)+-1<<1)>>1]|0;t=d+t+(e[a+(b-z<<1)>>1]|0)|0;u=b+4|0;v=f+(e[a+((N(u,z)|0)+-1<<1)>>1]|0)|0;w=g+(e[a+((N(b+8|0,z)|0)+-1<<1)>>1]|0)|0;x=i+(e[a+((N(b+12|0,z)|0)+-1<<1)>>1]|0)|0;b=b+1|0;d=t;h=h+(e[a+(u-z<<1)>>1]|0)|0;f=v;g=w;i=x}d=d+4>>3;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;j=y;k=h+2>>2;k=nX(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;l=y;m=f+2>>2;n=((m|0)<0)<<31>>31;f=f+4+h>>3;o=((f|0)<0)<<31>>31;r=g+2>>2;s=((r|0)<0)<<31>>31;g=g+4+h>>3;t=((g|0)<0)<<31>>31;u=i+2>>2;v=((u|0)<0)<<31>>31;w=i+4+h>>3;x=((w|0)<0)<<31>>31;b=0;while(1){if((b|0)==4)break;q=a+((N(b,z)|0)<<1)|0;p=q;c[p>>2]=d;c[p+4>>2]=j;q=q+8|0;c[q>>2]=k;c[q+4>>2]=l;b=b+1|0}p=nX(m|0,n|0,65537,65537)|0;q=y;m=nX(f|0,o|0,65537,65537)|0;n=y;k=nX(r|0,s|0,65537,65537)|0;l=y;i=nX(g|0,t|0,65537,65537)|0;j=y;g=nX(u|0,v|0,65537,65537)|0;h=y;d=nX(w|0,x|0,65537,65537)|0;f=y;b=4;while(1){if((b|0)==8){b=8;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=p;c[w+4>>2]=q;x=x+8|0;c[x>>2]=m;c[x+4>>2]=n;b=b+1|0}while(1){if((b|0)==12){b=12;break}x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=k;c[w+4>>2]=l;x=x+8|0;c[x>>2]=i;c[x+4>>2]=j;b=b+1|0}while(1){if((b|0)==16)break;x=a+((N(b,z)|0)<<1)|0;w=x;c[w>>2]=g;c[w+4>>2]=h;x=x+8|0;c[x>>2]=d;c[x+4>>2]=f;b=b+1|0}return}function gt(a,b){a=a|0;b=b|0;at(a,b);at(a+(b<<3)|0,b);return}function ht(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b>>1;f=4-j|0;b=0;d=0;g=0;while(1){if((b|0)==4)break;h=d+(e[a+(b-j<<1)>>1]|0)|0;i=g+(e[a+(f+b<<1)>>1]|0)|0;b=b+1|0;d=h;g=i}h=d+2>>2;h=nX(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;i=y;d=g+2>>2;d=nX(d|0,((d|0)<0)<<31>>31|0,65537,65537)|0;f=y;b=0;while(1){if((b|0)==16)break;g=a+((N(b,j)|0)<<1)|0;k=g;c[k>>2]=h;c[k+4>>2]=i;g=g+8|0;c[g>>2]=d;c[g+4>>2]=f;b=b+1|0}return}function it(a,b){a=a|0;b=b|0;ht(a,b);xs(a,0,b);return}function jt(a,b){a=a|0;b=b|0;ft(a,b);Hs(a,0,b);return}function kt(a,b){a=a|0;b=b|0;gt(a,b);a=a+(b<<2)|0;Is(a,0,b);Is(a+8|0,0,b);return}function lt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536813567;c[f+4>>2]=536813567;e=e+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+1|0}return}function mt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536944641;c[f+4>>2]=536944641;e=e+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+1|0}return}function nt(a,b){a=a|0;b=b|0;gt(a,b);Is(a,0,b);Is(a+8|0,0,b);return}function ot(a,b){a=a|0;b=b|0;at(a,b);Is(a,0,b);Is(a+8|0,0,b);return}function pt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b>>1;b=0;while(1){if((b|0)==8)break;e=a+((N(b,d)|0)<<1)|0;f=e;c[f>>2]=536879104;c[f+4>>2]=536879104;e=e+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+1|0}return}function qt(a,b){a=a|0;b=b|0;pt(a,b);pt(a+(b<<3)|0,b);return}function rt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16){d=0;break}b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+16>>5;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function st(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=b>>1;k=a+(0-g<<1)|0;d=k;l=c[d>>2]|0;d=c[d+4>>2]|0;f=k+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;i=k+16|0;h=c[i>>2]|0;i=c[i+4>>2]|0;k=k+24|0;j=c[k>>2]|0;k=c[k+4>>2]|0;b=0;while(1){if((b|0)==16)break;m=a+((N(b,g)|0)<<1)|0;n=m;c[n>>2]=l;c[n+4>>2]=d;n=m+8|0;c[n>>2]=e;c[n+4>>2]=f;n=m+16|0;c[n>>2]=h;c[n+4>>2]=i;m=m+24|0;c[m>>2]=j;c[m+4>>2]=k;b=b+1|0}return}function tt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0;d=b>>1;b=0;while(1){if((b|0)==16)break;f=N(b,d)|0;h=nX(e[a+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;g=y;f=a+(f<<1)|0;i=f;c[i>>2]=h;c[i+4>>2]=g;i=f+8|0;c[i>>2]=h;c[i+4>>2]=g;i=f+16|0;c[i>>2]=h;c[i+4>>2]=g;f=f+24|0;c[f>>2]=h;c[f+4>>2]=g;b=b+1|0}return}function ut(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+8|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+16|0;c[e>>2]=536813567;c[e+4>>2]=536813567;e=b+24|0;c[e>>2]=536813567;c[e+4>>2]=536813567;b=b+(d<<1)|0;a=a+1|0}return}function vt(a,b){a=a|0;b=b|0;iv(a,b);return}function wt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+8|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+16|0;c[e>>2]=536944641;c[e+4>>2]=536944641;e=b+24|0;c[e>>2]=536944641;c[e+4>>2]=536944641;b=b+(d<<1)|0;a=a+1|0}return}function xt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+((N(d,h)|0)+-1<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function yt(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=b>>1;b=0;d=0;while(1){if((d|0)==16)break;b=b+(e[a+(d-h<<1)>>1]|0)|0;d=d+1|0}f=b+8>>4;f=nX(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;g=y;b=a;d=0;while(1){if((d|0)==16)break;a=b;c[a>>2]=f;c[a+4>>2]=g;a=b+8|0;c[a>>2]=f;c[a+4>>2]=g;a=b+16|0;c[a>>2]=f;c[a+4>>2]=g;a=b+24|0;c[a>>2]=f;c[a+4>>2]=g;b=b+(h<<1)|0;d=d+1|0}return}function zt(a,b){a=a|0;b=b|0;var d=0,e=0;d=b>>1;b=a;a=0;while(1){if((a|0)==16)break;e=b;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+8|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+16|0;c[e>>2]=536879104;c[e+4>>2]=536879104;e=b+24|0;c[e>>2]=536879104;c[e+4>>2]=536879104;b=b+(d<<1)|0;a=a+1|0}return}function At(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;h=f>>1;i=h<<1;j=h*3|0;k=h<<2;g=d;f=a+(0-h<<1)|0;a=0;while(1){if((a|0)==4)break;l=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(h<<1)>>1]=l;l=(c[g+16>>2]|0)+l|0;b[f+(i<<1)>>1]=l;l=(c[g+32>>2]|0)+l|0;b[f+(j<<1)>>1]=l;b[f+(k<<1)>>1]=(c[g+48>>2]|0)+l;g=g+4|0;f=f+2|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Bt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==4)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;b[f+6>>1]=(c[g+12>>2]|0)+i;g=g+16|0;f=f+(h<<1)|0;a=a+1|0}f=d+64|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(f|0));return}function Ct(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=f>>1;l=k<<1;m=k*3|0;n=k<<2;o=k*5|0;h=k*6|0;i=k*7|0;j=k<<3;g=d;f=a+(0-k<<1)|0;a=0;while(1){if((a|0)==8)break;p=(c[g>>2]|0)+(e[f>>1]|0)|0;b[f+(k<<1)>>1]=p;p=(c[g+32>>2]|0)+p|0;b[f+(l<<1)>>1]=p;p=(c[g+64>>2]|0)+p|0;b[f+(m<<1)>>1]=p;p=(c[g+96>>2]|0)+p|0;b[f+(n<<1)>>1]=p;p=(c[g+128>>2]|0)+p|0;b[f+(o<<1)>>1]=p;p=(c[g+160>>2]|0)+p|0;b[f+(h<<1)>>1]=p;p=(c[g+192>>2]|0)+p|0;b[f+(i<<1)>>1]=p;b[f+(j<<1)>>1]=(c[g+224>>2]|0)+p;g=g+4|0;f=f+2|0;a=a+1|0}yX(d|0,0,256)|0;return}function Dt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;h=f>>1;g=d;f=a;a=0;while(1){if((a|0)==8)break;i=(c[g>>2]|0)+(e[f+-2>>1]|0)|0;b[f>>1]=i;i=(c[g+4>>2]|0)+i|0;b[f+2>>1]=i;i=(c[g+8>>2]|0)+i|0;b[f+4>>1]=i;i=(c[g+12>>2]|0)+i|0;b[f+6>>1]=i;i=(c[g+16>>2]|0)+i|0;b[f+8>>1]=i;i=(c[g+20>>2]|0)+i|0;b[f+10>>1]=i;i=(c[g+24>>2]|0)+i|0;b[f+12>>1]=i;b[f+14>>1]=(c[g+28>>2]|0)+i;g=g+32|0;f=f+(h<<1)|0;a=a+1|0}yX(d|0,0,256)|0;return}function Et(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;if((l|0)>=(m|0))W(16);r=s;q=h>>1;u=e[a+(0-q<<1)>>1]|0;t=e[a+(1-q<<1)>>1]|0;h=e[a+(2-q<<1)>>1]|0;p=e[a+(3-q<<1)>>1]|0;o=e[a+(4-q<<1)>>1]|0;n=e[a+(5-q<<1)>>1]|0;k=e[a+(6-q<<1)>>1]|0;j=e[a+(7-q<<1)>>1]|0;i=(k+2+(e[a+((g|0?8:7)-q<<1)>>1]|0)+(j<<1)|0)>>>2;b[r>>1]=((e[a+((((f|0)!=0)<<31>>31)-q<<1)>>1]|0)+2+(u<<1)+t|0)>>>2;b[r+2>>1]=(u+2+(t<<1)+h|0)>>>2;b[r+4>>1]=(t+2+(h<<1)+p|0)>>>2;b[r+6>>1]=(h+2+(p<<1)+o|0)>>>2;b[r+8>>1]=(p+2+(o<<1)+n|0)>>>2;b[r+10>>1]=(o+2+(n<<1)+k|0)>>>2;b[r+12>>1]=(n+2+(k<<1)+j|0)>>>2;b[r+14>>1]=i;i=q<<1;j=q*3|0;k=q<<2;n=q*5|0;o=q*6|0;p=q*7|0;g=0;h=a;f=d;while(1){if((g|0)==8)break;u=(c[f>>2]|0)+(e[r+(g<<1)>>1]|0)|0;b[h>>1]=u;u=(c[f+32>>2]|0)+u|0;b[h+(q<<1)>>1]=u;u=(c[f+64>>2]|0)+u|0;b[h+(i<<1)>>1]=u;u=(c[f+96>>2]|0)+u|0;b[h+(j<<1)>>1]=u;u=(c[f+128>>2]|0)+u|0;b[h+(k<<1)>>1]=u;u=(c[f+160>>2]|0)+u|0;b[h+(n<<1)>>1]=u;u=(c[f+192>>2]|0)+u|0;b[h+(o<<1)>>1]=u;b[h+(p<<1)>>1]=(c[f+224>>2]|0)+u;g=g+1|0;h=h+2|0;f=f+4|0}yX(d|0,0,256)|0;l=s;return}function Ft(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=h>>1;s=e[a+((N(i,((f|0)!=0)<<31>>31)|0)+-1<<1)>>1]|0;r=e[a+-2>>1]|0;q=e[a+(i+-1<<1)>>1]|0;p=e[a+((i<<1)+-1<<1)>>1]|0;o=e[a+((i*3|0)+-1<<1)>>1]|0;n=e[a+((i<<2)+-1<<1)>>1]|0;h=e[a+((i*5|0)+-1<<1)>>1]|0;g=e[a+((i*6|0)+-1<<1)>>1]|0;f=e[a+((i*7|0)+-1<<1)>>1]|0;b[j>>1]=(s+2+(r<<1)+q|0)>>>2;b[j+2>>1]=(r+2+(q<<1)+p|0)>>>2;b[j+4>>1]=(q+2+(p<<1)+o|0)>>>2;b[j+6>>1]=(p+2+(o<<1)+n|0)>>>2;b[j+8>>1]=(o+2+(n<<1)+h|0)>>>2;b[j+10>>1]=(n+2+(h<<1)+g|0)>>>2;b[j+12>>1]=(h+2+(g<<1)+f|0)>>>2;b[j+14>>1]=(g+2+(f*3|0)|0)>>>2;f=0;g=a;h=d;while(1){if((f|0)==8)break;s=(c[h>>2]|0)+(e[j+(f<<1)>>1]|0)|0;b[g>>1]=s;s=(c[h+4>>2]|0)+s|0;b[g+2>>1]=s;s=(c[h+8>>2]|0)+s|0;b[g+4>>1]=s;s=(c[h+12>>2]|0)+s|0;b[g+6>>1]=s;s=(c[h+16>>2]|0)+s|0;b[g+8>>1]=s;s=(c[h+20>>2]|0)+s|0;b[g+10>>1]=s;s=(c[h+24>>2]|0)+s|0;b[g+12>>1]=s;b[g+14>>1]=(c[h+28>>2]|0)+s;f=f+1|0;g=g+(i<<1)|0;h=h+32|0}yX(d|0,0,256)|0;l=k;return}function Gt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;At(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}At(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;At(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function It(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4)break;Bt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Jt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)==4){f=4;break}Bt(a+(c[b+(f<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}while(1){if((f|0)==8)break;Bt(a+(c[b+(f+4<<2)>>2]|0)|0,d+(f<<5<<1)|0,e);f=f+1|0}return}function Kt(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+(0-d)>>2]|0;c[a>>2]=b;c[a+d>>2]=b;c[a+(d<<1)>>2]=b;c[a+(d*3|0)>>2]=b;return}function Lt(a,b,e){a=a|0;b=b|0;e=e|0;c[a>>2]=N(d[a+-1>>0]|0,16843009)|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;b=e<<1;c[a+b>>2]=N(d[a+(b+-1)>>0]|0,16843009)|0;e=e*3|0;c[a+e>>2]=N(d[a+(e+-1)>>0]|0,16843009)|0;return}function Mt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N((d[a+(0-e)>>0]|0)+4+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)+(d[a+-1>>0]|0)+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)>>3,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Nt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=d[b+(1-e)>>0]|0;h=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;j=d[c>>0]|0;i=d[c+1>>0]|0;g=d[c+2>>0]|0;f=d[c+3>>0]|0;a[b>>0]=((d[b+(0-e)>>0]|0)+2+h+(l<<1)|0)>>>2;c=(l+2+k+(h<<1)|0)>>>2&255;a[b+e>>0]=c;a[b+1>>0]=c;c=(h+2+j+(k<<1)|0)>>>2&255;h=e<<1;a[b+h>>0]=c;a[b+(e+1)>>0]=c;a[b+2>>0]=c;k=(k+2+i+(j<<1)|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(h|1)>>0]=k;a[b+(e+2)>>0]=k;a[b+3>>0]=k;j=(j+2+g+(i<<1)|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(h+2)>>0]=j;a[b+(e+3)>>0]=j;e=(i+2+f+(g<<1)|0)>>>2&255;a[b+(c+2)>>0]=e;a[b+(h+3)>>0]=e;a[b+(c+3)>>0]=(g+2+(f*3|0)|0)>>>2;return}function Ot(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=d[b+~e>>0]|0;h=d[b+(0-e)>>0]|0;g=d[b+(1-e)>>0]|0;f=d[b+(2-e)>>0]|0;c=d[b+(3-e)>>0]|0;k=d[b+-1>>0]|0;n=d[b+(e+-1)>>0]|0;j=e<<1;i=d[b+(j+-1)>>0]|0;l=e*3|0;a[b+l>>0]=(n+2+(d[b+(l+-1)>>0]|0)+(i<<1)|0)>>>2;i=(k+2+i+(n<<1)|0)>>>2&255;a[b+(l+1)>>0]=i;a[b+j>>0]=i;i=m+2|0;n=(i+n+(k<<1)|0)>>>2&255;a[b+(l+2)>>0]=n;a[b+(j|1)>>0]=n;a[b+e>>0]=n;k=((m<<1)+2+h+k|0)>>>2&255;a[b+(l+3)>>0]=k;a[b+(j+2)>>0]=k;a[b+(e+1)>>0]=k;a[b>>0]=k;i=(i+(h<<1)+g|0)>>>2&255;a[b+(j+3)>>0]=i;a[b+(e+2)>>0]=i;a[b+1>>0]=i;h=(h+2+(g<<1)+f|0)>>>2&255;a[b+(e+3)>>0]=h;a[b+2>>0]=h;a[b+3>>0]=(g+2+(f<<1)+c|0)>>>2;return}function Pt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;k=d[b+(3-e)>>0]|0;h=d[b+-1>>0]|0;g=d[b+(e+-1)>>0]|0;i=e<<1;f=d[b+(i+-1)>>0]|0;c=e*3|0;o=(j+1+n|0)>>>1&255;a[b+(i|1)>>0]=o;a[b>>0]=o;o=(n+1+m|0)>>>1&255;a[b+(i+2)>>0]=o;a[b+1>>0]=o;o=(m+1+l|0)>>>1&255;a[b+(i+3)>>0]=o;a[b+2>>0]=o;a[b+3>>0]=(l+1+k|0)>>>1;o=((j<<1)+2+n+h|0)>>>2&255;a[b+(c+1)>>0]=o;a[b+e>>0]=o;j=j+2|0;o=(j+(n<<1)+m|0)>>>2&255;a[b+(c+2)>>0]=o;a[b+(e+1)>>0]=o;n=(n+2+(m<<1)+l|0)>>>2&255;a[b+(c+3)>>0]=n;a[b+(e+2)>>0]=n;a[b+(e+3)>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+i>>0]=(j+(h<<1)+g|0)>>>2;a[b+c>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Qt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=d[b+~e>>0]|0;n=d[b+(0-e)>>0]|0;m=d[b+(1-e)>>0]|0;l=d[b+(2-e)>>0]|0;j=d[b+-1>>0]|0;h=d[b+(e+-1)>>0]|0;i=e<<1;g=d[b+(i+-1)>>0]|0;c=e*3|0;f=d[b+(c+-1)>>0]|0;o=(k+1+j|0)>>>1&255;a[b+(e+2)>>0]=o;a[b>>0]=o;o=((k<<1)+2+n+j|0)>>>2&255;a[b+(e+3)>>0]=o;a[b+1>>0]=o;k=k+2|0;a[b+2>>0]=(k+(n<<1)+m|0)>>>2;a[b+3>>0]=(n+2+(m<<1)+l|0)>>>2;l=(j+1+h|0)>>>1&255;a[b+(i+2)>>0]=l;a[b+e>>0]=l;k=(k+(j<<1)+h|0)>>>2&255;a[b+(i+3)>>0]=k;a[b+(e+1)>>0]=k;e=(h+1+g|0)>>>1&255;a[b+(c+2)>>0]=e;a[b+i>>0]=e;e=(j+2+(h<<1)+g|0)>>>2&255;a[b+(c+3)>>0]=e;a[b+(i|1)>>0]=e;a[b+c>>0]=(g+1+f|0)>>>1;a[b+(c+1)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function Rt(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=d[b+(0-e)>>0]|0;k=d[b+(1-e)>>0]|0;j=d[b+(2-e)>>0]|0;i=d[b+(3-e)>>0]|0;h=d[c>>0]|0;g=d[c+1>>0]|0;f=d[c+2>>0]|0;a[b>>0]=(l+1+k|0)>>>1;m=(k+1+j|0)>>>1&255;c=e<<1;a[b+c>>0]=m;a[b+1>>0]=m;m=(j+1+i|0)>>>1&255;a[b+(c|1)>>0]=m;a[b+2>>0]=m;m=(i+1+h|0)>>>1&255;a[b+(c+2)>>0]=m;a[b+3>>0]=m;a[b+(c+3)>>0]=(h+1+g|0)>>>1;a[b+e>>0]=(l+2+(k<<1)+j|0)>>>2;k=(k+2+(j<<1)+i|0)>>>2&255;c=e*3|0;a[b+c>>0]=k;a[b+(e+1)>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(c+1)>>0]=j;a[b+(e+2)>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(c+2)>>0]=i;a[b+(e+3)>>0]=i;a[b+(c+3)>>0]=(h+2+(g<<1)+f|0)>>>2;return}function St(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d[b+-1>>0]|0;j=d[b+(e+-1)>>0]|0;c=e<<1;i=d[b+(c+-1)>>0]|0;g=e*3|0;f=a[b+(g+-1)>>0]|0;h=f&255;a[b>>0]=(k+1+j|0)>>>1;a[b+1>>0]=(k+2+(j<<1)+i|0)>>>2;k=(j+1+i|0)>>>1&255;a[b+e>>0]=k;a[b+2>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(e+1)>>0]=j;a[b+3>>0]=j;j=(i+1+h|0)>>>1&255;a[b+c>>0]=j;a[b+(e+2)>>0]=j;h=(i+2+h+(h<<1)|0)>>>2&255;a[b+(c|1)>>0]=h;a[b+(e+3)>>0]=h;a[b+(g+3)>>0]=f;a[b+(g+2)>>0]=f;a[b+(c+2)>>0]=f;a[b+g>>0]=f;a[b+(g+1)>>0]=f;a[b+(c+3)>>0]=f;return}function Tt(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=e<<1;b=e*3|0;f=N(((d[a+-1>>0]|0)+2+(d[a+(e+-1)>>0]|0)+(d[a+(g+-1)>>0]|0)+(d[a+(b+-1)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=f;c[a+e>>2]=f;c[a+g>>2]=f;c[a+b>>2]=f;return}function Ut(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=2139062143;c[a+d>>2]=2139062143;c[a+(d<<1)>>2]=2139062143;c[a+(d*3|0)>>2]=2139062143;return}function Vt(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2122219135;c[a+d>>2]=-2122219135;c[a+(d<<1)>>2]=-2122219135;c[a+(d*3|0)>>2]=-2122219135;return}function Wt(a,b,e){a=a|0;b=b|0;e=e|0;b=N(((d[a+(0-e)>>0]|0)+2+(d[a+(1-e)>>0]|0)+(d[a+(2-e)>>0]|0)+(d[a+(3-e)>>0]|0)|0)>>>2,16843009)|0;c[a>>2]=b;c[a+e>>2]=b;c[a+(e<<1)>>2]=b;c[a+(e*3|0)>>2]=b;return}function Xt(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=-2139062144;c[a+d>>2]=-2139062144;c[a+(d<<1)>>2]=-2139062144;c[a+(d*3|0)>>2]=-2139062144;return}function Yt(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=d[b+(0-g)>>0]|0;n=d[b+(1-g)>>0]|0;h=d[b+(2-g)>>0]|0;m=d[b+(3-g)>>0]|0;l=d[b+(4-g)>>0]|0;k=d[b+(5-g)>>0]|0;j=d[b+(6-g)>>0]|0;i=d[b+(7-g)>>0]|0;f=(j+2+(d[b+((f|0?8:7)-g)>>0]|0)+(i<<1)|0)>>>2;a[b>>0]=((d[b+((((e|0)!=0)<<31>>31)-g)>>0]|0)+2+(o<<1)+n|0)>>>2;a[b+1>>0]=(o+2+(n<<1)+h|0)>>>2;a[b+2>>0]=(n+2+(h<<1)+m|0)>>>2;a[b+3>>0]=(h+2+(m<<1)+l|0)>>>2;h=b+4|0;a[h>>0]=(m+2+(l<<1)+k|0)>>>2;a[b+5>>0]=(l+2+(k<<1)+j|0)>>>2;a[b+6>>0]=(k+2+(j<<1)+i|0)>>>2;a[b+7>>0]=f;f=c[b>>2]|0;h=c[h>>2]|0;e=1;while(1){if((e|0)==8)break;o=b+(N(e,g)|0)|0;c[o>>2]=f;c[o+4>>2]=h;e=e+1|0}return}function Zt(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=d[a+((N(((b|0)!=0)<<31>>31,f)|0)+-1)>>0]|0;r=d[a+-1>>0]|0;p=d[a+(f+-1)>>0]|0;q=f<<1;n=d[a+(q+-1)>>0]|0;o=f*3|0;l=d[a+(o+-1)>>0]|0;m=f<<2;j=d[a+(m+-1)>>0]|0;k=f*5|0;h=d[a+(k+-1)>>0]|0;i=f*6|0;g=d[a+(i+-1)>>0]|0;b=f*7|0;e=d[a+(b+-1)>>0]|0;s=N((s+2+(r<<1)+p|0)>>>2,16843009)|0;c[a>>2]=s;c[a+4>>2]=s;r=N((r+2+(p<<1)+n|0)>>>2,16843009)|0;f=a+f|0;c[f>>2]=r;c[f+4>>2]=r;p=N((p+2+(n<<1)+l|0)>>>2,16843009)|0;f=a+q|0;c[f>>2]=p;c[f+4>>2]=p;n=N((n+2+(l<<1)+j|0)>>>2,16843009)|0;f=a+o|0;c[f>>2]=n;c[f+4>>2]=n;l=N((l+2+(j<<1)+h|0)>>>2,16843009)|0;f=a+m|0;c[f>>2]=l;c[f+4>>2]=l;j=N((j+2+(h<<1)+g|0)>>>2,16843009)|0;f=a+k|0;c[f>>2]=j;c[f+4>>2]=j;h=N((h+2+(g<<1)+e|0)>>>2,16843009)|0;f=a+i|0;c[f>>2]=h;c[f+4>>2]=h;e=N((g+2+(e*3|0)|0)>>>2,16843009)|0;f=a+b|0;c[f>>2]=e;c[f+4>>2]=e;return}function _t(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=((b|0)!=0)<<31>>31;w=d[a+((N(n,f)|0)+-1)>>0]|0;v=d[a+-1>>0]|0;u=d[a+(f+-1)>>0]|0;t=d[a+((f<<1)+-1)>>0]|0;s=d[a+((f*3|0)+-1)>>0]|0;r=d[a+((f<<2)+-1)>>0]|0;q=d[a+((f*5|0)+-1)>>0]|0;p=d[a+((f*6|0)+-1)>>0]|0;o=d[a+((f*7|0)+-1)>>0]|0;m=d[a+(0-f)>>0]|0;l=d[a+(1-f)>>0]|0;k=d[a+(2-f)>>0]|0;j=d[a+(3-f)>>0]|0;i=d[a+(4-f)>>0]|0;h=d[a+(5-f)>>0]|0;g=d[a+(6-f)>>0]|0;b=d[a+(7-f)>>0]|0;e=N(((w+2+(v<<1)+u|0)>>>2)+8+((v+2+(u<<1)+t|0)>>>2)+((u+2+(t<<1)+s|0)>>>2)+((t+2+(s<<1)+r|0)>>>2)+((s+2+(r<<1)+q|0)>>>2)+((r+2+(q<<1)+p|0)>>>2)+((q+2+(p<<1)+o|0)>>>2)+((p+2+(o*3|0)|0)>>>2)+(((d[a+(n-f)>>0]|0)+2+(m<<1)+l|0)>>>2)+((m+2+(l<<1)+k|0)>>>2)+((l+2+(k<<1)+j|0)>>>2)+((k+2+(j<<1)+i|0)>>>2)+((j+2+(i<<1)+h|0)>>>2)+((i+2+(h<<1)+g|0)>>>2)+((h+2+(g<<1)+b|0)>>>2)+((g+2+(d[a+((e|0?8:7)-f)>>0]|0)+(b<<1)|0)>>>2)>>4,16843009)|0;b=0;while(1){if((b|0)==8)break;c[a>>2]=e;c[a+4>>2]=e;b=b+1|0;a=a+f|0}return}function $t(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=d[b+(0-f)>>0]|0;q=d[b+(1-f)>>0]|0;t=d[b+(2-f)>>0]|0;r=(p+2+(q<<1)+t|0)>>>2;u=d[b+(3-f)>>0]|0;s=(q+2+(t<<1)+u|0)>>>2;v=d[b+(4-f)>>0]|0;t=(t+2+(u<<1)+v|0)>>>2;w=d[b+(5-f)>>0]|0;u=(u+2+(v<<1)+w|0)>>>2;o=d[b+(6-f)>>0]|0;v=(v+2+(w<<1)+o|0)>>>2;n=d[b+(7-f)>>0]|0;w=(w+2+(o<<1)+n|0)>>>2;m=(e|0)!=0;o=(o+2+(d[b+((m?8:7)-f)>>0]|0)+(n<<1)|0)>>>2;if(m){x=d[b+(8-f)>>0]|0;e=d[b+(9-f)>>0]|0;m=d[b+(10-f)>>0]|0;l=d[b+(11-f)>>0]|0;k=d[b+(12-f)>>0]|0;j=d[b+(13-f)>>0]|0;i=d[b+(14-f)>>0]|0;h=d[b+(15-f)>>0]|0;g=(i+2+(h*3|0)|0)>>>2;h=(j+2+(i<<1)+h|0)>>>2;i=(k+2+(j<<1)+i|0)>>>2;j=(l+2+(k<<1)+j|0)>>>2;k=(m+2+(l<<1)+k|0)>>>2;l=(e+2+(m<<1)+l|0)>>>2;m=(x+2+(e<<1)+m|0)>>>2;e=(n+2+(x<<1)+e|0)>>>2}else{g=n;h=n;i=n;j=n;k=n;l=n;m=n;e=n}a[b>>0]=((((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(p<<1)+q|0)>>>2)+2+(r<<1)+s|0)>>>2;r=(r+2+(s<<1)+t|0)>>>2&255;a[b+1>>0]=r;a[b+f>>0]=r;s=(s+2+(t<<1)+u|0)>>>2&255;a[b+2>>0]=s;a[b+(f+1)>>0]=s;r=f<<1;a[b+r>>0]=s;t=(t+2+(u<<1)+v|0)>>>2&255;a[b+3>>0]=t;a[b+(f+2)>>0]=t;a[b+(r|1)>>0]=t;s=f*3|0;a[b+s>>0]=t;u=(u+2+(v<<1)+w|0)>>>2&255;a[b+4>>0]=u;a[b+(f+3)>>0]=u;a[b+(r+2)>>0]=u;a[b+(s+1)>>0]=u;t=f<<2;a[b+t>>0]=u;v=(v+2+(w<<1)+o|0)>>>2&255;a[b+5>>0]=v;a[b+(f+4)>>0]=v;a[b+(r+3)>>0]=v;a[b+(s+2)>>0]=v;a[b+(t|1)>>0]=v;u=f*5|0;a[b+u>>0]=v;w=(w+2+(o<<1)+e|0)>>>2&255;a[b+6>>0]=w;a[b+(f+5)>>0]=w;a[b+(r+4)>>0]=w;a[b+(s+3)>>0]=w;a[b+(t|2)>>0]=w;a[b+(u+1)>>0]=w;v=f*6|0;a[b+v>>0]=w;w=(o+2+(e<<1)+m|0)>>>2&255;a[b+7>>0]=w;a[b+(f+6)>>0]=w;a[b+(r+5)>>0]=w;a[b+(s+4)>>0]=w;a[b+(t|3)>>0]=w;a[b+(u+2)>>0]=w;a[b+(v|1)>>0]=w;x=f*7|0;a[b+x>>0]=w;w=(e+2+(m<<1)+l|0)>>>2&255;a[b+(f+7)>>0]=w;a[b+(r+6)>>0]=w;a[b+(s+5)>>0]=w;a[b+(t+4)>>0]=w;a[b+(u+3)>>0]=w;a[b+(v+2)>>0]=w;a[b+(x+1)>>0]=w;w=(m+2+(l<<1)+k|0)>>>2&255;a[b+(r+7)>>0]=w;a[b+(s+6)>>0]=w;a[b+(t+5)>>0]=w;a[b+(u+4)>>0]=w;a[b+(v+3)>>0]=w;a[b+(x+2)>>0]=w;w=(l+2+(k<<1)+j|0)>>>2&255;a[b+(s+7)>>0]=w;a[b+(t+6)>>0]=w;a[b+(u+5)>>0]=w;a[b+(v+4)>>0]=w;a[b+(x+3)>>0]=w;w=(k+2+(j<<1)+i|0)>>>2&255;a[b+(t+7)>>0]=w;a[b+(u+6)>>0]=w;a[b+(v+5)>>0]=w;a[b+(x+4)>>0]=w;w=(j+2+(i<<1)+h|0)>>>2&255;a[b+(u+7)>>0]=w;a[b+(v+6)>>0]=w;a[b+(x+5)>>0]=w;w=(i+2+(h<<1)+g|0)>>>2&255;a[b+(v+7)>>0]=w;a[b+(x+6)>>0]=w;a[b+(x+7)>>0]=(h+2+(g*3|0)|0)>>>2;return}function au(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;t=((c|0)!=0)<<31>>31;C=d[b+(0-f)>>0]|0;k=d[b+(1-f)>>0]|0;s=((d[b+(t-f)>>0]|0)+2+(C<<1)+k|0)>>>2;i=d[b+(2-f)>>0]|0;C=C+2|0;m=(C+(k<<1)+i|0)>>>2;h=d[b+(3-f)>>0]|0;k=(k+2+(i<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;v=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+v|0)>>>2;q=d[b+(7-f)>>0]|0;c=(c+2+(v<<1)+q|0)>>>2;e=(v+2+(d[b+((e|0?8:7)-f)>>0]|0)+(q<<1)|0)>>>2;t=d[b+((N(t,f)|0)+-1)>>0]|0;q=d[b+-1>>0]|0;v=d[b+(f+-1)>>0]|0;t=(t+2+(q<<1)+v|0)>>>2;j=f<<1;w=d[b+(j+-1)>>0]|0;o=(q+2+(v<<1)+w|0)>>>2;l=f*3|0;x=d[b+(l+-1)>>0]|0;v=(v+2+(w<<1)+x|0)>>>2;n=f<<2;y=d[b+(n+-1)>>0]|0;w=(w+2+(x<<1)+y|0)>>>2;p=f*5|0;z=d[b+(p+-1)>>0]|0;x=(x+2+(y<<1)+z|0)>>>2;r=f*6|0;B=d[b+(r+-1)>>0]|0;y=(y+2+(z<<1)+B|0)>>>2;u=f*7|0;A=d[b+(u+-1)>>0]|0;z=(z+2+(B<<1)+A|0)>>>2;q=(C+q+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+u>>0]=(y+2+((B+2+(A*3|0)|0)>>>2)+(z<<1)|0)>>>2;z=(x+2+(y<<1)+z|0)>>>2&255;a[b+(u+1)>>0]=z;a[b+r>>0]=z;y=(w+2+(x<<1)+y|0)>>>2&255;a[b+(u+2)>>0]=y;a[b+(r|1)>>0]=y;a[b+p>>0]=y;x=(v+2+(w<<1)+x|0)>>>2&255;a[b+(u+3)>>0]=x;a[b+(r+2)>>0]=x;a[b+(p+1)>>0]=x;a[b+n>>0]=x;w=(o+2+(v<<1)+w|0)>>>2&255;a[b+(u+4)>>0]=w;a[b+(r+3)>>0]=w;a[b+(p+2)>>0]=w;a[b+(n|1)>>0]=w;a[b+l>>0]=w;v=(t+2+(o<<1)+v|0)>>>2&255;a[b+(u+5)>>0]=v;a[b+(r+4)>>0]=v;a[b+(p+3)>>0]=v;a[b+(n|2)>>0]=v;a[b+(l+1)>>0]=v;a[b+j>>0]=v;o=((t<<1)+2+o+q|0)>>>2&255;a[b+(u+6)>>0]=o;a[b+(r+5)>>0]=o;a[b+(p+4)>>0]=o;a[b+(n|3)>>0]=o;a[b+(l+2)>>0]=o;a[b+(j|1)>>0]=o;a[b+f>>0]=o;o=s+2|0;t=(o+t+(q<<1)|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(r+6)>>0]=t;a[b+(p+5)>>0]=t;a[b+(n+4)>>0]=t;a[b+(l+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;a[b>>0]=t;q=((s<<1)+2+m+q|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+6)>>0]=q;a[b+(n+5)>>0]=q;a[b+(l+4)>>0]=q;a[b+(j+3)>>0]=q;a[b+(f+2)>>0]=q;a[b+1>>0]=q;o=(o+(m<<1)+k|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(n+6)>>0]=o;a[b+(l+5)>>0]=o;a[b+(j+4)>>0]=o;a[b+(f+3)>>0]=o;a[b+2>>0]=o;m=(m+2+(k<<1)+i|0)>>>2&255;a[b+(n+7)>>0]=m;a[b+(l+6)>>0]=m;a[b+(j+5)>>0]=m;a[b+(f+4)>>0]=m;a[b+3>>0]=m;k=(k+2+(i<<1)+h|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;a[b+4>>0]=k;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(j+7)>>0]=i;a[b+(f+6)>>0]=i;a[b+5>>0]=i;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(f+7)>>0]=h;a[b+6>>0]=h;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function bu(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;n=d[b+(1-f)>>0]|0;u=((d[b+(s-f)>>0]|0)+2+(A<<1)+n|0)>>>2;k=d[b+(2-f)>>0]|0;A=A+2|0;q=(A+(n<<1)+k|0)>>>2;h=d[b+(3-f)>>0]|0;n=(n+2+(k<<1)+h|0)>>>2;g=d[b+(4-f)>>0]|0;k=(k+2+(h<<1)+g|0)>>>2;c=d[b+(5-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;r=d[b+(6-f)>>0]|0;g=(g+2+(c<<1)+r|0)>>>2;t=d[b+(7-f)>>0]|0;c=(c+2+(r<<1)+t|0)>>>2;e=(r+2+(d[b+((e|0?8:7)-f)>>0]|0)+(t<<1)|0)>>>2;s=d[b+((N(s,f)|0)+-1)>>0]|0;t=d[b+-1>>0]|0;r=d[b+(f+-1)>>0]|0;s=(s+2+(t<<1)+r|0)>>>2;i=f<<1;x=d[b+(i+-1)>>0]|0;v=(t+2+(r<<1)+x|0)>>>2;j=f*3|0;w=d[b+(j+-1)>>0]|0;r=(r+2+(x<<1)+w|0)>>>2;l=f<<2;z=d[b+(l+-1)>>0]|0;x=(x+2+(w<<1)+z|0)>>>2;m=f*5|0;B=d[b+(m+-1)>>0]|0;w=(w+2+(z<<1)+B|0)>>>2;o=f*6|0;y=d[b+(o+-1)>>0]|0;z=(z+2+(B<<1)+y|0)>>>2;p=f*7|0;y=(B+2+(y<<1)+(d[b+(p+-1)>>0]|0)|0)>>>2;t=(A+t+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+o>>0]=(x+2+(w<<1)+z|0)>>>2;a[b+p>>0]=(w+2+(z<<1)+y|0)>>>2;y=(v+2+(r<<1)+x|0)>>>2&255;a[b+(o|1)>>0]=y;a[b+l>>0]=y;w=(r+2+(x<<1)+w|0)>>>2&255;a[b+(p+1)>>0]=w;a[b+m>>0]=w;w=((s<<1)+2+v+t|0)>>>2&255;a[b+(o+2)>>0]=w;a[b+(l|1)>>0]=w;a[b+i>>0]=w;r=(s+2+(v<<1)+r|0)>>>2&255;a[b+(p+2)>>0]=r;a[b+(m+1)>>0]=r;a[b+j>>0]=r;r=u+2|0;s=(r+s+(t<<1)|0)>>>2&255;a[b+(p+3)>>0]=s;a[b+(m+2)>>0]=s;a[b+(j+1)>>0]=s;a[b+f>>0]=s;s=u+1|0;v=(s+t|0)>>>1&255;a[b+(o+3)>>0]=v;a[b+(l|2)>>0]=v;a[b+(i|1)>>0]=v;a[b>>0]=v;t=((u<<1)+2+q+t|0)>>>2&255;a[b+(p+4)>>0]=t;a[b+(m+3)>>0]=t;a[b+(j+2)>>0]=t;a[b+(f+1)>>0]=t;s=(s+q|0)>>>1&255;a[b+(o+4)>>0]=s;a[b+(l|3)>>0]=s;a[b+(i+2)>>0]=s;a[b+1>>0]=s;r=(r+(q<<1)+n|0)>>>2&255;a[b+(p+5)>>0]=r;a[b+(m+4)>>0]=r;a[b+(j+3)>>0]=r;a[b+(f+2)>>0]=r;r=(q+1+n|0)>>>1&255;a[b+(o+5)>>0]=r;a[b+(l+4)>>0]=r;a[b+(i+3)>>0]=r;a[b+2>>0]=r;q=(q+2+(n<<1)+k|0)>>>2&255;a[b+(p+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(j+4)>>0]=q;a[b+(f+3)>>0]=q;q=(n+1+k|0)>>>1&255;a[b+(o+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(i+4)>>0]=q;a[b+3>>0]=q;n=(n+2+(k<<1)+h|0)>>>2&255;a[b+(p+7)>>0]=n;a[b+(m+6)>>0]=n;a[b+(j+5)>>0]=n;a[b+(f+4)>>0]=n;n=(k+1+h|0)>>>1&255;a[b+(o+7)>>0]=n;a[b+(l+6)>>0]=n;a[b+(i+5)>>0]=n;a[b+4>>0]=n;k=(k+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=k;a[b+(j+6)>>0]=k;a[b+(f+5)>>0]=k;k=(h+1+g|0)>>>1&255;a[b+(l+7)>>0]=k;a[b+(i+6)>>0]=k;a[b+5>>0]=k;h=(h+2+(g<<1)+c|0)>>>2&255;a[b+(j+7)>>0]=h;a[b+(f+6)>>0]=h;h=(g+1+c|0)>>>1&255;a[b+(i+7)>>0]=h;a[b+6>>0]=h;a[b+(f+7)>>0]=(g+2+(c<<1)+e|0)>>>2;a[b+7>>0]=(c+1+e|0)>>>1;return}function cu(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=((c|0)!=0)<<31>>31;A=d[b+(0-f)>>0]|0;i=d[b+(1-f)>>0]|0;n=((d[b+(o-f)>>0]|0)+2+(A<<1)+i|0)>>>2;h=d[b+(2-f)>>0]|0;A=A+2|0;j=(A+(i<<1)+h|0)>>>2;g=d[b+(3-f)>>0]|0;i=(i+2+(h<<1)+g|0)>>>2;c=d[b+(4-f)>>0]|0;h=(h+2+(g<<1)+c|0)>>>2;m=d[b+(5-f)>>0]|0;g=(g+2+(c<<1)+m|0)>>>2;e=d[b+(6-f)>>0]|0;c=(c+2+(m<<1)+e|0)>>>2;e=(m+2+(e<<1)+(d[b+(7-f)>>0]|0)|0)>>>2;o=d[b+((N(o,f)|0)+-1)>>0]|0;m=d[b+-1>>0]|0;k=d[b+(f+-1)>>0]|0;o=(o+2+(m<<1)+k|0)>>>2;l=f<<1;t=d[b+(l+-1)>>0]|0;q=(m+2+(k<<1)+t|0)>>>2;p=f*3|0;v=d[b+(p+-1)>>0]|0;k=(k+2+(t<<1)+v|0)>>>2;r=f<<2;x=d[b+(r+-1)>>0]|0;t=(t+2+(v<<1)+x|0)>>>2;s=f*5|0;y=d[b+(s+-1)>>0]|0;v=(v+2+(x<<1)+y|0)>>>2;u=f*6|0;B=d[b+(u+-1)>>0]|0;x=(x+2+(y<<1)+B|0)>>>2;w=f*7|0;z=d[b+(w+-1)>>0]|0;y=(y+2+(B<<1)+z|0)>>>2;z=(B+2+(z*3|0)|0)>>>2;m=(A+m+((d[b+~f>>0]|0)<<1)|0)>>>2;a[b+w>>0]=(z+1+y|0)>>>1;a[b+(w+1)>>0]=(x+2+z+(y<<1)|0)>>>2;z=(x+1+y|0)>>>1&255;a[b+(w+2)>>0]=z;a[b+u>>0]=z;y=(v+2+(x<<1)+y|0)>>>2&255;a[b+(w+3)>>0]=y;a[b+(u|1)>>0]=y;y=(v+1+x|0)>>>1&255;a[b+(w+4)>>0]=y;a[b+(u+2)>>0]=y;a[b+s>>0]=y;x=(t+2+(v<<1)+x|0)>>>2&255;a[b+(w+5)>>0]=x;a[b+(u+3)>>0]=x;a[b+(s+1)>>0]=x;x=(t+1+v|0)>>>1&255;a[b+(w+6)>>0]=x;a[b+(u+4)>>0]=x;a[b+(s+2)>>0]=x;a[b+r>>0]=x;v=(k+2+(t<<1)+v|0)>>>2&255;a[b+(w+7)>>0]=v;a[b+(u+5)>>0]=v;a[b+(s+3)>>0]=v;a[b+(r|1)>>0]=v;v=(k+1+t|0)>>>1&255;a[b+(u+6)>>0]=v;a[b+(s+4)>>0]=v;a[b+(r|2)>>0]=v;a[b+p>>0]=v;t=(q+2+(k<<1)+t|0)>>>2&255;a[b+(u+7)>>0]=t;a[b+(s+5)>>0]=t;a[b+(r|3)>>0]=t;a[b+(p+1)>>0]=t;t=(q+1+k|0)>>>1&255;a[b+(s+6)>>0]=t;a[b+(r+4)>>0]=t;a[b+(p+2)>>0]=t;a[b+l>>0]=t;k=(o+2+(q<<1)+k|0)>>>2&255;a[b+(s+7)>>0]=k;a[b+(r+5)>>0]=k;a[b+(p+3)>>0]=k;a[b+(l|1)>>0]=k;k=o+1|0;s=(k+q|0)>>>1&255;a[b+(r+6)>>0]=s;a[b+(p+4)>>0]=s;a[b+(l+2)>>0]=s;a[b+f>>0]=s;q=((o<<1)+2+q+m|0)>>>2&255;a[b+(r+7)>>0]=q;a[b+(p+5)>>0]=q;a[b+(l+3)>>0]=q;a[b+(f+1)>>0]=q;k=(k+m|0)>>>1&255;a[b+(p+6)>>0]=k;a[b+(l+4)>>0]=k;a[b+(f+2)>>0]=k;a[b>>0]=k;k=n+2|0;o=(k+o+(m<<1)|0)>>>2&255;a[b+(p+7)>>0]=o;a[b+(l+5)>>0]=o;a[b+(f+3)>>0]=o;a[b+1>>0]=o;m=((n<<1)+2+j+m|0)>>>2&255;a[b+(l+6)>>0]=m;a[b+(f+4)>>0]=m;a[b+2>>0]=m;k=(k+(j<<1)+i|0)>>>2&255;a[b+(l+7)>>0]=k;a[b+(f+5)>>0]=k;a[b+3>>0]=k;j=(j+2+(i<<1)+h|0)>>>2&255;a[b+(f+6)>>0]=j;a[b+4>>0]=j;i=(i+2+(h<<1)+g|0)>>>2&255;a[b+(f+7)>>0]=i;a[b+5>>0]=i;a[b+6>>0]=(h+2+(g<<1)+c|0)>>>2;a[b+7>>0]=(g+2+(c<<1)+e|0)>>>2;return}function du(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=d[b+(0-f)>>0]|0;m=d[b+(1-f)>>0]|0;k=((d[b+((((c|0)!=0)<<31>>31)-f)>>0]|0)+2+(l<<1)+m|0)>>>2;n=d[b+(2-f)>>0]|0;l=(l+2+(m<<1)+n|0)>>>2;o=d[b+(3-f)>>0]|0;m=(m+2+(n<<1)+o|0)>>>2;p=d[b+(4-f)>>0]|0;n=(n+2+(o<<1)+p|0)>>>2;q=d[b+(5-f)>>0]|0;o=(o+2+(p<<1)+q|0)>>>2;j=d[b+(6-f)>>0]|0;p=(p+2+(q<<1)+j|0)>>>2;c=d[b+(7-f)>>0]|0;q=(q+2+(j<<1)+c|0)>>>2;i=(e|0)!=0;j=(j+2+(d[b+((i?8:7)-f)>>0]|0)+(c<<1)|0)>>>2;if(i){s=d[b+(8-f)>>0]|0;r=d[b+(9-f)>>0]|0;i=d[b+(10-f)>>0]|0;h=d[b+(11-f)>>0]|0;g=d[b+(12-f)>>0]|0;e=(h+2+(g<<1)+(d[b+(13-f)>>0]|0)|0)>>>2;g=(i+2+(h<<1)+g|0)>>>2;h=(r+2+(i<<1)+h|0)>>>2;i=(s+2+(r<<1)+i|0)>>>2;c=(c+2+(s<<1)+r|0)>>>2}else{e=c;g=c;h=c;i=c}a[b>>0]=(k+1+l|0)>>>1;a[b+f>>0]=(k+2+(l<<1)+m|0)>>>2;s=(l+1+m|0)>>>1&255;a[b+1>>0]=s;t=f<<1;a[b+t>>0]=s;s=(l+2+(m<<1)+n|0)>>>2&255;a[b+(f+1)>>0]=s;k=f*3|0;a[b+k>>0]=s;s=(m+1+n|0)>>>1&255;a[b+2>>0]=s;a[b+(t|1)>>0]=s;l=f<<2;a[b+l>>0]=s;s=(m+2+(n<<1)+o|0)>>>2&255;a[b+(f+2)>>0]=s;a[b+(k+1)>>0]=s;m=f*5|0;a[b+m>>0]=s;s=(n+1+o|0)>>>1&255;a[b+3>>0]=s;a[b+(t+2)>>0]=s;a[b+(l|1)>>0]=s;r=f*6|0;a[b+r>>0]=s;n=(n+2+(o<<1)+p|0)>>>2&255;a[b+(f+3)>>0]=n;a[b+(k+2)>>0]=n;a[b+(m+1)>>0]=n;s=f*7|0;a[b+s>>0]=n;n=(o+1+p|0)>>>1&255;a[b+4>>0]=n;a[b+(t+3)>>0]=n;a[b+(l|2)>>0]=n;a[b+(r|1)>>0]=n;o=(o+2+(p<<1)+q|0)>>>2&255;a[b+(f+4)>>0]=o;a[b+(k+3)>>0]=o;a[b+(m+2)>>0]=o;a[b+(s+1)>>0]=o;o=(p+1+q|0)>>>1&255;a[b+5>>0]=o;a[b+(t+4)>>0]=o;a[b+(l|3)>>0]=o;a[b+(r+2)>>0]=o;p=(p+2+(q<<1)+j|0)>>>2&255;a[b+(f+5)>>0]=p;a[b+(k+4)>>0]=p;a[b+(m+3)>>0]=p;a[b+(s+2)>>0]=p;p=(q+1+j|0)>>>1&255;a[b+6>>0]=p;a[b+(t+5)>>0]=p;a[b+(l+4)>>0]=p;a[b+(r+3)>>0]=p;q=(q+2+(j<<1)+c|0)>>>2&255;a[b+(f+6)>>0]=q;a[b+(k+5)>>0]=q;a[b+(m+4)>>0]=q;a[b+(s+3)>>0]=q;q=(j+1+c|0)>>>1&255;a[b+7>>0]=q;a[b+(t+6)>>0]=q;a[b+(l+5)>>0]=q;a[b+(r+4)>>0]=q;q=(j+2+(c<<1)+i|0)>>>2&255;a[b+(f+7)>>0]=q;a[b+(k+6)>>0]=q;a[b+(m+5)>>0]=q;a[b+(s+4)>>0]=q;f=(c+1+i|0)>>>1&255;a[b+(t+7)>>0]=f;a[b+(l+6)>>0]=f;a[b+(r+5)>>0]=f;f=(c+2+(i<<1)+h|0)>>>2&255;a[b+(k+7)>>0]=f;a[b+(m+6)>>0]=f;a[b+(s+5)>>0]=f;f=(i+1+h|0)>>>1&255;a[b+(l+7)>>0]=f;a[b+(r+6)>>0]=f;f=(i+2+(h<<1)+g|0)>>>2&255;a[b+(m+7)>>0]=f;a[b+(s+6)>>0]=f;a[b+(r+7)>>0]=(h+1+g|0)>>>1;a[b+(s+7)>>0]=(h+2+(g<<1)+e|0)>>>2;return} +function Mk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+208|0;if((l|0)>=(m|0))W(208);ia=qa+128|0;ba=qa+120|0;ea=qa+104|0;da=qa+88|0;t=qa+80|0;s=qa+72|0;r=qa+64|0;u=qa+56|0;p=qa+40|0;q=qa+24|0;o=qa+16|0;k=qa;ka=qa+192|0;V=qa+176|0;X=qa+144|0;na=f+28212|0;Y=c[(c[na>>2]|0)+64>>2]|0;ja=f+28216|0;ca=((c[(c[ja>>2]|0)+12>>2]|0)+-1|0)>>>0<2;ma=c[f+25664>>2]|0;ga=g+21788|0;ha=g+21792|0;$=f+27016|0;pa=(N(c[$>>2]|0,c[ha>>2]|0)|0)+(c[ga>>2]|0)|0;oa=g+21796|0;c[oa>>2]=pa;n=g+840|0;if((c[n>>2]|0)!=1){j=g+21816|0;h=c[j>>2]|0;if((h|0)==-1){h=Nk(g+4|0)|0;c[j>>2]=h}i=h+-1|0;c[j>>2]=i;if(h){if(c[f+26376>>2]|0?(c[ha>>2]&1|i|0)==0:0){pa=Ok(g+4|0)|0;c[g+21828>>2]=pa;c[g+21832>>2]=pa}Pk(f,g);h=0}else fa=9}else fa=9;a:do if((fa|0)==9){_=f+26376|0;if(c[_>>2]|0?(c[ha>>2]&1|0)==0:0){la=Ok(g+4|0)|0;c[g+21828>>2]=la;c[g+21832>>2]=la}c[g+21648>>2]=0;la=g+4|0;i=Qk(la)|0;c[ka>>2]=i;b:do switch(c[n>>2]|0){case 3:if(i>>>0<23){aa=a[114114+(i<<2)+2>>0]|0;h=e[114114+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-23|0;c[ka>>2]=h;fa=21;break b}case 2:if(i>>>0<5){aa=a[114078+(i<<2)+2>>0]|0;h=e[114078+(i<<2)>>1]|0;c[ka>>2]=h;i=aa;aa=0;break b}else{h=i+-5|0;c[ka>>2]=h;fa=21;break b}default:{h=i+-1|0;if(i|0?(c[g+836>>2]|0)==5:0){c[ka>>2]=h;fa=21}else{h=i;fa=21}}}while(0);do if((fa|0)==21)if(h>>>0>25){f=c[f+4>>2]|0;oa=(ij(c[g+836>>2]|0)|0)<<24>>24;pa=c[ga>>2]|0;g=c[ha>>2]|0;c[k>>2]=h;c[k+4>>2]=oa;c[k+8>>2]=pa;c[k+12>>2]=g;ig(f,16,134992,k);h=-1;break a}else{aa=d[113974+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113974+(h<<2)+2>>0];h=e[113974+(h<<2)>>1]|0;c[ka>>2]=h;i=0;break}while(0);Z=g+21828|0;if(c[Z>>2]|0){h=h|128;c[ka>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){h=c[ja>>2]|0;h=N(c[h+1184>>2]|0,e[114258+(c[h+12>>2]<<1)>>1]|0)|0;c[g+27780>>2]=Rk(la)|0;if((Sk(la)|0)<(h|0)){ig(c[f+4>>2]|0,16,135035,o);h=-1094995529;break}else{Tk(la,h);a[(c[f+24340>>2]|0)+pa>>0]=0;k=(c[f+25972>>2]|0)+(pa*48|0)|0;n=k+48|0;do{a[k>>0]=16;k=k+1|0}while((k|0)<(n|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[ka>>2];h=0;break}}Uk(f,g,h);Vk(f,g,h);c:do if(!(h&7)){if(i<<24>>24==4){d:do if((c[n>>2]|0)==3){h=0;while(1){if((h|0)>=4)break;i=Zk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>12){fa=52;break}c[V+(h<<2)>>2]=d[114206+(k<<2)+2>>0];b[j>>1]=b[114206+((i&65535)<<2)>>1]|0;h=h+1|0}if((fa|0)==52){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[q>>2]=k;c[q+4>>2]=pa;c[q+8>>2]=f;ig(g,16,135076,q);break}if(!((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256))fa=56;else{_k(f,g,ka);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;fa=56}}else{h=0;while(1){if((h|0)>=4){fa=56;break d}i=Zk(la)|0;j=g+28552+(h<<1)|0;b[j>>1]=i;k=i&65535;if(k>>>0>3)break;c[V+(h<<2)>>2]=d[114098+(k<<2)+2>>0];b[j>>1]=b[114098+((i&65535)<<2)>>1]|0;h=h+1|0}g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[p>>2]=k;c[p+4>>2]=pa;c[p+8>>2]=f;ig(g,16,135116,p)}while(0);do if((fa|0)==56){U=g+23412|0;o=g+21832|0;n=0;e:while(1){h=c[U>>2]|0;if(n>>>0>=h>>>0)break;if(!(c[ka>>2]&512))k=c[g+23404+(n<<2)>>2]<>2];else k=1;j=4096<<(n<<1);i=0;while(1){if((i|0)>=4)break;h=e[g+28552+(i<<1)>>1]|0;if(!(h&256)){f:do if(!(j&h))h=-1;else switch(k|0){case 1:{h=0;break f}case 2:{h=(Ok(la)|0)^1;break f}default:{h=Zk(la)|0;if(h>>>0>>0)break f;else{fa=73;break e}}}while(0);c[X+(n<<4)+(i<<2)>>2]=h}i=i+1|0}n=n+1|0}if((fa|0)==73){g=c[f+4>>2]|0;c[u>>2]=h;ig(g,16,135156,u);break}if(!Y)n=0;else{Y=(c[(c[ja>>2]|0)+72>>2]|0)==0;n=g+28552|0;n=(((Y?24117616:7340144)&c[n>>2]|0)==0?((Y?24117616:7340144)&c[n+4>>2]|0)==0:0)&1}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;while(1){if(O>>>0>=h>>>0)break;K=O<<1;H=4096<>1]&256)){Y=c[X+(O<<4)+(G<<2)>>2]&255;M=G<<2;i=d[146491+M>>0]|0;a[i+9+(g+28272+(O*40|0))>>0]=Y;a[i+8+(g+28272+(O*40|0))>>0]=Y;a[i+1+(g+28272+(O*40|0))>>0]=Y;a[g+28272+(O*40|0)+i>>0]=Y;h=e[h>>1]|0;if(!(H&h)){c[g+27952+(O*160|0)+(i<<2)+36>>2]=0;c[g+27952+(O*160|0)+(i<<2)+32>>2]=0;c[g+27952+(O*160|0)+(i<<2)+4>>2]=0;c[g+27952+(O*160|0)+(i<<2)>>2]=0;break}C=h&24|0?2:1;D=c[V+(G<<2)>>2]|0;E=(h&8|0)==0;F=(h&16|0)==0;z=(h&32|0)==0;y=0;while(1){if((y|0)>=(D|0))break g;h=a[146491+((N(y,C)|0)+M)>>0]|0;A=h&255;B=g+27952+(O*160|0)+(A<<2)|0;q=a[g+28272+(O*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(O*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;s=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(w<<2)|0;i=w+C|0;j=a[g+28272+(O*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[_>>2]|0)!=0))){if((a[I>>0]|0)==-2){fa=95;break}p=c[(c[P>>2]|0)+48>>2]|0;c[J>>2]=0;o=(c[Q>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=95;break}Y=c[$>>2]|0;h=Y+(c[R>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,Y)|0)+h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=b[Y+(o<<2)+2>>1]<<1;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!o){fa=95;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&K)){o=J;k=-1;break}k=c[P>>2]|0;Y=c[k+36+(O<<2)>>2]|0;o=(c[(c[S>>2]|0)+(h<<2)>>2]|0)+3+(N(c[T>>2]|0,i&3)|0)|0;b[J>>1]=b[Y+(o<<2)>>1]|0;b[L>>1]=(b[Y+(o<<2)+2>>1]|0)/2|0;o=J;k=a[(c[k+68+(O<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else fa=95;while(0);do if((fa|0)==95){fa=0;if(j){k=A+-9|0;o=g+27952+(O*160|0)+(k<<2)|0;k=a[g+28272+(O*40|0)+k>>0]|0;break}else{o=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{i=$k(i,b[v>>1]|0,b[o>>1]|0)|0;h=$k(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(i){i=b[s>>1]|0;h=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){i=b[v>>1]|0;h=b[g+27952+(O*160|0)+(w<<2)+2>>1]|0;break}else{i=b[o>>1]|0;h=b[o+2>>1]|0;break}}else{i=$k(b[s>>1]|0,b[v>>1]|0,b[o>>1]|0)|0;h=$k(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0}while(0);k=(al(la)|0)+i|0;i=(al(la)|0)+h|0;do if(E){if(!F){b[B+4>>1]=k;h=i&65535;j=1;fa=115;break}if(z)break;b[B+32>>1]=k;h=i&65535;j=8;fa=115}else{h=k&65535;b[B+36>>1]=h;b[B+32>>1]=h;b[B+4>>1]=h;h=i&65535;b[B+38>>1]=h;b[B+34>>1]=h;j=1;fa=115}while(0);if((fa|0)==115){fa=0;b[B+(j<<2)+2>>1]=h}b[B>>1]=k;b[g+27952+(O*160|0)+(A<<2)+2>>1]=i;y=y+1|0}}else{Y=d[146491+(G<<2)>>0]|0;a[g+28272+(O*40|0)+Y>>0]=a[Y+1+(g+28272+(O*40|0))>>0]|0}while(0);G=G+1|0}O=O+1|0;h=c[U>>2]|0}break c}while(0);h=-1;break a}if(h&256|0){_k(f,g,ka);n=c[(c[ja>>2]|0)+72>>2]&Y;break}if(h&8|0){u=g+23412|0;v=c[ka>>2]|0;k=g+21832|0;j=0;h:while(1){h=c[u>>2]|0;if(j>>>0>=h>>>0){t=0;break}if(v&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];switch(i|0){case 1:{h=0;break}case 2:{h=(Ok(la)|0)^1;break}default:{h=Zk(la)|0;if(h>>>0>=i>>>0){fa=132;break h}}}$=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=$;c[g+28272+(j*40|0)+20>>2]=$;c[g+28272+(j*40|0)+28>>2]=$;c[g+28272+(j*40|0)+36>>2]=$}j=j+1|0}if((fa|0)==132){g=c[f+4>>2]|0;c[r>>2]=h;ig(g,16,135156,r);h=-1;break a}while(1){if(t>>>0>=h>>>0){n=Y;break c}if(v&4096<<(t<<1)){i=a[g+28272+(t*40|0)+12>>0]|0;p=a[g+28272+(t*40|0)+4>>0]|0;q=a[g+28272+(t*40|0)+11>>0]|0;o=g+27952+(t*160|0)+44|0;r=g+27952+(t*160|0)+16|0;h=a[g+28272+(t*40|0)+8>>0]|0;if(h<<24>>24==-2){s=g+27952+(t*160|0)+12|0;n=a[g+28272+(t*40|0)+3>>0]|0}else{s=g+27952+(t*160|0)+32|0;n=h<<24>>24}j=p<<24>>24==i<<24>>24;k=q<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){i=b[o>>1]|0;if(q<<24>>24!=-2&(p<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(t*160|0)+46>>1]|0;break}else{i=$k(i,b[r>>1]|0,b[s>>1]|0)|0;h=$k(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0;break}}if(k){i=b[o>>1]|0;h=b[g+27952+(t*160|0)+46>>1]|0;break}if(j){i=b[r>>1]|0;h=b[g+27952+(t*160|0)+18>>1]|0;break}else{i=b[s>>1]|0;h=b[s+2>>1]|0;break}}else{i=$k(b[o>>1]|0,b[r>>1]|0,b[s>>1]|0)|0;h=$k(b[g+27952+(t*160|0)+46>>1]|0,b[g+27952+(t*160|0)+18>>1]|0,b[s+2>>1]|0)|0}while(0);$=(al(la)|0)+i|0;h=(al(la)|0)+h<<16|$&65535;c[g+27952+(t*160|0)+48>>2]=h;c[g+27952+(t*160|0)+52>>2]=h;c[g+27952+(t*160|0)+56>>2]=h;c[g+27952+(t*160|0)+60>>2]=h;c[g+27952+(t*160|0)+80>>2]=h;c[g+27952+(t*160|0)+84>>2]=h;c[g+27952+(t*160|0)+88>>2]=h;c[g+27952+(t*160|0)+92>>2]=h;c[g+27952+(t*160|0)+112>>2]=h;c[g+27952+(t*160|0)+116>>2]=h;c[g+27952+(t*160|0)+120>>2]=h;c[g+27952+(t*160|0)+124>>2]=h;c[g+27952+(t*160|0)+144>>2]=h;c[g+27952+(t*160|0)+148>>2]=h;c[g+27952+(t*160|0)+152>>2]=h;c[g+27952+(t*160|0)+156>>2]=h;h=c[u>>2]|0}t=t+1|0}}S=g+23412|0;T=c[ka>>2]|0;p=g+21832|0;if(!(h&16))o=0;else{o=0;i:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;j:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break j}case 2:{h=(Ok(la)|0)^1;break j}default:{h=Zk(la)|0;if(h>>>0>>0)break j;else{fa=161;break i}}}}while(0);X=(j<<4|12)+(g+28272+(o*40|0))|0;V=N(h,16843009)|0;c[X>>2]=V;c[X+8>>2]=V;j=j+1|0}o=o+1|0}if((fa|0)==161){g=c[f+4>>2]|0;c[s>>2]=h;ig(g,16,135156,s);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+4|0;C=g+27952+(L*160|0)+16|0;D=g+27952+(L*160|0)+18|0;E=g+28272+(L*40|0)+11|0;F=g+27952+(L*160|0)+40|0;G=12288<>0]|0;s=r<<24>>24;do if(!z){if((a[B>>0]|0)!=r<<24>>24){fa=174;break}j=b[C>>1]|0;i=b[D>>1]|0}else{if((a[I>>0]|0)!=r<<24>>24){fa=174;break}j=b[J>>1]|0;i=b[K>>1]|0}while(0);do if((fa|0)==174){fa=0;i=a[146491+i>>0]|0;p=i&255;x=p+-8|0;u=a[g+28272+(L*40|0)+x>>0]|0;y=p+-1|0;v=a[g+28272+(L*40|0)+y>>0]|0;t=g+27952+(L*160|0)+(y<<2)|0;w=g+27952+(L*160|0)+(x<<2)|0;j=p+-4|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[E>>0]|0)==-2){fa=183;break}q=c[(c[M>>2]|0)+48>>2]|0;c[F>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=183;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=b[X+(o<<2)+2>>1]<<1;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=183;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&G)){o=F;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[F>>1]=b[X+(o<<2)>>1]|0;b[H>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=F;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=183;while(0);do if((fa|0)==183){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=u<<24>>24==r<<24>>24;j=v<<24>>24==r<<24>>24;i=(j&1)+(k&1)+((n|0)==(s|0)&1)|0;if(i>>>0>1){j=$k(b[t>>1]|0,b[w>>1]|0,b[o>>1]|0)|0;i=$k(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[t>>1]|0;if(v<<24>>24!=-2&(u<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}else{j=$k(j,b[w>>1]|0,b[o>>1]|0)|0;i=$k(b[g+27952+(L*160|0)+(y<<2)+2>>1]|0,b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[t>>1]|0;i=b[g+27952+(L*160|0)+(y<<2)+2>>1]|0;break}if(k){j=b[w>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(al(la)|0)+j|0;i=(al(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+8>>2]=i;c[g+27952+(L*160|0)+(h<<2)+12>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+40>>2]=i;c[g+27952+(L*160|0)+(h<<2)+44>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}k:while(1){h=c[S>>2]|0;if(o>>>0>=h>>>0)break;k=o<<1;n=g+23404+(o<<2)|0;j=0;while(1){if((j|0)>=2)break;l:do if(!(T&4096<>2]<>2];switch(i|0){case 1:{h=0;break l}case 2:{h=(Ok(la)|0)^1;break l}default:{h=Zk(la)|0;if(h>>>0>>0)break l;else{fa=208;break k}}}}while(0);X=(j<<1)+12+(g+28272+(o*40|0))|0;V=h*257&65535;b[X>>1]=V;b[X+8>>1]=V;b[X+16>>1]=V;b[X+24>>1]=V;j=j+1|0}o=o+1|0}if((fa|0)==208){g=c[f+4>>2]|0;c[t>>2]=h;ig(g,16,135156,t);h=-1;break a}M=f+24312|0;O=g+21740|0;P=g+21720|0;Q=f+26360|0;R=f+26368|0;L=0;while(1){if(L>>>0>=h>>>0){n=Y;break c}A=L<<1;B=g+28272+(L*40|0)+11|0;C=g+27952+(L*160|0)+44|0;D=g+27952+(L*160|0)+46|0;E=g+27952+(L*160|0)+40|0;F=12288<>0]|0;y=v<<24>>24;do if(!z)if((a[B>>0]|0)==v<<24>>24){j=b[C>>1]|0;i=b[D>>1]|0}else fa=223;else{i=a[H>>0]|0;if(i<<24>>24==-2){k=I;i=a[J>>0]|0}else k=K;if(i<<24>>24!=v<<24>>24){fa=223;break}j=b[k>>1]|0;i=b[k+2>>1]|0}while(0);do if((fa|0)==223){fa=0;i=a[146491+j>>0]|0;p=i&255;w=p+-8|0;s=a[g+28272+(L*40|0)+w>>0]|0;x=p+-1|0;t=a[g+28272+(L*40|0)+x>>0]|0;r=g+27952+(L*160|0)+(x<<2)|0;u=g+27952+(L*160|0)+(w<<2)|0;j=p+-6|0;k=a[g+28272+(L*40|0)+j>>0]|0;n=k<<24>>24;k=k<<24>>24==-2;do if((p&7|0)==4&((i&255)>19&(k&(c[_>>2]|0)!=0))){if((a[B>>0]|0)==-2){fa=232;break}q=c[(c[M>>2]|0)+48>>2]|0;c[E>>2]=0;o=(c[O>>2]&128|0)==0;if(!(c[Z>>2]|0)){if(o){fa=232;break}X=c[$>>2]|0;j=X+(c[P>>2]|0)|0;i=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(i>>>2,X)|0)+j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=b[X+(o<<2)+2>>1]<<1;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+((i&14)+(j<<2|1))>>0]>>1;break}else{if(!o){fa=232;break}j=c[g+21720+(((i&255)>35&1)<<2)>>2]|0;i=p>>>2;if(!(c[q+(j<<2)>>2]&F)){o=E;n=-1;break}n=c[M>>2]|0;X=c[n+36+(L<<2)>>2]|0;o=(c[(c[Q>>2]|0)+(j<<2)>>2]|0)+3+(N(c[R>>2]|0,i&3)|0)|0;b[E>>1]=b[X+(o<<2)>>1]|0;b[G>>1]=(b[X+(o<<2)+2>>1]|0)/2|0;o=E;n=a[(c[n+68+(L<<2)>>2]|0)+(i&2|j<<2|1)>>0]<<1;break}}else fa=232;while(0);do if((fa|0)==232){fa=0;if(k){n=p+-9|0;o=g+27952+(L*160|0)+(n<<2)|0;n=a[g+28272+(L*40|0)+n>>0]|0;break}else{o=g+27952+(L*160|0)+(j<<2)|0;break}}while(0);k=s<<24>>24==v<<24>>24;j=t<<24>>24==v<<24>>24;i=(j&1)+(k&1)+((n|0)==(y|0)&1)|0;if(i>>>0>1){j=$k(b[r>>1]|0,b[u>>1]|0,b[o>>1]|0)|0;i=$k(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}if((i|0)!=1){j=b[r>>1]|0;if(t<<24>>24!=-2&(s<<24>>24==-2&(n|0)==-2)){i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}else{j=$k(j,b[u>>1]|0,b[o>>1]|0)|0;i=$k(b[g+27952+(L*160|0)+(x<<2)+2>>1]|0,b[g+27952+(L*160|0)+(w<<2)+2>>1]|0,b[o+2>>1]|0)|0;break}}if(j){j=b[r>>1]|0;i=b[g+27952+(L*160|0)+(x<<2)+2>>1]|0;break}if(k){j=b[u>>1]|0;i=b[g+27952+(L*160|0)+(w<<2)+2>>1]|0;break}else{j=b[o>>1]|0;i=b[o+2>>1]|0;break}}while(0);X=(al(la)|0)+j|0;i=(al(la)|0)+i<<16|X&65535}c[g+27952+(L*160|0)+(h<<2)>>2]=i;c[g+27952+(L*160|0)+(h<<2)+4>>2]=i;c[g+27952+(L*160|0)+(h<<2)+32>>2]=i;c[g+27952+(L*160|0)+(h<<2)+36>>2]=i;c[g+27952+(L*160|0)+(h<<2)+64>>2]=i;c[g+27952+(L*160|0)+(h<<2)+68>>2]=i;c[g+27952+(L*160|0)+(h<<2)+96>>2]=i;c[g+27952+(L*160|0)+(h<<2)+100>>2]=i;z=z+1|0}L=L+1|0;h=c[S>>2]|0}}else{if(!(h&1)){_=g+21660|0;$=Yk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[_>>2]|0,0)|0;c[_>>2]=$;if(($|0)<0){h=-1;break a}}else{if((Y|0)!=0?(Ok(la)|0)!=0:0){c[ka>>2]=h|16777216;j=4}else j=1;k=(j|0)==4;i=0;while(1){if((i|0)>=16)break;n=d[146491+i>>0]|0;h=a[n+-1+(g+21664)>>0]|0;$=a[n+-8+(g+21664)>>0]|0;h=(h|0)>($|0)?$:h;h=(h|0)<0?2:h;if(!(Ok(la)|0)){$=Wk(la,3)|0;h=$+(($|0)>=(h|0)&1)|0}if(k){$=g+21664+n|0;_=h*257&65535;b[$>>1]=_;b[$+8>>1]=_}else a[g+21664+n>>0]=h;i=i+j|0}$=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[$>>2]=c[g+21700>>2];a[$+4>>0]=a[g+21695>>0]|0;a[$+5>>0]=a[g+21687>>0]|0;a[$+6>>0]=a[g+21679>>0]|0;if((Xk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<=-1){h=-1;break a}}if(ca){_=c[f+4>>2]|0;$=c[g+21760>>2]|0;h=c[g+21768>>2]|0;h=Yk(_,$,h,Zk(la)|0,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h;n=Y}while(0);h=c[ka>>2]|0;if(h&120|0){i=c[f+26368>>2]|0;j=(N(i<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;k=c[oa>>2]<<2;if(!(h&12288)){$=(c[f+24384>>2]|0)+k|0;b[$>>1]=-1;b[$+2>>1]=-1}else{$=(c[f+24352>>2]|0)+(j<<2)|0;Z=g+28e3|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28008|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28032|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28040|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28064|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28072|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28096|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28104|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24384>>2]|0)+k|0;a[$>>0]=a[g+28284>>0]|0;a[$+1>>0]=a[g+28286>>0]|0;a[$+2>>0]=a[g+28300>>0]|0;a[$+3>>0]=a[g+28302>>0]|0}if(h&49152|0){$=(c[f+24356>>2]|0)+(j<<2)|0;Z=g+28160|0;_=c[Z+4>>2]|0;X=$;c[X>>2]=c[Z>>2];c[X+4>>2]=_;X=g+28168|0;_=c[X+4>>2]|0;Z=$+8|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28192|0;_=c[Z+4>>2]|0;X=$+(i<<2)|0;Y=X;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28200|0;_=c[Y+4>>2]|0;X=X+8|0;c[X>>2]=c[Y>>2];c[X+4>>2]=_;X=g+28224|0;_=c[X+4>>2]|0;Y=$+(i<<1<<2)|0;Z=Y;c[Z>>2]=c[X>>2];c[Z+4>>2]=_;Z=g+28232|0;_=c[Z+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[Z>>2];c[Y+4>>2]=_;Y=g+28256|0;_=c[Y+4>>2]|0;$=$+(i*3<<2)|0;Z=$;c[Z>>2]=c[Y>>2];c[Z+4>>2]=_;Z=g+28264|0;_=c[Z+4>>2]|0;$=$+8|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;$=(c[f+24388>>2]|0)+k|0;a[$>>0]=a[g+28324>>0]|0;a[$+1>>0]=a[g+28326>>0]|0;a[$+2>>0]=a[g+28340>>0]|0;a[$+3>>0]=a[g+28342>>0]|0}}h=c[ka>>2]|0;if(h&2)if(aa>>>0>15&(ca^1)){ig(c[f+4>>2]|0,16,135814,ba);h=-1094995529;break}else y=aa;else{i=Qk(la)|0;do if(ca){if(i>>>0>47){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[da>>2]=i;c[da+4>>2]=f;c[da+8>>2]=g;ig(h,16,135173,da);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=123847+i|0;break}else{i=123799+i|0;break}}else{if(i>>>0>15){h=c[f+4>>2]|0;f=c[ga>>2]|0;g=c[ha>>2]|0;c[ea>>2]=i;c[ea+4>>2]=f;c[ea+8>>2]=g;ig(h,16,135173,ea);h=-1;break a}h=c[ka>>2]|0;if(!(h&1)){i=135218+i|0;break}else{i=135202+i|0;break}}while(0);y=d[i>>0]|0}w=(y&15|0)==0;if((h&7|0)==0&(((n|0)==0|w)^1)){h=(Ok(la)|0)<<24;h=c[ka>>2]|h;c[ka>>2]=h}t=f+26392|0;b[(c[t>>2]|0)+(pa<<1)>>1]=y;c[g+21856>>2]=y&65535;c[(c[f+24364>>2]|0)+(pa<<2)>>2]=h;if((y|0)==0?(c[ka>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;h=g+848|0}else fa=274;m:do if((fa|0)==274){i=(c[(c[ja>>2]|0)+1184>>2]|0)*6|0;k=i+3|0;n=al(la)|0;h=g+848|0;j=(c[h>>2]|0)+n|0;c[h>>2]=j;if(j>>>0>k>>>0){i=((j|0)<0?i+4|0:-4-i|0)+j|0;c[h>>2]=i;if(i>>>0>k>>>0){g=c[f+4>>2]|0;pa=c[ga>>2]|0;f=c[ha>>2]|0;c[ia>>2]=n;c[ia+4>>2]=pa;c[ia+8>>2]=f;ig(g,16,135234,ia);c[h>>2]=k;h=-1;break a}else j=i}i=c[na>>2]|0;s=g+852|0;c[s>>2]=d[i+548+j>>0];u=g+856|0;c[u>>2]=d[i+636+j>>0];i=c[ka>>2]|0;ia=(i&128|0)==0;v=(j|0)!=0;x=ia?(v?f+26428|0:f+26716|0):v?f+26572|0:f+26860|0;v=ia?(v?f+26508|0:f+26796|0):v?f+26652|0:f+26940|0;n:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;i=0;p=0;while(1){if((p|0)>=4)break;o:do if(1<=4)break o;k=n+o|0;if((bl(f,g,la,g+28560+(k<<4<>2]|0)+173788+(r<<2)>>2]|0)+(j<<6)|0,16)|0)<0){h=-1;break a}n=n+1|0;i=d[(d[146491+k>>0]|0)+(g+27824)>>0]<=4)break;if((bl(f,g,la,n,k+o|0,v+(k<<4)|0,(c[(c[na>>2]|0)+173812+(r<<2)>>2]|0)+(j<<8)|0,16)|0)>-1)k=k+1|0;else{h=-1;break a}}ha=(d[146491+o>>0]|0)+(g+27824)|0;ia=(d[ha+8>>0]|0)+(d[ha+1>>0]|0)+(d[ha+9>>0]|0)+(d[ha>>0]|0)&255;a[ha>>0]=ia;i=(ia<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ia+9>>0]=0;a[ia+8>>0]=0;a[ia+1>>0]=0;a[ia>>0]=0}while(0);p=p+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31632|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((bl(f,g,la,i,48,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;i=0;break}n=x+1|0;k=0;while(1){if((k|0)>=4){i=15;break n}o=k<<2;i=0;while(1){if((i|0)>=4)break;ia=i+o|0;if((bl(f,g,la,g+28560+(ia<<4<>2]|0)+173788>>2]|0)+(j<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}k=k+1|0}}while(0);t=(c[t>>2]|0)+(pa<<1)|0;b[t>>1]=i<<12|e[t>>1];t=c[(c[ja>>2]|0)+12>>2]|0;if((t|0)!=3){p:do if(y&48|0){j=t<<2;i=0;while(1){if((i|0)>=2)break p;if((bl(f,g,la,g+28560+((i<<8)+256<>2]|0)+12>>2]|0)==2?123899:123895,0,j)|0)<0){h=-1;break a}else i=i+1|0}}while(0);if(!(y&32)){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}p=x+1|0;q=16<=2)break m;r=i+1|0;s=(c[(c[na>>2]|0)+173788+((c[ka>>2]&7|0?0:3)+r<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;n=(i<<4)+16|0;i=g+28560+(n<<4<=(t|0)){i=r;continue q}o=(j<<3)+n|0;k=0;while(1){if((k|0)>=4)break;if((bl(f,g,la,i,o+k|0,p,s,15)|0)<=-1){h=-1;break a}k=k+1|0;i=i+(q<<1)|0}j=j+1|0}}}i=c[ka>>2]|0;r=c[s>>2]|0;r:do if(!(i&2)){q=i&7|0?1:4;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;s:do if(1<=4)break s;j=n+k|0;if((bl(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146491+j>>0]|0)+(g+27824)>>0]<=4)break;if((bl(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ia=(d[146491+n>>0]|0)+(g+27824)|0;ja=(d[ia+8>>0]|0)+(d[ia+1>>0]|0)+(d[ia+9>>0]|0)+(d[ia>>0]|0)&255;a[ia>>0]=ja;i=(ja<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ja+9>>0]=0;a[ja+8>>0]=0;a[ja+1>>0]=0;a[ja>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}else{i=g+31696|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((bl(f,g,la,i,49,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break r;n=(j<<2)+16|0;i=0;while(1){if((i|0)>=4)break;ja=n+i|0;if((bl(f,g,la,g+28560+(ja<<4<>2]|0)+173792>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}while(0);i=c[ka>>2]|0;r=c[u>>2]|0;if(i&2|0){i=g+31760|0;k=i;n=k+64|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));if((bl(f,g,la,i,50,x,0,16)|0)<0){h=-1;break a}if(w){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}k=x+1|0;j=0;while(1){if((j|0)>=4)break m;n=(j<<2)+32|0;i=0;while(1){if((i|0)>=4)break;ka=n+i|0;if((bl(f,g,la,g+28560+(ka<<4<>2]|0)+173796>>2]|0)+(r<<6)|0,15)|0)>-1)i=i+1|0;else{h=-1;break a}}j=j+1|0}}q=i&7|0?2:5;p=(i&16777216|0)==0;i=0;o=0;while(1){if((o|0)>=4)break;t:do if(1<=4)break t;j=n+k|0;if((bl(f,g,la,g+28560+(j<<4<>2]|0)+173788+(q<<2)>>2]|0)+(r<<6)|0,16)|0)<0){h=-1;break a}k=k+1|0;i=d[(d[146491+j>>0]|0)+(g+27824)>>0]<=4)break;if((bl(f,g,la,k,j+n|0,v+(j<<4)|0,(c[(c[na>>2]|0)+173812+(q<<2)>>2]|0)+(r<<8)|0,16)|0)>-1)j=j+1|0;else{h=-1;break a}}ja=(d[146491+n>>0]|0)+(g+27824)|0;ka=(d[ja+8>>0]|0)+(d[ja+1>>0]|0)+(d[ja+9>>0]|0)+(d[ja>>0]|0)&255;a[ja>>0]=ka;i=(ka<<24>>24!=0&1)<>0]|0)+(g+27824)|0;a[ka+9>>0]=0;a[ka+8>>0]=0;a[ka+1>>0]=0;a[ka>>0]=0}while(0);o=o+1|0}if((i|0)<0){h=-1;break a}}while(0);a[(c[f+24340>>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function Nk(a){a=a|0;var b=0,c=0,e=0;e=ll(a)|0;b=e>>>0>65535;e=b?e>>>16:e;b=b?16:0;c=(e&65280|0)==0;b=31-(d[116289+(c?e:e>>>8)>>0]|0)-(c?b:b|8)|0;Tk(a,b);return (ml(a,b+1|0)|0)+-1|0}function Ok(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(d[(c[a>>2]|0)+(e>>>3)>>0]|0)<<(e&7)>>>7&1;c[b>>2]=e+1;return a|0}function Pk(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;if((l|0)>=(m|0))W(16);x=B+4|0;z=B;y=f+21796|0;A=c[y>>2]|0;c[z>>2]=0;g=(c[e+25972>>2]|0)+(A*48|0)|0;h=g+48|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));w=f+21828|0;if(!(c[w>>2]|0))g=0;else{c[z>>2]=128;g=128}if((c[f+840>>2]|0)==3){g=g|63744;c[z>>2]=g;if(c[f+21844>>2]|0){Uk(e,f,g);Vk(e,f,g)}_k(e,f,z);j=c[z>>2]|2048;c[z>>2]=j;g=e+26368|0}else{j=g|14344;c[z>>2]=j;Uk(e,f,j);q=c[e+24384>>2]|0;r=c[e+24352>>2]|0;g=e+26368|0;s=c[g>>2]|0;c[f+28284>>2]=0;c[f+28292>>2]=0;c[f+28300>>2]=0;c[f+28308>>2]=0;k=c[f+21740>>2]|0;if(!(k&12288))if(!k)h=0;else{v=183828;t=-1;n=16}else{h=c[f+21720>>2]|0;v=d[c[f+21748>>2]>>0]|0;i=a[q+((v&254)+(h<<2|1))>>0]|0;h=r+((N(s,v)|0)+3+(c[(c[e+26360>>2]|0)+(h<<2)>>2]|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=h>>16<<1;h=x;i=i>>1;break}else{if(k)break;h=c[h>>2]|0;c[x>>2]=h;b[x+2>>1]=((h>>>16&65535)<<16>>16)/2|0;h=x;i=i<<1;break}}while(0);if(!(c[h>>2]|i))h=0;else{v=h;t=i;n=16}}do if((n|0)==16){k=c[f+21732>>2]|0;if(!(k&12288))if(!k){h=0;break}else{o=-1;p=183828}else{i=c[f+21712>>2]|0;h=a[q+(i<<2|2)>>0]|0;i=r+((c[(c[e+26360>>2]|0)+(i<<2)>>2]|0)+(s*3|0)<<2)|0;do if(c[e+26376>>2]|0){k=(k&128|0)!=0;if(!(c[w>>2]|0)){if(!k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=p>>16<<1;h=h>>1;break}else{if(k)break;p=c[i>>2]|0;i=x+4|0;c[i>>2]=p;b[x+6>>1]=((p>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}while(0);if(!(c[i>>2]|h)){h=0;break}else{o=h;p=i}}i=c[f+21736>>2]|0;do if(!(i&12288))if((i|0)==0?(u=c[f+21728>>2]|0,(u&12288|0)!=0):0){k=c[f+21708>>2]|0;n=c[f+21752>>2]|0;h=a[q+(k<<2|n&2|1)>>0]|0;k=r+(s+3+(n&s<<1)+(c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)<<2)|0;if(c[e+26376>>2]|0){i=(u&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}else{n=183828;h=-1}else{k=c[f+21716>>2]|0;h=a[q+(k<<2|2)>>0]|0;k=r+((c[(c[e+26360>>2]|0)+(k<<2)>>2]|0)+(s*3|0)<<2)|0;if(c[e+26376>>2]|0){i=(i&128|0)!=0;if(!(c[w>>2]|0)){if(!i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=w>>16<<1;h=h>>1;break}else{if(i){n=k;break}w=c[k>>2]|0;n=x+8|0;c[n>>2]=w;b[x+10>>1]=((w>>>16&65535)<<16>>16)/2|0;h=h<<1;break}}else n=k}while(0);k=(o|0)!=0;i=(t|0)!=0;h=((k^1)&1)+((i^1)&1)+((h|0)==0&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=$k(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=$k(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0;break}if(!i){i=b[v+2>>1]|0;h=b[v>>1]|0;break}if(k){i=b[n+2>>1]|0;h=b[n>>1]|0;break}else{i=b[p+2>>1]|0;h=b[p>>1]|0;break}}else{h=$k(b[v>>1]|0,b[p>>1]|0,b[n>>1]|0)|0;i=$k(b[v+2>>1]|0,b[p+2>>1]|0,b[n+2>>1]|0)|0}while(0);h=i<<16|h&65535}while(0);c[f+28e3>>2]=h;c[f+28004>>2]=h;c[f+28008>>2]=h;c[f+28012>>2]=h;c[f+28032>>2]=h;c[f+28036>>2]=h;c[f+28040>>2]=h;c[f+28044>>2]=h;c[f+28064>>2]=h;c[f+28068>>2]=h;c[f+28072>>2]=h;c[f+28076>>2]=h;c[f+28096>>2]=h;c[f+28100>>2]=h;c[f+28104>>2]=h;c[f+28108>>2]=h}h=c[g>>2]|0;i=(N(h<<2,c[f+21792>>2]|0)|0)+(c[f+21788>>2]<<2)|0;g=c[y>>2]<<2;if(!(j&12288)){y=(c[e+24384>>2]|0)+g|0;b[y>>1]=-1;b[y+2>>1]=-1}else{y=(c[e+24352>>2]|0)+(i<<2)|0;w=f+28e3|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28008|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28032|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28040|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28064|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28072|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28096|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28104|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24384>>2]|0)+g|0;a[y>>0]=a[f+28284>>0]|0;a[y+1>>0]=a[f+28286>>0]|0;a[y+2>>0]=a[f+28300>>0]|0;a[y+3>>0]=a[f+28302>>0]|0}if(j&49152|0){y=(c[e+24356>>2]|0)+(i<<2)|0;w=f+28160|0;x=c[w+4>>2]|0;u=y;c[u>>2]=c[w>>2];c[u+4>>2]=x;u=f+28168|0;x=c[u+4>>2]|0;w=y+8|0;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28192|0;x=c[w+4>>2]|0;u=y+(h<<2)|0;v=u;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28200|0;x=c[v+4>>2]|0;u=u+8|0;c[u>>2]=c[v>>2];c[u+4>>2]=x;u=f+28224|0;x=c[u+4>>2]|0;v=y+(h<<1<<2)|0;w=v;c[w>>2]=c[u>>2];c[w+4>>2]=x;w=f+28232|0;x=c[w+4>>2]|0;v=v+8|0;c[v>>2]=c[w>>2];c[v+4>>2]=x;v=f+28256|0;x=c[v+4>>2]|0;y=y+(h*3<<2)|0;w=y;c[w>>2]=c[v>>2];c[w+4>>2]=x;w=f+28264|0;x=c[w+4>>2]|0;y=y+8|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;y=(c[e+24388>>2]|0)+g|0;a[y>>0]=a[f+28324>>0]|0;a[y+1>>0]=a[f+28326>>0]|0;a[y+2>>0]=a[f+28340>>0]|0;a[y+3>>0]=a[f+28342>>0]|0}c[(c[e+24364>>2]|0)+(A<<2)>>2]=c[z>>2];a[(c[e+24340>>2]|0)+A>>0]=c[f+848>>2];b[(c[e+26372>>2]|0)+(A<<1)>>1]=c[f+832>>2];c[f+21648>>2]=1;l=B;return}function Qk(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;e=a+8|0;f=c[e>>2]|0;b=(c[a>>2]|0)+(f>>>3)|0;b=(uX(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24|0)|0)<<(f&7);do if(b>>>0<=134217727){j=b>>>0>65535;i=j?b>>>16:b;j=j?16:0;a=(i&65280|0)==0;i=(a?j:j|8)+(d[116289+(a?i:i>>>8)>>0]|0)|0;a=i<<1;c[e>>2]=f+63-a;if(i>>>0<19){ig(0,16,151648,g);a=-1094995529;break}else{a=(b>>>(a+-31|0))+-1|0;break}}else{a=b>>>23;c[e>>2]=f+(d[122258+a>>0]|0);a=d[122770+a>>0]|0}while(0);l=h;return a|0}function Rk(a){a=a|0;var b=0;b=0-(kl(a)|0)&7;if(b|0)el(a,b);return (c[a>>2]|0)+(c[a+8>>2]>>3)|0}function Sk(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(kl(a)|0)|0}function Tk(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function Uk(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=c[b+21796>>2]|0;j=b+21752|0;c[j>>2]=-1;o=c[a+27016>>2]|0;m=i-(o<>2])|0;f=m+-1|0;g=m+1|0;h=i+-1|0;n=b+21748|0;c[n>>2]=135650;q=c[a+24364>>2]|0;do if(c[a+26376>>2]|0){k=c[q+(h<<2)>>2]&128;l=d&128;if(!(c[b+21792>>2]&1)){i=(l|0)!=0;if(i){d=(((c[q+(m<<2)>>2]|0)>>>7&1)+-1&o)+m|0;g=(((c[q+(g<<2)>>2]|0)>>>7&1)+-1&o)+g|0;f=(((c[q+(f<<2)>>2]|0)>>>7&1)+-1&o)+f|0}else d=m;if((k|0)==(l|0)){p=d;n=f;m=h;d=h;break}c[n>>2]=i?135746:135714;p=d;n=f;m=h;d=h+(i?o:0)|0;break}else{if((k|0)==(l|0)){p=m;n=f;m=h;d=h;break}i=i-o+-1|0;if(!l){c[j>>2]=0;f=o+f|0;d=135682;h=i}else d=135746;c[n>>2]=d;p=m;n=f;m=i;d=h;break}}else{p=m;n=f;m=h;d=h}while(0);c[b+21708>>2]=n;c[b+21712>>2]=p;c[b+21716>>2]=g;c[b+21720>>2]=m;c[b+21724>>2]=d;h=b+21728|0;c[h>>2]=c[q+(n<<2)>>2];i=b+21732|0;c[i>>2]=c[q+(p<<2)>>2];j=b+21736|0;c[j>>2]=c[q+(g<<2)>>2];k=b+21740|0;c[k>>2]=c[q+(m<<2)>>2];l=b+21744|0;c[l>>2]=c[q+(d<<2)>>2];f=c[a+26372>>2]|0;d=c[b+832>>2]|0;if((d|0)!=(e[f+(n<<1)>>1]|0|0)){c[h>>2]=0;if((d|0)!=(e[f+(p<<1)>>1]|0|0))c[i>>2]=0;if((d|0)!=(e[f+(m<<1)>>1]|0|0)){c[l>>2]=0;c[k>>2]=0}}if((d|0)!=(e[f+(g<<1)>>1]|0|0))c[j>>2]=0;return}function Vk(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ka=l;l=l+16|0;if((l|0)>=(m|0))W(16);aa=ka+8|0;ba=ka;ha=c[f+21748>>2]|0;ja=c[f+21708>>2]|0;U=c[f+21712>>2]|0;V=c[f+21716>>2]|0;X=c[f+21720>>2]|0;c[aa>>2]=X;c[aa+4>>2]=c[f+21724>>2];Y=c[f+21728>>2]|0;Z=c[f+21732>>2]|0;_=c[f+21736>>2]|0;$=c[f+21740>>2]|0;c[ba>>2]=$;t=c[f+21744>>2]|0;c[ba+4>>2]=t;a:do if(!(g&2048)){b:do if(g&7|0){q=c[(c[e+28212>>2]|0)+56>>2]|0?7:-1;j=f+21768|0;c[j>>2]=65535;h=f+21760|0;c[h>>2]=65535;n=f+21756|0;c[n>>2]=65535;o=f+21764|0;c[o>>2]=61162;p=(q&Z|0)!=0;if(p){h=65535;k=60138}else{c[n>>2]=46079;c[h>>2]=13311;c[o>>2]=9962;h=46079;k=8938}i=g&128;do if((i|0)==($&128|0)){if(!($&q)){h=h&57183;c[n>>2]=h;c[j>>2]=24415}}else{if(!i){if(!(($&q|0)==0?1:(c[(c[e+24364>>2]|0)+((c[e+27016>>2]|0)+X<<2)>>2]&q|0)==0))break;h=h&57183;c[n>>2]=h;c[j>>2]=24415;break}if(!($&q)){h=h&57343;c[n>>2]=h;c[j>>2]=24575;i=24415}else i=65375;if(!(t&q)){h=h&65375;c[n>>2]=h;c[j>>2]=i}}while(0);if(!(q&Y))c[n>>2]=h&32767;if(!(q&_))c[o>>2]=k;if(g&1|0){if(!(Z&1)){yX(f+21668|0,(p?2:-1)|0,4)|0;k=f+21704|0;n=e+26364|0}else{k=f+21704|0;n=e+26364|0;c[f+21668>>2]=c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(U<<2)>>2]|0)>>2]}j=0;while(1){if((j|0)==2)break b;h=c[ba+(j<<2)>>2]|0;if(!(h&1)){h=(h&q|0)==0?-1:2;i=j<<4;a[i+19+(f+21664)>>0]=h;i=i|11}else{T=(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[aa+(j<<2)>>2]<<2)>>2]|0)|0;h=j<<1;i=j<<4;a[(i|11)+(f+21664)>>0]=a[T+(6-(d[ha+h>>0]|0))>>0]|0;h=a[T+(6-(d[ha+(h|1)>>0]|0))>>0]|0;i=i+19|0}a[f+21664+i>>0]=h;j=j+1|0}}}while(0);if(!Z){c[f+27828>>2]=1077952576;c[f+27868>>2]=1077952576;r=e+25972|0;h=1077952576}else{r=e+25972|0;h=c[r>>2]|0;c[f+27828>>2]=c[h+(U*48|0)+12>>2];T=(c[e+25680>>2]|0)==0;c[f+27868>>2]=c[(T?28:20)+(h+(U*48|0))>>2];h=c[(T?44:36)+(h+(U*48|0))>>2]|0}c[f+27908>>2]=h;q=e+28216|0;p=0;while(1){if((p|0)==2)break a;if(!(c[ba+(p<<2)>>2]|0)){i=p<<4;a[i+99+(f+27824)>>0]=64;a[i+91+(f+27824)>>0]=64;a[i+59+(f+27824)>>0]=64;a[i+51+(f+27824)>>0]=64;a[i+19+(f+27824)>>0]=64;i=i|11;h=64}else{n=c[r>>2]|0;o=c[aa+(p<<2)>>2]|0;h=p<<1;j=ha+(h+8)|0;i=p<<4;a[(i|11)+(f+27824)>>0]=a[(d[j>>0]|0)+(n+(o*48|0))>>0]|0;k=ha+(h+9)|0;a[i+19+(f+27824)>>0]=a[(d[k>>0]|0)+(n+(o*48|0))>>0]|0;switch(c[(c[q>>2]|0)+12>>2]|0){case 3:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+16+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+32+(n+(o*48|0))>>0]|0;k=(d[k>>0]|0)+32|0;h=i+99|0;break}case 2:{a[i+51+(f+27824)>>0]=a[(d[j>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+59+(f+27824)>>0]=a[(d[k>>0]|0)+14+(n+(o*48|0))>>0]|0;a[i+91+(f+27824)>>0]=a[(d[j>>0]|0)+30+(n+(o*48|0))>>0]|0;h=(d[k>>0]|0)+30|0;j=99;s=39;break}default:{i=p<<3;a[i+51+(f+27824)>>0]=a[(d[ha+(h+12)>>0]|0)+(n+(o*48|0))>>0]|0;h=d[ha+(h+13)>>0]|0;j=91;s=39}}if((s|0)==39){s=0;k=h;h=j+i|0}i=h;h=a[n+(o*48|0)+k>>0]|0}a[f+27824+i>>0]=h;p=p+1|0}}while(0);if(!(g&120)){if(g&256|0?c[f+21844>>2]|0:0)s=46}else s=46;c:do if((s|0)==46){z=c[e+26368>>2]|0;A=f+23412|0;B=Z|0?-1:-16843010;C=(g&80|0)==0;D=$|0?-1:-2;E=e+26360|0;F=X<<2|1;G=_|0?-1:-2;H=Y|0?-1:-2;I=f+21752|0;J=z<<1;K=z+3|0;L=ja<<2;M=(g&2304|0)==0;O=e+26376|0;P=f+21828|0;Q=(Y&128|0)!=0;R=(Z&128|0)==0;S=(_&128|0)==0;T=($&128|0)==0;u=(t&128|0)==0;v=z*3|0;w=V<<2|2;y=U<<2;x=y|2;y=y|3;t=0;while(1){if(t>>>0>=(c[A>>2]|0)>>>0)break c;o=f+28272+(t*40|0)+12|0;q=c[e+24384+(t<<2)>>2]|0;p=f+27952+(t*160|0)+48|0;r=c[e+24352+(t<<2)>>2]|0;s=12288<<(t<<1);do if(s&g|0){if(!(s&Z)){n=f+27952+(t*160|0)+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28272+(t*40|0)+4>>2]=B}else{j=(c[(c[E>>2]|0)+(U<<2)>>2]|0)+v|0;i=r+(j<<2)|0;n=c[i+4>>2]|0;k=f+27952+(t*160|0)+16|0;c[k>>2]=c[i>>2];c[k+4>>2]=n;j=r+(j<<2)+8|0;k=c[j+4>>2]|0;n=f+27952+(t*160|0)+24|0;c[n>>2]=c[j>>2];c[n+4>>2]=k;n=a[q+x>>0]|0;a[f+28272+(t*40|0)+5>>0]=n;a[f+28272+(t*40|0)+4>>0]=n;n=a[q+y>>0]|0;a[f+28272+(t*40|0)+7>>0]=n;a[f+28272+(t*40|0)+6>>0]=n}d:do if(C){if(!($&s)){c[f+27952+(t*160|0)+44>>2]=0;h=D}else{c[f+27952+(t*160|0)+44>>2]=c[r+((c[(c[E>>2]|0)+(X<<2)>>2]|0)+3+(N(z,d[ha>>0]|0)|0)<<2)>>2];h=a[q+(F+(a[ha>>0]&-2&255))>>0]|0}a[f+28272+(t*40|0)+11>>0]=h}else{n=0;while(1){if((n|0)==2)break d;i=n<<1;j=n<<4;h=j+-1|0;k=c[ba+(n<<2)>>2]|0;if(!(k&s)){c[p+(h<<2)>>2]=0;j=j|7;c[p+(j<<2)>>2]=0;i=k|0?-1:-2;a[o+j>>0]=i}else{la=c[aa+(n<<2)>>2]|0;na=(c[(c[E>>2]|0)+(la<<2)>>2]|0)+3|0;la=la<<2|1;ma=ha+i|0;c[p+(h<<2)>>2]=c[r+((N(z,d[ma>>0]|0)|0)+na<<2)>>2];i=ha+(i|1)|0;k=j|7;c[p+(k<<2)>>2]=c[r+((N(z,d[i>>0]|0)|0)+na<<2)>>2];a[o+h>>0]=a[q+(la+(a[ma>>0]&-2&255))>>0]|0;i=a[q+(la+(a[i>>0]&-2&255))>>0]|0;h=k}a[o+h>>0]=i;n=n+1|0}}while(0);if(!(s&_)){c[f+27952+(t*160|0)+32>>2]=0;h=G}else{c[f+27952+(t*160|0)+32>>2]=c[r+((c[(c[E>>2]|0)+(V<<2)>>2]|0)+v<<2)>>2];h=a[q+w>>0]|0}k=f+28272+(t*40|0)+8|0;a[k>>0]=h;j=f+28272+(t*40|0)+6|0;if((a[j>>0]|h)<<24>>24<0){if(!(s&Y)){c[f+27952+(t*160|0)+12>>2]=0;h=H}else{h=c[I>>2]|0;c[f+27952+(t*160|0)+12>>2]=c[r+(K+(c[(c[E>>2]|0)+(ja<<2)>>2]|0)+(h&J)<<2)>>2];h=a[q+(L|h&2|1)>>0]|0}a[f+28272+(t*40|0)+3>>0]=h}if(M){a[f+28272+(t*40|0)+30>>0]=-2;a[f+28272+(t*40|0)+14>>0]=-2;c[f+27952+(t*160|0)+56>>2]=0;c[f+27952+(t*160|0)+120>>2]=0;if(!(c[O>>2]|0))break}else if(!(c[O>>2]|0))break;if(!(c[P>>2]|0)){if(Q?(fa=f+28272+(t*40|0)+3|0,ga=a[fa>>0]|0,ga<<24>>24>-1):0){a[fa>>0]=(ga&255)>>>1;na=f+27952+(t*160|0)+14|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+7|0;a[na>>0]=d[na>>0]<<1}do if(!R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+18|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+9|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+22|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+11|0;a[na>>0]=d[na>>0]<<1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=(h&255)>>>1;na=f+27952+(t*160|0)+26|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+13|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+30|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+15|0;a[na>>0]=d[na>>0]<<1}while(0);if(!S?(ia=a[k>>0]|0,ia<<24>>24>-1):0){a[k>>0]=(ia&255)>>>1;na=f+27952+(t*160|0)+34|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+17|0;a[na>>0]=d[na>>0]<<1}do if(!T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+46|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+23|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+78|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+39|0;a[na>>0]=d[na>>0]<<1}while(0);if(u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+110|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+55|0;a[na>>0]=d[na>>0]<<1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=(i&255)>>>1;na=f+27952+(t*160|0)+142|0;b[na>>1]=b[na>>1]<<1;na=f+28352+(t*80|0)+71|0;a[na>>0]=d[na>>0]<<1;break}else{if(!Q?(ca=f+28272+(t*40|0)+3|0,da=a[ca>>0]|0,da<<24>>24>-1):0){a[ca>>0]=da<<24>>24<<1;na=f+27952+(t*160|0)+14|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+7|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(R){h=f+28272+(t*40|0)+4|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+18|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+9|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+5|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+22|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+11|0;a[na>>0]=(d[na>>0]|0)>>>1}h=a[j>>0]|0;if(h<<24>>24>-1){a[j>>0]=h<<24>>24<<1;na=f+27952+(t*160|0)+26|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+13|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+7|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+30|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+15|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(S?(ea=a[k>>0]|0,ea<<24>>24>-1):0){a[k>>0]=ea<<24>>24<<1;na=f+27952+(t*160|0)+34|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+17|0;a[na>>0]=(d[na>>0]|0)>>>1}do if(T){h=f+28272+(t*40|0)+11|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+46|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+23|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+19|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+78|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+39|0;a[na>>0]=(d[na>>0]|0)>>>1}while(0);if(!u)break;h=f+28272+(t*40|0)+27|0;i=a[h>>0]|0;if(i<<24>>24>-1){a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+110|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+55|0;a[na>>0]=(d[na>>0]|0)>>>1}h=f+28272+(t*40|0)+35|0;i=a[h>>0]|0;if(i<<24>>24<=-1)break;a[h>>0]=i<<24>>24<<1;na=f+27952+(t*160|0)+142|0;b[na>>1]=(b[na>>1]|0)/2|0;na=f+28352+(t*80|0)+71|0;a[na>>0]=(d[na>>0]|0)>>>1;break}}while(0);t=t+1|0}}while(0);c[f+21840>>2]=($>>>24&1)+(Z>>>24&1);l=ka;return}function Wk(a,b){a=a|0;b=b|0;var e=0,f=0;e=a+8|0;f=c[e>>2]|0;a=(c[a>>2]|0)+(f>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(f&7)>>>(32-b|0);c[e>>2]=f+b;return a|0}function Xk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))W(16);n=o+8|0;j=o;a:do if(!(e&32768)){e=0;while(1){if((e|0)>=4){k=8;break a}i=b+(e+12)|0;g=a[i>>0]|0;h=a[135520+g>>0]|0;if(249>>>g&1|0)break;if(253>>>g&1|0)a[i>>0]=h;e=e+1|0}c[j>>2]=h<<24>>24;ig(d,16,135532,j);e=-1094995529}else k=8;while(0);b:do if((k|0)==8)if((f&34952|0)==34952)e=0;else{e=0;while(1){if((e|0)>=4){e=0;break b}if(!(c[102680+(e<<2)>>2]&f)){g=b+((e<<3)+12)|0;h=a[g>>0]|0;i=a[135583+h>>0]|0;if(370>>>h&1|0)break;if(886>>>h&1|0)a[g>>0]=i}e=e+1|0}c[n>>2]=i<<24>>24;ig(d,16,135595,n);e=-1094995529}while(0);l=o;return e|0}function Yk(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i+16|0;g=i+8|0;do if(e>>>0<=3){if(!(c&32768)){c=a[135414+e>>0]|0;if((e|1|0)==3){ig(b,16,135418,g);c=-1094995529;break}}else c=e;e=d&32896;if((e|0)!=32896)if((c|2|0)==3){ig(b,16,135466,h);c=-1094995529;break}else{l=i;return ((e|0)==0|(f|0)==0?a[135515+c>>0]|0:8-(d>>>15&1)+(((c|0)==4&1)<<1)|0)|0}}else{ig(b,16,135377,i);c=-1094995529}while(0);l=i;return c|0}function Zk(a){a=a|0;var b=0,e=0;b=a+8|0;e=c[b>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>23;c[b>>2]=e+(d[122258+a>>0]|0);return d[122770+a>>0]|0|0}function _k(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[b+21844>>2]|0))hl(a,b,d);else gl(a,b,d);return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function al(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;f=b+8|0;g=c[f>>2]|0;b=c[b>>2]|0;e=b+(g>>>3)|0;e=(uX(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24|0)|0)<<(g&7);if(e>>>0>134217727){b=e>>>23;c[f>>2]=g+(d[122258+b>>0]|0);b=a[123282+b>>0]|0}else{i=e>>>0>65535;h=i?e>>>16:e;i=i?16:0;e=(h&65280|0)==0;h=(e?i:i|8)+(d[116289+(e?h:h>>>8)>>0]|0)|0;e=31-h+g|0;g=b+(e>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7)>>>h;c[f>>2]=32-h+e;b=g&1;b=(g>>>1^0-b)+b|0}return b|0}function bl(e,f,g,h,i,j,k,n){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+112|0;if((l|0)>=(m|0))W(112);A=B+32|0;x=B+24|0;v=B+16|0;u=B;z=B+40|0;w=(n|0)<9;do if(!w)if((i|0)>47){t=c[183188+(c[102584+((cl(f,(i<<4)+-768|0)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(uX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((uX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{t=c[183188+(c[102584+((cl(f,i)|0)<<2)>>2]<<4)+4>>2]|0;o=g+8|0;s=c[o>>2]|0;q=c[g>>2]|0;y=q+(s>>>3)|0;y=(uX(d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24|0)|0)<<(s&7)>>>24;p=b[t+(y<<2)>>1]|0;y=b[t+(y<<2)+2>>1]|0;r=y<<16>>16;if(y<<16>>16<0){y=s+8|0;q=q+(y>>>3)|0;p=((uX(d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24|0)|0)<<(y&7)>>>(r+32|0))+p|0;r=b[t+(p<<2)+2>>1]|0;q=y;p=b[t+(p<<2)>>1]|0}else q=s;q=r+q|0;break}else{q=(n|0)==4;y=q?c[45790]|0:c[45794]|0;o=g+8|0;t=c[o>>2]|0;p=(c[g>>2]|0)+(t>>>3)|0;p=(uX(d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24|0)|0)<<(t&7);q=p>>>(q?24:19);p=b[y+(q<<2)>>1]|0;q=t+(b[y+(q<<2)+2>>1]|0)|0}while(0);c[o>>2]=q;y=p>>2;a[(d[146491+i>>0]|0)+(f+27824)>>0]=y;a:do if(y){if(y>>>0>n>>>0){o=c[e+4>>2]|0;A=c[f+21792>>2]|0;c[u>>2]=c[f+21788>>2];c[u+4>>2]=A;c[u+8>>2]=y;ig(o,16,135269,u);o=-1;break}q=p&3;u=dl(g,3)|0;el(g,q);c[z>>2]=1-(u>>>1&2);c[z+4>>2]=1-(u&2);c[z+8>>2]=1-(u<<1&2);b:do if((q|0)<(y|0)){r=(q|0)!=3;p=(y|0)>10&r;s=p&1;t=dl(g,8)|0;u=a[259200+(s<<9)+(t<<1)>>0]|0;o=u<<24>>24;el(g,a[259200+(s<<9)+(t<<1)+1>>0]|0);if(u<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(fl(g)|0)+8|0;do if((o|0)<14){if(p)o=(Ok(g)|0)+(o<<1)|0}else{if((o|0)==14)if(p){o=(Ok(g)|0)+28|0;break}else{o=(Wk(g,4)|0)+14|0;break}do if((o|0)>15)if((o|0)>28){ig(c[e+4>>2]|0,16,135314,v);o=-1;break a}else{p=o+-3|0;o=(1<>1^0-o)+o|0}else{o=(r?o>>31|1:0)+o|0;p=(o+3|0)>>>0>6?2:1}c[z+(q<<2)>>2]=o;while(1){q=q+1|0;if((q|0)>=(y|0))break b;u=dl(g,8)|0;v=a[259200+(p<<9)+(u<<1)>>0]|0;o=v<<24>>24;el(g,a[259200+(p<<9)+(u<<1)+1>>0]|0);if(v<<24>>24>99){o=o+-100|0;if((o|0)==8)o=(fl(g)|0)+8|0;if((o|0)>=15){r=15<28)break;v=o+-3|0;o=r+-4096+(1<>1^0-o)+o|0}c[z+(q<<2)>>2]=o;v=c[102652+(p<<2)>>2]|0;p=p+((v+o|0)>>>0>v<<1>>>0&1)|0}ig(c[e+4>>2]|0,16,135314,x);o=-1094995529;break a}while(0);if((y|0)==(n|0))o=0;else{do if(w)if((n|0)==4){o=29;p=183252+(y<<4)+4|0;break}else{o=27;p=183316+(y<<4)+4|0;break}else{o=23;p=183444+(y<<4)+4|0}while(0);n=c[p>>2]|0;x=g+8|0;v=c[x>>2]|0;w=(c[g>>2]|0)+(v>>>3)|0;w=(uX(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24|0)|0)<<(v&7)>>>o;o=b[n+(w<<2)>>1]|0;c[x>>2]=v+(b[n+(w<<2)+2>>1]|0)}q=j+(y+-1+o)|0;p=(i|0)>47;r=c[z>>2]|0;c:do if(!(c[e+25664>>2]|0))if(p){b[h+(d[q>>0]<<1)>>1]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183700+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(uX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45954]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(uX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((uX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;b[h+(d[k>>0]<<1)>>1]=c[z+(p<<2)>>2];o=o-s|0;q=k;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;b[h+(d[g>>0]<<1)>>1]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;b[h+(n<<1)>>1]=((N(c[k+(n<<2)>>2]|0,r)|0)+32|0)>>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183700+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(uX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45954]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(uX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((uX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;b[h+(j<<1)>>1]=((N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;o=o-s|0;q=i;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;b[h+(i<<1)>>1]=((N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32|0)>>>6;q=g;p=p+1|0}}else if(p){c[h+(d[q>>0]<<2)>>2]=r;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){k=c[183700+(o<<4)+4>>2]|0;i=c[n>>2]|0;r=(c[g>>2]|0)+(i>>>3)|0;r=(uX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(i&7)>>>29;s=b[k+(r<<2)>>1]|0;r=i+(b[k+(r<<2)+2>>1]|0)|0}else{v=c[45954]|0;u=c[n>>2]|0;s=c[g>>2]|0;k=s+(u>>>3)|0;k=(uX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(k<<2)>>1]|0;k=b[v+(k<<2)+2>>1]|0;t=k<<16>>16;if(k<<16>>16<0){u=u+6|0;k=s+(u>>>3)|0;r=((uX(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;k=q+~s|0;c[h+(d[k>>0]<<2)>>2]=c[z+(p<<2)>>2];q=k;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;c[h+(d[g>>0]<<2)>>2]=c[z+(p<<2)>>2];q=g;p=p+1|0}}else{n=d[q>>0]|0;c[h+(n<<2)>>2]=(N(c[k+(n<<2)>>2]|0,r)|0)+32>>6;n=g+8|0;p=1;while(1){if(!((p|0)<(y|0)&(o|0)>0))break;if((o|0)<7){i=c[183700+(o<<4)+4>>2]|0;j=c[n>>2]|0;r=(c[g>>2]|0)+(j>>>3)|0;r=(uX(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24|0)|0)<<(j&7)>>>29;s=b[i+(r<<2)>>1]|0;r=j+(b[i+(r<<2)+2>>1]|0)|0}else{v=c[45954]|0;u=c[n>>2]|0;s=c[g>>2]|0;i=s+(u>>>3)|0;i=(uX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>26;r=b[v+(i<<2)>>1]|0;i=b[v+(i<<2)+2>>1]|0;t=i<<16>>16;if(i<<16>>16<0){u=u+6|0;i=s+(u>>>3)|0;r=((uX(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24|0)|0)<<(u&7)>>>(t+32|0))+r|0;t=b[v+(r<<2)+2>>1]|0;r=b[v+(r<<2)>>1]|0}s=r;r=t+u|0}c[n>>2]=r;i=q+~s|0;j=d[i>>0]|0;c[h+(j<<2)>>2]=(N(c[k+(j<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=i;o=o-s|0;p=p+1|0}while(1){if((p|0)>=(y|0))break c;g=q+-1|0;i=d[g>>0]|0;c[h+(i<<2)>>2]=(N(c[k+(i<<2)>>2]|0,c[z+(p<<2)>>2]|0)|0)+32>>6;q=g;p=p+1|0}}while(0);if((o|0)<0){o=c[e+4>>2]|0;e=c[f+21792>>2]|0;c[A>>2]=c[f+21788>>2];c[A+4>>2]=e;ig(o,16,135336,A);o=-1}else o=0}else o=0;while(0);l=B;return o|0}function cl(a,b){a=a|0;b=b|0;b=d[146491+b>>0]|0;b=(d[b+-8+(a+27824)>>0]|0)+(d[b+-1+(a+27824)>>0]|0)|0;return (b>>>0<64?(b+1|0)>>>1:b)&31|0}function dl(a,b){a=a|0;b=b|0;var e=0;e=c[a+8>>2]|0;a=(c[a>>2]|0)+(e>>>3)|0;return (uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(e&7)>>>(32-b|0)|0}function el(a,b){a=a|0;b=b|0;a=a+8|0;c[a>>2]=(c[a>>2]|0)+b;return}function fl(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+8|0;e=c[b>>2]|0;g=(c[a>>2]|0)+(e>>>3)|0;g=(uX(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)|0)<<(e&7);a=g>>>0>65535;g=a?g>>>16:g;a=a?16:0;f=(g&65280|0)==0;a=32-(d[116289+(f?g:g>>>8)>>0]|0)-(f?a:a|8)|0;c[b>>2]=a+e;return a+-1|0}function gl(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=l;l=l+32|0;if((l|0)>=(m|0))W(32);E=V+16|0;D=V+8|0;y=V;A=c[f+26368>>2]|0;k=c[g+21796>>2]|0;C=g+21792|0;r=c[C>>2]|0;U=c[h>>2]|0;T=U&64;B=g+25336|0;il(f,B,(U>>>7&1)+r|0);U=(T|0)==0;i=61440;w=0;while(1){if((w|0)==2)break;o=a[g+28272+(w*40|0)+11>>0]|0;u=a[g+28272+(w*40|0)+4>>0]|0;j=a[g+28272+(w*40|0)+8>>0]|0;if(j<<24>>24==-2){s=a[g+28272+(w*40|0)+3>>0]|0;t=g+27952+(w*160|0)+12|0}else{s=j<<24>>24;t=g+27952+(w*160|0)+32|0}v=o>>>0>u>>>0?u:o;j=v>>>0>s>>>0?s:v;n=D+(w<<2)|0;c[n>>2]=j;if((j|0)>-1){p=g+27952+(w*160|0)+44|0;q=g+27952+(w*160|0)+16|0;n=(j|0)==(o|0);j=(j|0)==(u|0);do if(((j&1)+(s>>>0<=v>>>0&1)+(n&1)|0)>>>0<=1){if(n){j=c[p>>2]|0;break}if(j){j=c[q>>2]|0;break}else{j=c[t>>2]|0;break}}else{j=jl(b[p>>1]|0,b[q>>1]|0,b[t>>1]|0)|0;j=(jl(b[g+27952+(w*160|0)+46>>1]|0,b[g+27952+(w*160|0)+18>>1]|0,b[t+2>>1]|0)|0)<<16|j&65535}while(0);c[y+(w<<2)>>2]=j}else{j=~(12288<<(w<<1));c[y+(w<<2)>>2]=0;c[n>>2]=-1;if(U)c[h>>2]=c[h>>2]&j;i=i&j}w=w+1|0}j=c[D>>2]|0;if((j|0)<0?(x=D+4|0,(c[x>>2]|0)<0):0){c[x>>2]=0;c[D>>2]=0;if(U)c[h>>2]=c[h>>2]|61440;u=i|61440;w=0}else{u=i;w=j}i=c[y>>2]|0;j=c[y+4>>2]|0;do if(i|T|j){S=g+25372|0;t=c[(c[S>>2]|0)+48>>2]|0;q=c[t+(k<<2)>>2]|0;v=c[h>>2]|0;n=(v&128|0)!=0;do if(!(q&128))if(n){s=c[C>>2]&-2;p=c[f+27016>>2]|0;k=N(s,p)|0;k=k+(c[g+21788>>2]|0)|0;q=c[t+(k<<2)>>2]|0;c[E>>2]=q;n=c[t+(p+k<<2)>>2]|0;o=E+4|0;c[o>>2]=n;p=p<<2|2;r=A*6|0;if((q^n)&128){q=q&-129;c[E>>2]=q;n=n&-129;c[o>>2]=n}o=u|264;if(q&15|0?!((T|0)!=0|(n&15|0)==0):0){Q=r;r=s;t=o;n=272;break}Q=r;r=s;t=o;n=64}else{p=2;R=36}else{if(n){o=c[g+21852>>2]|0;p=2;q=o+r|0;n=c[f+27016>>2]|0}else{n=(c[C>>2]&-2)+(c[g+21848>>2]|0)|0;p=0;q=n;k=c[g+21788>>2]|0;o=c[f+27016>>2]|0}R=k+(N(n,o)|0)|0;k=R;r=q;q=c[t+(R<<2)>>2]|0;R=36}while(0);do if((R|0)==36){c[E+4>>2]=q;c[E>>2]=q;o=u|264;n=(T|0)!=0;if(n|(q&15|0)==0){if(!n?(z=q&48,z|0):0){Q=A;t=o;n=z|256;break}Q=A;t=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?o+56|0:o;n=64}else{Q=A;t=o;n=264}}while(0);c[h>>2]=v|n;il(f,B,r);s=c[S>>2]|0;o=c[(c[f+26360>>2]|0)+(k<<2)>>2]|0;n=(c[s+36>>2]|0)+(o<<2)|0;o=(c[s+40>>2]|0)+(o<<2)|0;r=k<<2;k=(c[s+68>>2]|0)+r|0;r=(c[s+72>>2]|0)+r|0;if(!p){M=(c[C>>2]&1|0)==0;O=Q<<1;P=M?n:n+(O<<2)|0;o=M?o:o+(O<<2)|0;O=M?k:k+2|0;r=M?r:r+2|0}else{P=n;O=k}k=c[h>>2]|0;if((q^k)&128|0){z=t&65535;A=(w&255)*257&65535;v=c[D+4>>2]|0;y=(v&255)*257&65535;x=(w|0)>0?i:0;v=(v|0)>0?j:0;k=0;w=0;while(1){if((w|0)==4)break;t=w&1;q=w>>1;s=(N(q,p)|0)+t|0;t=(0-t&3)+(N(q,Q)|0)|0;n=g+28552+(w<<1)|0;if(!(!U?(b[n>>1]&256)==0:0)){b[n>>1]=z;u=d[146491+(w<<2)>>0]|0;R=g+28272+u|0;b[R>>1]=A;b[R+8>>1]=A;R=g+28312+u|0;b[R>>1]=y;b[R+8>>1]=y;do if((c[E+(q<<2)>>2]&7|0)==0?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+s>>0]|0;if(!(n<<24>>24)){M=b[P+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[P+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}else{if(n<<24>>24>=0){n=j;q=i;break}if(a[r+s>>0]|0){n=j;q=i;break}M=b[o+(t<<2)>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}M=b[o+(t<<2)+2>>1]|0;R=M<<16>>16;if(((M<<16>>16>-1?R:0-R|0)|0)>=2){n=j;q=i;break}}n=v;q=x;k=k+1|0}else{n=j;q=i}while(0);R=g+27952+(u<<2)|0;c[R>>2]=q;c[R+4>>2]=q;c[R+32>>2]=q;c[R+36>>2]=q;R=g+28112+(u<<2)|0;c[R>>2]=n;c[R+4>>2]=n;c[R+32>>2]=n;c[R+36>>2]=n}w=w+1|0}if(k&3|T|0)break;c[h>>2]=c[h>>2]&-41337|264;break}if(k&8|0){n=N(w&255,16843009)|0;c[g+28284>>2]=n;c[g+28292>>2]=n;c[g+28300>>2]=n;c[g+28308>>2]=n;n=c[D+4>>2]|0;h=N(n&255,16843009)|0;c[g+28324>>2]=h;c[g+28332>>2]=h;c[g+28340>>2]=h;c[g+28348>>2]=h;do if((q&7|0)==0?(c[s+100>>2]|0)==0:0){k=a[O>>0]|0;if(!(k<<24>>24)){U=b[P>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[P+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break}else{if(k<<24>>24>=0)break;if(a[r>>0]|0)break;U=b[o>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;U=b[o+2>>1]|0;h=U<<16>>16;if(((U<<16>>16>-1?h:0-h|0)|0)>=2)break;if((c[f+25704>>2]|0)>>>0<=33)break}j=(n|0)>0?j:0;i=(w|0)>0?i:0}while(0);c[g+28e3>>2]=i;c[g+28004>>2]=i;c[g+28008>>2]=i;c[g+28012>>2]=i;c[g+28032>>2]=i;c[g+28036>>2]=i;c[g+28040>>2]=i;c[g+28044>>2]=i;c[g+28064>>2]=i;c[g+28068>>2]=i;c[g+28072>>2]=i;c[g+28076>>2]=i;c[g+28096>>2]=i;c[g+28100>>2]=i;c[g+28104>>2]=i;c[g+28108>>2]=i;c[g+28160>>2]=j;c[g+28164>>2]=j;c[g+28168>>2]=j;c[g+28172>>2]=j;c[g+28192>>2]=j;c[g+28196>>2]=j;c[g+28200>>2]=j;c[g+28204>>2]=j;c[g+28224>>2]=j;c[g+28228>>2]=j;c[g+28232>>2]=j;c[g+28236>>2]=j;c[g+28256>>2]=j;c[g+28260>>2]=j;c[g+28264>>2]=j;c[g+28268>>2]=j;break}L=t&65535;M=(w&255)*257&65535;G=c[D+4>>2]|0;K=(G&255)*257&65535;J=(q&7|0)==0;H=(t&8|0)==0;I=Q*3|0;F=(w|0)==0;G=(G|0)==0;E=f+25704|0;k=0;f=0;while(1){if((f|0)==4)break;q=f&1;s=f>>1;C=g+28552+(f<<1)|0;if(!(!U?(b[C>>1]&256)==0:0))R=79;do if((R|0)==79){R=0;b[C>>1]=L;D=f<<2;B=d[146491+D>>0]|0;t=g+27952+(B<<2)|0;c[t>>2]=i;u=t+4|0;c[u>>2]=i;v=t+32|0;c[v>>2]=i;w=t+36|0;c[w>>2]=i;x=g+28112+(B<<2)|0;c[x>>2]=j;y=x+4|0;c[y>>2]=j;z=x+32|0;c[z>>2]=j;A=x+36|0;c[A>>2]=j;p=g+28272+B|0;b[p>>1]=M;b[p+8>>1]=M;B=g+28312+B|0;b[B>>1]=K;b[B+8>>1]=K;if(J?(c[(c[S>>2]|0)+100>>2]|0)==0:0){n=a[O+f>>0]|0;p=n<<24>>24==0;if(!p){if(n<<24>>24>=0)break;if(a[r+f>>0]|0)break;if((c[E>>2]|0)>>>0<=33)break}B=p?P:o;if(!H){n=(N(I,s)|0)+(0-q&3)|0;C=b[B+(n<<2)>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;C=b[B+(n<<2)+2>>1]|0;D=C<<16>>16;if(((C<<16>>16>-1?D:0-D|0)|0)>=2)break;if(F){c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0}if(G){c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0}k=k+4|0;break}t=q<<1;s=s<<1;n=0;q=0;while(1){if((q|0)==4)break;p=(N((q>>1)+s|0,Q)|0)+(q&1|t)|0;z=b[B+(p<<2)>>1]|0;A=z<<16>>16;if(((z<<16>>16>-1?A:0-A|0)|0)<2?(z=b[B+(p<<2)+2>>1]|0,A=z<<16>>16,((z<<16>>16>-1?A:0-A|0)|0)<2):0){if(F)c[g+27952+(d[146491+(q+D)>>0]<<2)>>2]=0;if(G)c[g+28112+(d[146491+(q+D)>>0]<<2)>>2]=0;n=n+1|0}q=q+1|0}if(!(n&3))b[C>>1]=(e[C>>1]|0)+65480;k=n+k|0}}while(0);f=f+1|0}if(!(k&15|T))c[h>>2]=c[h>>2]&-41337|264}else{O=N(w&255,16843009)|0;c[g+28284>>2]=O;c[g+28292>>2]=O;c[g+28300>>2]=O;c[g+28308>>2]=O;O=N(c[D+4>>2]&255,16843009)|0;c[g+28324>>2]=O;c[g+28332>>2]=O;c[g+28340>>2]=O;c[g+28348>>2]=O;O=g+28e3|0;P=g+28032|0;Q=g+28064|0;R=g+28096|0;S=g+28160|0;T=g+28192|0;U=g+28224|0;g=g+28256|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;c[O+12>>2]=0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;c[Q>>2]=0;c[Q+4>>2]=0;c[Q+8>>2]=0;c[Q+12>>2]=0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;c[S+12>>2]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[h>>2]=c[h>>2]&-41337|264}while(0);l=V;return}function hl(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=l;l=l+16|0;if((l|0)>=(m|0))W(16);E=H;s=c[f+26368>>2]|0;i=c[g+21796>>2]|0;w=g+21792|0;o=c[w>>2]|0;u=c[h>>2]|0;x=u&64;t=g+25336|0;il(f,t,(u>>>7&1)+o|0);u=g+25372|0;r=c[(c[u>>2]|0)+48>>2]|0;k=c[r+(i<<2)>>2]|0;v=c[h>>2]|0;j=(v&128|0)!=0;do if(!(k&128))if(j){q=c[w>>2]&-2;n=c[f+27016>>2]|0;p=(N(n,q)|0)+(c[g+21788>>2]|0)|0;k=c[r+(p<<2)>>2]|0;c[E>>2]=k;i=c[r+(n+p<<2)>>2]|0;j=E+4|0;c[j>>2]=i;n=n<<2|2;o=s*6|0;if((k^i)&128){k=k&-129;c[E>>2]=k;i=i&-129;c[j>>2]=i}if(k&15|0?!((x|0)!=0|(i&15|0)==0):0){G=o;i=p;o=q;r=20744;j=61712;q=k;break}G=o;i=p;o=q;r=20744;j=61504;q=k}else{n=2;F=12}else{if(j){k=c[g+21852>>2]|0;n=2;o=k+o|0;j=c[f+27016>>2]|0}else{j=(c[w>>2]&-2)+(c[g+21848>>2]|0)|0;n=0;o=j;i=c[g+21788>>2]|0;k=c[f+27016>>2]|0}k=i+(N(j,k)|0)|0;i=k;k=c[r+(k<<2)>>2]|0;F=12}while(0);do if((F|0)==12){c[E+4>>2]=k;c[E>>2]=k;j=(x|0)!=0;if(j|(k&15|0)==0){if(!j?(p=k&48,p|0):0){G=s;r=20744;j=p|61696;q=k;break}G=s;r=(c[(c[f+28216>>2]|0)+72>>2]|0)==0?20800:20744;j=61504;q=k}else{G=s;r=20744;j=20744;q=k}}while(0);c[h>>2]=v|j;il(f,t,o);p=c[u>>2]|0;k=c[(c[f+26360>>2]|0)+(i<<2)>>2]|0;j=(c[p+36>>2]|0)+(k<<2)|0;k=(c[p+40>>2]|0)+(k<<2)|0;o=i<<2;i=(c[p+68>>2]|0)+o|0;o=(c[p+72>>2]|0)+o|0;if(!n){B=(c[w>>2]&1|0)==0;C=G<<1;D=B?j:j+(C<<2)|0;C=B?k:k+(C<<2)|0;A=B?i:i+2|0;o=B?o:o+2|0}else{D=j;C=k;A=i}k=c[h>>2]|0;if((c[f+26376>>2]|0)==0|(k&128|0)==0){B=g+21868|0;j=g+22252|0;y=g+22444|0}else{y=c[w>>2]&1;B=g+21996+(y<<7)|0;j=g+22636+(y*384|0)|0;y=g+22636+(y*384|0)+192|0}z=q>>3&c[p+632>>2]<<4;i=k&128;a:do if((i|0)==(q&128|0)){if(k&8|0){c[g+28324>>2]=0;c[g+28332>>2]=0;c[g+28340>>2]=0;c[g+28348>>2]=0;if(!(q&7)){i=a[A>>0]|0;k=i<<24>>24>-1;if(!k){j=y;i=a[o>>0]|0}G=c[j+(z+(i<<24>>24)<<2)>>2]|0;E=c[B+(G<<2)>>2]|0;F=k?D:C;i=b[F>>1]|0;j=(N(E,i)|0)+128>>8;F=b[F+2>>1]|0;k=(N(E,F)|0)+128>>8;i=k-F<<16|j-i&65535;j=k<<16|j&65535;k=N(G,16843009)|0}else{i=0;j=0;k=0}c[g+28284>>2]=k;c[g+28292>>2]=k;c[g+28300>>2]=k;c[g+28308>>2]=k;c[g+28e3>>2]=j;c[g+28004>>2]=j;c[g+28008>>2]=j;c[g+28012>>2]=j;c[g+28032>>2]=j;c[g+28036>>2]=j;c[g+28040>>2]=j;c[g+28044>>2]=j;c[g+28064>>2]=j;c[g+28068>>2]=j;c[g+28072>>2]=j;c[g+28076>>2]=j;c[g+28096>>2]=j;c[g+28100>>2]=j;c[g+28104>>2]=j;c[g+28108>>2]=j;c[g+28160>>2]=i;c[g+28164>>2]=i;c[g+28168>>2]=i;c[g+28172>>2]=i;c[g+28192>>2]=i;c[g+28196>>2]=i;c[g+28200>>2]=i;c[g+28204>>2]=i;c[g+28224>>2]=i;c[g+28228>>2]=i;c[g+28232>>2]=i;c[g+28236>>2]=i;c[g+28256>>2]=i;c[g+28260>>2]=i;c[g+28264>>2]=i;c[g+28268>>2]=i;break}w=(x|0)==0;x=r&65535;h=(r&8|0)==0;f=G*3|0;v=(q&7|0)==0;u=0;while(1){if((u|0)==4)break a;q=u&1;r=u>>1;i=g+28552+(u<<1)|0;if(!(!w?!(b[i>>1]&256):0))F=43;b:do if((F|0)==43){F=0;b[i>>1]=x;t=u<<2;n=d[146491+t>>0]|0;E=g+28312+n|0;b[E>>1]=0;b[E+8>>1]=0;if(!v){E=g+28272+n|0;b[E>>1]=0;b[E+8>>1]=0;E=g+27952+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;E=g+28112+(n<<2)|0;c[E>>2]=0;c[E+4>>2]=0;c[E+32>>2]=0;c[E+36>>2]=0;break}i=a[A+u>>0]|0;if(i<<24>>24>-1){s=D;k=j}else{s=C;i=a[o+u>>0]|0;k=y}k=c[k+(z+(i<<24>>24)<<2)>>2]|0;p=c[B+(k<<2)>>2]|0;E=g+28272+n|0;k=k*257&65535;b[E>>1]=k;b[E+8>>1]=k;if(!h){q=(N(f,r)|0)+(0-q&3)|0;t=b[s+(q<<2)>>1]|0;r=(N(p,t<<16>>16)|0)+128>>8;s=b[s+(q<<2)+2>>1]|0;q=(N(p,s<<16>>16)|0)+128>>8;E=g+27952+(n<<2)|0;p=q<<16|r&65535;c[E>>2]=p;c[E+4>>2]=p;c[E+32>>2]=p;c[E+36>>2]=p;E=g+28112+(n<<2)|0;t=q-(s&65535)<<16|r-(t&65535)&65535;c[E>>2]=t;c[E+4>>2]=t;c[E+32>>2]=t;c[E+36>>2]=t;break}n=q<<1;k=r<<1;i=0;while(1){if((i|0)==4)break b;I=(N((i>>1)+k|0,G)|0)+(i&1|n)|0;r=s+(I<<2)|0;E=d[146491+(i+t)>>0]|0;q=((N(p,b[r>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)>>1]=q;I=s+(I<<2)+2|0;J=((N(p,b[I>>1]|0)|0)+128|0)>>>8;b[g+27952+(E<<2)+2>>1]=J;c[g+28112+(E<<2)>>2]=J-(e[I>>1]|0)<<16|q-(e[r>>1]|0)&65535;i=i+1|0}}while(0);u=u+1|0}}else{h=i>>>6^2;v=(x|0)==0;u=r&65535;t=0;while(1){if((t|0)==4)break a;q=t&1;r=t>>1;i=g+28552+(t<<1)|0;if(!(!v?!(b[i>>1]&256):0)){b[i>>1]=u;s=d[146491+(t<<2)>>0]|0;J=g+28312+s|0;b[J>>1]=0;b[J+8>>1]=0;if(!(c[E+(r<<2)>>2]&7)){k=(N(r,n)|0)+q|0;i=a[A+k>>0]|0;if(i<<24>>24>-1){p=D;k=j}else{p=C;i=a[o+k>>0]|0;k=y}i=c[k+(z+(i<<24>>24)<<2)>>2]|0;J=c[B+(i<<2)>>2]|0;I=g+28272+s|0;i=i*257&65535;b[I>>1]=i;b[I+8>>1]=i;I=(0-q&3)+(N(r,G)|0)|0;i=(b[p+(I<<2)+2>>1]<>1]|0;F=(N(J,I<<16>>16)|0)+128>>8;J=(N(i,J)|0)+128>>8;x=g+27952+(s<<2)|0;w=J<<16|F&65535;c[x>>2]=w;c[x+4>>2]=w;c[x+32>>2]=w;c[x+36>>2]=w;i=F-(I&65535)&65535|J-i<<16}else{i=g+28272+s|0;b[i>>1]=0;b[i+8>>1]=0;i=g+27952+(s<<2)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+32>>2]=0;c[i+36>>2]=0;i=0}J=g+28112+(s<<2)|0;c[J>>2]=i;c[J+4>>2]=i;c[J+32>>2]=i;c[J+36>>2]=i}t=t+1|0}}while(0);l=H;return}function il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b+36>>2]|0;f=c[e+636>>2]|0;if(c[(c[a+4>>2]|0)+696>>2]&1|0){a=c[a+27008>>2]<<4>>f;d=d<<4>>f;kj(e+4|0,(d|0)<(a|0)?d:a+-1|0,(f|0?(c[b+24>>2]|0)!=1:0)&1)}return}function jl(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)>(b|0))return ((c|0)>(b|0)?((c|0)>(a|0)?a:c):b)|0;else return ((b|0)>(c|0)?((c|0)>(a|0)?c:a):b)|0;return 0}function kl(a){a=a|0;return c[a+8>>2]|0}function ll(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=ml(d,32)|0;l=b;return a|0}function ml(a,b){a=a|0;b=b|0;var c=0;do if(b)if((b|0)<26){a=Wk(a,b)|0;break}else{b=b+-16|0;c=(Wk(a,16)|0)<=(m|0))W(32);h=n;i=c[a+4>>2]|0;j=c[a+24316>>2]|0;b=d[(Dh(c[i+112>>2]|0)|0)+6>>0]|0;g=c[a+26380>>2]|0;p=(g|0)!=3;r=p&1;q=f<>2]|0)-f|0;e=(q|0)>(e|0)?e:q;if(!((p?(c[a+26384>>2]|0)!=0:0)?!(c[i+240>>2]&2|0):0))k=4;if((k|0)==4?(o=c[i+116>>2]|0,o|0):0){c[h>>2]=N(c[j+32>>2]|0,f)|0;b=N(c[j+36>>2]|0,f>>b)|0;c[h+8>>2]=b;c[h+4>>2]=b;b=3;while(1){if((b|0)==8)break;c[h+(b<<2)>>2]=0;b=b+1|0}Vd[o&63](i,j,h,f,g,e)}l=n;return}function ol(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;e=c[d>>2]|0;b=(e+-256|0)>>>31;c[d>>2]=e<>2]<>2]=b;if(!(b&65535))pl(a);return}function pl(a){a=a|0;var b=0,e=0;b=a+16|0;e=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+-65535+((d[e+1>>0]|0)<<1|(d[e>>0]|0)<<9);if(e>>>0<(c[a+20>>2]|0)>>>0)c[b>>2]=e+2;return}function ql(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;ka=l;l=l+48|0;if((l|0)>=(m|0))W(48);_=ka+20|0;Y=ka;ja=ka+8|0;ca=g+21788|0;k=c[ca>>2]|0;aa=g+21792|0;q=c[aa>>2]|0;$=g+21796|0;n=c[$>>2]|0;da=c[(c[f+24364>>2]|0)+(n<<2)>>2]|0;p=f+25976|0;X=g+848|0;if(!(c[X>>2]|0))ha=(c[(c[f+28216>>2]|0)+16>>2]|0)!=0;else ha=0;i=f+24316|0;ia=f+25664|0;o=g+21772|0;j=f+12|0;h=0;while(1){if((h|0)==3)break;Z=c[ia>>2]|0;fa=c[o>>2]|0;V=(c[(c[i>>2]|0)+(h<<2)>>2]|0)+((N(fa,q)|0)+(k<>2]=V;Z=V+(N(c[ca>>2]<<2&12,fa)|0)+(64<>2]&1023](Z,fa,4);h=h+1|0}r=g+23412|0;a[(c[f+26388>>2]|0)+n>>0]=c[r>>2];Z=g+21828|0;h=c[o>>2]|0;a:do if(c[Z>>2]|0){o=h<<1;c[g+21784>>2]=o;c[g+21780>>2]=o;p=f+26168|0;b:do if(q&1|0){i=N(h,-15)|0;h=0;while(1){if((h|0)==3)break b;fa=ja+(h<<2)|0;c[fa>>2]=(c[fa>>2]|0)+i;h=h+1|0}}while(0);if(!(c[f+26376>>2]|0))fa=o;else{j=(da&8|0)==0;i=0;while(1){if(i>>>0>=(c[r>>2]|0)>>>0){fa=o;break a}c:do if(12288<<(i<<1)&da|0){if(j)h=0;else{V=g+28272+(i*40|0)+12|0;fa=N((a[V>>0]|0)+16^c[aa>>2]&1,16843009)|0;c[V>>2]=fa;c[g+28272+(i*40|0)+20>>2]=fa;c[g+28272+(i*40|0)+28>>2]=fa;c[g+28272+(i*40|0)+36>>2]=fa;break}while(1){if((h|0)>=16)break c;k=(d[146491+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){fa=(c[aa>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=fa;b[k+8>>1]=fa}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21784>>2]=h;c[g+21780>>2]=h;fa=h}while(0);d:do if(!(da&4)){e:do if(da&7){V=g+868|0;i=c[V>>2]|0;f:do if(i|0){j=c[ja>>2]|0;k=c[ja+4>>2]|0;n=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(h){h=1;break}else break f;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=j+z|0;x=k+z|0;z=n+z|0;A=g+27796+(h<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i|0){n=(B|0)==0;do if(u){h=(8<>2]|0;T=c[T+4>>2]|0;i=s+(-7<>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(n){h=k;i=s+1|0;q=0;j=c[h>>2]|0;h=c[h+4>>2]|0;n=1;break}else{T=h+8|0;n=T;j=c[n>>2]|0;n=c[n+4>>2]|0;h=i+8|0;U=h;ea=c[U+4>>2]|0;i=T;c[i>>2]=c[U>>2];c[i+4>>2]=ea;c[h>>2]=j;c[h+4>>2]=n;h=k;n=1<>2]|0;h=c[h+4>>2]|0;ea=56;break}}else{h=k;j=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[k>>2]=c[ea>>2];c[k+4>>2]=q;k=i;c[k>>2]=j;c[k+4>>2]=h;k=v+(w*96|0)+8|0;h=k;i=s+n+8|0;q=1;j=c[h>>2]|0;h=c[h+4>>2]|0}o=i;T=c[o+4>>2]|0;U=k;c[U>>2]=c[o>>2];c[U+4>>2]=T;U=i;c[U>>2]=j;c[U+4>>2]=h;h=(8<>2]|0;U=c[U+4>>2]|0;o=9<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}h=(c[ca>>2]|0)+1|0;r=f+27012|0;if((h|0)<(c[r>>2]|0)?(ea=(c[A>>2]|0)+(h*96|0)|0,U=ea,T=c[U>>2]|0,U=c[U+4>>2]|0,C=s+(17<>2]|0,ea,c[ea>>2]=c[R>>2],c[ea+4>>2]=S,ea=C,c[ea>>2]=T,c[ea+4>>2]=U,q):0){S=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=C+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}if(u){h=(24<>2]|0;U=c[U+4>>2]|0;j=-7<>2]|0;ea=h;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=i;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=h+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=i+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U}i=(40<>2]|0;U=c[U+4>>2]|0;h=z+j|0;R=h;S=c[R+4>>2]|0;ea=i;c[ea>>2]=c[R>>2];c[ea+4>>2]=S;ea=h;c[ea>>2]=T;c[ea+4>>2]=U;if(q){S=i+8|0;U=S;T=c[U>>2]|0;U=c[U+4>>2]|0;ea=h+8|0;Q=ea;R=c[Q+4>>2]|0;c[S>>2]=c[Q>>2];c[S+4>>2]=R;c[ea>>2]=T;c[ea+4>>2]=U;ea=68}else ea=69}else if(q)ea=68;else ea=69;if((ea|0)==68){i=(16<>2]|0;U=c[U+4>>2]|0;h=x+n|0;R=h;S=c[R+4>>2]|0;k=i;c[k>>2]=c[R>>2];c[k+4>>2]=S;k=h;c[k>>2]=T;c[k+4>>2]=U;h=h+8|0;i=i+8|0;k=1}else if((ea|0)==69){h=x+n|0;i=(16<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;c[h>>2]=S;c[h+4>>2]=T;h=(24<>2]|0;T=c[T+4>>2]|0;i=x+o|0;Q=i;R=c[Q+4>>2]|0;U=h;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=i;c[U>>2]=S;c[U+4>>2]=T;if(k){h=h+8|0;T=h;S=c[T>>2]|0;T=c[T+4>>2]|0;i=i+8|0;R=i;Q=c[R+4>>2]|0;c[h>>2]=c[R>>2];c[h+4>>2]=Q;c[i>>2]=S;c[i+4>>2]=T;i=(32<>2]|0;T=c[T+4>>2]|0;h=z+n|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;h=h+8|0;i=i+8|0}else{h=z+n|0;i=(32<>2]|0;T=c[T+4>>2]|0;R=h;Q=c[R+4>>2]|0;c[i>>2]=c[R>>2];c[i+4>>2]=Q;i=h;c[i>>2]=S;c[i+4>>2]=T;i=(40<>2]|0;T=c[T+4>>2]|0;h=z+o|0;Q=h;R=c[Q+4>>2]|0;U=i;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}h=(c[ca>>2]|0)+1|0;if((h|0)<(c[r>>2]|0)){i=16<>2]|0)+(h*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;j=17<>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}i=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i|0;T=U;S=c[T>>2]|0;T=c[T+4>>2]|0;h=z+j|0;Q=h;R=c[Q+4>>2]|0;c[U>>2]=c[Q>>2];c[U+4>>2]=R;U=h;c[U>>2]=S;c[U+4>>2]=T;if(k){R=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+i+8|0;T=R;S=c[T>>2]|0;T=c[T+4>>2]|0;U=h+8|0;P=U;Q=c[P+4>>2]|0;c[R>>2]=c[P>>2];c[R+4>>2]=Q;c[U>>2]=S;c[U+4>>2]=T}}}}while(0);h=da&1;A=(h|0)==0;F=g+21660|0;B=f+132|0;C=f+28212|0;T=da&16777216;D=(T|0)==0;H=f+144|0;G=f+28216|0;I=g+21764|0;J=3-fa|0;K=3-((fa|0)/2|0)|0;L=0-fa|0;E=g+28560|0;M=f+108|0;O=f+100|0;U=f+140|0;P=f+25704|0;Q=g+21756|0;R=f+112|0;S=f+104|0;z=0;while(1){if((z|0)==3)break;x=c[ia>>2]|0;u=c[ja+(z<<2)>>2]|0;i=c[((z|0)==0?X:g+852+(z+-1<<2)|0)>>2]|0;v=z<<4;w=p+(v<<2)|0;g:do if(A){Rd[c[f+25888+(c[F>>2]<<2)>>2]&255](u,fa);if(a[(d[146491+(z+48)>>0]|0)+(g+27824)>>0]|0){if(!ha){Sd[c[B>>2]&1023](g+28560+(z<<8<>2]|0)+173788+(z<<2)>>2]|0)+(i<<6)>>2]|0);break}o=g+28560+(z<<8<>0]|0;if(j)b[o+(n<<1)>>1]=b[g+31632+(z<<6)+(i<<1)>>1]|0;else c[o+(n<<2)>>2]=c[k+(i<<2)>>2];i=i+1|0}}}else{if(!D){if(ha){n=c[U>>2]|0;k=n}else{k=c[S>>2]|0;n=c[R>>2]|0}q=z<<8;r=(x|0)==0;o=0;while(1){if((o|0)>=16)break g;s=u+(c[w+(o<<2)>>2]|0)|0;t=a[(d[146491+o>>0]|0)+(g+21664)>>0]|0;i=t<<24>>24;do if(ha?(t<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)if((c[P>>2]|0)>>>0<151){Sd[c[f+25932+(i<<2)>>2]&1023](s,g+28560+((o<<4)+q<>2]&127](s,g+28560+((o<<4)+q<>2]<>2]<>0]|0)+(g+27824)>>0]|0;Td[c[f+25796+(i<<2)>>2]&255](s,c[Q>>2]<>2]<>24){case 0:break h;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j)break i;Sd[n&1023](s,g+28560+(i<>2]|0;k=n}else{k=c[O>>2]|0;n=c[M>>2]|0}q=z<<8;r=(x|0)==0;s=4<>2]|0)|0;i=a[(d[146491+o>>0]|0)+(g+21664)>>0]|0;j=i<<24>>24;if(ha?(i<<24>>24<2?(c[(c[G>>2]|0)+4>>2]|0)==244:0):0)Sd[c[f+25924+(j<<2)>>2]&1023](t,g+28560+((o<<4)+q<>24==7){if(c[I>>2]&32768>>>o|0){i=t+s+L|0;break}if(r){c[_>>2]=N(d[t+J>>0]|0,16843009)|0;i=_;break}else{la=nX(e[t+(K<<1)>>1]|0,0,65537,65537)|0;i=Y;c[i>>2]=la;c[i+4>>2]=y;i=Y;break}}else i=0;while(0);Sd[c[f+25736+(j<<2)>>2]&1023](t,i,fa);j:do switch(a[(d[146491+(o+v)>>0]|0)+(g+27824)>>0]|0){case 0:break;case 1:{i=(o<<4)+q|0;if(r)j=e[g+28560+(i<<1)>>1]|0;else j=c[E+(i<<2)>>2]|0;if(!j){ea=124;break j}Sd[n&1023](t,g+28560+(i<>2]|0;if(j){k=c[ja>>2]|0;n=c[ja+4>>2]|0;q=c[ja+8>>2]|0;B=c[ia>>2]|0;do if(c[f+26376>>2]|0){i=(c[g+21832>>2]|0)!=0;if(c[aa>>2]&1)if(i){o=1;break}else{j=T;i=U;break e}else{o=(i^1)&1;break}}else o=1;while(0);if((j|0)==2){u=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[$>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[ca>>2]|0}else{w=c[ca>>2]|0;u=(w|0)>0;i=(c[aa>>2]|0)>((c[Z>>2]|0)!=0|0)&1}z=0-(fa+1+B)|0;s=k+z|0;x=n+z|0;z=q+z|0;A=g+27796+(o<<2)|0;v=c[A>>2]|0;t=w+-1|0;k=v+(w*96|0)|0;if(i){n=(B|0)==0;do if(u){i=(8<>2]|0;aa=c[aa+4>>2]|0;j=s+(-7<>2]|0;la=i;c[la>>2]=c[Z>>2];c[la+4>>2]=_;la=j;c[la>>2]=$;c[la+4>>2]=aa;if(n){i=k;j=s+1|0;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1;n=0;break}else{$=i+8|0;o=$;ea=c[o>>2]|0;o=c[o+4>>2]|0;i=j+8|0;aa=i;la=c[aa+4>>2]|0;j=$;c[j>>2]=c[aa>>2];c[j+4>>2]=la;c[i>>2]=ea;c[i+4>>2]=o;i=k;o=1<>2]|0;i=c[i+4>>2]|0;ea=151;break}}else{i=k;k=c[i>>2]|0;i=c[i+4>>2]|0;o=1<>2]=k;c[j+4>>2]=i;i=v+(w*96|0)+8|0;j=s+o+8|0;k=c[i>>2]|0;i=c[i+4>>2]|0;n=1}ea=j;c[ea>>2]=k;c[ea+4>>2]=i;i=(8<>2]|0;ea=c[ea+4>>2]|0;q=9<>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ea;if(n){$=i+8|0;ea=$;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ea}i=(c[ca>>2]|0)+1|0;r=f+27012|0;if((i|0)<(c[r>>2]|0)?(la=(c[A>>2]|0)+(i*96|0)|0,ea=la,aa=c[ea>>2]|0,ea=c[ea+4>>2]|0,ba=s+(17<>2]|0,la,c[la>>2]=c[_>>2],c[la+4>>2]=$,la=ba,c[la>>2]=aa,c[la+4>>2]=ea,n):0){Z=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+8|0;ea=Z;aa=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=ba+8|0;_=la;$=c[_+4>>2]|0;ba=Z;c[ba>>2]=c[_>>2];c[ba+4>>2]=$;c[la>>2]=aa;c[la+4>>2]=ea}if(u){i=(24<>2]|0;ea=c[ea+4>>2]|0;k=-7<>2]|0;la=i;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=j;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=i+8|0;ea=aa;ba=c[ea>>2]|0;ea=c[ea+4>>2]|0;la=j+8|0;_=la;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[la>>2]=ba;c[la+4>>2]=ea}j=(40<>2]|0;ea=c[ea+4>>2]|0;i=z+k|0;$=i;aa=c[$+4>>2]|0;la=j;c[la>>2]=c[$>>2];c[la+4>>2]=aa;la=i;c[la>>2]=ba;c[la+4>>2]=ea;if(n){aa=j+8|0;la=aa;ba=c[la>>2]|0;la=c[la+4>>2]|0;ea=i+8|0;_=ea;$=c[_+4>>2]|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;c[ea>>2]=ba;c[ea+4>>2]=la;ea=163}else ea=164}else if(n)ea=163;else ea=164;if((ea|0)==163){j=(16<>2]|0;i=x+o|0;n=i;c[n>>2]=c[ba>>2];c[n+4>>2]=la;i=i+8|0;j=j+8|0;n=1}else if((ea|0)==164){i=x+o|0;j=(16<>2]|0;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;i=(24<>2]|0;ba=c[ba+4>>2]|0;j=x+q|0;_=j;$=c[_+4>>2]|0;la=i;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=j;c[la>>2]=aa;c[la+4>>2]=ba;if(n){i=i+8|0;aa=i;ba=c[aa>>2]|0;aa=c[aa+4>>2]|0;j=j+8|0;$=j;la=c[$+4>>2]|0;c[i>>2]=c[$>>2];c[i+4>>2]=la;c[j>>2]=ba;c[j+4>>2]=aa;j=(32<>2]|0;i=z+o|0;la=i;c[la>>2]=c[aa>>2];c[la+4>>2]=ba;i=i+8|0;j=j+8|0}else{i=z+o|0;j=(32<>2]|0;j=i;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(40<>2]|0;ba=c[ba+4>>2]|0;i=z+q|0;_=i;$=c[_+4>>2]|0;la=j;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}i=(c[ca>>2]|0)+1|0;if((i|0)<(c[r>>2]|0)){j=16<>2]|0)+(i*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;k=17<>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;ba=$;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;la=i+8|0;Z=la;_=c[Z+4>>2]|0;c[$>>2]=c[Z>>2];c[$+4>>2]=_;c[la>>2]=aa;c[la+4>>2]=ba}j=32<>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j|0;ba=la;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;i=z+k|0;_=i;$=c[_+4>>2]|0;c[la>>2]=c[_>>2];c[la+4>>2]=$;la=i;c[la>>2]=aa;c[la+4>>2]=ba;if(n){$=(c[A>>2]|0)+(((c[ca>>2]|0)+1|0)*96|0)+j+8|0;la=$;ca=c[la>>2]|0;la=c[la+4>>2]|0;j=i+8|0;aa=j;ba=c[aa+4>>2]|0;i=$;c[i>>2]=c[aa>>2];c[i+4>>2]=ba;c[j>>2]=ca;c[j+4>>2]=la;j=T;i=U}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{j=T;i=U}}else{Bl(f,g,c[ja>>2]|0,c[ja+4>>2]|0,c[ja+8>>2]|0,f+184|0,f+152|0,f+440|0,f+168|0,f+16|0,f+32|0);j=da&16777216;H=f+144|0;i=f+140|0;G=f+28216|0;F=g+21660|0;E=g+28560|0;h=da&1}while(0);D=(h|0)==0;A=(da&2|0)==0;B=g+21856|0;z=(j|0)!=0;C=z?4:1;z=z?i:H;q=(j|0)==0;r=f+116|0;s=f+120|0;t=f+128|0;o=0;while(1){if((o|0)==3)break d;u=c[ia>>2]|0;v=c[ja+(o<<2)>>2]|0;w=o<<4;x=p+(w<<2)|0;k:do if(D){if(A){if(!(c[B>>2]&15))break;if(!ha)if(q){Ud[c[r>>2]&127](v,x,g+28560+(o<<8<>2]&127](v,x,g+28560+(o<<8<>2]|0;j=o<<8;h=0;while(1){if((h|0)>=16)break k;if(a[(d[146491+(h+w)>>0]|0)+(g+27824)>>0]|0)Sd[i&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+((h<<4)+j<>2]&127](v,x,g+28560+(o<<8<>2]|0)+4>>2]|0)==244?(ga=c[F>>2]|0,(ga+-1|0)>>>0<2):0){Td[c[f+25960+(ga<<2)>>2]&255](v,x,g+28560+(o<<8<>0]|0)+(g+27824)>>0]|0)){if(k)i=e[g+28560+(n<<1)>>1]|0;else i=c[E+(n<<2)>>2]|0;if(i|0)ea=191}else ea=191;if((ea|0)==191){ea=0;Sd[c[H>>2]&1023](v+(c[x+(h<<2)>>2]|0)|0,g+28560+(n<>2]|0)){j=g+27780|0;i=0;while(1){if((i|0)==3)break d;k=ja+(i<<2)|0;n=i<<8;h=0;while(1){if((h|0)==16)break;o=(c[k>>2]|0)+(N(h,fa)|0)|0;p=(c[j>>2]|0)+n+(h<<4)|0;q=o+16|0;do{a[o>>0]=a[p>>0]|0;o=o+1|0;p=p+1|0}while((o|0)<(q|0));h=h+1|0}i=i+1|0}}o=c[(c[f+28216>>2]|0)+1184>>2]|0;sl(_,c[g+27780>>2]|0,o*768|0);j=0;while(1){if((j|0)==3)break;k=ja+(j<<2)|0;i=0;while(1){if((i|0)==16)break;n=(c[k>>2]|0)+(N(i,fa)|0)|0;h=0;while(1){if((h|0)==16)break;b[n+(h<<1)>>1]=tl(_,o)|0;h=h+1|0}i=i+1|0}j=j+1|0}}while(0);l=ka;return}function rl(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;$=l;l=l+32|0;if((l|0)>=(m|0))W(32);_=$+8|0;D=$;I=g+21788|0;i=c[I>>2]|0;G=g+21792|0;k=c[G>>2]|0;F=g+21796|0;j=c[F>>2]|0;K=c[(c[f+24364>>2]|0)+(j<<2)>>2]|0;B=g+848|0;U=f+28216|0;h=c[U>>2]|0;if(!(c[B>>2]|0))R=(c[h+16>>2]|0)!=0;else R=0;v=16>>>(c[f+25680>>2]|0);V=(c[h+12>>2]|0)==2;S=c[f+24316>>2]|0;Y=f+25664|0;T=c[Y>>2]|0;E=i<>2]|0;n=(c[S>>2]|0)+((N(t,k)|0)+E<<4)|0;E=E<<3;h=g+21776|0;o=N(N(v,k)|0,c[h>>2]|0)|0;q=(c[S+4>>2]|0)+E+o|0;o=(c[S+8>>2]|0)+E+o|0;E=f+12|0;i=n+(N(i<<2&12,t)|0)+(64<>2]&1023](i,t,4);t=q+(N(c[I>>2]&7,c[h>>2]|0)|0)|0;Sd[c[E>>2]&1023](t+(64<>2])|0,o-q|0,2);t=g+23412|0;a[(c[f+26388>>2]|0)+j>>0]=c[t>>2];E=g+21828|0;i=c[Z>>2]|0;a:do if(c[E>>2]|0){r=i<<1;c[g+21780>>2]=r;h=c[h>>2]|0;s=h<<1;c[g+21784>>2]=s;u=f+26168|0;if(!(k&1))p=n;else{Z=N(1-v|0,h)|0;p=n+(N(i,-15)|0)|0;q=q+Z|0;o=o+Z|0}if(!(c[f+26376>>2]|0)){O=r;Z=s;S=u;M=p;T=o}else{j=(K&8|0)==0;i=0;while(1){if(i>>>0>=(c[t>>2]|0)>>>0){O=r;Z=s;S=u;M=p;T=o;break a}b:do if(12288<<(i<<1)&K|0){if(j)h=0;else{T=g+28272+(i*40|0)+12|0;Z=N((a[T>>0]|0)+16^c[G>>2]&1,16843009)|0;c[T>>2]=Z;c[g+28272+(i*40|0)+20>>2]=Z;c[g+28272+(i*40|0)+28>>2]=Z;c[g+28272+(i*40|0)+36>>2]=Z;break}while(1){if((h|0)>=16)break b;k=(d[146491+h>>0]|0)+(g+28272+(i*40|0))|0;n=a[k>>0]|0;if(n<<24>>24>-1){Z=(c[G>>2]&1^(n<<24>>24)+16)*257&65535;b[k>>1]=Z;b[k+8>>1]=Z}h=h+4|0}}while(0);i=i+1|0}}}else{c[g+21780>>2]=i;Z=c[h>>2]|0;c[g+21784>>2]=Z;O=i;S=f+25976|0;M=n;T=o}while(0);c:do if(!(K&4)){J=(K&7|0)!=0;d:do if(J){C=g+868|0;i=c[C>>2]|0;e:do if(i|0){z=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){h=1;break}else break e;else{h=(h^1)&1;break}}else h=1;while(0);if((i|0)==2){s=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);i=c[g+21732>>2]|0;w=c[I>>2]|0}else{w=c[I>>2]|0;s=(w|0)>0;i=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}r=M+(0-(O+1+z))|0;x=0-(Z+1+z)|0;u=q+x|0;x=T+x|0;p=g+27796+(h<<2)|0;v=c[p>>2]|0;t=w+-1|0;n=v+(w*96|0)|0;if(i|0){j=(z|0)==0;do if(s){h=(8<>2]|0;k=c[k+4>>2]|0;i=r+(-7<>2]|0;o=h;c[o>>2]=c[ca>>2];c[o+4>>2]=ba;o=i;c[o>>2]=aa;c[o+4>>2]=k;if(j){h=n;i=r+1|0;j=0;k=c[h>>2]|0;h=c[h+4>>2]|0;break}else{ba=h+8|0;o=ba;j=c[o>>2]|0;o=c[o+4>>2]|0;h=i+8|0;ca=h;X=c[ca+4>>2]|0;i=ba;c[i>>2]=c[ca>>2];c[i+4>>2]=X;c[h>>2]=j;c[h+4>>2]=o;h=n;o=1<>2]|0;h=c[h+4>>2]|0;X=69;break}}else{h=n;k=c[h>>2]|0;h=c[h+4>>2]|0;o=1<>2]|0;c[n>>2]=c[ca>>2];c[n+4>>2]=k;n=i;c[n>>2]=j;c[n+4>>2]=h;n=v+(w*96|0)+8|0;h=n;i=r+o+8|0;j=1;k=c[h>>2]|0;h=c[h+4>>2]|0}o=i;aa=c[o+4>>2]|0;ba=n;c[ba>>2]=c[o>>2];c[ba+4>>2]=aa;ba=i;c[ba>>2]=k;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=r+(9<>2]|0;ca=h;c[ca>>2]=c[n>>2];c[ca+4>>2]=o;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){o=h+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;k=ca;n=c[k+4>>2]|0;c[o>>2]=c[k>>2];c[o+4>>2]=n;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[p>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,A=r+(17<>2]|0,ca,c[ca>>2]=c[o>>2],c[ca+4>>2]=r,ca=A,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){o=(c[p>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=o;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=A+8|0;p=ca;r=c[p+4>>2]|0;A=o;c[A>>2]=c[p>>2];c[A+4>>2]=r;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[s>>2];c[ca+4>>2]=A;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=h+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;r=ca;s=c[r+4>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=s;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+k|0;t=h;A=c[t+4>>2]|0;ca=i;c[ca>>2]=c[t>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;t=j;A=c[t+4>>2]|0;c[aa>>2]=c[t>>2];c[aa+4>>2]=A;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=v+(w*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=u+1+z|0;u=h;A=c[u+4>>2]|0;ca=i;c[ca>>2]=c[u>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;t=ca;u=c[t+4>>2]|0;c[A>>2]=c[t>>2];c[A+4>>2]=u;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=x+1+z|0;z=h;A=c[z+4>>2]|0;ca=i;c[ca>>2]=c[z>>2];c[ca+4>>2]=A;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){A=i+8|0;ba=A;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;x=ca;z=c[x+4>>2]|0;c[A>>2]=c[x>>2];c[A+4>>2]=z;c[ca>>2]=aa;c[ca+4>>2]=ba}}}while(0);z=g+21656|0;Rd[c[f+25844+(c[z>>2]<<2)>>2]&255](q,Z);Rd[c[f+25844+(c[z>>2]<<2)>>2]&255](T,Z);z=c[Y>>2]|0;h=c[B>>2]|0;f:do if(!(K&1)){Rd[c[f+25888+(c[g+21660>>2]<<2)>>2]&255](M,O);if(a[g+27824>>0]|0){if(!R){Sd[c[f+132>>2]&1023](g+28560|0,g+31632|0,c[(c[(c[f+28212>>2]|0)+173788>>2]|0)+(h<<6)>>2]|0);break}n=g+28560|0;i=(z|0)==0;j=g+31632|0;h=0;while(1){if((h|0)==16)break f;k=d[135778+h>>0]|0;if(i)b[g+28560+(k<<1)>>1]=b[g+31632+(h<<1)>>1]|0;else c[n+(k<<2)>>2]=c[j+(h<<2)>>2];h=h+1|0}}}else{if(K&16777216|0){if(R){k=c[f+140>>2]|0;j=k}else{j=c[f+104>>2]|0;k=c[f+112>>2]|0}o=f+25704|0;p=g+21756|0;r=g+21764|0;s=(z|0)==0;t=g+28560|0;n=0;while(1){if((n|0)>=16)break f;u=M+(c[S+(n<<2)>>2]|0)|0;h=d[146491+n>>0]|0;ca=a[g+21664+h>>0]|0;i=ca<<24>>24;do if(R?(ca<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)if((c[o>>2]|0)>>>0<151){Sd[c[f+25932+(i<<2)>>2]&1023](u,g+28560+(n<<4<>2]&127](u,g+28560+(n<<4<>2]<>2]<>0]|0;Td[c[f+25796+(i<<2)>>2]&255](u,c[p>>2]<>2]<>24){case 0:break g;case 1:{h=n<<4;if(s)i=e[g+28560+(h<<1)>>1]|0;else i=c[t+(h<<2)>>2]|0;if(i){Sd[k&1023](u,g+28560+(h<>2]|0;k=n}else{k=c[f+100>>2]|0;n=c[f+108>>2]|0}p=g+21764|0;r=(z|0)==0;s=3-O|0;t=3-((O|0)/2|0)|0;u=4<>2]|0)|0;i=d[146491+o>>0]|0;h=a[g+21664+i>>0]|0;j=h<<24>>24;if(R?(h<<24>>24<2?(c[(c[U>>2]|0)+4>>2]|0)==244:0):0)Sd[c[f+25924+(j<<2)>>2]&1023](x,g+28560+(o<<4<>24==7){if(c[p>>2]&32768>>>o|0){h=x+u+v|0;break}if(r){c[_>>2]=N(d[x+s>>0]|0,16843009)|0;h=_;break}else{ca=nX(e[x+(t<<1)>>1]|0,0,65537,65537)|0;h=D;c[h>>2]=ca;c[h+4>>2]=y;h=D;break}}else h=0;while(0);Sd[c[f+25736+(j<<2)>>2]&1023](x,h,O);switch(a[g+27824+i>>0]|0){case 0:break;case 1:{h=o<<4;if(r)i=e[g+28560+(h<<1)>>1]|0;else i=c[w+(h<<2)>>2]|0;if(!i)X=126;else Sd[n&1023](x,g+28560+(h<>2]|0;if(i|0){x=c[Y>>2]|0;do if(c[f+26376>>2]|0){h=(c[g+21832>>2]|0)!=0;if(c[G>>2]&1)if(h){j=1;break}else break d;else{j=(h^1)&1;break}}else j=1;while(0);if((i|0)==2){r=(c[g+832>>2]|0)==(e[(c[f+26372>>2]|0)+((c[F>>2]|0)+-1-(c[f+27016>>2]|0)<<1)>>1]|0);h=c[g+21732>>2]|0;v=c[I>>2]|0}else{v=c[I>>2]|0;r=(v|0)>0;h=(c[G>>2]|0)>((c[E>>2]|0)!=0|0)&1}p=M+(0-(O+1+x))|0;w=0-(Z+1+x)|0;t=q+w|0;w=T+w|0;o=g+27796+(j<<2)|0;u=c[o>>2]|0;s=v+-1|0;j=u+(v*96|0)|0;if(h|0){n=(x|0)==0;do if(r){h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(-7<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(n){h=j;k=p+1|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=0;break}else{X=h+8|0;k=X;h=c[k>>2]|0;k=c[k+4>>2]|0;i=i+8|0;ba=i;ca=c[ba+4>>2]|0;c[X>>2]=c[ba>>2];c[X+4>>2]=ca;c[i>>2]=h;c[i+4>>2]=k;i=j;k=1<>2]|0;i=c[i>>2]|0;X=152;break}}else{h=j;i=c[h>>2]|0;h=c[h+4>>2]|0;k=1<>2]=i;c[j+4>>2]=h;h=u+(v*96|0)+8|0;k=p+k+8|0;i=c[h>>2]|0;h=c[h+4>>2]|0;j=1}ba=k;c[ba>>2]=i;c[ba+4>>2]=h;h=(8<>2]|0;ba=c[ba+4>>2]|0;i=p+(9<>2]|0;ca=h;c[ca>>2]=c[F>>2];c[ca+4>>2]=G;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){G=h+8|0;ba=G;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;E=ca;F=c[E+4>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=F;c[ca>>2]=aa;c[ca+4>>2]=ba}h=(c[I>>2]|0)+1|0;if((h|0)<(c[f+27012>>2]|0)?(ca=(c[o>>2]|0)+(h*96|0)|0,ba=ca,aa=c[ba>>2]|0,ba=c[ba+4>>2]|0,H=p+(17<>2]|0,ca,c[ca>>2]=c[F>>2],c[ca+4>>2]=G,ca=H,c[ca>>2]=aa,c[ca+4>>2]=ba,j):0){I=(c[o>>2]|0)+(((c[I>>2]|0)+1|0)*96|0)+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=H+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}n=16<>2]|0;ba=c[ba+4>>2]|0;k=-7<>2]|0;ca=h;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=i;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=h+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=i+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+k|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){aa=i+8|0;ca=aa;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;j=h+8|0;H=j;I=c[H+4>>2]|0;c[aa>>2]=c[H>>2];c[aa+4>>2]=I;c[j>>2]=ba;c[j+4>>2]=ca;j=1}else j=0}i=u+(v*96|0)+n|0;ba=i;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;h=t+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}i=(24<>2]|0;ba=c[ba+4>>2]|0;h=w+1+x|0;H=h;I=c[H+4>>2]|0;ca=i;c[ca>>2]=c[H>>2];c[ca+4>>2]=I;ca=h;c[ca>>2]=aa;c[ca+4>>2]=ba;if(j){I=i+8|0;ba=I;aa=c[ba>>2]|0;ba=c[ba+4>>2]|0;ca=h+8|0;G=ca;H=c[G+4>>2]|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;c[ca>>2]=aa;c[ca+4>>2]=ba}}}}else{h=f+184|0;i=f+152|0;j=f+440|0;k=f+168|0;n=f+16|0;o=f+32|0;if(V){ul(f,g,M,q,T,h,i,j,k,n,o);break}else{vl(f,g,M,q,T,h,i,j,k,n,o);break}}while(0);p=c[Y>>2]|0;h:do if(!(K&1)){if(!(K&2)){if(!(c[g+21856>>2]&15))break;h=K&16777216;if(!R)if(!h){Ud[c[f+116>>2]&127](M,S,g+28560|0,O,g+27824|0);break}else{Ud[c[f+120>>2]&127](M,S,g+28560|0,O,g+27824|0);break}j=(h|0)!=0;i=j?4:1;j=c[(j?f+140|0:f+144|0)>>2]|0;h=0;while(1){if((h|0)>=16)break h;if(a[(d[146491+h>>0]|0)+(g+27824)>>0]|0)Sd[j&1023](M+(c[S+(h<<2)>>2]|0)|0,g+28560+(h<<4<>2]&127](M,S,g+28560|0,O,g+27824|0);break}if((c[(c[U>>2]|0)+4>>2]|0)==244?(L=c[g+21660>>2]|0,(L+-1|0)>>>0<2):0){Td[c[f+25960+(L<<2)>>2]&255](M,S,g+28560|0,O);break}j=(p|0)==0;k=g+28560|0;n=f+144|0;i=0;while(1){if((i|0)==16)break h;o=i<<4;if(!(a[(d[146491+i>>0]|0)+(g+27824)>>0]|0)){if(j)h=e[g+28560+(o<<1)>>1]|0;else h=c[k+(o<<2)>>2]|0;if(h|0)X=183}else X=183;if((X|0)==183){X=0;Sd[c[n>>2]&1023](M+(c[S+(i<<2)>>2]|0)|0,g+28560+(o<>2]&48|0){c[_>>2]=q;h=_+4|0;c[h>>2]=T;i:do if(R){if((J?(c[(c[U>>2]|0)+4>>2]|0)==244:0)?(P=g+21656|0,Q=c[P>>2]|0,(Q+-1|0)>>>0<2):0){Td[c[f+25948+(Q<<2)>>2]&255](q,S+64|0,g+28560+(256<>2]<<1)|0,Z);Td[c[f+25948+(c[P>>2]<<2)>>2]&255](c[h>>2]|0,S+128|0,g+28560+(512<>2]<<1)|0,Z);break}r=c[f+144>>2]|0;s=g+28560|0;q=1;while(1){if((q|0)==3)break i;j=q<<4;o=j|4;t=_+(q+-1<<2)|0;i=j;while(1){if((i|0)>=(o|0))break;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146491+i>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=211}else X=211;if((X|0)==211){X=0;Sd[r&1023]((c[t>>2]|0)+(c[S+(i<<2)>>2]|0)|0,g+28560+(n<=(p|0))break j;j=i+4|0;k=c[Y>>2]|0;n=i<<4;if(!(a[(d[146491+j>>0]|0)+(g+27824)>>0]|0)){if(!k)h=e[g+28560+(n<<1)>>1]|0;else h=c[s+(n<<2)>>2]|0;if(h|0)X=221}else X=221;if((X|0)==221){X=0;Sd[r&1023]((c[t>>2]|0)+(c[S+(j<<2)>>2]|0)|0,g+28560+(n<>2]|0;if(V){i=(c[g+856>>2]|0)+3|0;h=h+3|0}else i=c[g+856>>2]|0;if(a[g+27864>>0]|0)Rd[c[f+136>>2]&255](g+28560+(256<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?1:4)<<2)>>2]|0)+(h<<6)>>2]|0);if(a[g+27904>>0]|0)Rd[c[f+136>>2]&255](g+28560+(512<>2]<<1)|0,c[(c[(c[f+28212>>2]|0)+173788+((J?2:5)<<2)>>2]|0)+(i<<6)>>2]|0);Ud[c[f+124>>2]&127](_,S,g+28560|0,Z,g+27824|0)}while(0)}}else{h=c[U>>2]|0;o=c[h+1184>>2]|0;if(!(c[Y>>2]|0)){i=g+27780|0;h=0;while(1){if((h|0)==16)break;j=M+(N(h,O)|0)|0;k=(c[i>>2]|0)+(h<<4)|0;n=j+16|0;do{a[j>>0]=a[k>>0]|0;j=j+1|0;k=k+1|0}while((j|0)<(n|0));h=h+1|0}if(!(c[(c[U>>2]|0)+12>>2]|0)){i=1<>2]|0)+256|0;j=i+(v<<3)|0;h=0;while(1){if((h|0)>=(v|0))break c;ca=N(h,Z)|0;ba=h<<3;aa=i+ba|0;Y=aa;Y=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;aa=aa+4|0;aa=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;_=q+ca|0;g=_;a[g>>0]=Y;a[g+1>>0]=Y>>8;a[g+2>>0]=Y>>16;a[g+3>>0]=Y>>24;_=_+4|0;a[_>>0]=aa;a[_+1>>0]=aa>>8;a[_+2>>0]=aa>>16;a[_+3>>0]=aa>>24;ba=j+ba|0;_=ba;_=d[_>>0]|d[_+1>>0]<<8|d[_+2>>0]<<16|d[_+3>>0]<<24;ba=ba+4|0;ba=d[ba>>0]|d[ba+1>>0]<<8|d[ba+2>>0]<<16|d[ba+3>>0]<<24;ca=T+ca|0;aa=ca;a[aa>>0]=_;a[aa+1>>0]=_>>8;a[aa+2>>0]=_>>16;a[aa+3>>0]=_>>24;ca=ca+4|0;a[ca>>0]=ba;a[ca+1>>0]=ba>>8;a[ca+2>>0]=ba>>16;a[ca+3>>0]=ba>>24;h=h+1|0}}}sl(_,c[g+27780>>2]|0,N(o,e[114258+(c[h+12>>2]<<1)>>1]|0)|0);i=0;while(1){if((i|0)==16)break;j=M+(N(i,O)|0)|0;h=0;while(1){if((h|0)==16)break;b[j+(h<<1)>>1]=tl(_,o)|0;h=h+1|0}i=i+1|0}k:do if(!(c[(c[U>>2]|0)+12>>2]|0)){j=1<=(v|0))break k;n=N(i,Z)|0;k=q+n|0;n=T+n|0;h=0;while(1){if((h|0)==8)break;b[n+(h<<1)>>1]=j;b[k+(h<<1)>>1]=j;h=h+1|0}i=i+1|0}}else{i=0;while(1){if((i|0)>=(v|0)){i=0;break}j=q+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=tl(_,o)|0;h=h+1|0}i=i+1|0}while(1){if((i|0)>=(v|0))break k;j=T+(N(i,Z)|0)|0;h=0;while(1){if((h|0)==8)break;b[j+(h<<1)>>1]=tl(_,o)|0;h=h+1|0}i=i+1|0}}while(0)}while(0);l=$;return}function sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(b|0)!=0&d>>>0<2147483640;d=e?d:0;b=e?b:0;c[a>>2]=b;c[a+12>>2]=d;c[a+16>>2]=d+8;c[a+4>>2]=b+(d+7>>3);c[a+8>>2]=0;return}function tl(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=a+8|0;g=c[e>>2]|0;f=c[a+16>>2]|0;a=(c[a>>2]|0)+(g>>>3)|0;a=(uX(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24|0)|0)<<(g&7)>>>(32-b|0);b=g+b|0;c[e>>2]=f>>>0>b>>>0?b:f;return a|0}function ul(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)wl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Sd[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Sd[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;Al(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);Al(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;Al(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);Al(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;Al(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);Al(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;Al(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);Al(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;Al(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else Al(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else Al(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Sd[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Sd[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function vl(d,f,g,h,i,j,k,l,m,n,o){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=c[(c[d+24364>>2]|0)+(c[f+21796>>2]<<2)>>2]|0;if(c[(c[d+4>>2]|0)+696>>2]&1|0)wl(d,f);G=d+25664|0;p=c[G>>2]|0;q=a[f+28284>>0]|0;if(q<<24>>24>-1){B=q<<24>>24;y=f+21788|0;x=c[y>>2]|0;A=(x<<4|8)+(b[f+28e3>>1]>>2)|0;C=(b[f+28002>>1]>>2)+(c[f+21792>>2]<<4)|0;x=(A<>2]|0)|0)|0;z=d+12|0;Sd[c[z>>2]&1023]((c[f+23416+(B*40|0)>>2]|0)+x|0,c[f+21772>>2]|0,4);A=(N((c[y>>2]&7)+(C>>1)|0,c[f+21776>>2]|0)|0)+((A>>1)+64<>2]|0;Sd[c[z>>2]&1023](C+A|0,(c[f+23416+(B*40|0)+8>>2]|0)-C|0,2)}a:do if(!(D&8)){if(D&16|0){B=j+64|0;C=l+64|0;xl(d,f,0,0,8,8<>2],g,h,i,0,0,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&4096,D&16384);xl(d,f,8,0,8,8<>2],g,h,i,0,4,B,c[k>>2]|0,C,c[m>>2]|0,n,o,D&8192,D&32768);break}w=f+21780|0;if(D&32|0){x=j+64|0;y=k+4|0;z=l+64|0;A=m+4|0;B=n+4|0;C=o+4|0;xl(d,f,0,0,16,c[w>>2]<<3,g,h,i,0,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&4096,D&16384);xl(d,f,4,0,16,c[w>>2]<<3,g,h,i,4,0,x,c[y>>2]|0,z,c[A>>2]|0,B,C,D&8192,D&32768);break}x=j+128|0;y=k+8|0;z=l+128|0;A=m+8|0;B=n+8|0;C=o+8|0;v=k+4|0;u=m+4|0;t=n+4|0;s=o+4|0;r=j+64|0;m=l+64|0;k=0;while(1){if((k|0)==4)break a;p=e[f+28552+(k<<1)>>1]|0;n=k<<2;o=n&4;j=k<<1&4;b:do if(!(p&8)){if(p&16|0){q=p&4096;l=p&16384;xl(d,f,n,0,4,4<>2],g,h,i,o,j,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);xl(d,f,n|2,0,4,4<>2],g,h,i,o,j|2,x,c[v>>2]|0,z,c[u>>2]|0,t,s,q,l);break}if(p&32|0){q=p&4096;l=p&16384;xl(d,f,n,0,8,c[w>>2]<<2,g,h,i,o,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);xl(d,f,n|1,0,8,c[w>>2]<<2,g,h,i,o|2,j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,q,l);break}l=p&4096;q=p&16384;p=0;while(1){if((p|0)==4)break b;xl(d,f,p+n|0,1,4,0,g,h,i,p<<1&2|o,p&2|j,x,c[y>>2]|0,z,c[A>>2]|0,B,C,l,q);p=p+1|0}}else xl(d,f,n,1,8,0,g,h,i,o,j,r,c[v>>2]|0,m,c[u>>2]|0,t,s,p&4096,p&16384);while(0);k=k+1|0}}else xl(d,f,0,1,16,0,g,h,i,0,0,j,c[k>>2]|0,l,c[m>>2]|0,n,o,D&4096,D&16384);while(0);if(D&49152|0?(E=c[G>>2]|0,F=a[f+28324>>0]|0,F<<24>>24>-1):0){h=F<<24>>24;F=f+21788|0;D=c[F>>2]|0;G=(D<<4|8)+(b[f+28160>>1]>>2)|0;i=(b[f+28162>>1]>>2)+(c[f+21792>>2]<<4)|0;D=(G<>2]|0)|0)|0;g=d+12|0;Sd[c[g>>2]&1023]((c[f+25336+(h*40|0)>>2]|0)+D|0,c[f+21772>>2]|0,4);G=(N((c[F>>2]&7)+(i>>1)|0,c[f+21776>>2]|0)|0)+((G>>1)+64<>2]|0;Sd[c[g>>2]&1023](i+G|0,(c[f+25336+(h*40|0)+8>>2]|0)-i|0,2)}return}function wl(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+208|0;if((l|0)>=(m|0))W(208);u=w+8|0;v=w;f=c[(c[a+24364>>2]|0)+(c[d+21796>>2]<<2)>>2]|0;t=v;c[t>>2]=0;c[t+4>>2]=0;yX(u|0,-1,192)|0;a:do if(!(f&8)){if(f&16|0){yl(a,d,u,0,8,0,f&4096,f&16384,v);yl(a,d,u,8,8,8,f&8192,f&32768,v);break}if(f&32|0){yl(a,d,u,0,16,0,f&4096,f&16384,v);yl(a,d,u,4,16,0,f&8192,f&32768,v);break}g=0;while(1){if((g|0)==4)break a;f=e[d+28552+(g<<1)>>1]|0;h=g<<2;i=h&8;b:do if(!(f&8)){if(f&16|0){s=f&4096;t=f&16384;yl(a,d,u,h,4,i,s,t,v);yl(a,d,u,h|2,4,i|4,s,t,v);break}j=f&4096;k=f&16384;if(!(f&32))f=0;else{yl(a,d,u,h,8,i,j,k,v);yl(a,d,u,h|1,8,i,j,k,v);break}while(1){if((f|0)==4)break b;yl(a,d,u,f+h|0,4,f<<1&4|i,j,k,v);f=f+1|0}}else yl(a,d,u,h,8,i,f&4096,f&16384,v);while(0);g=g+1|0}}else yl(a,d,u,0,16,0,f&4096,f&16384,v);while(0);s=a+27008|0;t=d+21832|0;r=a+26380|0;f=c[d+23412>>2]|0;c:while(1){f=f+-1|0;if((f|0)<=-1)break;p=v+(f<<2)|0;o=0;while(1){if((o|0)>=48)continue c;h=c[p>>2]|0;if(!h)continue c;g=b[u+(f*96|0)+(o<<1)>>1]|0;do if(g<<16>>16>-1){q=(c[d+23416+(f*1920|0)+(o*40|0)+24>>2]|0)+-1|0;i=d+23416+(f*1920|0)+(o*40|0)+36|0;j=c[i>>2]|0;x=c[j+636>>2]|0;n=c[s>>2]<<4>>x;k=g<<16>>16<>2];c[p>>2]=h+-1;a=(c[r>>2]|0)==3;g=(x|0)!=0;if(g&a){x=k>>1;a=x-(k&1^1)|0;q=n+-1|0;kj(j+4|0,(a|0)<(n|0)?a:q,1);kj((c[i>>2]|0)+4|0,(x|0)>(q|0)?q:x,0);break}h=j+4|0;if(!(g|a)){x=(k<<1)+q|0;kj(h,(x|0)<(n|0)?x:n+-1|0,0);break}g=n+-1|0;g=(k|0)>(g|0)?g:k;if(a){kj(h,g,0);break}else{kj(h,g,q);break}}while(0);o=o+1|0}}l=w;return}function xl(e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;M=f+880|0;x=c[M>>2]|0;z=(v|0)!=0;A=(w|0)!=0;if(A&(z&(x|0)==2)){V=d[146491+g>>0]|0;x=f+21792|0;y=c[x>>2]|0;if((c[f+3216+((a[f+28272+V>>0]|0)*384|0)+(a[f+28312+V>>0]<<3)+((y&1)<<2)>>2]|0)==32)x=44;else{P=x;x=5}}else if((x|0)==1){y=f+21792|0;P=y;y=c[y>>2]|0;x=5}else x=44;do if((x|0)==5){D=c[t>>2]|0;C=c[t+4>>2]|0;K=c[u>>2]|0;J=c[u+4>>2]|0;O=c[e+25664>>2]|0;V=f+21780|0;s=c[V>>2]|0;S=k+((N(o<<1,s)|0)+(n<<1<>1;U=f+21784|0;x=c[U>>2]|0;Q=(N(x,o)|0)+(n<>2]<<3)+n|0;L=f+21828|0;n=c[L>>2]|0;y=(y>>n<<3)+o|0;if(!(z&A)){B=A&1;z=d[146491+g>>0]|0;o=a[f+28272+(B*40|0)+z>>0]|0;k=(t<<3)+(b[f+27952+(B*160|0)+(z<<2)>>1]|0)|0;z=(y<<3)+(b[f+27952+(B*160|0)+(z<<2)+2>>1]|0)|0;v=z<<2&12|k&3;x=k>>2;y=z>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;m=c[e+27012>>2]|0;u=m<<4;A=c[e+27008>>2]<<4>>n;n=k&7;M=(n|0)==0?0:-3;g=(z&7|0)==0?0:-3;if((!((x|0)<(0-M|0)|(y|0)<(0-g|0))?(x+16|0)<=(M+u|0):0)?(y+16|0)<=(A+g|0):0){l=0;y=s}else{g=f+27792|0;l=2<>2]&3](c[g>>2]|0,t+(0-l)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+l+(y<<1)|0;l=1}x=p+(v<<2)|0;Sd[c[x>>2]&1023](S,t,y);if(!h)Sd[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){z=(1-(c[f+23416+(B*1920|0)+(o*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(A>>1|0)}k=k>>3;v=k<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+23416+(B*1920|0)+(o*40|0)+4>>2]|0)+v+x|0;x=(c[f+23416+(B*1920|0)+(o*40|0)+8>>2]|0)+v+x|0;v=f+27792|0;if(!l){y=z&7;Vd[q&63](R,u,t,T,n,y)}else{j=A>>1;h=m<<3;O=e+8|0;Yd[c[O>>2]&3](c[v>>2]|0,u,t,t,9,9,k,y,h,j);e=z&7;Vd[q&63](R,c[v>>2]|0,c[U>>2]|0,T,n,e);P=c[U>>2]|0;Yd[c[O>>2]&3](c[v>>2]|0,x,P,P,9,9,k,y,h,j);x=c[v>>2]|0;y=e}Vd[q&63](Q,x,c[U>>2]|0,T,n,y);Vd[D&63](S,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(o<<4)+(B<<3)>>2]|0,c[f+912+(o<<4)+(B<<3)+4>>2]|0);if(!(c[f+884>>2]|0))break;i=f+892|0;Vd[C&63](R,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)>>2]|0,c[f+1680+(o<<5)+(B<<4)+4>>2]|0);Vd[C&63](Q,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(o<<5)+(B<<4)+8>>2]|0,c[f+1680+(o<<5)+(B<<4)+12>>2]|0);break}H=c[f+27788>>2]|0;I=H+(16<>0]|0;w=a[f+28272+C>>0]|0;F=a[f+28312+C>>0]|0;o=t<<3;z=o+(b[f+27952+(C<<2)>>1]|0)|0;B=y<<3;l=B+(b[f+27952+(C<<2)+2>>1]|0)|0;v=l<<2&12|z&3;x=z>>2;y=l>>2;t=(N(y,s)|0)+(x<>2]|0)+t|0;E=e+27012|0;m=c[E>>2]|0;u=m<<4;r=e+27008|0;A=c[r>>2]<<4>>n;n=z&7;D=(n|0)==0?0:-3;g=(l&7|0)==0?0:-3;if((!((x|0)<(0-D|0)|(y|0)<(0-g|0))?(x+16|0)<=(D+u|0):0)?(y+16|0)<=(A+g|0):0){k=0;y=s}else{g=f+27792|0;k=2<>2]&3](c[g>>2]|0,t+(0-k)+(0-(s<<1))|0,s,s,21,21,x+-2|0,y+-2|0,u,A);y=c[V>>2]|0;t=(c[g>>2]|0)+k+(y<<1)|0;k=1}x=p+(v<<2)|0;Sd[c[x>>2]&1023](S,t,y);D=(h|0)!=0;if(!D)Sd[c[x>>2]&1023](S+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+23416+(w*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;h=l>>3;k=h>>>31|k|(h+8|0)>=(A>>1|0)}y=z>>3;s=y<>3;u=c[U>>2]|0;x=N(u,t)|0;v=(c[f+23416+(w*40|0)+4>>2]|0)+s+x|0;x=(c[f+23416+(w*40|0)+8>>2]|0)+s+x|0;s=f+27792|0;if(!k){y=l&7;Vd[q&63](R,v,u,T,n,y)}else{g=A>>1;m=m<<3;z=e+8|0;Yd[c[z>>2]&3](c[s>>2]|0,v,u,u,9,9,y,t,m,g);h=l&7;Vd[q&63](R,c[s>>2]|0,c[U>>2]|0,T,n,h);A=c[U>>2]|0;Yd[c[z>>2]&3](c[s>>2]|0,x,A,A,9,9,y,t,m,g);x=c[s>>2]|0;y=h}Vd[q&63](Q,x,c[U>>2]|0,T,n,y);A=o+(b[f+28112+(C<<2)>>1]|0)|0;l=B+(b[f+28112+(C<<2)+2>>1]|0)|0;z=l<<2&12|A&3;u=A>>2;v=l>>2;y=c[V>>2]|0;t=(N(v,y)|0)+(u<>2]|0)+t|0;n=c[E>>2]|0;x=n<<4;m=c[r>>2]<<4>>c[L>>2];o=A&7;g=(o|0)==0?0:-3;h=(l&7|0)==0?0:-3;if((!((u|0)<(0-g|0)|(v|0)<(0-h|0))?(u+16|0)<=(x+g|0):0)?(v+16|0)<=(m+h|0):0)k=0;else{k=2<>2]&3](c[s>>2]|0,t+(0-k)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,x,m);y=c[V>>2]|0;t=(c[s>>2]|0)+k+(y<<1)|0;k=1}x=p+(z<<2)|0;Sd[c[x>>2]&1023](G,t,y);if(!D)Sd[c[x>>2]&1023](G+j|0,t+j|0,c[V>>2]|0);if(c[L>>2]|0){l=(1-(c[f+25336+(F*40|0)+24>>2]|0)+(c[P>>2]&1)<<1)+l|0;j=l>>3;k=j>>>31|k|(j+8|0)>=(m>>1|0)}v=A>>3;j=v<>3;t=c[U>>2]|0;x=N(t,y)|0;u=(c[f+25336+(F*40|0)+4>>2]|0)+j+x|0;x=(c[f+25336+(F*40|0)+8>>2]|0)+j+x|0;if(!k){y=l&7;Vd[q&63](H,u,t,T,o,y)}else{j=m>>1;h=n<<3;g=e+8|0;Yd[c[g>>2]&3](c[s>>2]|0,u,t,t,9,9,v,y,h,j);e=l&7;Vd[q&63](H,c[s>>2]|0,c[U>>2]|0,T,o,e);O=c[U>>2]|0;Yd[c[g>>2]&3](c[s>>2]|0,x,O,O,9,9,v,y,h,j);x=c[s>>2]|0;y=e}Vd[q&63](I,x,c[U>>2]|0,T,o,y);if((c[M>>2]|0)==2){e=c[f+3216+(w*384|0)+(F<<3)+((c[P>>2]&1)<<2)>>2]|0;f=64-e|0;Wd[K&31](S,G,c[V>>2]|0,i,5,e,f,0);Wd[J&31](R,H,c[U>>2]|0,T,5,e,f,0);Wd[J&31](Q,I,c[U>>2]|0,T,5,e,f,0);break}else{Wd[K&31](S,G,c[V>>2]|0,i,c[f+888>>2]|0,c[f+912+(w<<4)>>2]|0,c[f+912+(F<<4)+8>>2]|0,(c[f+912+(F<<4)+12>>2]|0)+(c[f+912+(w<<4)+4>>2]|0)|0);i=f+892|0;Wd[J&31](R,H,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)>>2]|0,c[f+1680+(F<<5)+16>>2]|0,(c[f+1680+(F<<5)+20>>2]|0)+(c[f+1680+(w<<5)+4>>2]|0)|0);Wd[J&31](Q,I,c[U>>2]|0,T,c[i>>2]|0,c[f+1680+(w<<5)+8>>2]|0,c[f+1680+(F<<5)+24>>2]|0,(c[f+1680+(F<<5)+28>>2]|0)+(c[f+1680+(w<<5)+12>>2]|0)|0);break}}else if((x|0)==44){J=c[e+25664>>2]|0;I=f+21780|0;y=c[I>>2]|0;H=k+((N(o<<1,y)|0)+(n<<1<>2]|0,o)|0)+(n<>2]<<3)+n|0;F=f+21792|0;G=f+21828|0;x=c[G>>2]|0;E=(c[F>>2]>>x<<3)+o|0;if(v){z=d[146491+g>>0]|0;n=a[f+28272+z>>0]|0;m=(D<<3)+(b[f+27952+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+27952+(z<<2)+2>>1]|0)|0;A=z<<2&12|m&3;u=m>>2;v=z>>2;t=(N(v,y)|0)+(u<>2]|0)+t|0;B=c[e+27012>>2]|0;k=B<<4;o=c[e+27008>>2]<<4>>x;C=m&7;U=(C|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((u|0)<(0-U|0)|(v|0)<(0-V|0))?(u+16|0)<=(U+k|0):0)?(v+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,u+-2|0,v+-2|0,k,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(A<<2)|0;Sd[c[x>>2]&1023](H,t,y);if(!h)Sd[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+23416+(n*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;V=z>>3;l=V>>>31|l|(V+8|0)>=(o>>1|0)}t=m>>3;y=t<>3;v=c[M>>2]|0;x=N(v,u)|0;k=(c[f+23416+(n*40|0)+4>>2]|0)+y+x|0;x=(c[f+23416+(n*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Vd[q&63](K,k,v,y,C,t)}else{T=o>>1;S=B<<3;Q=e+8|0;Yd[c[Q>>2]&3](c[y>>2]|0,k,v,v,9,9,t,u,S,T);U=i>>1;V=z&7;Vd[q&63](K,c[y>>2]|0,c[M>>2]|0,U,C,V);R=c[M>>2]|0;Yd[c[Q>>2]&3](c[y>>2]|0,x,R,R,9,9,t,u,S,T);x=c[y>>2]|0;y=U;t=V}Vd[q&63](L,x,c[M>>2]|0,y,C,t);q=s;p=r}if(w|0){z=d[146491+g>>0]|0;m=a[f+28312+z>>0]|0;A=(D<<3)+(b[f+28112+(z<<2)>>1]|0)|0;z=(E<<3)+(b[f+28112+(z<<2)+2>>1]|0)|0;k=z<<2&12|A&3;x=A>>2;u=z>>2;y=c[I>>2]|0;t=(N(u,y)|0)+(x<>2]|0)+t|0;n=c[e+27012>>2]|0;v=n<<4;o=c[e+27008>>2]<<4>>c[G>>2];B=A&7;U=(B|0)==0?0:-3;V=(z&7|0)==0?0:-3;if((!((x|0)<(0-U|0)|(u|0)<(0-V|0))?(x+16|0)<=(v+U|0):0)?(u+16|0)<=(o+V|0):0)l=0;else{V=f+27792|0;l=2<>2]&3](c[V>>2]|0,t+(0-l)+(0-(y<<1))|0,y,y,21,21,x+-2|0,u+-2|0,v,o);y=c[I>>2]|0;t=(c[V>>2]|0)+l+(y<<1)|0;l=1}x=p+(k<<2)|0;Sd[c[x>>2]&1023](H,t,y);if(!h)Sd[c[x>>2]&1023](H+j|0,t+j|0,c[I>>2]|0);if(c[G>>2]|0){z=(1-(c[f+25336+(m*40|0)+24>>2]|0)+(c[F>>2]&1)<<1)+z|0;j=z>>3;l=j>>>31|l|(j+8|0)>=(o>>1|0)}k=A>>3;y=k<>3;u=c[M>>2]|0;x=N(u,t)|0;v=(c[f+25336+(m*40|0)+4>>2]|0)+y+x|0;x=(c[f+25336+(m*40|0)+8>>2]|0)+y+x|0;y=f+27792|0;if(!l){y=i>>1;t=z&7;Vd[q&63](K,v,u,y,B,t)}else{j=o>>1;h=n<<3;V=e+8|0;Yd[c[V>>2]&3](c[y>>2]|0,v,u,u,9,9,k,t,h,j);f=i>>1;i=z&7;Vd[q&63](K,c[y>>2]|0,c[M>>2]|0,f,B,i);e=c[M>>2]|0;Yd[c[V>>2]&3](c[y>>2]|0,x,e,e,9,9,k,t,h,j);x=c[y>>2]|0;y=f;t=i}Vd[q&63](L,x,c[M>>2]|0,y,B,t)}}while(0);return}function yl(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0;o=(c[f+21792>>2]>>c[f+21828>>2]<<4)+j|0;do if(k|0){j=a[(d[146491+h>>0]|0)+(f+28272)>>0]|0;if((c[(c[(c[f+23416+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+23416+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=zl(f,h,i,o,0)|0;j=g+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0)c[m>>2]=(c[m>>2]|0)+1;k=k<<16>>16;b[j>>1]=(n|0)<(k|0)?k:n}while(0);do if(l|0){j=a[(d[146491+h>>0]|0)+(f+28312)>>0]|0;if((c[(c[(c[f+25336+(j*40|0)+36>>2]|0)+16>>2]|0)+4>>2]|0)==(c[(c[e+24332>>2]|0)+4>>2]|0)?(c[f+25336+(j*40|0)+24>>2]&3|0)==(c[e+26380>>2]|0):0)break;n=zl(f,h,i,o,1)|0;j=g+96+(j<<1)|0;k=b[j>>1]|0;if(k<<16>>16<0){m=m+4|0;c[m>>2]=(c[m>>2]|0)+1}m=k<<16>>16;b[j>>1]=(n|0)<(m|0)?m:n}while(0);return}function zl(a,c,e,f,g){a=a|0;c=c|0;e=e|0;f=f|0;g=g|0;g=b[a+27952+(g*160|0)+(d[146491+c>>0]<<2)+2>>1]|0;g=f+e+(g>>2)+(g&3|0?3:0)|0;return ((g|0)>0?g:0)|0} +function Zd(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))W(a|0);return b|0}function _d(){return l|0}function $d(a){a=a|0;l=a}function ae(a,b){a=a|0;b=b|0;l=a;m=b}function be(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function ce(a){a=a|0;y=a}function de(){return y|0}function ee(){hc();return 0}function fe(a){a=a|0;var b=0;nb(48,56,72,0,114932,13,114935,0,114935,0,114282,169828,27);a=NV(8)|0;c[a>>2]=3;c[a+4>>2]=0;pb(48,114291,3,52972,114937,4,a|0,0);a=NV(8)|0;c[a>>2]=4;c[a+4>>2]=0;pb(48,114297,3,52984,114937,5,a|0,0);a=NV(8)|0;c[a>>2]=28;c[a+4>>2]=0;pb(48,114304,2,52996,114942,5,a|0,0);a=NV(8)|0;c[a>>2]=29;c[a+4>>2]=0;pb(48,114311,2,52996,114942,5,a|0,0);a=NV(8)|0;c[a>>2]=6;c[a+4>>2]=0;b=NV(8)|0;c[b>>2]=7;c[b+4>>2]=0;qb(48,114329,40,114946,5,a|0,40,114937,6,b|0);b=NV(8)|0;c[b>>2]=8;c[b+4>>2]=0;a=NV(8)|0;c[a>>2]=9;c[a+4>>2]=0;qb(48,114339,40,114946,5,b|0,40,114937,6,a|0);a=NV(8)|0;c[a>>2]=10;c[a+4>>2]=0;b=NV(8)|0;c[b>>2]=11;c[b+4>>2]=0;qb(48,114347,40,114946,5,a|0,40,114937,6,b|0);b=NV(8)|0;c[b>>2]=12;c[b+4>>2]=0;a=NV(8)|0;c[a>>2]=13;c[a+4>>2]=0;qb(48,114359,40,114946,5,b|0,40,114937,6,a|0);nb(128,144,160,48,114932,14,114932,15,114932,16,114371,169828,30);a=NV(4)|0;c[a>>2]=31;pb(128,114950,2,53004,114942,14,a|0,0);ob(48,114970,3,53012,115106,10,6);ob(48,114980,3,53152,115106,11,7);return}function ge(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+32|0;if((l|0)>=(m|0))W(32);o=p+8|0;k=p;n=p+16|0;e=b+69|0;j=b+4|0;if(a[e>>0]|0){f=c[j>>2]|0;if((a[183016]|0)==0?aX(183016)|0:0)c[45770]=Hb(1,52912)|0;Eb(c[45770]|0,f|0,114384,k|0)}a[e>>0]=1;h=c[j>>2]|0;g=Mb(114390)|0;h=Ib(h|0,g|0)|0;Fb(g|0);g=ve(h,114402)|0;Fb(h|0);c[o>>2]=114410;c[o+4>>2]=g?114419:114424;$b(0,o|0);a[(c[b+32>>2]|0)+36>>0]=g&1;g=a[d+11>>0]|0;h=g<<24>>24<0;f=h?c[d>>2]|0:d;g=h?c[d+4>>2]|0:g&255;h=f+g|0;e=h;i=f;a:do if((g|0)<4)g=h;else{while(1){g=g+-3|0;if(!g){g=h;break a}f=lU(f,46,g)|0;if(!f){g=h;break a}if(!(YT(f,114430,4)|0))break;f=f+1|0;g=e-f|0;if((g|0)<4){g=h;break a}}g=f;e=f}while(0);a[b+70>>0]=(e-i|0)!=-1&(g|0)!=(h|0)&1;i=Gb(114435)|0;hW(n,262784,d);h=n+11|0;e=a[h>>0]|0;if(e<<24>>24<0){g=c[n+4>>2]|0;e=pT(g+4|0)|0;c[e>>2]=g;f=c[n>>2]|0}else{g=e&255;e=pT(g+4|0)|0;c[e>>2]=g;f=n}wX(e+4|0,f|0,g|0)|0;c[o>>2]=e;c[k>>2]=Lb(i|0,1,52920,o|0)|0;if((a[h>>0]|0)<0)OV(c[n>>2]|0);Fb(i|0);te(k,114445,114456);ue(o,b,114297);d=c[k>>2]|0;n=Mb(114468)|0;Pb(d|0,n|0,c[o>>2]|0);Fb(n|0);Fb(c[o>>2]|0);ue(o,b,114486);b=c[k>>2]|0;n=Mb(114478)|0;Pb(b|0,n|0,c[o>>2]|0);Fb(n|0);Fb(c[o>>2]|0);n=c[j>>2]|0;o=Mb(114494)|0;Pb(n|0,o|0,c[k>>2]|0);Fb(o|0);Fb(c[k>>2]|0);l=p;return}function he(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=y;x=y+40|0;t=y+24|0;u=y+8|0;s=c[e>>2]|0;w=Mb(114622)|0;c[t>>2]=Ib(s|0,w|0)|0;Fb(w|0);ye(x,t);Fb(c[t>>2]|0);a:do if(!(a[b+70>>0]|0))switch(a[(eW(x,0)|0)>>0]|0){case 1:{$V(u,x,1,-1,x);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];q=t+12|0;c[q>>2]=0;w=t+11|0;v=(a[w>>0]|0)<0?c[t>>2]|0:t;s=a[v+3>>0]|0;r=a[v+2>>0]|0;u=a[v+1>>0]|0;v=a[v>>0]|0;c[q>>2]=4;ze(b,(r&255)<<8|s&255|(u&255)<<16|(v&255)<<24,t);if((a[w>>0]|0)<0)OV(c[t>>2]|0);break a}case 2:{$V(u,x,1,-1,x);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];q=t+12|0;c[q>>2]=0;w=t+11|0;v=(a[w>>0]|0)<0?c[t>>2]|0:t;s=a[v+3>>0]|0;r=a[v+2>>0]|0;u=a[v+1>>0]|0;v=a[v>>0]|0;c[q>>2]=4;Ae(b,(r&255)<<8|s&255|(u&255)<<16|(v&255)<<24,t);if((a[w>>0]|0)<0)OV(c[t>>2]|0);break a}default:{w=a[(eW(x,0)|0)>>0]|0;c[f>>2]=114627;c[f+4>>2]=w;$b(1,f|0);break a}}else{i=b+8|0;s=(a[i>>0]|0)==0;w=b+12|0;q=a[x+11>>0]|0;r=q<<24>>24<0;fW(w,r?c[x>>2]|0:x,r?c[x+4>>2]|0:q&255)|0;q=w+11|0;if(s){e=a[q>>0]|0;f=e<<24>>24<0;if(f)g=c[b+16>>2]|0;else g=e&255;h=b+24|0;if((g-(c[h>>2]|0)|0)<=12)break;a[i>>0]=1;c[h>>2]=13;if(f){e=c[b+16>>2]|0;f=c[w>>2]|0}else{e=e&255;f=w}b=e+-13|0;xX(f|0,f+13|0,b|0)|0;bW(w,b,0);c[h>>2]=0;break}k=b+16|0;r=b+24|0;n=u+11|0;o=u+4|0;p=t+11|0;while(1){h=a[q>>0]|0;i=h<<24>>24<0;if(i)e=c[k>>2]|0;else e=h&255;s=c[r>>2]|0;if((e-s|0)<=3)break;if(i)e=c[w>>2]|0;else e=w;g=s+1|0;j=a[e+s>>0]|0;c[r>>2]=g;g=e+g+3+-1|0;e=a[g>>0]|0;z=a[g+-1>>0]|0;g=a[g+-2>>0]|0;f=s+4|0;c[r>>2]=f;g=(z&255)<<8|e&255|(g&255)<<16;if(i)e=c[k>>2]|0;else e=h&255;if((e-f|0)>>>0<(g+11|0)>>>0){v=22;break}if(i)e=c[w>>2]|0;else e=w;e=e+f+3+-1|0;e=d[e+-1>>0]<<8|d[e>>0]|d[e+-2>>0]<<16;z=s+11|0;c[r>>2]=z;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;$V(u,w,z,g,w);z=a[n>>0]|0;s=z<<24>>24<0;z=s?c[o>>2]|0:z&255;c[r>>2]=(c[r>>2]|0)+z;fW(t,s?c[u>>2]|0:u,z)|0;if((a[n>>0]|0)<0)OV(c[u>>2]|0);switch(j<<24>>24){case 8:{ze(b,e,t);break}case 9:{Ae(b,e,t);break}default:{}}c[r>>2]=(c[r>>2]|0)+4;if((a[p>>0]|0)<0)OV(c[t>>2]|0)}if((v|0)==22)c[r>>2]=s;if(i){e=c[k>>2]|0;f=c[w>>2]|0}else{e=h&255;f=w}z=e-s|0;xX(f|0,f+s|0,z|0)|0;bW(w,z,0);c[r>>2]=0}while(0);if((a[x+11>>0]|0)>=0){l=y;return}OV(c[x>>2]|0);l=y;return}function ie(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;f=Gb(114886)|0;e=b+64|0;c[g>>2]=c[e>>2];Fb(Cb(f|0,1,52968,g|0)|0);Fb(f|0);f=b+36|0;Qe(f);Pe(f);g=c[b+40>>2]|0;h=b+44|0;d=c[h>>2]|0;if((d|0)!=(g|0))c[h>>2]=d+(~((d+-4-g|0)>>>2)<<2);Re(f);c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;h=c[b+32>>2]|0;Qd[c[(c[h>>2]|0)+8>>2]&63](h);c[e>>2]=0;a[b+68>>0]=1;a[b+60>>0]=0;bW(b+12|0,0,0);c[b+24>>2]=0;a[b+8>>0]=0;l=i;return}function je(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=q+4|0;i=q;j=b+56|0;a:do if(c[j>>2]|0){k=b+40|0;n=b+52|0;o=b+4|0;p=b+76|0;h=b+32|0;f=0;d=c[n>>2]|0;while(1){r=(d>>>0)/204|0;e=c[(c[k>>2]|0)+(r<<2)>>2]|0;d=d-(r*204|0)|0;if(f?(c[g>>2]=c[e+(d*20|0)>>2],r=He(c[o>>2]|0,114877,g)|0,r=((c[p>>2]|0)*1e3|0)+r|0,c[i>>2]=r,(r|0)>0):0)break;r=c[h>>2]|0;Rd[c[(c[r>>2]|0)+16>>2]&255](r,e+(d*20|0)+4|0);d=c[n>>2]|0;e=(d>>>0)/204|0;e=(c[(c[k>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)+4|0;if((a[e+11>>0]|0)<0){OV(c[e>>2]|0);d=c[n>>2]|0}e=(c[j>>2]|0)+-1|0;c[j>>2]=e;d=d+1|0;c[n>>2]=d;if(d>>>0>407){OV(c[c[k>>2]>>2]|0);c[k>>2]=(c[k>>2]|0)+4;d=(c[n>>2]|0)+-204|0;c[n>>2]=d;e=c[j>>2]|0}if(!e)break a;else f=1}a[b+60>>0]=1;c[b+64>>2]=Ie(c[o>>2]|0,114861,i)|0;l=q;return}while(0);a[b+60>>0]=0;l=q;return}function ke(a,b){a=a|0;b=b|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d[b+69>>0];c[a>>2]=Qb(52800,f|0)|0;l=e;return}function le(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=e;f=+Bb(c[d>>2]|0,52800,g|0);Ob(c[g>>2]|0);a[b+69>>0]=f!=0.0&1;l=e;return}function me(a,b){a=a|0;b=b|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d[b+70>>0];c[a>>2]=Qb(52800,f|0)|0;l=e;return}function ne(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=e;f=+Bb(c[d>>2]|0,52800,g|0);Ob(c[g>>2]|0);a[b+70>>0]=f!=0.0&1;l=e;return}function oe(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+72>>2];c[a>>2]=Qb(52848,e|0)|0;l=d;return}function pe(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Bb(c[b>>2]|0,52848,f|0);Ob(c[f>>2]|0);c[a+72>>2]=~~e;l=d;return}function qe(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=c[b+76>>2];c[a>>2]=Qb(52848,e|0)|0;l=d;return}function re(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=d;e=+Bb(c[b>>2]|0,52848,f|0);Ob(c[f>>2]|0);c[a+76>>2]=~~e;l=d;return}function se(a){a=a|0;Fb(c[a>>2]|0);return}function te(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Mb(b|0)|0;d=Mb(d|0)|0;Pb(a|0,b|0,d|0);Fb(d|0);Fb(b|0);return}function ue(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;b=b+4|0;f=c[b>>2]|0;e=Mb(d|0)|0;d=Ib(f|0,e|0)|0;Fb(e|0);xe(a,d,114598,b);Fb(d|0);return}function ve(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0.0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;f=g+8|0;if((a[183024]|0)==0?aX(183024)|0:0)c[45771]=Hb(1,52916)|0;h=+Db(c[45771]|0,b|0,d|0,f|0,e|0);Ob(c[f>>2]|0);l=g;return h!=0.0|0}function we(a){a=a|0;Xa(a|0)|0;FW()}function xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0.0,k=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=i;h=i+8|0;if((a[183032]|0)==0?aX(183032)|0:0)c[45772]=Hb(2,52924)|0;k=c[45772]|0;Jb(c[f>>2]|0);c[g>>2]=c[f>>2];j=+Db(k|0,d|0,e|0,h|0,g|0);h=c[h>>2]|0;c[b>>2]=~~j>>>0;Ob(h|0);l=i;return}function ye(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=h;i=+Bb(c[d>>2]|0,16,e|0);e=c[e>>2]|0;g=~~i>>>0;f=g+4|0;g=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)TV(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Ob(e|0);l=h;return}else d=b}else{j=g+16&-16;d=NV(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}wX(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Ob(e|0);l=h;return}function ze(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=k;i=e+12|0;h=c[i>>2]|0;f=a[((a[e+11>>0]|0)<0?c[e>>2]|0:e)+h+1+-1>>0]|0;c[i>>2]=h+1;f=f&255;i=f>>>4;h=b+28|0;d=c[h>>2]|0;if(!d){g=(f&1)+1|0;d=f>>>2;switch(d&3){case 1:{d=11025;break}case 2:{d=22050;break}case 3:{d=44100;break}default:d=d&3}switch(i&15){case 10:{Ce(b,c[b+72>>2]<<10,d,g);break}case 11:{Ce(b,16e3,16e3,g);break}case 2:{Ce(b,(c[b+72>>2]|0)*576|0,d,g);break}default:{}}d=c[h>>2]|0;if(!d){l=k;return}}if((i|0)!=2){l=k;return}f=c[d+8>>2]|0;g=d+4|0;f=Ee(d,e,f+(c[g>>2]|0)|0,f+(c[d>>2]|0)|0)|0;if(!f){l=k;return}i=(c[g>>2]|0)+f|0;e=(i|0)==(c[d>>2]|0);c[g>>2]=e?0:i;if(!e){l=k;return}d=c[b+4>>2]|0;if((a[183016]|0)==0?aX(183016)|0:0)c[45770]=Hb(1,52912)|0;Eb(c[45770]|0,d|0,114710,j|0);l=k;return}function Ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;if((l|0)>=(m|0))W(48);q=r+24|0;p=r+16|0;o=r+8|0;n=r;i=r+32|0;j=r+28|0;k=b+68|0;if(a[k>>0]|0){h=e+11|0;f=e+12|0;i=a[((a[h>>0]|0)<0?c[e>>2]|0:e)+(c[f>>2]|0)>>0]|0;g=i&15;switch(i&15){case 7:{c[n>>2]=114755;$b(0,n|0);break}case 12:{c[o>>2]=114770;$b(0,o|0);break}default:{c[p>>2]=114785;c[p+4>>2]=g;$b(0,p|0);l=r;return}}if(!((i&-16)<<24>>24==16?(a[((a[h>>0]|0)<0?c[e>>2]|0:e)+(c[f>>2]|0)+1>>0]|0)==0:0)){l=r;return}d=c[b+32>>2]|0;Sd[c[(c[d>>2]|0)+12>>2]&1023](d,e,g);a[k>>0]=0;c[q>>2]=114845;$b(0,q|0);l=r;return}o=e+12|0;c[o>>2]=(c[o>>2]|0)+5;f=b+76|0;a:do if(c[f>>2]|0){g=b+60|0;do if(!(a[g>>0]|0)){c[i>>2]=d;h=b+4|0;q=He(c[h>>2]|0,114877,i)|0;q=((c[f>>2]|0)*1e3|0)+q|0;c[j>>2]=q;if((q|0)>0){a[g>>0]=1;c[b+64>>2]=Ie(c[h>>2]|0,114861,j)|0;break}else break a}while(0);j=b+44|0;g=c[j>>2]|0;k=b+40|0;f=c[k>>2]|0;q=g-f|0;i=b+52|0;n=b+56|0;h=(c[n>>2]|0)+(c[i>>2]|0)|0;if((((q|0)==0?0:((q>>2)*204|0)+-1|0)|0)==(h|0)){Je(b+36|0);h=(c[i>>2]|0)+(c[n>>2]|0)|0;g=c[j>>2]|0;f=c[k>>2]|0}if((g|0)==(f|0))f=0;else{b=(h>>>0)/204|0;f=(c[f+(b<<2)>>2]|0)+((h-(b*204|0)|0)*20|0)|0}c[f>>2]=d;d=f+4|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[f+16>>2]=c[o>>2];c[n>>2]=(c[n>>2]|0)+1;l=r;return}while(0);d=c[b+32>>2]|0;Rd[c[(c[d>>2]|0)+16>>2]&255](d,e);l=r;return}function Be(b){b=b|0;if((a[b+11>>0]|0)>=0)return;OV(c[b>>2]|0);return}function Ce(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=n+40|0;i=n+32|0;k=n;h=b+28|0;g=c[h>>2]|0;if(!g){g=NV(22700)|0;c[g>>2]=N(d<<1,f)|0;c[g+4>>2]=0;o=g+22668|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;Jf(g+12|0);Kf(g+76|0);Lf(g+9344|0);c[i>>2]=114745;$b(0,i|0);c[g+8>>2]=pT(c[g>>2]|0)|0;c[j>>2]=114730;c[j+4>>2]=g;$b(0,j|0);c[h>>2]=g}h=c[g+8>>2]>>1;g=c[b+4>>2]|0;if((a[183040]|0)==0?aX(183040)|0:0)c[45773]=Hb(5,52932)|0;o=c[45773]|0;c[k>>2]=d;c[k+8>>2]=e;c[k+16>>2]=f;c[k+24>>2]=h;Eb(o|0,g|0,114720,k|0);l=n;return}function De(b){b=b|0;var d=0;Nf(b+64|0);d=b+22672|0;if((a[d+11>>0]|0)<0)OV(c[d>>2]|0);b=b+22656|0;if((a[b+11>>0]|0)>=0)return;OV(c[b>>2]|0);return}function Ee(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d+12|0;i=d+22668|0;j=i+11|0;h=a[j>>0]|0;if(h<<24>>24<0)n=c[d+22672>>2]|0;else n=h&255;h=e+11|0;q=a[h>>0]|0;k=e+4|0;l=e+12|0;bW(i,n-(c[l>>2]|0)+(q<<24>>24<0?c[k>>2]|0:q&255)|0,0);if((a[j>>0]|0)<0)m=c[i>>2]|0;else m=i;h=a[h>>0]|0;if(h<<24>>24<0){h=c[l>>2]|0;i=c[k>>2]|0;j=h;h=(c[e>>2]|0)+h|0}else{q=c[l>>2]|0;i=h&255;j=q;h=e+q|0}wX(m+n|0,h|0,i-j|0)|0;if((Fe(r)|0)==-1){r=0;return r|0}o=d+13448|0;p=d+13450|0;q=d+13452|0;n=d+18060|0;h=0;while(1){i=b[o>>1]|0;d=b[p>>1]|0;j=d&65535;h=(N((i&65535)<<1,j)|0)+h|0;e=j+-1|0;do if(d<<16>>16)if(i<<16>>16==2){m=j<<2;j=n;k=q;l=f;i=e;while(1){d=c[k>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l>>0]=d;a[l+1>>0]=d>>>8;d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l+2>>0]=d;a[l+3>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+4|0;l=l+4|0;i=i+-1|0}}f=f+m|0;break}else{l=j<<1;j=q;k=f;i=e;while(1){d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[k>>0]=d;a[k+1>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+2|0;i=i+-1|0}}f=f+l|0;break}while(0);if(f>>>0>=g>>>0){f=22;break}if((Fe(r)|0)==-1){f=22;break}}if((f|0)==22)return h|0;return 0}function Fe(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+272|0;if((l|0)>=(m|0))W(272);v=w+256|0;u=w;k=w+248|0;n=w+244|0;s=d+22656|0;p=s+11|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;t=d+22668|0;i=e+(c[t>>2]|0)|0;j=Ge(d,i)|0;if((j|0)==-1){d=-1;l=w;return d|0}f=c[t>>2]|0;g=f+j|0;c[t>>2]=g;e=a[p>>0]|0;if(e<<24>>24<0)e=c[d+22660>>2]|0;else e=e&255;if((e|0)==(g|0)){c[t>>2]=f;d=-1;l=w;return d|0}e=d+9328|0;if((c[e>>2]|0)==0?(r=rT(1152,4)|0,c[e>>2]=r,(r|0)==0):0){c[d+60>>2]=49;g=d+92|0;e=d+68|0}else{e=d+68|0;f=(c[e>>2]|0)==0;g=d+92|0;h=c[g>>2]|0;if(((h&16|0)!=0?(o=d+28|0,r=c[o+4>>2]|0,q=u,c[q>>2]=c[o>>2],c[q+4>>2]=r,q=d+88|0,r=b[q>>1]|0,c[v>>2]=c[u>>2],c[v+4>>2]=c[u+4>>2],r=If(v,(h&4096|0)==0?(f?136:256):f?72:136,r)|0,b[q>>1]=r,r<<16>>16!=(b[d+90>>1]|0)):0)?(c[d+108>>2]&1|0)==0:0)c[d+60>>2]=513}r=d+64|0;q=(c[e>>2]|0)==0?1:2;f=d+28|0;Rf(f,q,c[g>>2]&4096,u,n,k)|0;c[g>>2]=c[g>>2]|c[k>>2];g=d+96|0;c[g>>2]=c[g>>2]|c[u+4>>2];g=Ff(f)|0;f=i-g+j|0;if((a[p>>0]|0)<0)e=c[s>>2]|0;else e=s;Df(v,e+(c[t>>2]|0)|0);e=Hf(v,32)|0;if((e&-1703936|0)==-1966080){if(!(e&65536))Gf(v,16);j=Hf(v,e>>>19&1|8)|0}else j=0;o=d+22672|0;k=o+11|0;e=a[k>>0]|0;if(e<<24>>24<0)e=c[d+22676>>2]|0;else e=e&255;n=d+22684|0;i=e-(c[n>>2]|0)|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;bW(v,f,0);h=v+11|0;wX(((a[h>>0]|0)<0?c[v>>2]|0:v)+(c[v+12>>2]|0)|0,g|0,f|0)|0;g=a[h>>0]|0;f=g<<24>>24<0;fW(o,f?c[v>>2]|0:v,f?c[v+4>>2]|0:g&255)|0;if((a[h>>0]|0)<0)OV(c[v>>2]|0);e=a[p>>0]|0;if(e<<24>>24<0){e=c[t>>2]|0;f=c[s>>2]|0;g=e;e=(c[d+22660>>2]|0)-e|0}else{p=c[t>>2]|0;f=s;g=p;e=(e&255)-p|0}xX(f|0,f+g|0,e|0)|0;bW(s,e,0);c[t>>2]=0;e=a[k>>0]|0;h=e<<24>>24<0;if(h)e=c[d+22676>>2]|0;else e=e&255;g=e-(c[n>>2]|0)|0;e=c[u>>2]|0;if(i>>>0>>0|g>>>0>>0)e=-1;else{f=i-e|0;c[n>>2]=f;if(h)e=c[o>>2]|0;else e=o;Df(v,e+f|0);Sf(v,r,u,q)|0;Mf(d+9332|0,r);g=g-j-f+(c[n>>2]|0)|0;c[n>>2]=g;e=a[k>>0]|0;if(e<<24>>24<0){e=c[d+22676>>2]|0;f=c[o>>2]|0}else{e=e&255;f=o}e=e-g|0;xX(f|0,f+g|0,e|0)|0;bW(o,e,0);c[n>>2]=0;e=0}d=e;l=w;return d|0}function Ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+64|0;Df(a+28|0,b);c[a+20>>2]=b;Yf(h,a)|0;d=a+100|0;switch(c[h>>2]|0){case 1:{b=384;break}case 3:{b=(c[a+92>>2]&4096|0)==0?1152:576;f=3;break}default:{b=1152;f=3}}g=a+84|0;Zf(d,0,b,c[g>>2]|0);d=a+80|0;e=c[d>>2]|0;if(!e){b=a+16|0;e=c[b>>2]|0;if(!((e|0)!=0?!(e>>>0>64e4&(c[h>>2]|0)==3):0))f=8;do if((f|0)==8)if((_f(a,h)|0)==-1){h=-1;return h|0}else{e=c[b>>2]|0;break}while(0);c[d>>2]=e;f=a+92|0;b=c[f>>2]|1024;c[f>>2]=b}else b=c[a+92>>2]|0;d=b>>>7&1;switch(c[h>>2]|0){case 1:{h=(((e*12|0)>>>0)/((c[g>>2]|0)>>>0)|0)+d<<2;return h|0}case 3:{b=(b&4096|0)==0?144:72;break}default:b=144}h=N(e,b)|0;h=((h>>>0)/((c[g>>2]|0)>>>0)|0)+d|0;return h|0}function He(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[183048]|0)==0?aX(183048)|0:0)c[45774]=Hb(2,52952)|0;j=c[45774]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Ob(c[g>>2]|0);l=h;return ~~i|0}function Ie(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=h;g=h+8|0;if((a[183056]|0)==0?aX(183056)|0:0)c[45775]=Hb(2,52960)|0;j=c[45775]|0;c[f>>2]=c[e>>2];i=+Db(j|0,b|0,d|0,g|0,f|0);Ob(c[g>>2]|0);l=h;return ~~i|0}function Je(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;if((l|0)>=(m|0))W(32);k=t+4|0;g=t;b=a+16|0;d=c[b>>2]|0;if(d>>>0>203){c[b>>2]=d+-204;q=a+4|0;o=c[q>>2]|0;s=c[o>>2]|0;o=o+4|0;c[q>>2]=o;r=a+8|0;b=c[r>>2]|0;p=a+12|0;n=c[p>>2]|0;e=n;do if((b|0)==(n|0)){i=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-i|0;if(!d)b=f;else{xX(f|0,o|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Wa(8)|0;RV(t,114642);c[t>>2]=108972;_a(t|0,52720,21)}else{h=NV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;j=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-i|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[q>>2]=n;c[r>>2]=b;c[p>>2]=j;if(d){OV(d);b=c[r>>2]|0}}while(0);c[b>>2]=s;c[r>>2]=(c[r>>2]|0)+4;l=t;return}s=a+8|0;b=c[s>>2]|0;r=a+4|0;f=b-(c[r>>2]|0)>>2;q=a+12|0;d=c[q>>2]|0;e=d-(c[a>>2]|0)|0;if(f>>>0>=e>>2>>>0){b=(e|0)==0?1:e>>1;i=k+12|0;c[i>>2]=0;c[k+16>>2]=a+12;do if(b)if(b>>>0>1073741823){t=Wa(8)|0;RV(t,114642);c[t>>2]=108972;_a(t|0,52720,21)}else{d=NV(b<<2)|0;break}else d=0;while(0);c[k>>2]=d;p=d+(f<<2)|0;j=k+8|0;c[j>>2]=p;h=k+4|0;c[h>>2]=p;c[i>>2]=d+(b<<2);c[g>>2]=NV(4080)|0;Me(k,g);b=c[s>>2]|0;d=c[r>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;Ne(k,b);d=c[r>>2]|0}while((b|0)!=(d|0));b=c[s>>2]|0}e=d;f=c[a>>2]|0;c[a>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=c[h>>2];c[h>>2]=e;c[s>>2]=c[j>>2];c[j>>2]=b;a=c[q>>2]|0;c[q>>2]=c[i>>2];c[i>>2]=a;if((d|0)!=(b|0))c[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(f|0)OV(f);l=t;return}if((d|0)!=(b|0)){c[k>>2]=NV(4080)|0;Ke(a,k);l=t;return}c[k>>2]=NV(4080)|0;Le(a,k);o=c[r>>2]|0;p=c[o>>2]|0;o=o+4|0;c[r>>2]=o;b=c[s>>2]|0;n=c[q>>2]|0;e=n;do if((b|0)==(n|0)){j=o;d=c[a>>2]|0;f=d;if(o>>>0>d>>>0){e=((j-f>>2)+1|0)/-2|0;f=o+(e<<2)|0;d=b-j|0;if(!d)b=f;else{xX(f|0,o|0,d|0)|0;b=(c[r>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[s>>2]=a;c[r>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){t=Wa(8)|0;RV(t,114642);c[t>>2]=108972;_a(t|0,52720,21)}else{h=NV(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;n=e;i=h+(f<<2)|0;if((o|0)==(b|0))b=n;else{f=((b+-4-j|0)>>>2)+1|0;d=o;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[r>>2]=n;c[s>>2]=b;c[q>>2]=i;if(d){OV(d);b=c[s>>2]|0}}while(0);c[b>>2]=p;c[s>>2]=(c[s>>2]|0)+4;l=t;return}function Ke(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{xX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Wa(8)|0;RV(q,114642);c[q>>2]=108972;_a(q|0,52720,21)}else{i=NV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){OV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Le(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{xX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Wa(8)|0;RV(q,114642);c[q>>2]=108972;_a(q|0,52720,21)}else{h=NV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){OV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{xX(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=Wa(8)|0;RV(q,114642);c[q>>2]=108972;_a(q|0,52720,21)}else{i=NV(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){OV(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Ne(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{xX(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=Wa(8)|0;RV(q,114642);c[q>>2]=108972;_a(q|0,52720,21)}else{h=NV(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){OV(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Oe(a){a=a|0;var b=0,d=0,e=0,f=0;Qe(a);d=a+4|0;b=c[d>>2]|0;f=a+8|0;e=c[f>>2]|0;if((b|0)!=(e|0)){do{OV(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[d>>2]|0;d=c[f>>2]|0;if((d|0)!=(b|0))c[f>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;OV(b);return}function Pe(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;f=a+20|0;g=c[f>>2]|0;if(!g){d=a+8|0;b=c[d>>2]|0;e=a+4|0;if((b|0)!=(c[e>>2]|0))do{OV(c[b+-4>>2]|0);b=(c[d>>2]|0)+-4|0;c[d>>2]=b}while((c[e>>2]|0)!=(b|0));c[a+16>>2]=0;Re(a);return}b=a+16|0;e=c[b>>2]|0;d=a+4|0;if(e>>>0>203){OV(c[c[d>>2]>>2]|0);h=(c[d>>2]|0)+4|0;c[d>>2]=h;e=(c[b>>2]|0)+-204|0;c[b>>2]=e;g=c[f>>2]|0}else h=c[d>>2]|0;b=a+8|0;d=c[b>>2]|0;h=d-h|0;if((((h|0)==0?0:((h>>2)*204|0)+-1|0)-(g+e)|0)>>>0<=203){Re(a);return}OV(c[d+-4>>2]|0);c[b>>2]=(c[b>>2]|0)+-4;Re(a);return}function Qe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;e=c[l>>2]|0;m=b+16|0;g=c[m>>2]|0;d=(g>>>0)/204|0;h=e+(d<<2)|0;j=b+8|0;n=c[j>>2]|0;f=n;i=e;if((n|0)!=(e|0)){d=(c[h>>2]|0)+((g-(d*204|0)|0)*20|0)|0;b=b+20|0;n=(c[b>>2]|0)+g|0;g=(n>>>0)/204|0;g=(c[e+(g<<2)>>2]|0)+((n-(g*204|0)|0)*20|0)|0;if((g|0)==(d|0)){d=b;k=5}else{f=h;while(1){e=d+4|0;if((a[e+11>>0]|0)<0)OV(c[e>>2]|0);d=d+20|0;if((d-(c[f>>2]|0)|0)==4080){d=f+4|0;e=d;d=c[d>>2]|0}else e=f;if((g|0)==(d|0))break;else f=e}e=c[l>>2]|0;g=j;f=c[j>>2]|0;d=e}}else{d=b+20|0;k=5}if((k|0)==5){g=j;b=d;d=i}c[b>>2]=0;d=f-d>>2;if(d>>>0>2)do{OV(c[e>>2]|0);e=(c[l>>2]|0)+4|0;c[l>>2]=e;d=(c[g>>2]|0)-e>>2}while(d>>>0>2);switch(d|0){case 1:{d=102;break}case 2:{d=204;break}default:return}c[m>>2]=d;return}function Re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+12|0;i=c[a>>2]|0;k=a+8|0;h=c[k>>2]|0;l=a+4|0;f=c[l>>2]|0;d=h-f|0;e=d>>2;b=i;if((c[j>>2]|0)-i>>2>>>0<=e>>>0)return;do if(d)if(e>>>0>1073741823){l=Wa(8)|0;RV(l,114642);c[l>>2]=108972;_a(l|0,52720,21)}else{g=NV(d)|0;break}else g=0;while(0);i=g;e=g+(e<<2)|0;if((f|0)==(h|0))d=e;else{d=g;b=f;while(1){c[d>>2]=c[b>>2];b=b+4|0;if((b|0)==(h|0))break;else d=d+4|0}d=g+((c[k>>2]|0)-(c[l>>2]|0)>>2<<2)|0;b=c[a>>2]|0}c[a>>2]=i;c[l>>2]=i;c[k>>2]=d;c[j>>2]=e;if(!b)return;OV(b);return}function Se(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function Te(a){a=a|0;if(!a)return;Qd[c[(c[a>>2]|0)+4>>2]&63](a);return}function Ue(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=j;f=c[b>>2]|0;b=c[b+4>>2]|0;g=d+(b>>1)|0;if(b&1)f=c[(c[g>>2]|0)+f>>2]|0;d=e+4|0;e=c[e>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;if(e>>>0>4294967279)TV(h);if(e>>>0<11){a[h+11>>0]=e;if(!e)b=h;else{b=h;i=9}}else{i=e+16&-16;b=NV(i)|0;c[h>>2]=b;c[h+8>>2]=i|-2147483648;c[h+4>>2]=e;i=9}if((i|0)==9)wX(b|0,d|0,e|0)|0;a[b+e>>0]=0;Rd[f&255](g,h);if((a[h+11>>0]|0)>=0){l=j;return}OV(c[h>>2]|0);l=j;return}function Ve(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Rd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function We(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;a=b+(e>>1)|0;if(!(e&1)){e=d;Qd[e&63](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;Qd[e&63](a);return}}function Xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;d=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)d=c[(c[a>>2]|0)+d>>2]|0;Rd[d&255](e,a);Jb(c[e>>2]|0);g=c[e>>2]|0;Fb(g|0);l=f;return g|0}function Ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;Rd[e&255](a,f);Fb(c[f>>2]|0);l=g;return}function Ze(b,d){b=b|0;d=d|0;var e=0;e=NV(88)|0;jf(e,d);a[e+80>>0]=0;c[e+84>>2]=c[b>>2];c[b>>2]=0;c[e>>2]=53032;return e|0}function _e(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=lb(((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0,128,c[e>>2]|0)|0;return}function $e(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function af(a){a=a|0;if(!a)return;Qd[c[(c[a>>2]|0)+4>>2]&63](a);return}function bf(a){a=a|0;return a|0}function cf(a){a=a|0;return a|0}function df(a,b){a=a|0;b=b|0;Qd[c[a>>2]&63](b);return}function ef(b){b=b|0;a[b+80>>0]=1;return}function ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=Kd[a&15](f,g)|0;Fb(c[g>>2]|0);Fb(c[f>>2]|0);l=e;return d|0}function gf(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=g;c[b>>2]=53048;d=b+84|0;if(!(a[b+80>>0]|0)){f=c[d>>2]|0;Fb(f|0);mf(b);l=g;return}f=c[d>>2]|0;if((a[183016]|0)==0?aX(183016)|0:0)c[45770]=Hb(1,52912)|0;Eb(c[45770]|0,f|0,115353,e|0);f=c[d>>2]|0;Fb(f|0);mf(b);l=g;return}function hf(a){a=a|0;gf(a);OV(a);return}function jf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b>>2]=53064;i=b+4|0;c[i>>2]=c[d>>2];c[d>>2]=0;a[b+8>>0]=0;d=b+12|0;e=b+32|0;c[b+64>>2]=0;f=b+68|0;g=d;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));a[d+48>>0]=0;a[f>>0]=1;a[b+69>>0]=0;a[b+70>>0]=0;c[b+72>>2]=12;b=NV(60)|0;lf(b);c[e>>2]=b;c[b+4>>2]=i;return}function kf(a){a=a|0;gf(a);OV(a);return}function lf(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=53080;c[b+48>>2]=0;c[b+52>>2]=Sh()|0;c[b+56>>2]=_P()|0;c[e>>2]=115111;$b(0,e|0);l=d;return}function mf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);e=i+24|0;d=i+16|0;f=i+8|0;g=i;c[b>>2]=53064;h=Gb(114886)|0;c[g>>2]=c[b+64>>2];Fb(Cb(h|0,1,52968,g|0)|0);Fb(h|0);c[f>>2]=115285;$b(0,f|0);f=c[b+28>>2]|0;if(f|0){c[d>>2]=115306;$b(0,d|0);qT(c[f+8>>2]|0);c[e>>2]=115329;$b(0,e|0);Nf(f+76|0);d=f+22684|0;if((a[d+11>>0]|0)<0)OV(c[d>>2]|0);d=f+22668|0;if((a[d+11>>0]|0)<0)OV(c[d>>2]|0);OV(f)}g=b+36|0;Qe(g);e=b+40|0;d=c[e>>2]|0;h=b+44|0;f=c[h>>2]|0;if((d|0)!=(f|0)){do{OV(c[d>>2]|0);d=d+4|0}while((d|0)!=(f|0));d=c[e>>2]|0;e=c[h>>2]|0;if((e|0)!=(d|0))c[h>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[g>>2]|0;if(d|0)OV(d);d=b+12|0;if((a[d+11>>0]|0)>=0){b=b+4|0;b=c[b>>2]|0;Fb(b|0);l=i;return}OV(c[d>>2]|0);b=b+4|0;b=c[b>>2]|0;Fb(b|0);l=i;return}function nf(a){a=a|0;mf(a);OV(a);return}function of(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f+8|0;g=f;c[b>>2]=53080;c[g>>2]=115181;$b(0,g|0);Qd[c[(c[b>>2]|0)+8>>2]&63](b);Th(b+52|0);Kg(b+56|0);c[b>>2]=53112;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)qT(d);c[e>>2]=115157;$b(0,e|0);l=f;return}function pf(a){a=a|0;of(a);OV(a);return}function qf(b){b=b|0;var d=0;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)qT(d);XS(c[b+44>>2]|0);d=b+48|0;qT(c[(c[d>>2]|0)+68>>2]|0);SS(d);return}function rf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+32|0;if((l|0)>=(m|0))W(32);g=h+16|0;j=h;i=(e|0)==7;k=YR(i?27:173)|0;f=b+40|0;c[f>>2]=k;c[j>>2]=115196;c[j+4>>2]=e;c[j+8>>2]=k;$b(0,j|0);c[b+44>>2]=US(c[(c[f>>2]|0)+12>>2]|0)|0;e=_R(c[f>>2]|0)|0;c[b+48>>2]=e;if(!i){l=h;return}i=d+12|0;j=(c[i>>2]|0)+5|0;c[i>>2]=j;i=d+11|0;b=a[i>>0]|0;b=(b<<24>>24<0?c[d+4>>2]|0:b&255)-j|0;k=e+72|0;c[k>>2]=b;b=pT(b)|0;c[e+68>>2]=b;wX(b|0,((a[i>>0]|0)<0?c[d>>2]|0:d)+j|0,c[k>>2]|0)|0;k=gT(e,c[f>>2]|0,0)|0;c[g>>2]=115216;c[g+4>>2]=k;$b(0,g|0);l=h;return}function sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[(c[b>>2]|0)+20>>2]|0;f=a[d+11>>0]|0;if(f<<24>>24<0){h=c[d+12>>2]|0;g=c[d+4>>2]|0;f=h;d=(c[d>>2]|0)+h|0;f=g-f|0;Sd[e&1023](b,d,f);return}else{g=c[d+12>>2]|0;f=f&255;h=g;g=d+g|0;h=f-h|0;Sd[e&1023](b,g,h);return}}function tf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))W(16);h=v+8|0;s=v;t=b+48|0;g=b+56|0;r=c[g>>2]|0;d=WS(c[b+44>>2]|0,c[t>>2]|0,r+24|0,r+28|0,d,e,0,-2147483648,0,-2147483648,0,0)|0;if((d|0)>-1?(f=c[g>>2]|0,c[f+28>>2]|0):0){if((HS(c[t>>2]|0,f)|0)<=-1){l=v;return}f=b+52|0;g=b+20|0;h=b+24|0;i=b+28|0;j=b+12|0;k=b+16|0;n=b+36|0;o=b+20|0;p=b+8|0;q=b+4|0;a:while(1){r=QS(c[t>>2]|0,c[f>>2]|0)|0;if((r|0)<-11)switch(r|0){case -541478725:{u=17;break a}default:{}}else switch(r|0){case -11:{u=17;break a}default:{}}d=c[f>>2]|0;c[g>>2]=c[d>>2];c[h>>2]=c[d+4>>2];c[i>>2]=c[d+8>>2];e=c[d+68>>2]|0;if((c[j>>2]|0)==(e|0)){d=c[d+72>>2]|0;if((c[k>>2]|0)!=(d|0))u=9}else{d=c[d+72>>2]|0;u=9}if((u|0)==9){u=0;zf(b,e,d)}if(!(a[n>>0]|0))Af(c[o>>2]|0,c[h>>2]|0,c[i>>2]|0,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);d=c[c[q>>2]>>2]|0;if((a[183016]|0)==0?aX(183016)|0:0)c[45770]=Hb(1,52912)|0;Eb(c[45770]|0,d|0,115280,s|0);if((r|0)<=-1){u=17;break}}if((u|0)==17){l=v;return}}c[h>>2]=115233;c[h+4>>2]=d;$b(0,h|0);l=v;return}function uf(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[b>>2]=53112;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)qT(d);c[e>>2]=115157;$b(0,e|0);l=f;return}function vf(a){a=a|0;mc()}function wf(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;qT(b);return}function xf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;n=l;l=l+16|0;if((l|0)>=(m|0))W(16);j=n;k=d+12|0;g=c[k>>2]|0;c[j>>2]=115146;c[j+4>>2]=e;$b(0,j|0);switch(e|0){case 7:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+9>>0]&3;p=g+11|0;c[k>>2]=p;f=a[j>>0]|0;e=c[d>>2]|0;i=f<<24>>24<0?e:d;p=i+p+2+-1|0;o=a[p>>0]|0;p=a[p+-1>>0]|0;h=g+13|0;c[k>>2]=h;g=(p&255)<<8|o&255;if(g){Sd[c[(c[b>>2]|0)+20>>2]&1023](b,i+h|0,g);h=(c[k>>2]|0)+g|0;c[k>>2]=h;f=a[j>>0]|0;e=c[d>>2]|0}p=h+1|0;c[k>>2]=p;g=f<<24>>24<0?e:d;p=g+p+2+-1|0;e=a[p>>0]|0;p=a[p+-1>>0]|0;f=h+3|0;c[k>>2]=f;e=(p&255)<<8|e&255;if(!e){l=n;return}Sd[c[(c[b>>2]|0)+20>>2]&1023](b,g+f|0,e);l=n;return}case 12:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+27>>0]&3;i=g+31|0;c[k>>2]=i;p=(a[j>>0]|0)<0?c[d>>2]|0:d;i=p+i+2+-1|0;o=a[i>>0]|0;i=a[i+-1>>0]|0;h=g+33|0;c[k>>2]=h;o=(i&255)<<8|o&255;Sd[c[(c[b>>2]|0)+20>>2]&1023](b,p+h|0,o);o=(c[k>>2]|0)+o|0;h=o+3|0;c[k>>2]=h;p=(a[j>>0]|0)<0?c[d>>2]|0:d;h=p+h+2+-1|0;i=a[h>>0]|0;h=a[h+-1>>0]|0;o=o+5|0;c[k>>2]=o;i=(h&255)<<8|i&255;Sd[c[(c[b>>2]|0)+20>>2]&1023](b,p+o|0,i);i=(c[k>>2]|0)+i|0;o=i+3|0;c[k>>2]=o;j=(a[j>>0]|0)<0?c[d>>2]|0:d;o=j+o+2+-1|0;p=a[o>>0]|0;o=a[o+-1>>0]|0;d=i+5|0;c[k>>2]=d;Sd[c[(c[b>>2]|0)+20>>2]&1023](b,j+d|0,(o&255)<<8|p&255);l=n;return}default:{l=n;return}}}function yf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=d+11|0;l=a[m>>0]|0;e=l<<24>>24<0;n=d+4|0;o=d+12|0;f=c[o>>2]|0;if(((e?c[n>>2]|0:l&255)-f|0)<=4)return;l=b+32|0;i=0;j=0;k=0;do{switch(c[l>>2]|0){case 3:{e=e?c[d>>2]|0:d;k=e+f+4+-1|0;g=4;h=k;i=a[k+-2>>0]|0;j=a[k+-3>>0]|0;k=a[k+-1>>0]|0;break}case 2:{e=e?c[d>>2]|0:d;k=e+f+3+-1|0;g=3;h=k;i=a[k+-2>>0]|0;k=a[k+-1>>0]|0;break}case 1:{e=e?c[d>>2]|0:d;k=e+f+2+-1|0;g=2;h=k;k=a[k+-1>>0]|0;break}default:{h=e?c[d>>2]|0:d;e=h;g=1;h=h+f+1+-1|0}}h=a[h>>0]|0;g=f+g|0;c[o>>2]=g;h=(i&255)<<16|(j&255)<<24|(k&255)<<8|h&255;Sd[c[(c[b>>2]|0)+20>>2]&1023](b,e+g|0,h);f=(c[o>>2]|0)+h|0;c[o>>2]=f;h=a[m>>0]|0;e=h<<24>>24<0}while(((e?c[n>>2]|0:h&255)-f|0)>4);return}function zf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=115254;c[h+4>>2]=d;c[h+8>>2]=e;$b(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(N(e<<2,e)|0)+33554432|0;e=pT((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[183064]|0)==0?aX(183064)|0:0)c[45776]=Hb(4,53136)|0;b=c[45776]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,115267,h|0);l=i;return}else{e=b+20|0;c[b+8>>2]=e;e=e>>2;d=c[c[b+4>>2]>>2]|0;if((a[183064]|0)==0?aX(183064)|0:0)c[45776]=Hb(4,53136)|0;b=c[45776]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;Eb(b|0,d|0,115267,h|0);l=i;return}}function Af(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;E=g<<2;F=f+(N(E,h)|0)|0;if(!h)return;A=(g|0)==0;D=(g+-1|0)>>>1;B=(D<<3)+8|0;C=g+1&-2;D=D+1|0;j=0;z=0;k=0;i=0;l=0;while(1){if(!A){x=B+j|0;y=D+i|0;w=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){I=(n*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;q=(G*1634|0)+I>>10;G=(N(m,-400)|0)+I+(N(G,-832)|0)>>10;I=(m*2066|0)+I>>10;m=(q|0)>0?q:0;n=(G|0)>0?G:0;H=(I|0)>0?I:0;m=((((I&255|0)==(I|0)?I:(H|0)<255?H:255)<<8)+16711680+((G&255|0)==(G|0)?G:(n|0)<255?n:255)<<8)+((q&255|0)==(q|0)?q:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+j>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;G=t+-128|0;m=s+-128|0;I=(G*1634|0)+p>>10;G=(N(m,-400)|0)+p+(N(G,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(j+E)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=F+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;G=t+-128|0;J=s+-128|0;I=m+(G*1634|0)>>10;G=(N(G,-832)|0)+(N(J,-400)|0)+m>>10;J=m+(J*2066|0)>>10;m=(I|0)>0?I:0;H=(G|0)>0?G:0;n=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(n|0)<255?n:255)<<8)+16711680+((G&255|0)==(G|0)?G:(H|0)<255?H:255)<<8)+((I&255|0)==(I|0)?I:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+q>>2]=m;n=F+(r|p<<16)|0;m=c[n>>2]|0;if(!m){m=(p*1192|0)+-19072|0;H=t+-128|0;t=s+-128|0;J=m+(H*1634|0)>>10;H=(N(H,-832)|0)+(N(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;G=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(G|0)<255?G:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(q+E)>>2]=m;w=w+2|0;if(w>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=C+l|0;j=x;k=D+k|0;i=y}z=z+2|0;if(z>>>0>=h>>>0)break;else{j=j+E|0;l=l+g|0}}return}function Bf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))W(32);h=n+16|0;j=n+4|0;k=n;f=d+4|0;g=c[d>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(g>>>0>4294967279)TV(j);if(g>>>0<11){a[j+11>>0]=g;if(!g)d=j;else{d=j;i=6}}else{i=g+16&-16;d=NV(i)|0;c[j>>2]=d;c[j+8>>2]=i|-2147483648;c[j+4>>2]=g;i=6}if((i|0)==6)wX(d|0,f|0,g|0)|0;a[d+g>>0]=0;c[k>>2]=e;Sd[b&1023](h,j,k);Jb(c[h>>2]|0);d=c[h>>2]|0;Fb(d|0);Fb(c[k>>2]|0);if((a[j+11>>0]|0)>=0){l=n;return d|0}OV(c[j>>2]|0);l=n;return d|0}function Cf(){fe(0);return}function Df(a,d){a=a|0;d=d|0;c[a>>2]=d;b[a+4>>1]=0;b[a+6>>1]=8;return}function Ef(a,b){a=a|0;b=b|0;return (e[a+6>>1]|0)+8-(e[b+6>>1]|0)+((c[b>>2]|0)-((c[a>>2]|0)+1)<<3)|0}function Ff(a){a=a|0;var d=0;d=c[a>>2]|0;return ((b[a+6>>1]|0)==8?d:d+1|0)|0}function Gf(a,f){a=a|0;f=f|0;var g=0,h=0,i=0;g=(c[a>>2]|0)+(f>>>3)|0;c[a>>2]=g;i=a+6|0;h=(e[i>>1]|0)-(f&7)|0;f=h&65535;b[i>>1]=f;if((h&65535)>>>0>8){g=g+1|0;c[a>>2]=g;f=h+8&65535;b[i>>1]=f}if((f&65535)>=8)return;b[a+4>>1]=d[g>>0]|0;return}function Hf(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=e+6|0;g=b[l>>1]|0;if(g<<16>>16==8){h=d[c[e>>2]>>0]|0;k=e+4|0;b[k>>1]=h}else{k=e+4|0;h=b[k>>1]|0}j=g&65535;g=(1<>>0<=f>>>0){h=f-j|0;i=(c[e>>2]|0)+1|0;c[e>>2]=i;b[l>>1]=8;if(h>>>0>7){j=f-j|0;do{f=i;i=i+1|0;c[e>>2]=i;g=g<<8|(d[f>>0]|0);h=h+-8|0}while(h>>>0>7);h=j&7}if(!h){l=g;return l|0}else{e=a[i>>0]|0;b[k>>1]=e&255;k=8-h|0;g=(e&255)>>>k|g<>>h}while(0);b[l>>1]=h;l=g;return l|0}function If(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=h&65535;if(g>>>0>31){q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){if(n<<16>>16!=8){j=n&65535;i=(1<>1]|0);if((n&65535)>32){r=j+-32|0;j=r&65535;i=i>>>r;r=13}else r=7}else{i=a[c[f>>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);j=8;r=7}if((r|0)==7){r=0;k=32-j|0;m=c[f>>2]|0;l=m+1|0;c[f>>2]=l;b[q>>1]=8;if(k>>>0>7){j=(24-j|0)>>>3;do{s=l;l=l+1|0;c[f>>2]=l;i=i<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+j|0;k=0-n&7}else j=l;if(!k)j=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;i=(s&255)>>>r|i<>1]=j}s=h<<8^(e[113462+((i>>>24^h>>>8&255)<<1)>>1]|0);s=s<<8^(e[113462+(((s>>>8^i>>>16)&255)<<1)>>1]|0);s=s<<8^(e[113462+(((s^i)>>>8&255)<<1)>>1]|0);h=s<<8^(e[113462+(((s>>>8^i)&255)<<1)>>1]|0);o=o+-32|0;if(o>>>0<=31)break;else n=j}g=g&31}switch(g>>>3&536870911|0){case 3:{q=h<<8;p=h>>>8;o=f+6|0;n=b[o>>1]|0;if(n<<16>>16!=8){i=f+4|0;j=n&65535;h=(1<>1]|0);if((n&65535)>8){r=j+-8|0;i=r&65535;h=h>>>r;r=29}else r=23}else{h=a[c[f>>2]>>0]|0;i=f+4|0;b[i>>1]=h&255;h=(1<<(n&65535))+255&(h&255);j=8;r=23}if((r|0)==23){k=8-j|0;l=c[f>>2]|0;j=l+1|0;c[f>>2]=j;b[o>>1]=8;if(k>>>0>7){m=((k+-8|0)>>>3)+2|0;do{s=j;j=j+1|0;c[f>>2]=j;h=h<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=l+m|0;k=0-n&7}if(!k)i=8;else{s=a[j>>0]|0;b[i>>1]=s&255;r=8-k|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113462+(((h^p)&255)<<1)>>1]|0);r=31;break}case 2:{o=f+6|0;i=b[o>>1]|0;r=31;break}case 1:{o=f+6|0;i=b[o>>1]|0;r=43;break}default:{}}if((r|0)==31){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){r=k+-8|0;i=r&65535;h=h>>>r;r=41}else r=35}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=35}if((r|0)==35){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;l=0-i&7}if(!l)i=8;else{s=a[k>>0]|0;b[j>>1]=s&255;r=8-l|0;i=r&65535;h=(s&255)>>>r|h<>1]=i;h=q^(e[113462+(((h^p)&255)<<1)>>1]|0);r=43}if((r|0)==43){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<>1]|0);if((i&65535)>8){i=k+-8|0;h=h>>>i;r=53}else r=47}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=47}if((r|0)==47){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;i=0-i&7}else i=l;if(i){s=a[k>>0]|0;b[j>>1]=s&255;r=8-i|0;h=(s&255)>>>r|h<>1]=i;h=q^(e[113462+(((h^p)&255)<<1)>>1]|0);g=g&7}if(!g){s=h;s=s&65535;return s|0}q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){o=o+-1|0;if(n<<16>>16!=8){g=n&65535;i=(1<>1]|0);if((n&65535)<=1){k=1-g|0;m=c[f>>2]|0;j=m+1|0;c[f>>2]=j;b[q>>1]=8;if(k>>>0>7){l=(-7-g|0)>>>3;g=i;do{s=j;j=j+1|0;c[f>>2]=j;g=g<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+l|0;k=1-n&7}else g=i;if(!k)i=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;g=(s&255)>>>r|g<>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);g=8;r=60}if((r|0)==60){g=g+-1|0;j=g&65535;g=i>>>g;r=67}if((r|0)==67){r=0;b[q>>1]=j;i=j}s=h<<1;h=((g^h>>>15)&1|0)==0?s:s^32773;if(!o)break;else n=i}s=h&65535;return s|0}function Jf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Df(a+28|0,0);Df(a+36|0,0);a=a+44|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;return}function Kf(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+36|0;d=a;e=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f=183108;d=c[f+4>>2]|0;e=b;c[e>>2]=c[f>>2];c[e+4>>2]=d;c[a+44>>2]=0;c[a+9264>>2]=0;ag(a);return}function Lf(a){a=a|0;$f(a);a=a+4096|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Mf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=(c[d+4>>2]|0)==0?1:2;switch(c[d>>2]|0){case 1:{e=12;break}case 3:{e=(c[d+28>>2]&4096|0)==0?36:18;f=3;break}default:{e=36;f=3}}f=c[d+20>>2]|0;h=a+4100|0;c[h>>2]=f;b[a+4104>>1]=i;g=a+4106|0;b[g>>1]=e<<5;if(!(c[d+44>>2]&2))f=4;else{c[h>>2]=f>>>1;b[g>>1]=e<<4&32752;f=5}Td[f&255](a,d,i,e);a=a+4096|0;c[a>>2]=(c[a>>2]|0)+e&15;return}function Nf(a){a=a|0;var b=0;b=a+9264|0;a=c[b>>2]|0;if(!a)return;qT(a);c[b>>2]=0;return}function Of(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;if(!d)return;w=a+4096|0;n=(e|0)==0;m=0;s=a+1504|0;t=a+1472|0;while(1){if(!n){f=a+4108+(m*4608|0)|0;v=c[w>>2]|0;x=0;while(1){z=v&1;o=a+(m<<11)+(z<<9)|0;Qf(b+48+(m*4608|0)+(x<<7)|0,v>>>1,o,a+(m<<11)+1024+(z<<9)|0);k=v&-2;u=v+15&14|1;l=z^1;q=53428+(u<<2)|0;A=53428+(k<<2)|0;G=N(c[A>>2]|0,c[o>>2]|0)|0;g=N(c[q>>2]|0,c[a+(m<<11)+(l<<9)>>2]|0)|0;i=N(c[q+56>>2]|0,c[a+(m<<11)+(l<<9)+4>>2]|0)|0;h=N(c[q+48>>2]|0,c[a+(m<<11)+(l<<9)+8>>2]|0)|0;p=N(c[q+40>>2]|0,c[a+(m<<11)+(l<<9)+12>>2]|0)|0;j=N(c[q+32>>2]|0,c[a+(m<<11)+(l<<9)+16>>2]|0)|0;y=N(c[q+24>>2]|0,c[a+(m<<11)+(l<<9)+20>>2]|0)|0;r=N(c[q+16>>2]|0,c[a+(m<<11)+(l<<9)+24>>2]|0)|0;q=N(c[q+8>>2]|0,c[a+(m<<11)+(l<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(m<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(m<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(m<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(m<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(m<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(m<<11)+(z<<9)+24>>2]|0)|0;c[f>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(m<<11)+(z<<9)+28>>2]|0)|0)-(i+g+h+p+j+y+r+q)>>2;q=0-u|0;r=0-k|0;y=s+(l<<9)|0;j=53428;p=a+(m<<11)+1024+(l<<9)|0;h=f+4|0;g=f+60|0;i=1;while(1){f=o;o=o+32|0;if(!(i&1)){A=j+128+(u<<2)|0;z=p+4|0;I=p+8|0;J=p+12|0;K=p+16|0;L=p+20|0;M=p+24|0;O=p+28|0;W=j+128+(k<<2)|0;H=f+60|0;$=N(c[W+8>>2]|0,c[H>>2]|0)|0;U=N(c[A>>2]|0,c[p>>2]|0)|0;V=N(c[A+56>>2]|0,c[z>>2]|0)|0;T=N(c[A+48>>2]|0,c[I>>2]|0)|0;S=N(c[A+40>>2]|0,c[J>>2]|0)|0;R=N(c[A+32>>2]|0,c[K>>2]|0)|0;Q=N(c[A+24>>2]|0,c[L>>2]|0)|0;P=N(c[A+16>>2]|0,c[M>>2]|0)|0;A=N(c[A+8>>2]|0,c[O>>2]|0)|0;G=f+56|0;aa=N(c[W+16>>2]|0,c[G>>2]|0)|0;F=f+52|0;_=N(c[W+24>>2]|0,c[F>>2]|0)|0;E=f+48|0;Z=N(c[W+32>>2]|0,c[E>>2]|0)|0;D=f+44|0;Y=N(c[W+40>>2]|0,c[D>>2]|0)|0;C=f+40|0;X=N(c[W+48>>2]|0,c[C>>2]|0)|0;B=f+36|0;f=N(c[W+56>>2]|0,c[B>>2]|0)|0;c[h>>2]=aa+$+_+Z+Y+X+f+(N(c[W>>2]|0,c[o>>2]|0)|0)-(V+U+T+S+R+Q+P+A)>>2;A=j+128+(q<<2)|0;f=N(c[A+116>>2]|0,c[O>>2]|0)|0;f=(N(c[A+108>>2]|0,c[M>>2]|0)|0)+f|0;f=f+(N(c[A+100>>2]|0,c[L>>2]|0)|0)|0;f=f+(N(c[A+92>>2]|0,c[K>>2]|0)|0)|0;f=f+(N(c[A+84>>2]|0,c[J>>2]|0)|0)|0;f=f+(N(c[A+76>>2]|0,c[I>>2]|0)|0)|0;f=f+(N(c[A+68>>2]|0,c[z>>2]|0)|0)|0;A=f+(N(c[A+60>>2]|0,c[p>>2]|0)|0)|0;f=j+128+(r<<2)|0;A=A+(N(c[f+60>>2]|0,c[o>>2]|0)|0)|0;B=A+(N(c[f+68>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[f+76>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[f+84>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[f+92>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[f+100>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[f+108>>2]|0,c[G>>2]|0)|0)|0;c[g>>2]=G+(N(c[f+116>>2]|0,c[H>>2]|0)|0)>>2;f=h+4|0;g=g+-4|0}else f=h;i=i+1|0;if((i|0)==16)break;else{j=j+128|0;p=p+32|0;h=f}}aa=55476+(u<<2)|0;$=N(c[aa>>2]|0,c[y>>2]|0)|0;$=$+(N(c[aa+56>>2]|0,c[t+(l<<9)+36>>2]|0)|0)|0;$=$+(N(c[aa+48>>2]|0,c[t+(l<<9)+40>>2]|0)|0)|0;$=$+(N(c[aa+40>>2]|0,c[t+(l<<9)+44>>2]|0)|0)|0;$=$+(N(c[aa+32>>2]|0,c[t+(l<<9)+48>>2]|0)|0)|0;$=$+(N(c[aa+24>>2]|0,c[t+(l<<9)+52>>2]|0)|0)|0;$=$+(N(c[aa+16>>2]|0,c[t+(l<<9)+56>>2]|0)|0)|0;c[f>>2]=0-($+(N(c[aa+8>>2]|0,c[t+(l<<9)+60>>2]|0)|0))>>2;x=x+1|0;if((x|0)==(e|0))break;else{f=f+32|0;v=v+1&15}}}m=m+1|0;if((m|0)==(d|0))break;else{s=s+2048|0;t=t+2048|0}}return}function Pf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;if(!d)return;v=a+4096|0;j=(e|0)==0;i=0;o=a+1472|0;p=a+1504|0;while(1){if(!j){r=a+4108+(i*4608|0)|0;u=c[v>>2]|0;w=0;while(1){z=u&1;k=a+(i<<11)+(z<<9)|0;Qf(b+48+(i*4608|0)+(w<<7)|0,u>>>1,k,a+(i<<11)+1024+(z<<9)|0);g=u&-2;q=u+15&14|1;h=z^1;m=53428+(q<<2)|0;A=53428+(g<<2)|0;G=N(c[A>>2]|0,c[k>>2]|0)|0;t=N(c[m>>2]|0,c[a+(i<<11)+(h<<9)>>2]|0)|0;x=N(c[m+56>>2]|0,c[a+(i<<11)+(h<<9)+4>>2]|0)|0;s=N(c[m+48>>2]|0,c[a+(i<<11)+(h<<9)+8>>2]|0)|0;l=N(c[m+40>>2]|0,c[a+(i<<11)+(h<<9)+12>>2]|0)|0;f=N(c[m+32>>2]|0,c[a+(i<<11)+(h<<9)+16>>2]|0)|0;y=N(c[m+24>>2]|0,c[a+(i<<11)+(h<<9)+20>>2]|0)|0;n=N(c[m+16>>2]|0,c[a+(i<<11)+(h<<9)+24>>2]|0)|0;m=N(c[m+8>>2]|0,c[a+(i<<11)+(h<<9)+28>>2]|0)|0;H=N(c[A+56>>2]|0,c[a+(i<<11)+(z<<9)+4>>2]|0)|0;F=N(c[A+48>>2]|0,c[a+(i<<11)+(z<<9)+8>>2]|0)|0;E=N(c[A+40>>2]|0,c[a+(i<<11)+(z<<9)+12>>2]|0)|0;D=N(c[A+32>>2]|0,c[a+(i<<11)+(z<<9)+16>>2]|0)|0;C=N(c[A+24>>2]|0,c[a+(i<<11)+(z<<9)+20>>2]|0)|0;B=N(c[A+16>>2]|0,c[a+(i<<11)+(z<<9)+24>>2]|0)|0;c[r>>2]=H+G+F+E+D+C+B+(N(c[A+8>>2]|0,c[a+(i<<11)+(z<<9)+28>>2]|0)|0)-(x+t+s+l+f+y+n+m)>>2;m=0-g|0;n=0-q|0;y=p+(h<<9)|0;f=53428;l=a+(i<<11)+1024+(h<<9)|0;s=r;t=r+124|0;x=1;while(1){s=s+4|0;H=f+128+(q<<2)|0;G=l+4|0;F=l+8|0;E=l+12|0;D=l+16|0;C=l+20|0;B=l+24|0;A=l+28|0;W=f+128+(g<<2)|0;z=k+60|0;aa=N(c[W+8>>2]|0,c[z>>2]|0)|0;U=N(c[H>>2]|0,c[l>>2]|0)|0;V=N(c[H+56>>2]|0,c[G>>2]|0)|0;T=N(c[H+48>>2]|0,c[F>>2]|0)|0;S=N(c[H+40>>2]|0,c[E>>2]|0)|0;R=N(c[H+32>>2]|0,c[D>>2]|0)|0;Q=N(c[H+24>>2]|0,c[C>>2]|0)|0;O=N(c[H+16>>2]|0,c[B>>2]|0)|0;H=N(c[H+8>>2]|0,c[A>>2]|0)|0;I=k+56|0;ba=N(c[W+16>>2]|0,c[I>>2]|0)|0;J=k+52|0;$=N(c[W+24>>2]|0,c[J>>2]|0)|0;K=k+48|0;_=N(c[W+32>>2]|0,c[K>>2]|0)|0;L=k+44|0;Z=N(c[W+40>>2]|0,c[L>>2]|0)|0;M=k+40|0;Y=N(c[W+48>>2]|0,c[M>>2]|0)|0;P=k+36|0;k=k+32|0;X=N(c[W+56>>2]|0,c[P>>2]|0)|0;c[s>>2]=ba+aa+$+_+Z+Y+X+(N(c[W>>2]|0,c[k>>2]|0)|0)-(V+U+T+S+R+Q+O+H)>>2;H=f+128+(m<<2)|0;O=N(c[H+60>>2]|0,c[k>>2]|0)|0;O=(N(c[H+68>>2]|0,c[P>>2]|0)|0)+O|0;M=O+(N(c[H+76>>2]|0,c[M>>2]|0)|0)|0;L=M+(N(c[H+84>>2]|0,c[L>>2]|0)|0)|0;K=L+(N(c[H+92>>2]|0,c[K>>2]|0)|0)|0;J=K+(N(c[H+100>>2]|0,c[J>>2]|0)|0)|0;I=J+(N(c[H+108>>2]|0,c[I>>2]|0)|0)|0;z=I+(N(c[H+116>>2]|0,c[z>>2]|0)|0)|0;H=f+128+(n<<2)|0;A=z+(N(c[H+116>>2]|0,c[A>>2]|0)|0)|0;B=A+(N(c[H+108>>2]|0,c[B>>2]|0)|0)|0;C=B+(N(c[H+100>>2]|0,c[C>>2]|0)|0)|0;D=C+(N(c[H+92>>2]|0,c[D>>2]|0)|0)|0;E=D+(N(c[H+84>>2]|0,c[E>>2]|0)|0)|0;F=E+(N(c[H+76>>2]|0,c[F>>2]|0)|0)|0;G=F+(N(c[H+68>>2]|0,c[G>>2]|0)|0)|0;c[t>>2]=G+(N(c[H+60>>2]|0,c[l>>2]|0)|0)>>2;x=x+1|0;if((x|0)==16)break;else{f=f+128|0;l=l+32|0;t=t+-4|0}}ba=55476+(q<<2)|0;aa=N(c[ba>>2]|0,c[y>>2]|0)|0;aa=aa+(N(c[ba+56>>2]|0,c[o+(h<<9)+36>>2]|0)|0)|0;aa=aa+(N(c[ba+48>>2]|0,c[o+(h<<9)+40>>2]|0)|0)|0;aa=aa+(N(c[ba+40>>2]|0,c[o+(h<<9)+44>>2]|0)|0)|0;aa=aa+(N(c[ba+32>>2]|0,c[o+(h<<9)+48>>2]|0)|0)|0;aa=aa+(N(c[ba+24>>2]|0,c[o+(h<<9)+52>>2]|0)|0)|0;aa=aa+(N(c[ba+16>>2]|0,c[o+(h<<9)+56>>2]|0)|0)|0;c[r+64>>2]=0-(aa+(N(c[ba+8>>2]|0,c[o+(h<<9)+60>>2]|0)|0))>>2;w=w+1|0;if((w|0)==(e|0))break;else{r=r+128|0;u=u+1&15}}}i=i+1|0;if((i|0)==(d|0))break;else{o=o+2048|0;p=p+2048|0}}return}function Qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;s=c[a>>2]|0;aa=c[a+124>>2]|0;Q=aa+s|0;aa=(s+2048-aa>>12)*4091|0;s=c[a+60>>2]|0;p=c[a+64>>2]|0;I=p+s|0;p=(s+2048-p>>12)*201|0;s=p+aa|0;p=(aa+2048-p>>12)*4076|0;aa=I+Q|0;I=(Q+2048-I>>12)*4076|0;Q=c[a+28>>2]|0;X=c[a+96>>2]|0;q=X+Q|0;X=(Q+2048-X>>12)*3035|0;Q=c[a+32>>2]|0;A=c[a+92>>2]|0;N=A+Q|0;A=(Q+2048-A>>12)*2751|0;Q=A+X|0;A=(X+2048-A>>12)*401|0;X=N+q|0;N=(q+2048-N>>12)*401|0;q=c[a+12>>2]|0;ba=c[a+112>>2]|0;m=ba+q|0;ba=(q+2048-ba>>12)*3857|0;q=c[a+48>>2]|0;n=c[a+76>>2]|0;G=n+q|0;n=(q+2048-n>>12)*1380|0;q=n+ba|0;n=(ba+2048-n>>12)*3166|0;ba=G+m|0;G=(m+2048-G>>12)*3166|0;m=c[a+16>>2]|0;T=c[a+108>>2]|0;r=T+m|0;T=(m+2048-T>>12)*3703|0;m=c[a+44>>2]|0;i=c[a+80>>2]|0;F=i+m|0;i=(m+2048-i>>12)*1751|0;m=i+T|0;i=(T+2048-i>>12)*2598|0;T=F+r|0;F=(r+2048-F>>12)*2598|0;r=c[a+4>>2]|0;$=c[a+120>>2]|0;k=$+r|0;$=(r+2048-$>>12)*4052|0;r=c[a+56>>2]|0;o=c[a+68>>2]|0;H=o+r|0;o=(r+2048-o>>12)*601|0;r=o+$|0;o=($+2048-o>>12)*3920|0;$=H+k|0;H=(k+2048-H>>12)*3920|0;k=c[a+24>>2]|0;R=c[a+100>>2]|0;Z=R+k|0;R=(k+2048-R>>12)*3290|0;k=c[a+36>>2]|0;g=c[a+88>>2]|0;D=g+k|0;g=(k+2048-g>>12)*2440|0;k=g+R|0;g=(R+2048-g>>12)*1189|0;R=D+Z|0;D=(Z+2048-D>>12)*1189|0;Z=c[a+8>>2]|0;_=c[a+116>>2]|0;l=_+Z|0;_=(Z+2048-_>>12)*3973|0;Z=c[a+52>>2]|0;x=c[a+72>>2]|0;Y=x+Z|0;x=(Z+2048-x>>12)*995|0;Z=x+_|0;x=(_+2048-x>>12)*3612|0;_=Y+l|0;Y=(l+2048-Y>>12)*3612|0;l=c[a+20>>2]|0;S=c[a+104>>2]|0;ca=S+l|0;S=(l+2048-S>>12)*3513|0;l=c[a+40>>2]|0;h=c[a+84>>2]|0;E=h+l|0;h=(l+2048-h>>12)*2106|0;l=h+S|0;h=(S+2048-h>>12)*1931|0;S=E+ca|0;E=(ca+2048-E>>12)*1931|0;ca=X+aa|0;X=(aa+2048-X>>12)*4017|0;aa=T+ba|0;T=(ba+2048-T>>12)*799|0;ba=R+$|0;R=($+2048-R>>12)*3406|0;$=S+_|0;S=(_+2048-S>>12)*2276|0;_=Q+s|0;Q=(s+2048-Q>>12)*4017|0;s=m+q|0;m=(q+2048-m>>12)*799|0;q=k+r|0;k=(r+2048-k>>12)*3406|0;r=l+Z|0;l=(Z+2048-l>>12)*2276|0;Z=N+I|0;N=(I+2048-N>>12)*4017|0;I=F+G|0;F=(G+2048-F>>12)*799|0;G=D+H|0;D=(H+2048-D>>12)*3406|0;H=E+Y|0;E=(Y+2048-E>>12)*2276|0;Y=A+p|0;A=(p+2048-A>>12)*4017|0;p=i+n|0;i=(n+2048-i>>12)*799|0;n=g+o|0;g=(o+2048-g>>12)*3406|0;o=h+x|0;h=(x+2048-h>>12)*2276|0;x=$+ba|0;w=aa+ca+2048|0;c[e+480+(b<<2)>>2]=w+x>>12;c[d+(b<<2)>>2]=((w-x>>12)*2896|0)+2048>>12;x=s+_|0;w=r+q|0;a=w+x|0;c[e+448+(b<<2)>>2]=a+2048>>12;M=I+Z|0;L=H+G|0;B=L+M|0;c[e+416+(b<<2)>>2]=B+2048>>12;z=p+Y|0;t=o+n|0;y=t+z|0;a=(y<<1)-a|0;c[e+384+(b<<2)>>2]=a+2048>>12;W=T+X|0;V=S+R|0;U=V+W|0;c[e+352+(b<<2)>>2]=U+2048>>12;P=m+Q|0;O=l+k|0;j=O+P|0;a=(j<<1)-a|0;c[e+320+(b<<2)>>2]=a+2048>>12;K=F+N|0;J=E+D|0;C=J+K|0;B=(C<<1)-B|0;c[e+288+(b<<2)>>2]=B+2048>>12;v=i+A|0;u=h+g|0;f=u+v|0;y=(f<<1)-y|0;a=(y<<1)-a|0;c[e+256+(b<<2)>>2]=a+2048>>12;aa=(ca+2048-aa>>12)*3784|0;$=(ba+2048-$>>12)*1567|0;ba=$+aa|0;c[e+224+(b<<2)>>2]=ba+2048>>12;c[d+256+(b<<2)>>2]=2048-ba+((aa+2048-$>>12)*5792|0)>>12;s=(_+2048-s>>12)*3784|0;r=(q+2048-r>>12)*1567|0;q=r+s|0;a=(q<<1)-a|0;c[e+192+(b<<2)>>2]=a+2048>>12;I=(Z+2048-I>>12)*3784|0;H=(G+2048-H>>12)*1567|0;G=H+I|0;B=(G<<1)-B|0;c[e+160+(b<<2)>>2]=B+2048>>12;p=(Y+2048-p>>12)*3784|0;o=(n+2048-o>>12)*1567|0;n=o+p|0;y=(n<<1)-y|0;a=(y<<1)-a|0;c[e+128+(b<<2)>>2]=a+2048>>12;T=(X+2048-T>>12)*3784|0;S=(R+2048-S>>12)*1567|0;R=S+T|0;U=(R<<1)-U|0;c[e+96+(b<<2)>>2]=U+2048>>12;U=((W+2048-V>>12)*5792|0)-U|0;c[d+128+(b<<2)>>2]=U+2048>>12;c[d+384+(b<<2)>>2]=2048-U+(((T+2048-S>>12)*5792|0)-R<<1)>>12;m=(Q+2048-m>>12)*3784|0;l=(k+2048-l>>12)*1567|0;k=l+m|0;j=(k<<1)-j|0;a=(j<<1)-a|0;c[e+64+(b<<2)>>2]=a+2048>>12;j=((P+2048-O>>12)*5792|0)-j|0;F=(N+2048-F>>12)*3784|0;E=(D+2048-E>>12)*1567|0;D=E+F|0;C=(D<<1)-C|0;B=(C<<1)-B|0;c[e+32+(b<<2)>>2]=B+2048>>12;B=((M+2048-L>>12)*5792|0)-B|0;c[d+64+(b<<2)>>2]=B+2048>>12;C=((K+2048-J>>12)*5792|0)-C|0;B=(C<<1)-B|0;c[d+192+(b<<2)>>2]=B+2048>>12;B=(((I+2048-H>>12)*5792|0)-G<<1)-B|0;c[d+320+(b<<2)>>2]=B+2048>>12;c[d+448+(b<<2)>>2]=((((F+2048-E>>12)*5792|0)-D<<1)-C<<1)+2048-B>>12;i=(A+2048-i>>12)*3784|0;h=(g+2048-h>>12)*1567|0;g=h+i|0;f=(g<<1)-f|0;y=(f<<1)-y|0;t=((z+2048-t>>12)*5792|0)-y|0;a=(y<<1)-a|0;c[e+(b<<2)>>2]=a+2048>>12;a=((x+2048-w>>12)*5792|0)-a|0;c[d+32+(b<<2)>>2]=a+2048>>12;a=(t<<1)-a|0;c[d+96+(b<<2)>>2]=a+2048>>12;a=(j<<1)-a|0;c[d+160+(b<<2)>>2]=a+2048>>12;f=((v+2048-u>>12)*5792|0)-f|0;e=(f<<1)-t|0;a=(e<<1)-a|0;c[d+224+(b<<2)>>2]=a+2048>>12;a=(((s+2048-r>>12)*5792|0)-q<<1)-a|0;c[d+288+(b<<2)>>2]=a+2048>>12;e=(((p+2048-o>>12)*5792|0)-n<<1)-e|0;a=(e<<1)-a|0;c[d+352+(b<<2)>>2]=a+2048>>12;a=((((m+2048-l>>12)*5792|0)-k<<1)-j<<1)-a|0;c[d+416+(b<<2)>>2]=a+2048>>12;c[d+480+(b<<2)>>2]=(((((i+2048-h>>12)*5792|0)-g<<1)-f<<1)-e<<1)+2048-a>>12;return}function Rf(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;c[j>>2]=0;l=(h|0)!=0;t=(g|0)==1;c[k>>2]=l?(t?1:2):t?5:3;c[i>>2]=Hf(f,l?8:9)|0;c[i+4>>2]=Hf(f,c[k>>2]|0)|0;if(!l)if(!g)t=2;else{h=0;do{a[i+8+h>>0]=Hf(f,4)|0;h=h+1|0}while((h|0)!=(g|0));t=2}else t=1;q=(g|0)==0;s=l?9:4;r=l?2:3;p=l^1;o=0;h=0;do{if(!q){n=0;do{l=i+10+(o*116|0)+(n*58|0)|0;b[l>>1]=Hf(f,12)|0;m=i+10+(o*116|0)+(n*58|0)+2|0;b[m>>1]=Hf(f,9)|0;b[i+10+(o*116|0)+(n*58|0)+4>>1]=Hf(f,8)|0;b[i+10+(o*116|0)+(n*58|0)+6>>1]=Hf(f,s)|0;c[j>>2]=(c[j>>2]|0)+(e[l>>1]|0);h=(h|0)==0&(e[m>>1]|0)>288?562:h;m=i+10+(o*116|0)+(n*58|0)+8|0;a[m>>0]=0;if(!(Hf(f,1)|0)){a[i+10+(o*116|0)+(n*58|0)+9>>0]=0;a[i+10+(o*116|0)+(n*58|0)+10>>0]=Hf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=Hf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=Hf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+16>>0]=Hf(f,4)|0;a[i+10+(o*116|0)+(n*58|0)+17>>0]=Hf(f,3)|0}else{u=Hf(f,2)|0;k=u&255;l=i+10+(o*116|0)+(n*58|0)+9|0;a[l>>0]=k;h=(u&255|h|0)==0?563:h;if(k<<24>>24==2&p)h=((h|0)==0?(a[i+8+n>>0]|0)!=0:0)?564:h;k=i+10+(o*116|0)+(n*58|0)+16|0;a[k>>0]=7;a[i+10+(o*116|0)+(n*58|0)+17>>0]=36;if(!(Hf(f,1)|0)){if((a[l>>0]|0)==2)a[k>>0]=8}else a[m>>0]=a[m>>0]|8;a[i+10+(o*116|0)+(n*58|0)+10>>0]=Hf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=Hf(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=4;a[i+10+(o*116|0)+(n*58|0)+13>>0]=Hf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+14>>0]=Hf(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+15>>0]=Hf(f,3)|0}u=Hf(f,r)|0;a[m>>0]=u|d[m>>0];n=n+1|0}while((n|0)!=(g|0))}o=o+1|0}while(o>>>0>>0);return h|0}function Sf(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0;Cb=l;l=l+7296|0;if((l|0)>=(m|0))W(7296);zb=Cb+2448|0;yb=Cb+2432|0;xb=Cb+2416|0;vb=Cb+2400|0;ub=Cb+2384|0;tb=Cb+2368|0;Ab=Cb+2352|0;wb=Cb+2336|0;sb=Cb+2320|0;rb=Cb+16|0;qb=Cb;jb=Cb+7224|0;pb=Cb+7216|0;Bb=Cb+2608|0;nb=Cb+2464|0;lb=g+28|0;hb=c[lb>>2]|0;mb=(hb&16384|0)==0;k=c[g+20>>2]<<((mb^1)&1);k=(k>>>15&1)+(mb?-8:-5)+(k>>>7&15)|0;hb=2-(hb>>>12&1)|0;if(!hb){Bb=0;l=Cb;return Bb|0}kb=(j|0)==0;ib=55604+(k*12|0)|0;mb=55604+(k*12|0)+8|0;fb=55604+(k*12|0)+4|0;Ga=i+184|0;db=g+8|0;Ha=rb+4|0;Sa=rb+8|0;Wa=rb+12|0;Xa=rb+16|0;Ya=rb+20|0;Za=rb+24|0;_a=rb+28|0;$a=rb+32|0;ab=rb+36|0;Ia=rb+40|0;Ja=rb+44|0;Ka=rb+48|0;La=rb+52|0;Ma=rb+56|0;Na=rb+60|0;Oa=rb+64|0;Pa=rb+68|0;Qa=rb+72|0;Ra=rb+76|0;Ta=rb+80|0;Va=rb+84|0;R=c[27049]|0;cb=g+4|0;T=jb+4|0;U=jb+8|0;eb=g+9264|0;V=rb+2|0;fa=rb+4|0;qa=rb+6|0;Aa=rb+8|0;Ba=rb+10|0;Ca=rb+12|0;Da=rb+14|0;Ea=rb+16|0;Fa=rb+18|0;X=rb+20|0;Y=rb+22|0;Z=rb+24|0;_=rb+26|0;$=rb+28|0;aa=rb+30|0;ba=rb+32|0;ca=rb+34|0;da=rb+36|0;ea=rb+38|0;ga=rb+40|0;ha=rb+42|0;ia=rb+44|0;ja=rb+46|0;ka=rb+48|0;la=rb+50|0;ma=rb+52|0;na=rb+54|0;oa=rb+56|0;pa=rb+58|0;ra=rb+60|0;sa=rb+62|0;ta=rb+64|0;ua=rb+66|0;va=rb+68|0;wa=rb+70|0;xa=rb+72|0;ya=rb+74|0;za=rb+76|0;S=Bb+2304|0;bb=0;a:while(1){P=i+10+(bb*116|0)|0;if(!kb){L=c[ib>>2]|0;O=(bb|0)==0;M=0;do{y=i+10+(bb*116|0)+(M*58|0)|0;k=pb+(M<<2)|0;c[k>>2]=L;z=i+10+(bb*116|0)+(M*58|0)+9|0;p=(a[z>>0]|0)==2;if(p){K=c[((a[i+10+(bb*116|0)+(M*58|0)+8>>0]&8)==0?fb:mb)>>2]|0;c[k>>2]=K;k=K}else k=L;if(!(c[lb>>2]&4096)){if(O)o=0;else o=d[i+8+M>>0]|0;K=f;q=c[K+4>>2]|0;r=rb;c[r>>2]=c[K>>2];c[r+4>>2]=q;r=e[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;q=d[115445+(r<<1)>>0]|0;r=d[115445+(r<<1)+1>>0]|0;if(p){n=18-((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)|0;o=n;p=0;while(1){o=o+-1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=Hf(f,q)|0;if(!o)break;else p=p+1|0}a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=Hf(f,r)|0;a[n+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[n+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;J=n|4;a[n+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+J>>0]=Hf(f,r)|0;a[J+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[J+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[J+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[J+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[J+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[J+6+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;K=n|12;a[J+7+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+18+K>>0]=Hf(f,r)|0;a[K+1+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[K+2+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[K+3+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[K+4+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;a[K+5+(i+10+(bb*116|0)+(M*58|0)+18)>>0]=Hf(f,r)|0;K=y+(n|36)|0;a[K>>0]=0;a[K+1>>0]=0;a[K+2>>0]=0}else{if(!(o&8)){a[i+10+(bb*116|0)+(M*58|0)+18>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=Hf(f,q)|0;n=(Hf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+18>>0]=a[i+10+(M*58|0)+18>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+19>>0]=a[i+10+(M*58|0)+19>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+20>>0]=a[i+10+(M*58|0)+20>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+21>>0]=a[i+10+(M*58|0)+21>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+22>>0]=a[i+10+(M*58|0)+22>>0]|0;n=a[i+10+(M*58|0)+23>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+23>>0]=n;if(!(o&4)){a[i+10+(bb*116|0)+(M*58|0)+24>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=Hf(f,q)|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=Hf(f,q)|0;n=(Hf(f,q)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+24>>0]=a[i+10+(M*58|0)+24>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+25>>0]=a[i+10+(M*58|0)+25>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+26>>0]=a[i+10+(M*58|0)+26>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+27>>0]=a[i+10+(M*58|0)+27>>0]|0;n=a[i+10+(M*58|0)+28>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+28>>0]=n;if(!(o&2)){a[i+10+(bb*116|0)+(M*58|0)+29>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=Hf(f,r)|0;n=(Hf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+29>>0]=a[i+10+(M*58|0)+29>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+30>>0]=a[i+10+(M*58|0)+30>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+31>>0]=a[i+10+(M*58|0)+31>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+32>>0]=a[i+10+(M*58|0)+32>>0]|0;n=a[i+10+(M*58|0)+33>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+33>>0]=n;if(!(o&1)){a[i+10+(bb*116|0)+(M*58|0)+34>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=Hf(f,r)|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=Hf(f,r)|0;n=(Hf(f,r)|0)&255}else{a[i+10+(bb*116|0)+(M*58|0)+34>>0]=a[i+10+(M*58|0)+34>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+35>>0]=a[i+10+(M*58|0)+35>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+36>>0]=a[i+10+(M*58|0)+36>>0]|0;a[i+10+(bb*116|0)+(M*58|0)+37>>0]=a[i+10+(M*58|0)+37>>0]|0;n=a[i+10+(M*58|0)+38>>0]|0}a[i+10+(bb*116|0)+(M*58|0)+38>>0]=n;a[i+10+(bb*116|0)+(M*58|0)+39>>0]=0}n=Ef(rb,f)|0}else{v=(M|0)==0?0:Ga;n=c[db>>2]|0;K=f;r=c[K+4>>2]|0;o=rb;c[o>>2]=c[K>>2];c[o+4>>2]=r;o=b[i+10+(bb*116|0)+(M*58|0)+6>>1]|0;r=o&65535;if(p)w=((d[i+10+(bb*116|0)+(M*58|0)+8>>0]|0)>>>3&1)+1&255;else w=0;if((v|0)!=0&(n&1|0)!=0){n=r>>>1;do if((o&65535)>=360)if((o&65535)<488){t=n+-180|0;u=4;o=t>>>4&3;s=t>>>2&3;t=t&3;break}else{t=n+-244|0;s=(t>>>0)/3|0;u=5;o=s;s=t-(s*3|0)|0;t=0;break}else{K=(n>>>0)%36|0;t=(K>>>0)/6|0;u=3;o=(r>>>0)/72|0;s=t;t=K-(t*6|0)|0}while(0);p=115373+(u*12|0)+(w<<2)|0;r=(1<>0]|0))n=0;else{q=0;while(1){K=Hf(f,o)|0;a[i+10+(bb*116|0)+(M*58|0)+18+q>>0]=K;n=q+1|0;a[v+18+q>>0]=(K|0)==(r|0)&1;if(n>>>0<(d[p>>0]|0)>>>0)q=n;else break}}r=(1<>0]|0){q=0;o=n;while(1){K=Hf(f,s)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}r=(1<>0]|0){q=0;o=n;while(1){K=Hf(f,t)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==(r|0)&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115373+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){K=Hf(f,0)|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=K;n=o+1|0;a[v+18+o>>0]=(K|0)==0&1;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)do{a[i+10+(bb*116|0)+(M*58|0)+18+n>>0]=0;a[v+18+n>>0]=0;n=n+1|0}while((n|0)!=39)}else{do if((o&65535)>=400)if((o&65535)<500){s=r+-400|0;u=1;q=(s>>>0)/20|0;s=(s>>>2>>>0)%5|0;t=o&3;r=0;break}else{t=r+-500|0;s=(t>>>0)/3|0;u=i+10+(bb*116|0)+(M*58|0)+8|0;a[u>>0]=a[u>>0]|4;u=2;q=s;s=t-(s*3|0)|0;t=0;r=0;break}else{u=0;q=(r>>>0)/80|0;s=(r>>>4>>>0)%5|0;t=r>>>2&3;r=r&3}while(0);o=115373+(u*12|0)+(w<<2)|0;if(!(a[o>>0]|0))n=0;else{p=0;while(1){n=p+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+p>>0]=Hf(f,q)|0;if(n>>>0<(d[o>>0]|0)>>>0)p=n;else break}}p=115373+(u*12|0)+(w<<2)+1|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=Hf(f,s)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115373+(u*12|0)+(w<<2)+2|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=Hf(f,t)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}p=115373+(u*12|0)+(w<<2)+3|0;if(a[p>>0]|0){q=0;o=n;while(1){n=o+1|0;a[i+10+(bb*116|0)+(M*58|0)+18+o>>0]=Hf(f,r)|0;q=q+1|0;if(q>>>0>=(d[p>>0]|0)>>>0)break;else o=n}}if(n>>>0<39)yX(y+(n+18)|0,0,39-n|0)|0}n=Ef(rb,f)|0}x=Bb+(M*2304|0)|0;o=(e[y>>1]|0)-n|0;if((o|0)<0){ob=566;break a}t=(e[i+10+(bb*116|0)+(M*58|0)+4>>1]|0)+-210|0;K=i+10+(bb*116|0)+(M*58|0)+8|0;p=d[K>>0]|0;u=(p>>>1&1)+1|0;do if((a[z>>0]|0)==2){if(!(p&8)){n=0;p=0}else{q=p<<29>>31;n=0;p=0;while(1){c[rb+(p<<2)>>2]=t-((q&d[115477+p>>0])+(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]|0)<>0]|0)|0;if(n>>>0<36)p=r;else{p=r;break}}}r=t-(d[i+10+(bb*116|0)+(M*58|0)+13>>0]<<3)|0;s=t-(d[i+10+(bb*116|0)+(M*58|0)+14>>0]<<3)|0;q=t-(d[i+10+(bb*116|0)+(M*58|0)+15>>0]<<3)|0;if(n>>>0<576)while(1){c[rb+(p<<2)>>2]=r-(d[i+10+(bb*116|0)+(M*58|0)+18+p>>0]<>2]=s-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>2]=q-(d[i+10+(bb*116|0)+(M*58|0)+18+J>>0]<>0]|0)*3|0)+n|0;if(n>>>0>=576)break;else p=p+3|0}}else{c[rb>>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+18>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+19>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+20>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+21>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+22>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+23>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+24>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+25>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+26>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+27>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+28>>0]<>0]|0;if(!(p&4)){c[Ja>>2]=t-(n<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+30>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+31>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+32>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+33>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+34>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+35>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+36>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+37>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+38>>0]<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]=t-(n+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+30>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+31>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+32>>0]|0)+1<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+33>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+34>>0]|0)+2<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+35>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+36>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+37>>0]|0)+3<>2]=t-((d[i+10+(bb*116|0)+(M*58|0)+38>>0]|0)+2<>2]=t-(d[i+10+(bb*116|0)+(M*58|0)+39>>0]<>2]|0;q=c[q+4>>2]|0;u=qb;c[u>>2]=p;c[u+4>>2]=q;Gf(f,o);q=rX(p|0,q|0,48)|0;q=(31-q&-8)+q|0;p=Hf(qb,q)|0;u=d[i+10+(bb*116|0)+(M*58|0)+10>>0]|0;s=c[53172+(u<<3)>>2]|0;if(!s){Q=165;break a}t=Bb+(M*2304|0)+(d[k>>0]<<2)|0;y=k+1|0;n=o-q|0;r=c[rb>>2]|0;k=b[i+10+(bb*116|0)+(M*58|0)+2>>1]|0;if((o|0)>0&k<<16>>16!=0){J=i+10+(bb*116|0)+(M*58|0)+17|0;I=k&65535;B=r;v=Ha;z=e[53172+(u<<3)+4>>1]|0;w=(d[i+10+(bb*116|0)+(M*58|0)+16>>0]|0)+1|0;o=0;A=0;r=e[53172+(u<<3)+6>>1]|0;H=0;F=x;while(1){I=I+-1|0;if((F|0)==(t|0)){x=y+1|0;t=F+(d[y>>0]<<2)|0;k=w+-1|0;if(!k){if(!o)k=(d[J>>0]|0)+1|0;else k=0;o=o+1|0;r=d[i+10+(bb*116|0)+(M*58|0)+10+o>>0]|0;s=c[53172+(r<<3)>>2]|0;if(!s){Q=165;break a}else{u=e[53172+(r<<3)+4>>1]|0;r=e[53172+(r<<3)+6>>1]|0}}else u=z;y=c[v>>2]|0;G=y;v=v+4|0;z=u;E=k;D=o;u=(B|0)==(y|0)?A:0;y=x;C=r}else{G=B;E=w;D=o;u=A;C=r}k=31-q&-8;if((q|0)<21){p=Hf(qb,k)|0|p<>>(q-C|0)&(1<>0]&1)){o=C;do{q=q-o|0;k=b[s+(k<<1)>>1]|0;o=(k&65535)>>>1&7;k=(p>>>(q-o|0)&(1<>>4&65535)|0}while(!(a[s+(k<<1)>>0]&1))}A=s+(k<<1)|0;o=b[A>>1]|0;q=q-((o&65535)>>>1&7)|0;o=(o&65535)>>>4;k=o&15;w=k&65535;b:do if(!z){if(!(k<<16>>16)){o=u;k=0}else{k=1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[ub>>3]=+(o|0)*3.725290298461914e-09;c[ub+8>>2]=k;wV(R,115499,ub)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else{o=u;k=c[jb+(w<<2)>>2]|0}B=q+-1|0;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8&15;w=B&65535;if(!(B<<16>>16)){x=p;k=0;u=o}else{k=1<>2]|0;o=B&134217727;k=(B>>>27)+k|0;do if((k|0)>=0)if((k|0)>4){h[vb>>3]=+(o|0)*3.725290298461914e-09;c[vb+8>>2]=k;wV(R,115499,vb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(r)k=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;o=u}else k=c[jb+(w<<2)>>2]|0;u=q+-1|0;x=p;q=u;k=(1<>>0<(z+2|0)>>>0){p=Hf(qb,16)|0|p<<16;n=n+-16|0;q=q+16|0}q=q-z|0;r=(G|0)%4|0;k=c[55712+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[sb>>3]=+(o|0)*3.725290298461914e-09;c[sb+8>>2]=k;wV(R,115499,sb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(!r){Q=118;break c}k=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;Q=118;break}default:{k=1<>2]|0;Q=118;break c}u=k|u;r=(G|0)%4|0;k=c[55712+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[wb>>3]=+(o|0)*3.725290298461914e-09;c[wb+8>>2]=k;wV(R,115499,wb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>Q}while(0);if(r)k=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;Q=118}}while(0);if((Q|0)==118){Q=0;B=q+-1|0;x=p;q=B;k=(1<>2]=k;B=(e[A>>1]|0)>>>8;w=B&15;d:do switch(B&15){case 0:{k=0;break b}case 15:{if(q>>>0<(z+1|0)>>>0){p=Hf(qb,16)|0|x<<16;n=n+-16|0;q=q+16|0}else p=x;q=q-z|0;r=(G|0)%4|0;k=c[55712+((p>>>q&(1<>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[Ab>>3]=+(o|0)*3.725290298461914e-09;c[Ab+8>>2]=k;wV(R,115499,Ab)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(!r)break d;k=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;break}default:{k=1<>2]|0;break d}u=k|u;p=(G|0)%4|0;k=c[55712+(w<<2)>>2]|0;o=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){h[tb>>3]=+(o|0)*3.725290298461914e-09;c[tb+8>>2]=k;wV(R,115499,tb)|0;k=2147483647;break}else{k=o<>>0>31?0:(1<<~k)+o>>B}while(0);if(p)k=N((c[88540+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[jb+(w<<2)>>2]=k;p=x}}while(0);B=q+-1|0;x=p;q=B;k=(1<>2]=k;k=H+2|0;o=q+n|0;if(!((I|0)!=0&(o|0)>0)){w=q;u=G;s=y;break}else{p=x;B=G;w=E;o=D;A=u;r=C;H=k;F=Bb+(M*2304|0)+(k<<2)|0}}}else{x=p;w=q;u=r;v=Ha;s=y;k=0}if((o|0)<0){ob=568;break a}B=c[53164+((a[K>>0]&1)<<2)>>2]|0;q=(u|0)/4|0;r=u-(q<<2)|0;p=q+2|0;do if((u|0)>=-11)if((u|0)>11){h[xb>>3]=.25;c[xb+8>>2]=p;wV(R,115499,xb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-q)+67108864>>p}while(0);if(r)p=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0;if((o|0)>0&k>>>0<573){o=x;x=s;while(1){z=Bb+(M*2304|0)+(k<<2)|0;if((w|0)<10){A=Hf(qb,16)|0|o<<16;n=n+-16|0;o=w+16|0}else{A=o;o=w}s=o+-4|0;q=B+((A>>>s&15)<<1)|0;r=a[q>>0]|0;if(!(r&1)){r=b[q>>1]|0;q=(r&65535)>>>1&7;r=B+((A>>>(s-q|0)&(1<>>4&65535)<<1)|0;q=r;r=a[r>>0]|0;o=s}y=o-((r&255)>>>1&7)|0;if((z|0)==(t|0)){w=x+1|0;t=t+(d[x>>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[yb>>3]=.25;c[yb+8>>2]=o;wV(R,115499,yb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);r=a[q>>0]|0;u=o;v=v+4|0;s=w}else s=x;x=(r&16)==0;K=y+-1|0;o=0-p|0;y=x?y:K;c[z>>2]=x?0:(1<>0]&32)==0;x=y+-1|0;y=K?y:x;c[z+4>>2]=K?0:(1<>0]<<2)|0;s=c[v>>2]|0;do if((u|0)==(s|0))o=u;else{p=(s|0)/4|0;r=s-(p<<2)|0;o=p+2|0;do if((s|0)>=-11)if((s|0)>11){h[zb>>3]=.25;c[zb+8>>2]=o;wV(R,115499,zb)|0;p=2147483647;break}else{p=67108864<>>0>31?0:(1<<-3-p)+67108864>>K}while(0);if(!r){o=s;break}o=s;p=N((c[88540+(r+3<<2)>>2]|0)+32768>>16,p+2048>>12)|0}while(0);u=o;v=v+4|0;r=p;s=w;o=0-p|0}else r=p;K=(a[q>>0]&64)==0;J=y+-1|0;w=K?y:J;c[x>>2]=K?0:(1<>0]|0)<0;K=w+-1|0;w=J?K:w;c[x+4>>2]=J?((1<>>0<573&(o|0)>0))break;else{o=A;p=r;x=s}}}if((n|0)<=-65){Q=202;break a}k=(o|0)<0?k+-4|0:k;if((k|0)<576)yX(Bb+(M*2304|0)+(k<<2)|0,0,((((k|0)==575?576:575)-k|0)>>>1<<3)+8|0)|0;M=M+1|0}while(M>>>0>>0)}if((c[cb>>2]|0)==2?(gb=c[db>>2]|0,gb|0):0){w=c[pb>>2]|0;k=a[i+10+(bb*116|0)+9>>0]|0;if(k<<24>>24!=(a[i+10+(bb*116|0)+67>>0]|0)){Q=276;break}n=a[i+10+(bb*116|0)+66>>0]|0;if((n^a[i+10+(bb*116|0)+8>>0])&8){Q=276;break}O=gb&65535;b[rb>>1]=O;b[V>>1]=O;b[fa>>1]=O;b[qa>>1]=O;b[Aa>>1]=O;b[Ba>>1]=O;b[Ca>>1]=O;b[Da>>1]=O;b[Ea>>1]=O;b[Fa>>1]=O;b[X>>1]=O;b[Y>>1]=O;b[Z>>1]=O;b[_>>1]=O;b[$>>1]=O;b[aa>>1]=O;b[ba>>1]=O;b[ca>>1]=O;b[da>>1]=O;b[ea>>1]=O;b[ga>>1]=O;b[ha>>1]=O;b[ia>>1]=O;b[ja>>1]=O;b[ka>>1]=O;b[la>>1]=O;b[ma>>1]=O;b[na>>1]=O;b[oa>>1]=O;b[pa>>1]=O;b[ra>>1]=O;b[sa>>1]=O;b[ta>>1]=O;b[ua>>1]=O;b[va>>1]=O;b[wa>>1]=O;b[xa>>1]=O;b[ya>>1]=O;b[za>>1]=O;e:do if(gb&1|0){v=c[lb>>2]|0;c[lb>>2]=v|256;if(k<<24>>24==2){c[U>>2]=0;c[T>>2]=0;c[jb>>2]=0;if(n&8){q=0;n=0;r=S;k=0;do{Q=k;k=k+1|0;Q=a[w+Q>>0]|0;p=Q&255;f:do if(Q<<24>>24){o=0;do{if(c[r+(o<<2)>>2]|0){n=k;break f}o=o+1|0}while(o>>>0

>>0)}while(0);r=r+(p<<2)|0;q=q+p|0}while(q>>>0<36);if(q>>>0<576){o=r;Q=220}else Q=228}else{q=0;n=0;o=S;k=0;Q=220}if((Q|0)==220){Q=0;s=0;t=k;u=0;while(1){O=a[w+t>>0]|0;t=t+1|0;r=O&255;g:do if(!(O<<24>>24))p=s;else{p=0;while(1){if(c[o+(p<<2)>>2]|0)break;p=p+1|0;if(p>>>0>=r>>>0){p=s;break g}}c[jb+(u<<2)>>2]=t;p=t}while(0);q=q+r|0;if(q>>>0>=576)break;else{s=p;o=o+(r<<2)|0;u=((u+1|0)>>>0)%3|0}}if(!p)Q=228;else{n=k;q=p}}if((Q|0)==228){Q=0;q=0}if(n|0){o=gb&65534;p=0;do{b[rb+(p<<1)>>1]=o;p=p+1|0}while((p|0)!=(n|0))}if(k>>>0>>0){o=gb&65534;n=0;while(1){if(k>>>0<(c[jb+(n<<2)>>2]|0)>>>0)b[rb+(k<<1)>>1]=o;k=k+1|0;if((k|0)==(q|0))break;else n=((n+1|0)>>>0)%3|0}}}else{k=0;q=0;r=S;s=0;while(1){O=a[w+s>>0]|0;s=s+1|0;p=O&255;h:do if(!(O<<24>>24))o=k;else{n=0;while(1){if(c[r+(n<<2)>>2]|0){o=s;break h}n=n+1|0;if(n>>>0>=p>>>0){o=k;break}}}while(0);q=q+p|0;if(q>>>0>=576)break;else{k=o;r=r+(p<<2)|0}}if(o|0){k=gb&65534;n=0;do{b[rb+(n<<1)>>1]=k;n=n+1|0}while((n|0)!=(o|0))}}if(!(v&4096)){r=0;s=0;while(1){k=a[w+s>>0]|0;q=k&255;n=rb+(s<<1)|0;o=b[n>>1]|0;do if(o&1|0){P=a[i+10+(bb*116|0)+76+s>>0]|0;p=P&255;if((P&255)>6){b[n>>1]=o&65534;break}if(k<<24>>24){o=(c[88688+(p<<2)>>2]|0)+32768>>16;n=(c[88688+(6-p<<2)>>2]|0)+32768>>16;k=0;do{P=k+r|0;M=Bb+(P<<2)|0;O=(c[M>>2]|0)+2048>>12;c[M>>2]=N(O,o)|0;c[Bb+2304+(P<<2)>>2]=N(O,n)|0;k=k+1|0}while((k|0)!=(q|0))}}while(0);r=r+q|0;if(r>>>0>=576)break e;else s=s+1|0}}p=b[i+10+(bb*116|0)+64>>1]&1;r=0;s=0;while(1){o=a[w+s>>0]|0;q=o&255;k=rb+(s<<1)|0;n=b[k>>1]|0;i:do if(n&1|0){if(a[P+192+s>>0]|0){b[k>>1]=n&65534;break}k=a[i+10+(bb*116|0)+76+s>>0]|0;n=k&255;if(o<<24>>24){if(!(k<<24>>24)){k=0;while(1){O=k+r|0;c[Bb+2304+(O<<2)>>2]=c[Bb+(O<<2)>>2];k=k+1|0;if((k|0)==(q|0))break i}}o=(c[88568+(p*60|0)+((n+-1|0)>>>1<<2)>>2]|0)+32768>>16;if(!(n&1)){k=0;do{O=k+r|0;c[Bb+2304+(O<<2)>>2]=N((c[Bb+(O<<2)>>2]|0)+2048>>12,o)|0;k=k+1|0}while((k|0)!=(q|0))}else{k=0;do{O=k+r|0;L=Bb+(O<<2)|0;M=c[L>>2]|0;c[L>>2]=N(M+2048>>12,o)|0;c[Bb+2304+(O<<2)>>2]=M;k=k+1|0}while((k|0)!=(q|0))}}}while(0);r=r+q|0;if(r>>>0>=576)break;else s=s+1|0}}while(0);if(gb&2|0){c[lb>>2]=c[lb>>2]|512;o=0;p=0;while(1){P=a[w+p>>0]|0;k=P&255;if(P<<24>>24?(b[rb+(p<<1)>>1]|0)==2:0){n=0;do{P=n+o|0;L=Bb+(P<<2)|0;P=Bb+2304+(P<<2)|0;O=c[P>>2]|0;M=(c[L>>2]|0)+2048|0;c[L>>2]=(M+O>>12)*2896;c[P>>2]=(M-O>>12)*2896;n=n+1|0}while((n|0)!=(k|0))}o=o+k|0;if(o>>>0>=576)break;else p=p+1|0}}}if(!kb){A=bb*18|0;z=0;do{y=g+48+(z*4608|0)+(A<<7)|0;x=i+10+(bb*116|0)+(z*58|0)+9|0;w=Bb+(z*2304|0)|0;if((a[x>>0]|0)==2){k=c[pb+(z<<2)>>2]|0;v=(a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8)==0;if(v)u=0;else{o=0;while(1){n=k+1|0;o=o+(d[k>>0]|0)|0;if(o>>>0>=36){u=2;k=n;break}else k=n}};c[qb>>2]=0;c[qb+4>>2]=0;c[qb+8>>2]=0;c[jb>>2]=u;c[T>>2]=u;c[U>>2]=u;t=u*18|0;o=d[k>>0]|0;s=t;k=k+1|0;n=0;while(1){if(!o){r=d[k>>0]|0;k=k+1|0;n=((n+1|0)>>>0)%3|0}else r=o;O=c[Bb+(z*2304|0)+(s<<2)>>2]|0;p=jb+(n<<2)|0;o=c[p>>2]|0;q=qb+(n<<2)|0;P=c[q>>2]|0;Q=P+1|0;c[q>>2]=Q;c[rb+(o*72|0)+(n*24|0)+(P<<2)>>2]=O;if((Q|0)==6){c[q>>2]=0;c[p>>2]=o+1}s=s+1|0;if((s|0)==576)break;else o=r+-1|0}wX(Bb+(z*2304|0)+(t<<2)|0,rb+(u*72|0)|0,(N(u,-72)|0)+2304|0)|0;if(!v)Tf(w,36)}else Tf(w,576);k=a[x>>0]|0;n=a[i+10+(bb*116|0)+(z*58|0)+8>>0]&8;if(k<<24>>24==2&n<<24>>24==0){Wf(w,nb);Vf(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);Wf(Bb+(z*2304|0)+72|0,nb);Vf(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}else{Q=n<<24>>24==0?k&255:0;Uf(w,nb,Q);Vf(nb,(c[eb>>2]|0)+(z*2304|0)|0,y,0);Uf(Bb+(z*2304|0)+72|0,nb,Q);Vf(nb,(c[eb>>2]|0)+(z*2304|0)+72|0,y,1)}n=y+132|0;P=y+388|0;O=c[P>>2]|0;c[n>>2]=0-(c[n>>2]|0);n=y+644|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+900|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1156|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1412|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+1668|0;Q=c[n>>2]|0;c[P>>2]=0-O;P=y+1924|0;O=c[P>>2]|0;c[n>>2]=0-Q;n=y+2180|0;Q=c[n>>2]|0;c[P>>2]=0-O;c[n>>2]=0-Q;n=576;while(1){k=n;n=n+-1|0;if(c[Bb+(z*2304|0)+(n<<2)>>2]|0)break;if(n>>>0<=36){k=36;break}}v=32-(((576-k|0)>>>0)/18|0)|0;k=a[x>>0]|0;n=v>>>0>2;j:do if(k<<24>>24==2)if(n){k=36;n=2;while(1){Wf(Bb+(z*2304|0)+(k<<2)|0,nb);Vf(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break}else k=k+18|0}}else Q=312;else if(n){o=36;n=2;while(1){Uf(Bb+(z*2304|0)+(o<<2)|0,nb,k&255);Vf(nb,(c[eb>>2]|0)+(z*2304|0)+(n*72|0)|0,y,n);if(n&1|0){Q=y+128+(n<<2)|0;O=y+384+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=y+640+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+896+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1152+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1408+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+1664+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;O=y+1920+(n<<2)|0;M=c[O>>2]|0;c[Q>>2]=0-P;Q=y+2176+(n<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-M;c[Q>>2]=0-P}n=n+1|0;if(n>>>0>=v>>>0){Q=311;break j}k=a[x>>0]|0;o=o+18|0}}else Q=312;while(0);if((Q|0)==311?(Q=0,v>>>0<32):0)Q=312;if((Q|0)==312){Q=0;w=c[eb>>2]|0;do{P=w+(z*2304|0)+(v*72|0)|0;c[g+48+(z*4608|0)+(A<<7)+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+4|0;k=y+128+(v<<2)|0;c[k>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+8|0;c[y+256+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+12|0;r=y+384+(v<<2)|0;c[r>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+16|0;c[y+512+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+20|0;s=y+640+(v<<2)|0;c[s>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+24|0;c[y+768+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+28|0;t=y+896+(v<<2)|0;c[t>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+32|0;c[y+1024+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+36|0;u=y+1152+(v<<2)|0;c[u>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+40|0;c[y+1280+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+44|0;n=y+1408+(v<<2)|0;c[n>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+48|0;c[y+1536+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+52|0;o=y+1664+(v<<2)|0;c[o>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+56|0;c[y+1792+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+60|0;p=y+1920+(v<<2)|0;c[p>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+64|0;c[y+2048+(v<<2)>>2]=c[P>>2];c[P>>2]=0;P=w+(z*2304|0)+(v*72|0)+68|0;q=y+2176+(v<<2)|0;c[q>>2]=c[P>>2];c[P>>2]=0;if(v&1|0){O=c[r>>2]|0;c[k>>2]=0-(c[k>>2]|0);P=c[s>>2]|0;c[r>>2]=0-O;O=c[t>>2]|0;c[s>>2]=0-P;P=c[u>>2]|0;c[t>>2]=0-O;O=c[n>>2]|0;c[u>>2]=0-P;P=c[o>>2]|0;c[n>>2]=0-O;O=c[p>>2]|0;c[o>>2]=0-P;P=c[q>>2]|0;c[p>>2]=0-O;c[q>>2]=0-P}v=v+1|0}while(v>>>0<32)}z=z+1|0}while((z|0)!=(j|0))}bb=bb+1|0;if(bb>>>0>=hb>>>0){k=0;Q=318;break}}if((Q|0)==165)ob=567;else if((Q|0)==202)Ua(115532,115364,1253,115574);else if((Q|0)==276){Bb=569;l=Cb;return Bb|0}else if((Q|0)==318){l=Cb;return k|0}Bb=ob;l=Cb;return Bb|0}function Tf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+(b<<2)|0;if((b|0)<=18)return;b=a+72|0;do{g=b+-4|0;e=c[b>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-2107)|0)+(f*3512|0);c[b>>2]=(N(f,-2107)|0)+((e+2048>>12)*3512|0);e=b+-8|0;f=b+4|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-1932)|0)+(a*3612|0);c[f>>2]=(N(a,-1932)|0)+((g+2048>>12)*3612|0);f=b+-12|0;g=b+8|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048>>12;c[f>>2]=(N(2048-a>>12,-1284)|0)+(e*3890|0);c[g>>2]=(N(e,-1284)|0)+((a+2048>>12)*3890|0);g=b+-16|0;a=b+12|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(N(2048-e>>12,-745)|0)+(f*4028|0);c[a>>2]=(N(f,-745)|0)+((e+2048>>12)*4028|0);a=b+-20|0;e=b+16|0;f=c[e>>2]|0;g=(c[a>>2]|0)+2048>>12;c[a>>2]=(N(2048-f>>12,-387)|0)+(g*4078|0);c[e>>2]=(N(g,-387)|0)+((f+2048>>12)*4078|0);e=b+-24|0;f=b+20|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(N(2048-g>>12,-168)|0)+(a*4093|0);c[f>>2]=(N(a,-168)|0)+((g+2048>>12)*4093|0);f=b+-28|0;g=b+24|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048|0;c[f>>2]=(N(2048-a>>12,-58)|0)+(e&-4096);c[g>>2]=(N(e>>12,-58)|0)+(a+2048&-4096);g=b+-32|0;a=b+28|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048|0;c[g>>2]=(N(2048-e>>12,-15)|0)+(f&-4096);c[a>>2]=(N(f>>12,-15)|0)+(e+2048&-4096);b=b+72|0}while(b>>>0>>0);return}function Uf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;o=((c[a>>2]|0)+2048>>12)*8184|0;g=((c[a+4>>2]|0)+2048>>12)*8122|0;O=((c[a+8>>2]|0)+2048>>12)*7998|0;Z=((c[a+12>>2]|0)+2048>>12)*7813|0;X=((c[a+16>>2]|0)+2048>>12)*7568|0;V=((c[a+20>>2]|0)+2048>>12)*7266|0;ca=((c[a+24>>2]|0)+2048>>12)*6909|0;L=((c[a+28>>2]|0)+2048>>12)*6499|0;Q=((c[a+32>>2]|0)+2048>>12)*6040|0;ba=((c[a+36>>2]|0)+2048>>12)*5534|0;P=((c[a+40>>2]|0)+2048>>12)*4987|0;f=((c[a+44>>2]|0)+2048>>12)*4402|0;z=((c[a+48>>2]|0)+2048>>12)*3783|0;R=((c[a+52>>2]|0)+2048>>12)*3135|0;m=((c[a+56>>2]|0)+2048>>12)*2463|0;t=((c[a+60>>2]|0)+2048>>12)*1773|0;M=((c[a+64>>2]|0)+2048>>12)*1069|0;W=((c[a+68>>2]|0)+2048>>12)*357|0;S=W+o|0;Y=M+g|0;e=t+O|0;a=m+Z|0;u=R+X|0;l=z+V|0;J=f+ca|0;_=P+L|0;K=ba+Q|0;$=a+l|0;l=a-l|0;a=e+J|0;e=J-e|0;J=Y+_|0;aa=S+K|0;S=K-S|0;K=a+$+aa|0;U=e+2048|0;n=N(U+l>>12,-5266)|0;l=l+2048|0;T=(l-S>>12)*8068|0;U=N(S+U>>12,-2802)|0;Y=N(2048-_+Y>>12,-7094)|0;_=N(a+2048-aa>>12,-7698)|0;$=$+2048|0;aa=N($-aa>>12,-1423)|0;a=N($-a>>12,-6275)|0;$=J+u|0;J=(u<<1)-J|0;W=(o+2048-W>>12)*8161|0;M=(g+2048-M>>12)*7913|0;t=(O+2048-t>>12)*7424|0;m=(Z+2048-m>>12)*6710|0;R=X+2048-R>>12;z=(V+2048-z>>12)*4699|0;f=(ca+2048-f>>12)*3462|0;P=(L+2048-P>>12)*2120|0;ba=(Q+2048-ba>>12)*714|0;Q=m+z|0;z=m-z|0;m=t+f|0;t=f-t|0;f=M+P|0;L=W+ba|0;W=ba-W|0;ba=m+Q+L|0;ca=t+2048|0;V=N(ca+z>>12,-5266)|0;z=z+2048|0;X=(z-W>>12)*8068|0;ca=N(W+ca>>12,-2802)|0;M=N(2048-P+M>>12,-7094)|0;P=N(m+2048-L>>12,-7698)|0;Q=Q+2048|0;L=N(Q-L>>12,-1423)|0;m=N(Q-m>>12,-6275)|0;Q=f+(R*5793|0)|0;f=(R*11586|0)-f|0;R=ba+Q|0;Z=V-M-R+X|0;O=m-f+P-Z|0;W=(N(z-t+W>>12,-7094)|0)-O|0;P=P+f-L-W|0;X=M-ca+X-P|0;Q=ba-(Q<<1)-X|0;ca=V+M+ca-Q|0;M=(K+$|0)/2|0;R=((R|0)/2|0)-M|0;V=((n-Y+T|0)/2|0)-R|0;Z=((Z|0)/2|0)-V|0;ba=((a-J+_|0)/2|0)-Z|0;O=((O|0)/2|0)-ba|0;S=(N(l-e+S>>12,-3547)|0)-O|0;W=((W|0)/2|0)-S|0;_=((_+J-aa|0)/2|0)-W|0;P=((P|0)/2|0)-_|0;T=((Y-U+T|0)/2|0)-P|0;X=((X|0)/2|0)-T|0;$=((K-($<<1)|0)/2|0)-X|0;Q=((Q|0)/2|0)-$|0;U=((n+Y+U|0)/2|0)-Q|0;Y=((ca|0)/2|0)-U|0;aa=((a+J+aa|0)/2|0)-Y|0;ca=((m+f+L-ca|0)/2|0)-aa|0;c[b>>2]=P;L=b+4|0;c[L>>2]=T;f=b+8|0;c[f>>2]=X;m=b+12|0;c[m>>2]=$;J=b+16|0;c[J>>2]=Q;a=b+20|0;c[a>>2]=U;n=b+24|0;c[n>>2]=Y;K=b+28|0;c[K>>2]=aa;e=b+32|0;c[e>>2]=ca;l=b+36|0;c[l>>2]=0-ca;t=b+40|0;c[t>>2]=0-aa;z=b+44|0;c[z>>2]=0-Y;g=b+48|0;c[g>>2]=0-U;o=b+52|0;c[o>>2]=0-Q;u=b+56|0;c[u>>2]=0-$;h=b+60|0;c[h>>2]=0-X;p=b+64|0;c[p>>2]=0-T;v=b+68|0;c[v>>2]=0-P;da=0-_|0;i=b+72|0;c[i>>2]=da;H=0-W|0;q=b+76|0;c[q>>2]=H;E=0-S|0;w=b+80|0;c[w>>2]=E;B=0-O|0;j=b+84|0;c[j>>2]=B;G=0-ba|0;r=b+88|0;c[r>>2]=G;D=0-Z|0;x=b+92|0;c[x>>2]=D;A=0-V|0;k=b+96|0;c[k>>2]=A;I=0-R|0;s=b+100|0;c[s>>2]=I;F=0-M|0;y=b+104|0;c[y>>2]=F;C=b+108|0;c[C>>2]=F;F=b+112|0;c[F>>2]=I;I=b+116|0;c[I>>2]=A;A=b+120|0;c[A>>2]=D;D=b+124|0;c[D>>2]=G;G=b+128|0;c[G>>2]=B;B=b+132|0;c[B>>2]=E;E=b+136|0;c[E>>2]=H;H=b+140|0;c[H>>2]=da;switch(d|0){case 0:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;c[i>>2]=(2048-_>>12)*4092;c[q>>2]=(2048-W>>12)*4061;c[w>>2]=(2048-S>>12)*3999;c[j>>2]=(2048-O>>12)*3906;c[r>>2]=(2048-ba>>12)*3784;c[x>>2]=(2048-Z>>12)*3633;c[k>>2]=(2048-V>>12)*3455;c[s>>2]=((c[s>>2]|0)+2048>>12)*3250;c[y>>2]=((c[y>>2]|0)+2048>>12)*3020;c[C>>2]=((c[C>>2]|0)+2048>>12)*2767;c[F>>2]=((c[F>>2]|0)+2048>>12)*2493;c[I>>2]=((c[I>>2]|0)+2048>>12)*2201;c[A>>2]=((c[A>>2]|0)+2048>>12)*1891;c[D>>2]=((c[D>>2]|0)+2048>>12)*1567;c[G>>2]=((c[G>>2]|0)+2048>>12)*1232;c[B>>2]=((c[B>>2]|0)+2048>>12)*887;c[E>>2]=((c[E>>2]|0)+2048>>12)*535;c[H>>2]=((c[H>>2]|0)+2048>>12)*179;return}case 1:{c[b>>2]=(P+2048>>12)*179;c[L>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[J>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[K>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[z>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[u>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[v>>2]=(2048-P>>12)*4092;da=2048-V>>12;c[k>>2]=da*4061;b=2048-R>>12;c[s>>2]=b*3784;d=2048-M>>12;c[y>>2]=d*3250;c[C>>2]=d*2493;c[F>>2]=b*1567;c[I>>2]=da*535;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[A+16>>2]=0;c[A+20>>2]=0;return}case 3:{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[n>>2]=(Y+2048>>12)*535;c[K>>2]=(aa+2048>>12)*1567;c[e>>2]=(ca+2048>>12)*2493;c[l>>2]=(2048-ca>>12)*3250;c[t>>2]=(2048-aa>>12)*3784;c[z>>2]=(2048-Y>>12)*4061;da=2048-_>>12;c[i>>2]=da*4092;b=2048-W>>12;c[q>>2]=b*4061;d=2048-S>>12;c[w>>2]=d*3999;ca=2048-O>>12;c[j>>2]=ca*3906;ba=2048-ba>>12;c[r>>2]=ba*3784;aa=2048-Z>>12;c[x>>2]=aa*3633;$=2048-V>>12;c[k>>2]=$*3455;_=2048-R>>12;c[s>>2]=_*3250;Z=2048-M>>12;c[y>>2]=Z*3020;c[C>>2]=Z*2767;c[F>>2]=_*2493;c[I>>2]=$*2201;c[A>>2]=aa*1891;c[D>>2]=ba*1567;c[G>>2]=ca*1232;c[B>>2]=d*887;c[E>>2]=b*535;c[H>>2]=da*179;return}default:return}}function Vf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;c[d+(e<<2)>>2]=(c[b>>2]|0)+(c[a>>2]|0);c[b>>2]=c[a+72>>2];f=b+4|0;c[d+128+(e<<2)>>2]=(c[f>>2]|0)+(c[a+4>>2]|0);c[f>>2]=c[a+76>>2];f=b+8|0;c[d+256+(e<<2)>>2]=(c[f>>2]|0)+(c[a+8>>2]|0);c[f>>2]=c[a+80>>2];f=b+12|0;c[d+384+(e<<2)>>2]=(c[f>>2]|0)+(c[a+12>>2]|0);c[f>>2]=c[a+84>>2];f=b+16|0;c[d+512+(e<<2)>>2]=(c[f>>2]|0)+(c[a+16>>2]|0);c[f>>2]=c[a+88>>2];f=b+20|0;c[d+640+(e<<2)>>2]=(c[f>>2]|0)+(c[a+20>>2]|0);c[f>>2]=c[a+92>>2];f=b+24|0;c[d+768+(e<<2)>>2]=(c[f>>2]|0)+(c[a+24>>2]|0);c[f>>2]=c[a+96>>2];f=b+28|0;c[d+896+(e<<2)>>2]=(c[f>>2]|0)+(c[a+28>>2]|0);c[f>>2]=c[a+100>>2];f=b+32|0;c[d+1024+(e<<2)>>2]=(c[f>>2]|0)+(c[a+32>>2]|0);c[f>>2]=c[a+104>>2];f=b+36|0;c[d+1152+(e<<2)>>2]=(c[f>>2]|0)+(c[a+36>>2]|0);c[f>>2]=c[a+108>>2];f=b+40|0;c[d+1280+(e<<2)>>2]=(c[f>>2]|0)+(c[a+40>>2]|0);c[f>>2]=c[a+112>>2];f=b+44|0;c[d+1408+(e<<2)>>2]=(c[f>>2]|0)+(c[a+44>>2]|0);c[f>>2]=c[a+116>>2];f=b+48|0;c[d+1536+(e<<2)>>2]=(c[f>>2]|0)+(c[a+48>>2]|0);c[f>>2]=c[a+120>>2];f=b+52|0;c[d+1664+(e<<2)>>2]=(c[f>>2]|0)+(c[a+52>>2]|0);c[f>>2]=c[a+124>>2];f=b+56|0;c[d+1792+(e<<2)>>2]=(c[f>>2]|0)+(c[a+56>>2]|0);c[f>>2]=c[a+128>>2];f=b+60|0;c[d+1920+(e<<2)>>2]=(c[f>>2]|0)+(c[a+60>>2]|0);c[f>>2]=c[a+132>>2];f=b+64|0;c[d+2048+(e<<2)>>2]=(c[f>>2]|0)+(c[a+64>>2]|0);c[f>>2]=c[a+136>>2];b=b+68|0;c[d+2176+(e<<2)>>2]=(c[b>>2]|0)+(c[a+68>>2]|0);c[b>>2]=c[a+140>>2];return}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;d=l;l=l+144|0;if((l|0)>=(m|0))W(144);e=d;p=(c[a>>2]|0)+2048>>12;n=(c[a+4>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+8>>2]|0)+2048>>12;i=j+(p*2493|0)+(N(h,-535)|0)|0;g=(c[a+12>>2]|0)+2048>>12;k=(c[a+16>>2]|0)+2048>>12;f=N(k,-1567)|0;o=(c[a+20>>2]|0)+2048>>12;i=i+(g*4061|0)+f+(N(o,-3250)|0)|0;c[e>>2]=i;c[e+20>>2]=0-i;i=(n*1567|0)+(N(p,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(o,-2493)|0)|0;c[e+24>>2]=i;c[e+44>>2]=i;i=j+(p*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(o*3784|0)|0;c[e+4>>2]=i;c[e+16>>2]=0-i;n=N(n,-1567)|0;k=k*3784|0;i=n+(N(p,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(o*1567|0)|0;c[e+28>>2]=i;c[e+40>>2]=i;k=n+(p*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(o,-4061)|0)|0;c[e+8>>2]=k;c[e+12>>2]=0-k;o=j+(N(p,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(o,-535)|0)|0;c[e+32>>2]=o;c[e+36>>2]=o;o=(c[a+24>>2]|0)+2048>>12;f=(c[a+28>>2]|0)+2048>>12;g=N(f,-3784)|0;h=(c[a+32>>2]|0)+2048>>12;p=g+(o*2493|0)+(N(h,-535)|0)|0;j=(c[a+36>>2]|0)+2048>>12;k=(c[a+40>>2]|0)+2048>>12;n=N(k,-1567)|0;i=(c[a+44>>2]|0)+2048>>12;p=p+(j*4061|0)+n+(N(i,-3250)|0)|0;c[e+48>>2]=p;c[e+68>>2]=0-p;p=(f*1567|0)+(N(o,-3250)|0)+(h*4061|0)+(j*535|0)+(N(k,-3784)|0)+(N(i,-2493)|0)|0;c[e+72>>2]=p;c[e+92>>2]=p;p=g+(o*1567|0)+(h*3784|0)+(N(j,-1567)|0)+n+(i*3784|0)|0;c[e+52>>2]=p;c[e+64>>2]=0-p;f=N(f,-1567)|0;k=k*3784|0;p=f+(N(o,-3784)|0)+(h*1567|0)+(j*3784|0)+k+(i*1567|0)|0;c[e+76>>2]=p;c[e+88>>2]=p;k=f+(o*535|0)+(h*2493|0)+(N(j,-3250)|0)+k+(N(i,-4061)|0)|0;c[e+56>>2]=k;c[e+60>>2]=0-k;i=g+(N(o,-4061)|0)+(N(h,-3250)|0)+(N(j,-2493)|0)+n+(N(i,-535)|0)|0;c[e+80>>2]=i;c[e+84>>2]=i;i=(c[a+48>>2]|0)+2048>>12;n=(c[a+52>>2]|0)+2048>>12;j=N(n,-3784)|0;h=(c[a+56>>2]|0)+2048>>12;o=j+(i*2493|0)+(N(h,-535)|0)|0;g=(c[a+60>>2]|0)+2048>>12;k=(c[a+64>>2]|0)+2048>>12;f=N(k,-1567)|0;a=(c[a+68>>2]|0)+2048>>12;o=o+(g*4061|0)+f+(N(a,-3250)|0)|0;c[e+96>>2]=o;c[e+116>>2]=0-o;o=(n*1567|0)+(N(i,-3250)|0)+(h*4061|0)+(g*535|0)+(N(k,-3784)|0)+(N(a,-2493)|0)|0;c[e+120>>2]=o;c[e+140>>2]=o;o=j+(i*1567|0)+(h*3784|0)+(N(g,-1567)|0)+f+(a*3784|0)|0;c[e+100>>2]=o;c[e+112>>2]=0-o;n=N(n,-1567)|0;k=k*3784|0;o=n+(N(i,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(a*1567|0)|0;c[e+124>>2]=o;c[e+136>>2]=o;k=n+(i*535|0)+(h*2493|0)+(N(g,-3250)|0)+k+(N(a,-4061)|0)|0;c[e+104>>2]=k;c[e+108>>2]=0-k;a=j+(N(i,-4061)|0)+(N(h,-3250)|0)+(N(g,-2493)|0)+f+(N(a,-535)|0)|0;c[e+128>>2]=a;c[e+132>>2]=a;c[b>>2]=0;c[b+24>>2]=((c[e>>2]|0)+2048>>12)*535;c[b+48>>2]=(((c[e+48>>2]|0)+2048>>12)*535|0)+(((c[e+24>>2]|0)+2048>>12)*4061|0);c[b+72>>2]=(((c[e+96>>2]|0)+2048>>12)*535|0)+(((c[e+72>>2]|0)+2048>>12)*4061|0);c[b+96>>2]=((c[e+120>>2]|0)+2048>>12)*4061;c[b+120>>2]=0;c[b+4>>2]=0;c[b+28>>2]=((c[e+4>>2]|0)+2048>>12)*1567;c[b+52>>2]=(((c[e+52>>2]|0)+2048>>12)*1567|0)+(((c[e+28>>2]|0)+2048>>12)*3784|0);c[b+76>>2]=(((c[e+100>>2]|0)+2048>>12)*1567|0)+(((c[e+76>>2]|0)+2048>>12)*3784|0);c[b+100>>2]=((c[e+124>>2]|0)+2048>>12)*3784;c[b+124>>2]=0;c[b+8>>2]=0;c[b+32>>2]=((c[e+8>>2]|0)+2048>>12)*2493;c[b+56>>2]=(((c[e+56>>2]|0)+2048>>12)*2493|0)+(((c[e+32>>2]|0)+2048>>12)*3250|0);c[b+80>>2]=(((c[e+104>>2]|0)+2048>>12)*2493|0)+(((c[e+80>>2]|0)+2048>>12)*3250|0);c[b+104>>2]=((c[e+128>>2]|0)+2048>>12)*3250;c[b+128>>2]=0;c[b+12>>2]=0;c[b+36>>2]=((c[e+12>>2]|0)+2048>>12)*3250;c[b+60>>2]=(((c[e+60>>2]|0)+2048>>12)*3250|0)+(((c[e+36>>2]|0)+2048>>12)*2493|0);c[b+84>>2]=(((c[e+108>>2]|0)+2048>>12)*3250|0)+(((c[e+84>>2]|0)+2048>>12)*2493|0);c[b+108>>2]=((c[e+132>>2]|0)+2048>>12)*2493;c[b+132>>2]=0;c[b+16>>2]=0;c[b+40>>2]=((c[e+16>>2]|0)+2048>>12)*3784;c[b+64>>2]=(((c[e+64>>2]|0)+2048>>12)*3784|0)+(((c[e+40>>2]|0)+2048>>12)*1567|0);c[b+88>>2]=(((c[e+112>>2]|0)+2048>>12)*3784|0)+(((c[e+88>>2]|0)+2048>>12)*1567|0);c[b+112>>2]=((c[e+136>>2]|0)+2048>>12)*1567;c[b+136>>2]=0;c[b+20>>2]=0;c[b+44>>2]=((c[e+20>>2]|0)+2048>>12)*4061;c[b+68>>2]=(((c[e+68>>2]|0)+2048>>12)*4061|0)+(((c[e+44>>2]|0)+2048>>12)*535|0);c[b+92>>2]=(((c[e+116>>2]|0)+2048>>12)*4061|0)+(((c[e+92>>2]|0)+2048>>12)*535|0);c[b+116>>2]=((c[e+140>>2]|0)+2048>>12)*535;c[b+140>>2]=0;l=d;return}function Xf(b){b=b|0;var e=0,f=0,g=0,h=0;h=b+28|0;e=Ff(h)|0;g=c[b+4>>2]|0;f=g+-1|0;a:do if(e>>>0>>0){b=e;while(1){e=b+1|0;if((a[b>>0]|0)==-1?(d[e>>0]|0)>223:0){e=b;break a}if(e>>>0>>0)b=e;else break}}while(0);if((g-e|0)<8){h=-1;return h|0}Df(h,e);h=0;return h|0}function Yf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=j;g=a+28|0;c[g>>2]=0;h=a+32|0;c[h>>2]=0;i=d+28|0;Gf(i,11);if(!(Hf(i,1)|0))c[g>>2]=c[g>>2]|16384;k=(Hf(i,1)|0)==0;e=c[g>>2]|0;if(!k){if(e&16384|0){c[d+60>>2]=257;k=-1;l=j;return k|0}}else c[g>>2]=e|4096;k=Hf(i,2)|0;c[a>>2]=4-k;if(!k){c[d+60>>2]=258;k=-1;l=j;return k|0}if(!(Hf(i,1)|0)){c[g>>2]=c[g>>2]|16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];b[a+24>>1]=If(f,16,-1)|0}e=Hf(i,4)|0;if((e|0)==15){c[d+60>>2]=259;k=-1;l=j;return k|0}k=c[a>>2]|0;c[a+16>>2]=c[88716+(((c[g>>2]&4096|0)==0?k+-1|0:(k>>>1)+3|0)*60|0)+(e<<2)>>2];e=Hf(i,2)|0;if((e|0)==3){c[d+60>>2]=260;k=-1;l=j;return k|0}e=c[89016+(e<<2)>>2]|0;d=a+20|0;c[d>>2]=e;f=c[g>>2]|0;if(f&4096|0?(c[d>>2]=e>>>1,f&16384|0):0)c[d>>2]=e>>>2;if(Hf(i,1)|0)c[g>>2]=c[g>>2]|128;if(Hf(i,1)|0)c[h>>2]=c[h>>2]|256;c[a+4>>2]=3-(Hf(i,2)|0);c[a+8>>2]=Hf(i,2)|0;if(Hf(i,1)|0)c[g>>2]=c[g>>2]|32;if(Hf(i,1)|0)c[g>>2]=c[g>>2]|64;c[a+12>>2]=Hf(i,2)|0;if(!(c[g>>2]&16)){k=0;l=j;return k|0}b[a+26>>1]=Hf(i,16)|0;k=0;l=j;return k|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;c[a>>2]=b;if(d>>>0>=e>>>0&(e|0)!=0){h=(d>>>0)/(e>>>0)|0;i=h+b|0;c[a>>2]=i;d=d-(N(h,e)|0)|0}else i=b;a:do if((e|0)>=16e3){if((e|0)<32e3){if((e|0)<22050){switch(e|0){case 16e3:break;default:{f=4;break a}}d=d*22050|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 22050:{d=d*16e3|0;b=a+4|0;c[b>>2]=d;break a}case 24e3:{d=d*14700|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}if((e|0)<48e3)if((e|0)<44100){switch(e|0){case 32e3:break;default:{f=4;break a}}d=d*11025|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 44100:break;default:{f=4;break a}}d=d*8e3|0;b=a+4|0;c[b>>2]=d;break}else if((e|0)<3528e5){switch(e|0){case 48e3:break;default:{f=4;break a}}d=d*7350|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 3528e5:break;default:{f=4;break a}}b=a+4|0;c[b>>2]=d;break}}else{if((e|0)<8e3){switch(e|0){case 1:case 0:break;case 1e3:{d=d*352800|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}c[a+4>>2]=0;return}if((e|0)<11025){switch(e|0){case 8e3:break;default:{f=4;break a}}d=d*44100|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 11025:{d=d*32e3|0;b=a+4|0;c[b>>2]=d;break a}case 12e3:{d=d*29400|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}while(0);if((f|0)==4){b=d;f=e;while(1){b=(b>>>0)%(f>>>0)|0;if(!b)break;else{h=f;f=b;b=h}}g=(d>>>0)/(f>>>0)|0;h=(e>>>0)/(f>>>0)|0;if(f>>>0>e>>>0)f=3528e5;else{d=3528e5;f=h;while(1){d=(d>>>0)%(f>>>0)|0;if(!d)break;else{e=f;f=d;d=e}}}d=3528e5/(f>>>0)|0;b=(h>>>0)/(f>>>0)|0;if(f>>>0>h>>>0)Ua(116255,116266,144,116274);do if(b>>>0>=d>>>0)if(b>>>0>>0){h=(g>>>0)/(b>>>0)|0;d=(((N(g-(N(h,b)|0)|0,d)|0)>>>0)/(b>>>0)|0)+(N(h,d)|0)|0;break}else{d=((N(d,g)|0)>>>0)/(b>>>0)|0;break}else{h=(d>>>0)/(b>>>0)|0;d=(((N(d-(N(h,b)|0)|0,g)|0)>>>0)/(b>>>0)|0)+(N(h,g)|0)|0}while(0);b=a+4|0;c[b>>2]=d}if(d>>>0<=352799999)return;h=(d>>>0)/3528e5|0;c[a>>2]=i+h;c[b>>2]=d-(N(h,3528e5)|0);return}function _f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;if((l|0)>=(m|0))W(112);j=v+48|0;i=v;t=a+28|0;s=t;r=c[s>>2]|0;s=c[s+4>>2]|0;o=c[b+28>>2]|0;d=o>>>7&1;o=(c[b>>2]|0)==3?((o&4096|0)==0?144:72):144;if(!(Xf(a)|0)){k=i+20|0;n=b+20|0;q=a+20|0;p=4-(d<<2)|0;h=d^1;d=0;do{e=j;f=a;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=i;f=b;g=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if(((Yf(i,j)|0)==0?(c[i>>2]|0)==(c[b>>2]|0):0)?(c[k>>2]|0)==(c[n>>2]|0):0){d=Ff(t)|0;g=(c[b>>2]|0)==1;g=((N(c[n>>2]|0,(g?p:h)+(d-(c[q>>2]|0))|0)|0)>>>0)/((g?48:o)>>>0)|0;d=(g>>>0)/1e3|0;if(g>>>0>=8e3){u=8;break}}Gf(t,8)}while((Xf(a)|0)==0);u=t;c[u>>2]=r;c[u+4>>2]=s;if(d>>>0>=8?!(d>>>0>640&(c[b>>2]|0)==3):0){c[a+16>>2]=d*1e3;u=0;l=v;return u|0}}else{u=t;c[u>>2]=r;c[u+4>>2]=s}c[a+60>>2]=257;u=-1;l=v;return u|0}function $f(a){a=a|0;var b=0;yX(a|0,0,1024)|0;b=0;do{c[a+1536+(b<<5)>>2]=0;c[a+1024+(b<<5)>>2]=0;c[a+1536+(b<<5)+4>>2]=0;c[a+1024+(b<<5)+4>>2]=0;c[a+1536+(b<<5)+8>>2]=0;c[a+1024+(b<<5)+8>>2]=0;c[a+1536+(b<<5)+12>>2]=0;c[a+1024+(b<<5)+12>>2]=0;c[a+1536+(b<<5)+16>>2]=0;c[a+1024+(b<<5)+16>>2]=0;c[a+1536+(b<<5)+20>>2]=0;c[a+1024+(b<<5)+20>>2]=0;c[a+1536+(b<<5)+24>>2]=0;c[a+1024+(b<<5)+24>>2]=0;c[a+1536+(b<<5)+28>>2]=0;c[a+1024+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);yX(a+2048|0,0,1024)|0;b=0;do{c[a+3584+(b<<5)>>2]=0;c[a+3072+(b<<5)>>2]=0;c[a+3584+(b<<5)+4>>2]=0;c[a+3072+(b<<5)+4>>2]=0;c[a+3584+(b<<5)+8>>2]=0;c[a+3072+(b<<5)+8>>2]=0;c[a+3584+(b<<5)+12>>2]=0;c[a+3072+(b<<5)+12>>2]=0;c[a+3584+(b<<5)+16>>2]=0;c[a+3072+(b<<5)+16>>2]=0;c[a+3584+(b<<5)+20>>2]=0;c[a+3072+(b<<5)+20>>2]=0;c[a+3584+(b<<5)+24>>2]=0;c[a+3072+(b<<5)+24>>2]=0;c[a+3584+(b<<5)+28>>2]=0;c[a+3072+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);return}function ag(a){a=a|0;var b=0;yX(a+48|0,0,9216)|0;a=c[a+9264>>2]|0;if(!a)return;yX(a|0,0,2304)|0;b=0;do{c[a+2304+(b<<2)>>2]=0;c[a+2376+(b<<2)>>2]=0;c[a+2448+(b<<2)>>2]=0;c[a+2520+(b<<2)>>2]=0;c[a+2592+(b<<2)>>2]=0;c[a+2664+(b<<2)>>2]=0;c[a+2736+(b<<2)>>2]=0;c[a+2808+(b<<2)>>2]=0;c[a+2880+(b<<2)>>2]=0;c[a+2952+(b<<2)>>2]=0;c[a+3024+(b<<2)>>2]=0;c[a+3096+(b<<2)>>2]=0;c[a+3168+(b<<2)>>2]=0;c[a+3240+(b<<2)>>2]=0;c[a+3312+(b<<2)>>2]=0;c[a+3384+(b<<2)>>2]=0;c[a+3456+(b<<2)>>2]=0;c[a+3528+(b<<2)>>2]=0;c[a+3600+(b<<2)>>2]=0;c[a+3672+(b<<2)>>2]=0;c[a+3744+(b<<2)>>2]=0;c[a+3816+(b<<2)>>2]=0;c[a+3888+(b<<2)>>2]=0;c[a+3960+(b<<2)>>2]=0;c[a+4032+(b<<2)>>2]=0;c[a+4104+(b<<2)>>2]=0;c[a+4176+(b<<2)>>2]=0;c[a+4248+(b<<2)>>2]=0;c[a+4320+(b<<2)>>2]=0;c[a+4392+(b<<2)>>2]=0;c[a+4464+(b<<2)>>2]=0;c[a+4536+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=18);return}function bg(a){a=a|0;a=c[a>>2]|0;c[a+44>>2]=7;c[a+48>>2]=1;return 0}function cg(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;w=l;l=l+16|0;if((l|0)>=(m|0))W(16);s=w+8|0;t=w;q=w+4|0;c[s>>2]=g;c[t>>2]=h;u=c[a>>2]|0;r=u+84|0;j=u+88|0;k=u+48|0;n=u+96|0;o=u+44|0;p=u+4|0;i=0;g=c[r>>2]|0;a:while(1){if((g|0)>(h|0)){g=-100;break}if(g){if(!(c[n>>2]|0)){v=5;break}}else g=0;while(1){if((g|0)>=(h|0)){g=-100;break a}x=j;x=sX(c[x>>2]|0,c[x+4>>2]|0,8)|0;h=y;x=x|(d[(c[s>>2]|0)+g>>0]|0);z=j;c[z>>2]=x;c[z+4>>2]=h;h=Nd[c[k>>2]&63](x,h,u,n,q)|0;if(h|0)break;g=g+1|0;h=c[t>>2]|0}if((h|0)<1){g=-100;break}z=j;c[z>>2]=0;c[z+4>>2]=0;g=g+1-(c[o>>2]|0)|0;c[r>>2]=h;if(c[q>>2]|0?((c[p>>2]|0)+g|0)>=1:0){i=1;break}g=h+g|0;c[r>>2]=g;i=1;h=c[t>>2]|0}if((v|0)==5)c[r>>2]=0;if((gg(u,g,s,t)|0)>=0){c[e>>2]=c[s>>2];c[f>>2]=c[t>>2];h=c[u+100>>2]|0;if(h|0)c[b+16>>2]=h;if(i){if((c[b+16>>2]|0)!=86018){c[b+344>>2]=c[u+56>>2];c[b+348>>2]=c[u+52>>2];v=u+72|0;x=c[v+4>>2]|0;z=b+376|0;c[z>>2]=c[v>>2];c[z+4>>2]=x;c[a+304>>2]=c[u+64>>2];c[b+392>>2]=c[u+80>>2]}x=c[u+60>>2]|0;z=b+40|0;c[z>>2]=x;c[z+4>>2]=((x|0)<0)<<31>>31}}else{z=c[r>>2]|0;g=c[t>>2]|0;c[r>>2]=z-((z|0)>(g|0)?g:z);c[e>>2]=0;c[f>>2]=0}l=w;return g|0}function dg(a){a=a|0;eg(c[a>>2]|0);return}function eg(b){b=b|0;var c=0;c=d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;fg(c);return}function fg(a){a=a|0;qT(a);return}function gg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;if((l|0)>=(m|0))W(32);n=r+24|0;i=r+8|0;j=r;p=b+24|0;k=b+28|0;q=b+4|0;h=c[p>>2]|0;while(1){if((h|0)<=0)break;o=c[b>>2]|0;s=c[k>>2]|0;c[k>>2]=s+1;s=a[o+s>>0]|0;h=c[q>>2]|0;c[q>>2]=h+1;a[o+h>>0]=s;h=(c[p>>2]|0)+-1|0;c[p>>2]=h}e=(e|0)==-100&(c[g>>2]|0)==0?0:e;h=c[q>>2]|0;o=b+8|0;c[o>>2]=h;a:do if((e|0)==-100){e=hg(c[b>>2]|0,b+12|0,(c[g>>2]|0)+64+h|0)|0;if(!e){c[j>>2]=(c[g>>2]|0)+64+(c[q>>2]|0);ig(0,16,116801,j);e=-12;h=0}else{c[b>>2]=e;wX(e+(c[q>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;e=-1;h=(c[q>>2]|0)+(c[g>>2]|0)|0}c[q>>2]=h}else{if((e|0)<=-1?(c[b>>2]|0)==0:0){c[i>>2]=116843;c[i+4>>2]=116867;c[i+8>>2]=356;ig(0,0,159900,i);Tb()}h=h+e|0;c[k>>2]=h;c[g>>2]=h;h=c[q>>2]|0;if(h|0){i=e+64|0;h=hg(c[b>>2]|0,b+12|0,i+h|0)|0;if(!h){c[n>>2]=i+(c[q>>2]|0);ig(0,16,116801,n);c[q>>2]=0;c[k>>2]=0;e=-12;break}c[b>>2]=h;if((e|0)>-64){wX(h+(c[q>>2]|0)|0,c[f>>2]|0,i|0)|0;h=c[b>>2]|0}c[q>>2]=0;c[f>>2]=h}h=b+16|0;i=b+32|0;while(1){if((e|0)>=0){e=0;break a}q=(c[b>>2]|0)+((c[o>>2]|0)+e)|0;c[h>>2]=c[h>>2]<<8|(d[q>>0]|0);f=i;f=sX(c[f>>2]|0,c[f+4>>2]|0,8)|0;s=i;c[s>>2]=f|(d[q>>0]|0);c[s+4>>2]=y;c[p>>2]=(c[p>>2]|0)+1;e=e+1|0}}while(0);l=r;return e|0}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[b>>2]|0)>>>0>>0){f=2147483647+-32|0;e=d+32+(d>>>4)|0;e=e>>>0>d>>>0?e:d;e=f>>>0>e>>>0?e:f;if(f>>>0>>0){e=0;a=0}else{a=pg(a,e)|0;e=(a|0)==0?0:e}c[b>>2]=e}return a|0}function ig(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=i;if(a){h=c[a>>2]|0;c[f>>2]=e;if(((h|0)!=0?(c[h+12>>2]|0)>3280641:0)?(g=c[h+16>>2]|0,(b|0)>7&(g|0)!=0):0)b=(c[a+g>>2]|0)+b|0}else c[f>>2]=e;jg(a,b,d,f);l=i;return}function jg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(6)kg(a,b,c,d);return}function kg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+5168|0;if((l|0)>=(m|0))W(5168);p=r+24|0;o=r+16|0;h=r;q=r+40|0;k=r+4136|0;n=r+32|0;i=(d|0)>-1;j=i?d&255:d;i=i?d>>>8&255:0;if((j|0)<=32){AX(183116)|0;lg(b,j,e,f,q,89076,n);e=q+1024|0;s=c[e>>2]|0;f=q+2048|0;b=c[f>>2]|0;g=q+3072|0;d=c[g>>2]|0;c[h>>2]=c[q>>2];c[h+4>>2]=s;c[h+8>>2]=b;c[h+12>>2]=d;_U(k,1024,116887,h)|0;d=c[45786]|0;if(!d){b=(HV(2)|0)!=0;b=b?1:-1;c[45786]=b}else b=d;if((!((c[22269]|0)==0|0==0)?(s=(XT(k,258176)|0)!=0,!(s|(a[k>>0]|0)==0)):0)?(a[k+((RU(k)|0)+-1)>>0]|0)!=13:0){d=(c[45787]|0)+1|0;c[45787]=d;if((b|0)==1){s=c[27049]|0;c[o>>2]=d;wV(s,116896,o)|0}}else{d=c[45787]|0;if((d|0)>0){s=c[27049]|0;c[p>>2]=d;wV(s,116932,p)|0;c[45787]=0}$U(258176,k)|0;mg(c[q>>2]|0);ng(c[n>>2]|0,0,c[q>>2]|0);mg(c[e>>2]|0);ng(c[n+4>>2]|0,0,c[e>>2]|0);mg(c[f>>2]|0);s=j>>3;s=(s|0)>0?((s|0)<7?s:7):0;ng(s,i,c[f>>2]|0);mg(c[g>>2]|0);ng(s,i,c[g>>2]|0)}og(q+3072|0,0)|0;BX(183116)|0}l=r;return}function lg(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;if((l|0)>=(m|0))W(32);t=y+24|0;v=y+16|0;u=y+8|0;s=y;if(!b)n=0;else n=c[b>>2]|0;sg(g,0,1);r=g+1024|0;sg(r,0,1);j=g+2048|0;sg(j,0,1);x=g+3072|0;sg(x,0,65536);k=(i|0)!=0;if(k){c[i+4>>2]=16;c[i>>2]=16}if((n|0)!=0&(c[h>>2]|0)!=0){o=c[n+20>>2]|0;do if(((o|0)!=0?(p=c[b+o>>2]|0,(p|0)!=0):0)?(q=c[p>>2]|0,(q|0)!=0):0){c[s>>2]=Jd[c[q+4>>2]&31](p)|0;c[s+4>>2]=p;tg(g,117123,s);if(k){c[i>>2]=ug(p)|0;w=11;break}else{c[v>>2]=Jd[c[n+4>>2]&31](b)|0;c[v+4>>2]=b;tg(r,117123,v);break}}else w=11;while(0);if((w|0)==11?(c[u>>2]=Jd[c[n+4>>2]&31](b)|0,c[u+4>>2]=b,tg(r,117123,u),k):0)c[i+4>>2]=ug(b)|0;if(0){c[t>>2]=vg(d)|0;tg(j,117134,t)}}wg(x,e,f);if(!((((a[c[g>>2]>>0]|0)==0?(a[c[r>>2]>>0]|0)==0:0)?(a[c[j>>2]>>0]|0)==0:0)?!(a[c[x>>2]>>0]|0):0)){b=c[g+3076>>2]|0;if((b|0)!=0?b>>>0<=(c[g+3080>>2]|0)>>>0:0)b=a[(c[x>>2]|0)+(b+-1)>>0]|0;else b=0;c[h>>2]=(b<<24>>24==10|b<<24>>24==13)&1}l=y;return}function mg(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24))break;if((c&255)<8|(c+-14&255)<18)a[b>>0]=63;b=b+1|0}return}function ng(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;if((l|0)>=(m|0))W(48);j=k+32|0;i=k+16|0;h=k;do if(a[e>>0]|0){f=c[22270]|0;if((f|0)<0){rg();f=c[22270]|0}g=(b|0)==4?0:f;if((g|0)==1){j=c[27049]|0;b=c[89084+(b<<2)>>2]|0;c[h>>2]=b>>>4&15;c[h+4>>2]=b&15;c[h+8>>2]=e;wV(j,116968,h)|0;break}if((d|0)!=0&(f|0)==256){j=c[27049]|0;c[i>>2]=(c[89084+(b<<2)>>2]|0)>>>16&255;c[i+4>>2]=d;c[i+8>>2]=e;wV(j,116984,i)|0;break}f=c[27049]|0;if((g|0)==256){b=c[89084+(b<<2)>>2]|0;c[j>>2]=b>>>16&255;c[j+4>>2]=b>>>8&255;c[j+8>>2]=e;wV(f,117011,j)|0;break}else{gV(e,f)|0;break}}while(0);l=k;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=(c[a+4>>2]|0)+1|0;g=a+8|0;e=c[g>>2]|0;f=f>>>0>e>>>0?e:f;e=c[a>>2]|0;d=(e|0)!=(a+16|0);if(!b)if(d){eg(a);d=0}else d=0;else{if(!d){e=qg(f)|0;if(!e){d=-12;e=0}else{wX(e|0,c[a>>2]|0,f|0)|0;d=0}}else{e=pg(e,f)|0;if(!e)e=c[a>>2]|0;c[a>>2]=0;d=0}c[b>>2]=e}c[g>>2]=f;return d|0}function pg(a,b){a=a|0;b=b|0;if((2147483647+-32|0)>>>0>>0)a=0;else a=sT(a,((b|0)==0&1)+b|0)|0;return a|0}function qg(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);b=d;c[b>>2]=0;do if((2147483647+-32|0)>>>0>=a>>>0){if(!a){a=qg(1)|0;c[b>>2]=a;break}if(!(xT(b,16,a)|0)){a=c[b>>2]|0;break}else{c[b>>2]=0;a=0;break}}else a=0;while(0);l=d;return a|0}function rg(){var a=0,b=0,d=0;a=ec(117038)|0;do if((ec(117043)|0)==0?(ec(117052)|0)==0:0){if(a|0?HV(2)|0:0){b=1;break}b=(ec(117073)|0)!=0&1}else b=0;while(0);c[22270]=b;if(!(ec(117092)|0)){if(a|0?xV(a,117114)|0:0)d=9}else d=9;if((d|0)==9)c[22270]=b<<8;return}function sg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+16|0;g=(e|0)==1?1008:e;c[b>>2]=f;c[b+4>>2]=0;e=g>>>0<1008?g:1008;c[b+8>>2]=e;c[b+12>>2]=g;a[f>>0]=0;if(e>>>0>>0)xg(b,d+-1|0)|0;return}function tg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=k;g=a+8|0;h=a+4|0;while(1){i=c[g>>2]|0;e=c[h>>2]|0;i=i-(e>>>0>i>>>0?i:e)|0;if(!i)e=0;else e=(c[a>>2]|0)+e|0;c[f>>2]=d;e=$T(e,i,b,f)|0;if((e|0)<1)break;if(e>>>0>>0){j=7;break}if(xg(a,e)|0){j=7;break}}if((j|0)==7)yg(a,e);l=k;return} +function wk(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=c[f+21796>>2]|0;o=d+27016|0;m=c[o>>2]|0;h=u-(m<>2])|0;j=u+-1|0;n=d+26376|0;do if(!(c[n>>2]|0)){t=j;s=j}else{i=c[d+24364>>2]|0;k=c[i+(j<<2)>>2]&128;l=g&128;if(c[f+21792>>2]&1|0){t=j-((k|0)==(l|0)?0:m)|0;s=j;break}if(l)h=(((c[i+(h<<2)>>2]|0)>>>7&1)+-1&m)+h|0;t=j;s=j+((k|0)==(l|0)?0:m)|0}while(0);c[f+21712>>2]=h;c[f+21720>>2]=t;c[f+21724>>2]=s;i=c[f+860>>2]|0;j=c[d+24340>>2]|0;k=a[j+u>>0]|0;do if((i|0)>=(k|0)){l=(t|0)<0;if(!l?(k+1+(a[j+t>>0]|0)>>1|0)>(i|0):0){p=17;break}if((h|0)>=0?(k+1+(a[j+h>>0]|0)>>1|0)>(i|0):0){p=17;break}if(c[n>>2]|0){if(!l?(k+1+(a[j+s>>0]|0)>>1|0)>(i|0):0){p=17;break}r=c[o>>2]|0;if((h|0)>=(r|0)?(k+1+(a[j+(h-r)>>0]|0)>>1|0)>(i|0):0)p=17;else h=1}else h=1}else p=17;while(0);if((p|0)==17){l=c[d+24364>>2]|0;i=c[l+(h<<2)>>2]|0;k=c[l+(t<<2)>>2]|0;l=c[l+(s<<2)>>2]|0;o=d+26372|0;j=c[o>>2]|0;n=b[j+(h<<1)>>1]|0;if((c[f+868>>2]|0)==2){r=c[f+832>>2]|0;p=(r|0)==(e[j+(s<<1)>>1]|0);r=(r|0)==(n&65535|0)?i:0;q=p?k:0;p=p?l:0}else{p=(b[j+(s<<1)>>1]|0)==-1;r=n<<16>>16==-1?0:i;q=p?0:k;p=p?0:l}c[f+21732>>2]=r;c[f+21740>>2]=q;c[f+21744>>2]=p;if(!(g&7)){i=d+26368|0;j=c[i>>2]|0;k=f+28e3|0;l=f+28284|0;m=(g&376|0)==0;do if(!m){if(!(r&12288)){n=f+27968|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[f+28276>>2]=-1}else{y=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(j*3|0)|0;v=h<<2;w=d+29940+((n&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;A=(c[x>>2]|0)+(y<<2)|0;z=c[A+4>>2]|0;n=f+27968|0;c[n>>2]=c[A>>2];c[n+4>>2]=z;y=(c[x>>2]|0)+(y<<2)+8|0;x=c[y+4>>2]|0;n=f+27976|0;c[n>>2]=c[y>>2];c[n+4>>2]=x;n=d+24384|0;x=c[w+(a[(c[n>>2]|0)+(v|2)>>0]<<2)>>2]&255;a[f+28277>>0]=x;a[f+28276>>0]=x;n=c[w+(a[(c[n>>2]|0)+(v|3)>>0]<<2)>>2]&255;a[f+28279>>0]=n;a[f+28278>>0]=n}if(!((q^g)&128))if(!(q&12288)){c[f+27996>>2]=0;c[f+28028>>2]=0;c[f+28060>>2]=0;c[f+28092>>2]=0;a[f+28307>>0]=-1;a[f+28299>>0]=-1;a[f+28291>>0]=-1;a[f+28283>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24352|0;c[f+27996>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28028>>2]=c[(c[x>>2]|0)+(z+j<<2)>>2];c[f+28060>>2]=c[(c[x>>2]|0)+(z+(j<<1)<<2)>>2];c[f+28092>>2]=c[(c[x>>2]|0)+(z+(j*3|0)<<2)>>2];z=d+24384|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28291>>0]=x;a[f+28283>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28307>>0]=A;a[f+28299>>0]=A;break}}while(0);if(!(g&12288)){y=f+28032|0;z=f+28064|0;A=f+28096|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[l>>2]=-1;c[f+28292>>2]=-1;c[f+28300>>2]=-1;c[f+28308>>2]=-1}else{y=(c[d+24384>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[l>>2]=x;c[f+28292>>2]=x;c[f+28300>>2]=y;c[f+28308>>2]=y;y=(c[d+24352>>2]|0)+((N(c[f+21792>>2]|0,j)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=k;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28008|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(j<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28032|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28040|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(j<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28064|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28072|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(j*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28096|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28104|0;c[A>>2]=c[y>>2];c[A+4>>2]=z}do if((c[f+23412>>2]|0)==2){i=c[i>>2]|0;j=f+28160|0;k=f+28324|0;do if(!m){if(!(r&49152)){A=f+28128|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[f+28316>>2]=-1}else{w=(c[(c[d+26360>>2]|0)+(h<<2)>>2]|0)+(i*3|0)|0;A=h<<2;y=d+29940+((b[(c[o>>2]|0)+(h<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;n=(c[x>>2]|0)+(w<<2)|0;v=c[n+4>>2]|0;z=f+28128|0;c[z>>2]=c[n>>2];c[z+4>>2]=v;w=(c[x>>2]|0)+(w<<2)+8|0;x=c[w+4>>2]|0;z=f+28136|0;c[z>>2]=c[w>>2];c[z+4>>2]=x;z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|2)>>0]<<2)>>2]&255;a[f+28317>>0]=x;a[f+28316>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28319>>0]=A;a[f+28318>>0]=A}if(!((q^g)&128))if(!(q&49152)){c[f+28156>>2]=0;c[f+28188>>2]=0;c[f+28220>>2]=0;c[f+28252>>2]=0;a[f+28347>>0]=-1;a[f+28339>>0]=-1;a[f+28331>>0]=-1;a[f+28323>>0]=-1;break}else{z=(c[(c[d+26360>>2]|0)+(t<<2)>>2]|0)+3|0;A=t<<2;y=d+29940+((b[(c[o>>2]|0)+(t<<1)>>1]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=d+24356|0;c[f+28156>>2]=c[(c[x>>2]|0)+(z<<2)>>2];c[f+28188>>2]=c[(c[x>>2]|0)+(z+i<<2)>>2];c[f+28220>>2]=c[(c[x>>2]|0)+(z+(i<<1)<<2)>>2];c[f+28252>>2]=c[(c[x>>2]|0)+(z+(i*3|0)<<2)>>2];z=d+24388|0;x=c[y+(a[(c[z>>2]|0)+(A|1)>>0]<<2)>>2]&255;a[f+28331>>0]=x;a[f+28323>>0]=x;A=c[y+(a[(c[z>>2]|0)+(A|3)>>0]<<2)>>2]&255;a[f+28347>>0]=A;a[f+28339>>0]=A;break}}while(0);if(!(g&49152)){y=f+28192|0;z=f+28224|0;A=f+28256|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[k>>2]=-1;c[f+28332>>2]=-1;c[f+28340>>2]=-1;c[f+28348>>2]=-1;break}else{y=(c[d+24388>>2]|0)+(u<<2)|0;A=d+29940+((c[f+832>>2]&31)<<9)+256+((c[f+21832>>2]|0?20:2)<<2)|0;x=(c[A+(a[y+1>>0]<<2)>>2]<<16&16711680|c[A+(a[y>>0]<<2)>>2]&255)*257|0;y=(c[A+(a[y+3>>0]<<2)>>2]<<16&16711680|c[A+(a[y+2>>0]<<2)>>2]&255)*257|0;c[k>>2]=x;c[f+28332>>2]=x;c[f+28340>>2]=y;c[f+28348>>2]=y;y=(c[d+24356>>2]|0)+((N(c[f+21792>>2]|0,i)|0)+(c[f+21788>>2]|0)<<2<<2)|0;x=y;A=c[x+4>>2]|0;z=j;c[z>>2]=c[x>>2];c[z+4>>2]=A;z=y+8|0;A=c[z+4>>2]|0;x=f+28168|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;x=y+(i<<2)|0;A=x;z=c[A+4>>2]|0;w=f+28192|0;c[w>>2]=c[A>>2];c[w+4>>2]=z;x=x+8|0;w=c[x+4>>2]|0;z=f+28200|0;c[z>>2]=c[x>>2];c[z+4>>2]=w;z=y+(i<<1<<2)|0;w=z;x=c[w+4>>2]|0;A=f+28224|0;c[A>>2]=c[w>>2];c[A+4>>2]=x;z=z+8|0;A=c[z+4>>2]|0;x=f+28232|0;c[x>>2]=c[z>>2];c[x+4>>2]=A;y=y+(i*3<<2)|0;x=y;A=c[x+4>>2]|0;z=f+28256|0;c[z>>2]=c[x>>2];c[z+4>>2]=A;y=y+8|0;z=c[y+4>>2]|0;A=f+28264|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;break}}while(0);j=d+25972|0;o=c[j>>2]|0;k=f+27836|0;c[k>>2]=c[o+(u*48|0)>>2];l=f+27844|0;c[l>>2]=c[o+(u*48|0)+4>>2];m=f+27852|0;c[m>>2]=c[o+(u*48|0)+8>>2];n=f+27860|0;c[n>>2]=c[o+(u*48|0)+12>>2];o=d+26392|0;i=e[(c[o>>2]|0)+(u<<1)>>1]|0;c[f+21856>>2]=i;if(r|0)c[f+27828>>2]=c[(c[j>>2]|0)+(h*48|0)+12>>2];if(q|0){A=c[j>>2]|0;a[f+27835>>0]=a[A+(t*48|0)+3>>0]|0;a[f+27843>>0]=a[A+(t*48|0)+7>>0]|0;a[f+27851>>0]=a[A+(t*48|0)+11>>0]|0;a[f+27859>>0]=a[A+(t*48|0)+15>>0]|0}A=c[d+28212>>2]|0;if((c[A+4>>2]|0)==0?(c[A+64>>2]|0)!=0:0){if(r&16777216|0){A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&4;a[f+27829>>0]=A;a[f+27828>>0]=A;A=(e[(c[o>>2]|0)+(h<<1)>>1]|0)>>>12&8;a[f+27831>>0]=A;a[f+27830>>0]=A}if(q&16777216|0){A=(e[(c[o>>2]|0)+(t<<1)>>1]|0)>>>12&2;a[f+27843>>0]=A;a[f+27835>>0]=A}if(p&16777216|0){A=(e[(c[o>>2]|0)+(s<<1)>>1]|0)>>>12&8;a[f+27859>>0]=A;a[f+27851>>0]=A}if(g&16777216){h=i>>>12;A=h&1;a[f+27845>>0]=A;a[l>>0]=A;a[f+27837>>0]=A;a[k>>0]=A;A=h&2;a[f+27847>>0]=A;a[f+27846>>0]=A;a[f+27839>>0]=A;a[f+27838>>0]=A;A=h&4;a[f+27861>>0]=A;a[n>>0]=A;a[f+27853>>0]=A;a[m>>0]=A;h=h&8;a[f+27863>>0]=h;a[f+27862>>0]=h;a[f+27855>>0]=h;a[f+27854>>0]=h;h=0}else h=0}else h=0}else h=0}return h|0}function xk(f,g,h,i,j,k,n,o,p){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Sa=l;l=l+32|0;if((l|0)>=(m|0))W(32);Qa=Sa+16|0;Ma=Sa;Na=f+27016|0;Da=(N(c[Na>>2]|0,i)|0)+h|0;Ea=f+24364|0;Fa=c[(c[Ea>>2]|0)+(Da<<2)>>2]|0;Ga=(Fa>>>6&2^2)+2|0;Ha=f+28216|0;Ka=c[Ha>>2]|0;Ia=(c[Ka+12>>2]|0)!=0;Ka=(N(c[Ka+1184>>2]|0,-6)|0)+48|0;Ja=(c[g+872>>2]|0)+52+Ka|0;Ka=(c[g+876>>2]|0)+52+Ka|0;La=f+26376|0;Ca=g+21740|0;if((c[La>>2]|0)!=0?(Ba=c[Ca>>2]|0,!((Ba|0)==0|((Ba^Fa)&128|0)==0)):0){a:do if(!(Fa&7)){x=c[g+21828>>2]|0;t=i&1;h=f+28212|0;u=f+25972|0;v=f+26392|0;w=(x|0)!=0;s=0;while(1){if((s|0)==8){q=x;break a}r=w?s>>2:s&1;q=c[g+21720+(r<<2)>>2]|0;r=c[g+21740+(r<<2)>>2]|0;if(!(r&7)){if((r&16777216|0)==0?1:(c[(c[h>>2]|0)+4>>2]|0)!=0)q=d[(d[134682+(x<<4)+(t<<3)+s>>0]|0)+((c[u>>2]|0)+(q*48|0))>>0]|0;else q=((w?s&2:t)|0?32768:8192)&e[(c[v>>2]|0)+(q<<1)>>1];q=q|d[(s>>>1<<3)+12+(g+27824)>>0]|0?2:1}else q=4;b[Ma+(s<<1)>>1]=q;s=s+1|0}}else{h=Ma;c[h>>2]=262148;c[h+4>>2]=262148;h=Ma+8|0;c[h>>2]=262148;c[h+4>>2]=262148;h=f+28212|0;q=c[g+21828>>2]|0}while(0);A=c[f+24340>>2]|0;Aa=a[A+Da>>0]|0;z=a[A+(c[g+21720>>2]|0)>>0]|0;A=a[A+(c[g+21724>>2]|0)>>0]|0;v=Aa+1|0;Ba=c[h>>2]|0;y=(d[Ba+548+Aa>>0]|0)+1|0;Aa=(d[Ba+636+Aa>>0]|0)+1|0;h=v+z>>1;w=(y+(d[Ba+548+z>>0]|0)|0)>>>1;z=(Aa+(d[Ba+636+z>>0]|0)|0)>>>1;v=v+A>>1;y=(y+(d[Ba+548+A>>0]|0)|0)>>>1;A=(Aa+(d[Ba+636+A>>0]|0)|0)>>>1;do if(!q){u=o<<1;r=h+Ja|0;s=d[133902+r>>0]|0;Ba=h+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](j,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](j,u,s,h,Qa);break}}while(0);r=j+o|0;x=Ma+2|0;s=v+Ja|0;t=d[133902+s>>0]|0;Ba=v+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);if(Ia){u=p<<1;r=w+Ja|0;s=d[133902+r>>0]|0;h=w+Ka|0;q=d[133746+h>>0]|0;h=r>>>0<68|h>>>0<68;if((c[(c[Ha>>2]|0)+12>>2]|0)==3){do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Td[c[f+68>>2]&255](k,u,s,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133902+s>>0]|0;Ba=y+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](r,u,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133902+r>>0]|0;Ba=z+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](n,u,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+8>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+12>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133902+s>>0]|0;Ba=A+Ka|0;q=d[133746+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Td[c[f+68>>2]&255](r,u,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,u,t,q,Qa);break}}else{do if(!h){h=b[Ma>>1]|0;if(h<<16>>16>3){Td[c[f+92>>2]&255](k,u,s,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(134058+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(134058+(r<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](k,u,s,q,Qa);break}}while(0);r=k+p|0;s=y+Ja|0;t=d[133902+s>>0]|0;Ba=y+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](r,u,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,u,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133902+r>>0]|0;Ba=z+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](n,u,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+8>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+12>>1]|0)+(134058+(r<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](n,u,s,h,Qa);break}}while(0);r=n+p|0;s=A+Ja|0;t=d[133902+s>>0]|0;Ba=A+Ka|0;q=d[133746+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Td[c[f+92>>2]&255](r,u,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,u,t,q,Qa);break}}}}else{r=h+Ja|0;s=d[133902+r>>0]|0;Ba=h+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](j,o,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](j,o,s,h,Qa);break}}while(0);r=j+(o<<3)|0;x=Ma+8|0;s=v+Ja|0;t=d[133902+s>>0]|0;Ba=v+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](r,o,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,o,t,h,Qa);break}}while(0);if(Ia){h=c[(c[Ha>>2]|0)+12>>2]|0;if((h|0)==3){r=w+Ja|0;s=d[133902+r>>0]|0;Ba=w+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](k,p,s,h,Qa);break}}while(0);u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133902+s>>0]|0;Ba=y+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](r,p,t,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133902+r>>0]|0;Ba=z+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+68>>2]&255](n,p,s,h);break}else{a[Qa>>0]=a[(q<<16>>16)+(134058+(r<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+2>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+6>>1]|0)+(134058+(r<<2))>>0]|0;Ud[c[f+56>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133902+s>>0]|0;Ba=A+Ka|0;q=d[133746+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Td[c[f+68>>2]&255](r,p,t,q);break}else{a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[Qa+1>>0]=a[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+2>>0]=a[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0;a[Qa+3>>0]=a[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[f+56>>2]&127](r,p,t,q,Qa);break}}r=(h|0)==2;s=w+Ja|0;t=d[133902+s>>0]|0;Ba=w+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](k,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](k,p,t,h,Qa);break}}while(0);if(r){u=p<<3;r=k+u|0;s=y+Ja|0;t=d[133902+s>>0]|0;Ba=y+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133902+r>>0]|0;Ba=z+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(134058+(r<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133902+s>>0]|0;Ba=A+Ka|0;q=d[133746+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Td[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,p,t,q,Qa);break}}else{u=p<<2;r=k+u|0;s=y+Ja|0;t=d[133902+s>>0]|0;Ba=y+Ka|0;h=d[133746+Ba>>0]|0;do if(!(s>>>0<68|Ba>>>0<68)){q=b[x>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](r,p,t,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,p,t,h,Qa);break}}while(0);r=z+Ja|0;s=d[133902+r>>0]|0;Ba=z+Ka|0;h=d[133746+Ba>>0]|0;do if(!(r>>>0<68|Ba>>>0<68)){q=b[Ma>>1]|0;if(q<<16>>16>3){Td[c[f+92>>2]&255](n,p,s,h);break}else{a[Qa>>0]=(d[(q<<16>>16)+(134058+(r<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+2>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+4>>1]|0)+(134058+(r<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+6>>1]|0)+(134058+(r<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](n,p,s,h,Qa);break}}while(0);r=n+u|0;s=A+Ja|0;t=d[133902+s>>0]|0;Ba=A+Ka|0;q=d[133746+Ba>>0]|0;if(s>>>0<68|Ba>>>0<68)break;h=b[x>>1]|0;if(h<<16>>16>3){Td[c[f+92>>2]&255](r,p,t,q);break}else{a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[Qa+1>>0]=(d[(b[Ma+10>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+2>>0]=(d[(b[Ma+12>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[Qa+3>>0]=(d[(b[Ma+14>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[f+80>>2]&127](r,p,t,q,Qa);break}}}}while(0);ga=1}else ga=0;ha=Da+-1|0;ia=g+21732|0;ja=Fa>>>3&7;ka=g+21856|0;la=Fa&16777216;ma=(Fa&7|0)==0;na=Ma+6|0;oa=Ma+4|0;pa=Ma+2|0;qa=f+24340|0;ra=f+25664|0;sa=g+852|0;ta=g+856|0;ua=Qa+1|0;va=Qa+2|0;wa=Qa+3|0;xa=f+52|0;ya=f+76|0;za=o<<2;Aa=f+48|0;Ba=f+72|0;I=(i&1|0)==0;J=Fa&128^128;K=o<<1;L=p<<1;M=f+28212|0;O=f+25972|0;P=f+26392|0;Q=g+27836|0;R=g+27837|0;S=Ma+2|0;T=Ma+4|0;U=Ma+6|0;V=g+27839|0;X=g+27838|0;Y=Ma+2|0;Z=Ma+4|0;_=Ma+6|0;$=Ma+6|0;aa=Ma+4|0;ba=Ma+2|0;ca=f+64|0;da=f+88|0;ea=f+60|0;fa=f+84|0;B=f+26380|0;C=g+21712|0;f=0;while(1){if((f|0)==2)break;i=(f|0)!=0;E=c[(c[Ha>>2]|0)+12>>2]|0;D=(E|0)==3;E=(E|0)==2;F=(f|0)==0;if(F)u=ha;else u=c[C>>2]|0;h=c[(F?Ca:ia)>>2]|0;H=a[134714+(f<<3)+ja>>0]|0;G=H&255;if(H<<24>>24==3)H=(c[ka>>2]&15|0)==0?1:4;else H=4;q=32>>>f|8;A=q&Fa;t=i^1;b:do if(!(ga&t|(h|0)==0)){r=c[La>>2]|0;if(!((h&J|0)==0|I&((f|0)==1&(r|0)!=0)^1)){w=Da-(c[Na>>2]<<1)|0;x=0;while(1){if((x|0)==2)break b;h=c[(c[Ea>>2]|0)+(w<<2)>>2]|0;c:do if(!((h|Fa)&7)){if((h&16777216|0)==0?1:(c[(c[M>>2]|0)+4>>2]|0)!=0){q=(c[O>>2]|0)+(w*48|0)+12|0;h=0;while(1){if((h|0)==4)break c;b[Ma+(h<<1)>>1]=(a[q+h>>0]|a[h+12+(g+27824)>>0])<<24>>24?2:1;h=h+1|0}}h=b[(c[P>>2]|0)+(w<<1)>>1]|0;if(!(h&16384)){b[Ma>>1]=(a[Q>>0]|0)==0?1:2;if(!(a[R>>0]|0))q=1;else Ra=128}else{b[Ma>>1]=2;Ra=128}if((Ra|0)==128){Ra=0;q=2}b[S>>1]=q;if(h<<16>>16>=0){b[T>>1]=(a[X>>0]|0)==0?1:2;if(!(a[V>>0]|0))h=1;else Ra=132}else{b[T>>1]=2;Ra=132}if((Ra|0)==132){Ra=0;h=2}b[U>>1]=h}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611}while(0);r=c[qa>>2]|0;h=a[r+w>>0]|0;r=(a[r+Da>>0]|0)+1+(h<<24>>24)>>1;q=r+Ja|0;r=r+Ka|0;if(!(q>>>0<68|r>>>0<68)){h=d[133746+r>>0]|0;z=d[133902+q>>0]|0;y=j+(N(x,o)|0)|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(134058+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(134058+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(134058+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(134058+(q<<2))>>0]|0;Ud[c[Aa>>2]&127](y,K,z,h,Qa);h=a[(c[qa>>2]|0)+w>>0]|0}z=c[M>>2]|0;u=h<<24>>24;h=(c[sa>>2]|0)+1+(d[z+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[z+636+u>>0]|0)>>1;do if(Ia){v=N(x,p)|0;r=k+v|0;s=h+Ja|0;t=d[133902+s>>0]|0;q=h+Ka|0;h=d[133746+q>>0]|0;q=s>>>0<68|q>>>0<68;if(D){if(!q){a[Qa>>0]=a[(b[Ma>>1]|0)+(134058+(s<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(134058+(s<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(134058+(s<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(134058+(s<<2))>>0]|0;Ud[c[Aa>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133746+h>>0]|0;y=d[133902+q>>0]|0;a[Qa>>0]=a[(b[Ma>>1]|0)+(134058+(q<<2))>>0]|0;a[ua>>0]=a[(b[Y>>1]|0)+(134058+(q<<2))>>0]|0;a[va>>0]=a[(b[Z>>1]|0)+(134058+(q<<2))>>0]|0;a[wa>>0]=a[(b[_>>1]|0)+(134058+(q<<2))>>0]|0;Ud[c[Aa>>2]&127](n+v|0,L,y,z,Qa);break}else{if(!q){a[Qa>>0]=(d[(b[Ma>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(134058+(s<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](r,L,t,h,Qa)}q=u+Ja|0;h=u+Ka|0;if(q>>>0<68|h>>>0<68)break;z=d[133746+h>>0]|0;y=d[133902+q>>0]|0;a[Qa>>0]=(d[(b[Ma>>1]|0)+(134058+(q<<2))>>0]|0)+1;a[ua>>0]=(d[(b[Y>>1]|0)+(134058+(q<<2))>>0]|0)+1;a[va>>0]=(d[(b[Z>>1]|0)+(134058+(q<<2))>>0]|0)+1;a[wa>>0]=(d[(b[_>>1]|0)+(134058+(q<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](n+v|0,L,y,z,Qa);break}}while(0);w=(c[Na>>2]|0)+w|0;x=x+1|0}}s=h|Fa;d:do if(!(s&7)){if(!((r|0)==0|t)?((h^Fa)&128|0)!=0:0){s=Ma;c[s>>2]=65537;c[s+4>>2]=65537;s=0}else if((A|0)==0|(h&q|0)==0)s=1;else{s=(zk(g,12,i?4:11,Ga)|0)&65535;b[$>>1]=s;b[aa>>1]=s;b[ba>>1]=s;b[Ma>>1]=s;s=0}t=i?8:1;r=0;while(1){if((r|0)==4)break;h=(F?r<<3:r)+12|0;q=h-t|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(s){h=(zk(g,h,q,Ga)|0)&65535;Ra=166}}else{h=2;Ra=166}if((Ra|0)==166){Ra=0;b[Ma+(r<<1)>>1]=h}r=r+1|0}z=b[Ma>>1]|0;h=b[ba>>1]|0;q=b[aa>>1]|0;r=b[$>>1]|0}else{z=Ma;c[z>>2]=196611;c[z+4>>2]=196611;do if(s&128|0)if(!r)if(F&(c[B>>2]|0)!=3)break;else{z=3;h=3;q=3;r=3;break d}else if(F)break;else{z=3;h=3;q=3;r=3;break d}while(0);z=Ma;c[z>>2]=262148;c[z+4>>2]=262148;z=4;h=4;q=4;r=4}while(0);y=z<<16>>16;x=h<<16>>16;w=q<<16>>16;v=r<<16>>16;do if((x+w+y|0)!=(0-v|0)){s=c[qa>>2]|0;u=a[s+u>>0]|0;s=(a[s+Da>>0]|0)+1+u>>1;h=c[M>>2]|0;t=(c[sa>>2]|0)+1+(d[h+548+u>>0]|0)>>1;u=(c[ta>>2]|0)+1+(d[h+636+u>>0]|0)>>1;h=s+Ja|0;q=d[133902+h>>0]|0;s=s+Ka|0;r=d[133746+s>>0]|0;s=h>>>0<68|s>>>0<68;if(F){do if(!s)if(z<<16>>16>3){Td[c[ca>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[134058+(h<<2)+y>>0]|0;a[ua>>0]=a[134058+(h<<2)+x>>0]|0;a[va>>0]=a[134058+(h<<2)+w>>0]|0;a[wa>>0]=a[134058+(h<<2)+v>>0]|0;Ud[c[xa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133902+r>>0]|0;q=t+Ka|0;h=d[133746+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Td[c[ca>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[134058+(r<<2)+y>>0]|0;a[ua>>0]=a[134058+(r<<2)+x>>0]|0;a[va>>0]=a[134058+(r<<2)+w>>0]|0;a[wa>>0]=a[134058+(r<<2)+v>>0]|0;Ud[c[xa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133902+q>>0]|0;u=u+Ka|0;h=d[133746+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Td[c[ca>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[134058+(q<<2)+y>>0]|0;a[ua>>0]=a[134058+(q<<2)+x>>0]|0;a[va>>0]=a[134058+(q<<2)+w>>0]|0;a[wa>>0]=a[134058+(q<<2)+v>>0]|0;Ud[c[xa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Td[c[da>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[134058+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[134058+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[134058+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[134058+(r<<2)+v>>0]|0)+1;Ud[c[ya>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133902+q>>0]|0;u=u+Ka|0;h=d[133746+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Td[c[da>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[134058+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[134058+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[134058+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[134058+(q<<2)+v>>0]|0)+1;Ud[c[ya>>2]&127](n,p,r,h,Qa);break}}}else{do if(!s)if(z<<16>>16>3){Td[c[ea>>2]&255](j,o,q,r);break}else{a[Qa>>0]=a[134058+(h<<2)+y>>0]|0;a[ua>>0]=a[134058+(h<<2)+x>>0]|0;a[va>>0]=a[134058+(h<<2)+w>>0]|0;a[wa>>0]=a[134058+(h<<2)+v>>0]|0;Ud[c[Aa>>2]&127](j,o,q,r,Qa);break}while(0);if(!Ia)break;r=t+Ja|0;s=d[133902+r>>0]|0;q=t+Ka|0;h=d[133746+q>>0]|0;q=r>>>0<68|q>>>0<68;if(D){do if(!q)if(z<<16>>16>3){Td[c[ea>>2]&255](k,p,s,h);break}else{a[Qa>>0]=a[134058+(r<<2)+y>>0]|0;a[ua>>0]=a[134058+(r<<2)+x>>0]|0;a[va>>0]=a[134058+(r<<2)+w>>0]|0;a[wa>>0]=a[134058+(r<<2)+v>>0]|0;Ud[c[Aa>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133902+q>>0]|0;u=u+Ka|0;h=d[133746+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Td[c[ea>>2]&255](n,p,r,h);break}else{a[Qa>>0]=a[134058+(q<<2)+y>>0]|0;a[ua>>0]=a[134058+(q<<2)+x>>0]|0;a[va>>0]=a[134058+(q<<2)+w>>0]|0;a[wa>>0]=a[134058+(q<<2)+v>>0]|0;Ud[c[Aa>>2]&127](n,p,r,h,Qa);break}}else{do if(!q)if(z<<16>>16>3){Td[c[fa>>2]&255](k,p,s,h);break}else{a[Qa>>0]=(d[134058+(r<<2)+y>>0]|0)+1;a[ua>>0]=(d[134058+(r<<2)+x>>0]|0)+1;a[va>>0]=(d[134058+(r<<2)+w>>0]|0)+1;a[wa>>0]=(d[134058+(r<<2)+v>>0]|0)+1;Ud[c[Ba>>2]&127](k,p,s,h,Qa);break}while(0);q=u+Ja|0;r=d[133902+q>>0]|0;u=u+Ka|0;h=d[133746+u>>0]|0;if(q>>>0<68|u>>>0<68)break;if(z<<16>>16>3){Td[c[fa>>2]&255](n,p,r,h);break}else{a[Qa>>0]=(d[134058+(q<<2)+y>>0]|0)+1;a[ua>>0]=(d[134058+(q<<2)+x>>0]|0)+1;a[va>>0]=(d[134058+(q<<2)+w>>0]|0)+1;a[wa>>0]=(d[134058+(q<<2)+v>>0]|0)+1;Ud[c[Ba>>2]&127](n,p,r,h,Qa);break}}}}while(0)}while(0);z=F|E^1;y=(A|0)==0;x=i?8:1;w=1;while(1){if((w|0)>=(H|0))break;t=(la&w<<24|0)==0;do if(!(z&(t^1))){if(ma){if(!(w&G))if(y)r=1;else{r=(N(w,x)|0)+12|0;r=(zk(g,r,r-x|0,Ga)|0)&65535;b[na>>1]=r;b[oa>>1]=r;b[pa>>1]=r;b[Ma>>1]=r;r=0}else{r=Ma;c[r>>2]=0;c[r+4>>2]=0;r=0}s=0;while(1){if((s|0)==4)break;h=(F?w:s)+12+((F?s:w)<<3)|0;q=h-x|0;if(!((a[g+27824+q>>0]|a[g+27824+h>>0])<<24>>24)){if(r){h=(zk(g,h,q,Ga)|0)&65535;Ra=230}}else{h=2;Ra=230}if((Ra|0)==230){Ra=0;b[Ma+(s<<1)>>1]=h}s=s+1|0}h=b[Ma>>1]|0;q=b[pa>>1]|0;r=b[oa>>1]|0;s=b[na>>1]|0;if(((q<<16>>16)+(h<<16>>16)+(r<<16>>16)|0)==(0-(s<<16>>16)|0))break;else v=s}else{h=Ma;c[h>>2]=196611;c[h+4>>2]=196611;h=3;q=3;r=3;v=3}s=a[(c[qa>>2]|0)+Da>>0]|0;if(F){u=w<<2;t=Ja+s|0;s=Ka+s|0;if(!(t>>>0<68|s>>>0<68)){i=d[133746+s>>0]|0;A=d[133902+t>>0]|0;s=j+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(t<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(t<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(t<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(t<<2))>>0]|0;Ud[c[xa>>2]&127](s,o,A,i,Qa)}if(!Ia)break;if(D){t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(s<<2))>>0]|0;Ud[c[xa>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(s<<2))>>0]|0;Ud[c[xa>>2]&127](u,p,A,i,Qa);break}if(w&1|0)break;u=w<<1;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;t=k+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[ya>>2]&127](t,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;u=n+(u<>2])|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[ya>>2]&127](u,p,A,i,Qa);break}if(E){if(t?(Oa=Ja+s|0,Pa=Ka+s|0,!(Oa>>>0<68|Pa>>>0<68)):0){i=d[133746+Pa>>0]|0;A=d[133902+Oa>>0]|0;u=j+(N(za,w)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(Oa<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(Oa<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(Oa<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(Oa<<2))>>0]|0;Ud[c[Aa>>2]&127](u,o,A,i,Qa)}if(!Ia)break;u=N(w<<2,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](n+u|0,p,A,i,Qa);break}t=w<<2;u=Ja+s|0;s=Ka+s|0;if(!(u>>>0<68|s>>>0<68)){i=d[133746+s>>0]|0;A=d[133902+u>>0]|0;s=j+(N(t,o)|0)|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(u<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(u<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(u<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(u<<2))>>0]|0;Ud[c[Aa>>2]&127](s,o,A,i,Qa)}if(Ia){if(D){u=N(t,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(s<<2))>>0]|0;Ud[c[Aa>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(s>>>0<68|t>>>0<68)break;i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=a[(h<<16>>16)+(134058+(s<<2))>>0]|0;a[ua>>0]=a[(q<<16>>16)+(134058+(s<<2))>>0]|0;a[va>>0]=a[(r<<16>>16)+(134058+(s<<2))>>0]|0;a[wa>>0]=a[(v<<16>>16)+(134058+(s<<2))>>0]|0;Ud[c[Aa>>2]&127](n+u|0,p,A,i,Qa);break}if(!(w&1)){u=N(w<<1,p)|0;t=c[sa>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](k+u|0,p,A,i,Qa)}t=c[ta>>2]|0;s=t+Ja|0;t=t+Ka|0;if(!(s>>>0<68|t>>>0<68)){i=d[133746+t>>0]|0;A=d[133902+s>>0]|0;a[Qa>>0]=(d[(h<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[ua>>0]=(d[(q<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[va>>0]=(d[(r<<16>>16)+(134058+(s<<2))>>0]|0)+1;a[wa>>0]=(d[(v<<16>>16)+(134058+(s<<2))>>0]|0)+1;Ud[c[Ba>>2]&127](n+u|0,p,A,i,Qa)}}}}while(0);w=w+1|0}f=f+1|0}l=Sa;return}function yk(e,f,g,h,i,j,k,n,o){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;va=l;l=l+80|0;if((l|0)>=(m|0))W(80);ta=va+64|0;pa=va;q=c[e+96>>2]|0;do if((q|0)!=0?(p=c[e+28212>>2]|0,(c[p+724>>2]|0)==0):0){ga=c[e+25664>>2]|0;sa=c[e+28216>>2]|0;w=c[sa+12>>2]|0;ma=(w|0)!=0;oa=(w|0)==3;w=(w|0)==2;Y=c[f+21796>>2]|0;h=c[f+21740>>2]|0;ka=c[f+21732>>2]|0;sa=(N(c[sa+1184>>2]|0,-6)|0)+48|0;ra=(c[f+872>>2]|0)+52+sa|0;sa=(c[f+876>>2]|0)+52+sa|0;t=c[(c[e+24364>>2]|0)+(Y<<2)>>2]|0;la=c[e+24340>>2]|0;na=a[la+Y>>0]|0;Y=a[la+(Y+-1)>>0]|0;la=a[la+(c[f+21712>>2]|0)>>0]|0;qa=d[p+548+na>>0]|0;ja=na+1|0;v=ja+Y>>1;ja=ja+la>>1;g=qa+1|0;Y=(g+(d[p+548+Y>>0]|0)|0)>>>1;la=(g+(d[p+548+la>>0]|0)|0)>>>1;if(t&7|0){J=(c[e+26380>>2]|0)!=3?114266:114274;s=(h|0)!=0;if(s?(r=v+ra|0,u=v+sa|0,!(r>>>0<68|u>>>0<68)):0)Td[c[e+64>>2]&255](i,n,d[133902+r>>0]|0,d[133746+u>>0]|0);f=(t&16777216|0)!=0;q=ra+na|0;r=133902+q|0;p=sa+na|0;h=133746+p|0;p=q>>>0<68|p>>>0<68;if(f){if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;yX(ta|0,a[134058+(q<<2)+3>>0]|0,4)|0;Ud[c[e+52>>2]&127](i+(8<>0]|0,pa=ja+sa|0,z=d[133746+pa>>0]|0,!(x>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Td[c[e+60>>2]&255](i,n,y,z);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(x<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(134058+(x<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(134058+(x<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(134058+(x<<2))>>0]|0;Ud[c[e+48>>2]&127](i,n,y,z,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;yX(ta|0,a[134058+(q<<2)+3>>0]|0,4)|0;Ud[c[e+48>>2]&127](i+(n<<3)|0,n,na,pa,ta)}}else{if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ha=a[134058+(q<<2)+3>>0]|0;ia=e+52|0;yX(ta|0,ha|0,4)|0;Ud[c[ia>>2]&127](i+(4<>2]&127](i+(8<>2]&127](i+(12<>0]|0,pa=ja+sa|0,C=d[133746+pa>>0]|0,!(A>>>0<68|pa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){Td[c[e+60>>2]&255](i,n,B,C);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(A<<2))>>0]|0;a[ta+1>>0]=a[(b[J+2>>1]|0)+(134058+(A<<2))>>0]|0;a[ta+2>>0]=a[(b[J+4>>1]|0)+(134058+(A<<2))>>0]|0;a[ta+3>>0]=a[(b[J+6>>1]|0)+(134058+(A<<2))>>0]|0;Ud[c[e+48>>2]&127](i,n,B,C,ta);break}}while(0);if(!p){pa=d[h>>0]|0;na=d[r>>0]|0;ia=a[134058+(q<<2)+3>>0]|0;ja=e+48|0;yX(ta|0,ia|0,4)|0;Ud[c[ja>>2]&127](i+(n<<2)|0,n,na,pa,ta);yX(ta|0,ia|0,4)|0;Ud[c[ja>>2]&127](i+(n<<3)|0,n,na,pa,ta);yX(ta|0,ia|0,4)|0;Ud[c[ja>>2]&127](i+(n*12|0)|0,n,na,pa,ta)}}if(!ma)break;if(oa){if(s?(D=Y+ra|0,E=Y+sa|0,!(D>>>0<68|E>>>0<68)):0){o=d[133746+E>>0]|0;pa=d[133902+D>>0]|0;oa=e+64|0;Td[c[oa>>2]&255](j,n,pa,o);Td[c[oa>>2]&255](k,n,pa,o)}if(f){g=8<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;oa=a[134058+(f<<2)+3>>0]|0;pa=e+52|0;yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](j+g|0,n,qa,o,ta);yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](k+g|0,n,qa,o,ta)}do if(ka|0?(K=la+ra|0,L=d[133902+K>>0]|0,sa=la+sa|0,M=d[133746+sa>>0]|0,!(K>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Td[c[sa>>2]&255](j,n,L,M);Td[c[sa>>2]&255](k,n,L,M);break}else{na=a[(g<<16>>16)+(134058+(K<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(134058+(K<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(134058+(K<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(134058+(K<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Ud[c[sa>>2]&127](j,n,L,M,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Ud[c[sa>>2]&127](k,n,L,M,ta);break}}while(0);g=n<<3;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;o=a[134058+(f<<2)+3>>0]|0;e=e+48|0;yX(ta|0,o|0,4)|0;Ud[c[e>>2]&127](j+g|0,n,ra,sa,ta);yX(ta|0,o|0,4)|0;Ud[c[e>>2]&127](k+g|0,n,ra,sa,ta);break}else{g=4<>>0<68|p>>>0<68;if(!p){o=d[h>>0]|0;qa=d[q>>0]|0;i=a[134058+(f<<2)+3>>0]|0;oa=e+52|0;yX(ta|0,i|0,4)|0;Ud[c[oa>>2]&127](j+g|0,n,qa,o,ta);yX(ta|0,i|0,4)|0;Ud[c[oa>>2]&127](k+g|0,n,qa,o,ta);pa=8<>2]&127](j+pa|0,n,qa,o,ta);yX(ta|0,i|0,4)|0;Ud[c[oa>>2]&127](k+pa|0,n,qa,o,ta);pa=12<>2]&127](j+pa|0,n,qa,o,ta);yX(ta|0,i|0,4)|0;Ud[c[oa>>2]&127](k+pa|0,n,qa,o,ta)}do if(ka|0?(O=la+ra|0,P=d[133902+O>>0]|0,sa=la+sa|0,Q=d[133746+sa>>0]|0,!(O>>>0<68|sa>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){sa=e+60|0;Td[c[sa>>2]&255](j,n,P,Q);Td[c[sa>>2]&255](k,n,P,Q);break}else{na=a[(g<<16>>16)+(134058+(O<<2))>>0]|0;a[ta>>0]=na;i=a[(b[J+2>>1]|0)+(134058+(O<<2))>>0]|0;oa=ta+1|0;a[oa>>0]=i;pa=a[(b[J+4>>1]|0)+(134058+(O<<2))>>0]|0;qa=ta+2|0;a[qa>>0]=pa;o=a[(b[J+6>>1]|0)+(134058+(O<<2))>>0]|0;ra=ta+3|0;a[ra>>0]=o;sa=e+48|0;Ud[c[sa>>2]&127](j,n,P,Q,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[ra>>0]=o;Ud[c[sa>>2]&127](k,n,P,Q,ta);break}}while(0);g=n<<2;if(p)break;sa=d[h>>0]|0;ra=d[q>>0]|0;qa=a[134058+(f<<2)+3>>0]|0;o=e+48|0;yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](j+g|0,n,ra,sa,ta);yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](k+g|0,n,ra,sa,ta);e=n<<3;yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](j+e|0,n,ra,sa,ta);yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](k+e|0,n,ra,sa,ta);e=n*12|0;yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](j+e|0,n,ra,sa,ta);yX(ta|0,qa|0,4)|0;Ud[c[o>>2]&127](k+e|0,n,ra,sa,ta);break}}if(w){if(s?(F=Y+ra|0,G=Y+sa|0,!(F>>>0<68|G>>>0<68)):0){n=d[133746+G>>0]|0;pa=d[133902+F>>0]|0;oa=e+88|0;Td[c[oa>>2]&255](j,o,pa,n);Td[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[134058+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](j+g|0,o,qa,n,ta);yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(R=la+ra|0,S=d[133902+R>>0]|0,n=la+sa|0,T=d[133746+n>>0]|0,!(R>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Td[c[n>>2]&255](j,o,S,T);Td[c[n>>2]&255](k,o,S,T);break}else{na=(d[(g<<16>>16)+(134058+(R<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(134058+(R<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(134058+(R<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(134058+(R<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Ud[c[n>>2]&127](j,o,S,T,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Ud[c[n>>2]&127](k,o,S,T,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;qa=(d[134058+(f<<2)+3>>0]|0)+1&255;ra=e+72|0;yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](j+g|0,o,sa,n,ta);yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](k+g|0,o,sa,n,ta);e=o<<3;yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](j+e|0,o,sa,n,ta);yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](k+e|0,o,sa,n,ta);e=o*12|0;yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](j+e|0,o,sa,n,ta);yX(ta|0,qa|0,4)|0;Ud[c[ra>>2]&127](k+e|0,o,sa,n,ta);break}else{if(s?(H=Y+ra|0,I=Y+sa|0,!(H>>>0<68|I>>>0<68)):0){n=d[133746+I>>0]|0;pa=d[133902+H>>0]|0;oa=e+88|0;Td[c[oa>>2]&255](j,o,pa,n);Td[c[oa>>2]&255](k,o,pa,n)}g=4<>>0<68|p>>>0<68;if(!p){n=d[h>>0]|0;qa=d[q>>0]|0;oa=(d[134058+(f<<2)+3>>0]|0)+1&255;pa=e+76|0;yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](j+g|0,o,qa,n,ta);yX(ta|0,oa|0,4)|0;Ud[c[pa>>2]&127](k+g|0,o,qa,n,ta)}do if(ka|0?(U=la+ra|0,V=d[133902+U>>0]|0,n=la+sa|0,X=d[133746+n>>0]|0,!(U>>>0<68|n>>>0<68)):0){g=b[J>>1]|0;if(g<<16>>16>3){n=e+84|0;Td[c[n>>2]&255](j,o,V,X);Td[c[n>>2]&255](k,o,V,X);break}else{na=(d[(g<<16>>16)+(134058+(U<<2))>>0]|0)+1&255;a[ta>>0]=na;i=(d[(b[J+2>>1]|0)+(134058+(U<<2))>>0]|0)+1&255;oa=ta+1|0;a[oa>>0]=i;pa=(d[(b[J+4>>1]|0)+(134058+(U<<2))>>0]|0)+1&255;qa=ta+2|0;a[qa>>0]=pa;ra=(d[(b[J+6>>1]|0)+(134058+(U<<2))>>0]|0)+1&255;sa=ta+3|0;a[sa>>0]=ra;n=e+72|0;Ud[c[n>>2]&127](j,o,V,X,ta);a[ta>>0]=na;a[oa>>0]=i;a[qa>>0]=pa;a[sa>>0]=ra;Ud[c[n>>2]&127](k,o,V,X,ta);break}}while(0);g=o<<2;if(p)break;n=d[h>>0]|0;sa=d[q>>0]|0;ra=(d[134058+(f<<2)+3>>0]|0)+1&255;e=e+72|0;yX(ta|0,ra|0,4)|0;Ud[c[e>>2]&127](j+g|0,o,sa,n,ta);yX(ta|0,ra|0,4)|0;Ud[c[e>>2]&127](k+g|0,o,sa,n,ta);break}}r=(t&16777216|0)!=0;g=c[f+21856>>2]|0;if(r?!(oa|(g&7|0)!=7):0){q=pa;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+16|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+32|0;c[q>>2]=131074;c[q+4>>2]=131074;q=pa+48|0;c[q>>2]=131074;c[q+4>>2]=131074;q=4}else{V=0-((t*5|0)>>>5&1)&3|t>>4;X=4-(0-(t>>>3&(g&15|0)==0)&3)|0;Yd[q&3](pa,f+27824|0,f+28272|0,f+27952|0,(c[f+23412>>2]|0)==2&1,X,(t>>24)+1|0,0-((h*5|0)>>>5&1&V>>>1)&3,V,(c[e+26380>>2]|0)!=3&1);q=X}if(h&7|0){X=pa;c[X>>2]=262148;c[X+4>>2]=262148}if(ka&7|0){V=(c[e+26380>>2]|0)!=3;X=pa+32|0;c[X>>2]=V?196611:262148;c[X+4>>2]=V?196611:262148}do if(h|0?(X=pa,V=c[X>>2]|0,s=V&65535,!((V|0)==0&(c[X+4>>2]|0)==0)):0){h=v+ra|0;p=d[133902+h>>0]|0;X=v+sa|0;g=d[133746+X>>0]|0;do if(!(h>>>0<68|X>>>0<68))if(s<<16>>16>3){Td[c[e+64>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(s<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+52>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=Y+ra|0;f=d[133902+p>>0]|0;g=Y+sa|0;h=d[133746+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Td[c[e+64>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+52>>2]&127](j,n,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Td[c[e+64>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+2>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+4>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+6>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+52>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[pa>>1]|0;if(g<<16>>16>3)Td[c[e+88>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+76>>2]&127](j,o,f,h,ta)}g=b[pa>>1]|0;if(g<<16>>16>3){Td[c[e+88>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+2>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+4>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+6>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+76>>2]&127](k,o,f,h,ta);break}}}}while(0);do if((q|0)==1){if(ka|0?($=pa+32|0,qa=$,na=c[qa>>2]|0,J=na&65535,!((na|0)==0&(c[qa+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133902+h>>0]|0;qa=ja+sa|0;g=d[133746+qa>>0]|0;do if(!(h>>>0<68|qa>>>0<68))if(J<<16>>16>3){Td[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(J<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133902+p>>0]|0;g=la+sa|0;h=d[133746+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Td[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](j,n,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Td[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[$>>1]|0;if(g<<16>>16>3)Td[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](j,o,f,h,ta)}g=b[$>>1]|0;if(g<<16>>16>3){Td[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](k,o,f,h,ta);break}}}}}else{if(r){r=pa+16|0;ia=r;f=c[ia>>2]|0;do if(!((f|0)==0&(c[ia+4>>2]|0)==0)){g=1<>>0<68|p>>>0<68)){ia=d[133746+p>>0]|0;ha=d[133902+h>>0]|0;a[ta>>0]=a[(f<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+52>>2]&127](i+q|0,n,ha,ia,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ia=d[133746+h>>0]|0;ha=d[133902+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(134058+(g<<2))>>0]|0;_=pa+18|0;$=ta+1|0;a[$>>0]=a[(b[_>>1]|0)+(134058+(g<<2))>>0]|0;ca=pa+20|0;da=ta+2|0;a[da>>0]=a[(b[ca>>1]|0)+(134058+(g<<2))>>0]|0;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=a[(b[ea>>1]|0)+(134058+(g<<2))>>0]|0;ga=e+52|0;Ud[c[ga>>2]&127](j+q|0,n,ha,ia,ta);a[ta>>0]=a[(b[r>>1]|0)+(134058+(g<<2))>>0]|0;a[$>>0]=a[(b[_>>1]|0)+(134058+(g<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(134058+(g<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(134058+(g<<2))>>0]|0;Ud[c[ga>>2]&127](k+q|0,n,ha,ia,ta);break}else{g=g<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ia=d[133746+p>>0]|0;ha=d[133902+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(134058+(h<<2))>>0]|0)+1;_=pa+18|0;$=ta+1|0;a[$>>0]=(d[(b[_>>1]|0)+(134058+(h<<2))>>0]|0)+1;ca=pa+20|0;da=ta+2|0;a[da>>0]=(d[(b[ca>>1]|0)+(134058+(h<<2))>>0]|0)+1;ea=pa+22|0;fa=ta+3|0;a[fa>>0]=(d[(b[ea>>1]|0)+(134058+(h<<2))>>0]|0)+1;ga=e+76|0;Ud[c[ga>>2]&127](j+g|0,o,ha,ia,ta);a[ta>>0]=(d[(b[r>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[$>>0]=(d[(b[_>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[da>>0]=(d[(b[ca>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(134058+(h<<2))>>0]|0)+1;Ud[c[ga>>2]&127](k+g|0,o,ha,ia,ta);break}}while(0);do if(ka|0?(ba=pa+32|0,ka=ba,ia=c[ka>>2]|0,aa=ia&65535,!((ia|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133902+h>>0]|0;ka=ja+sa|0;g=d[133746+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(aa<<16>>16>3){Td[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(aa<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133902+p>>0]|0;g=la+sa|0;h=d[133746+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Td[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](j,n,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Td[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[ba>>1]|0;if(g<<16>>16>3)Td[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](j,o,f,h,ta)}g=b[ba>>1]|0;if(g<<16>>16>3){Td[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);q=pa+48|0;la=q;h=c[la>>2]|0;if((h|0)==0&(c[la+4>>2]|0)==0)break;f=n<<3;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){na=d[133746+g>>0]|0;la=d[133902+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](i+f|0,n,la,na,ta)}if(!ma)break;if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133746+g>>0]|0;ra=d[133902+h>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(134058+(h<<2))>>0]|0;ma=pa+50|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0;i=pa+52|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(134058+(h<<2))>>0]|0;qa=pa+54|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0;e=e+48|0;Ud[c[e>>2]&127](j+f|0,n,ra,sa,ta);a[ta>>0]=a[(b[q>>1]|0)+(134058+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(134058+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e>>2]&127](k+f|0,n,ra,sa,ta);break}else{p=o<<2;h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;n=d[133746+g>>0]|0;sa=d[133902+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(134058+(h<<2))>>0]|0)+1;ma=pa+50|0;na=ta+1|0;a[na>>0]=(d[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0)+1;i=pa+52|0;oa=ta+2|0;a[oa>>0]=(d[(b[i>>1]|0)+(134058+(h<<2))>>0]|0)+1;qa=pa+54|0;ra=ta+3|0;a[ra>>0]=(d[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0)+1;e=e+72|0;Ud[c[e>>2]&127](j+p|0,o,sa,n,ta);a[ta>>0]=(d[(b[q>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[na>>0]=(d[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[oa>>0]=(d[(b[i>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[ra>>0]=(d[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0)+1;Ud[c[e>>2]&127](k+p|0,o,sa,n,ta);break}}g=pa+8|0;ba=g;h=c[ba>>2]|0;if(!((h|0)==0&(c[ba+4>>2]|0)==0)){p=4<>>0<68|q>>>0<68)){ba=d[133746+q>>0]|0;aa=d[133902+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(134058+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+10>>1]|0)+(134058+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+12>>1]|0)+(134058+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+14>>1]|0)+(134058+(f<<2))>>0]|0;Ud[c[e+52>>2]&127](i+p|0,n,aa,ba,ta)}if(oa?(Z=ra+qa|0,_=sa+qa|0,!(Z>>>0<68|_>>>0<68)):0){ba=d[133746+_>>0]|0;aa=d[133902+Z>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(134058+(Z<<2))>>0]|0;T=pa+10|0;U=ta+1|0;a[U>>0]=a[(b[T>>1]|0)+(134058+(Z<<2))>>0]|0;V=pa+12|0;X=ta+2|0;a[X>>0]=a[(b[V>>1]|0)+(134058+(Z<<2))>>0]|0;Y=pa+14|0;_=ta+3|0;a[_>>0]=a[(b[Y>>1]|0)+(134058+(Z<<2))>>0]|0;$=e+52|0;Ud[c[$>>2]&127](j+p|0,n,aa,ba,ta);a[ta>>0]=a[(b[g>>1]|0)+(134058+(Z<<2))>>0]|0;a[U>>0]=a[(b[T>>1]|0)+(134058+(Z<<2))>>0]|0;a[X>>0]=a[(b[V>>1]|0)+(134058+(Z<<2))>>0]|0;a[_>>0]=a[(b[Y>>1]|0)+(134058+(Z<<2))>>0]|0;Ud[c[$>>2]&127](k+p|0,n,aa,ba,ta)}}r=pa+16|0;ba=r;g=c[ba>>2]|0;do if(!((g|0)==0&(c[ba+4>>2]|0)==0)){h=1<>>0<68|f>>>0<68)){ba=d[133746+f>>0]|0;aa=d[133902+p>>0]|0;a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+18>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+20>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+22>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+52>>2]&127](i+q|0,n,aa,ba,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;ba=d[133746+h>>0]|0;aa=d[133902+g>>0]|0;a[ta>>0]=a[(b[r>>1]|0)+(134058+(g<<2))>>0]|0;U=pa+18|0;V=ta+1|0;a[V>>0]=a[(b[U>>1]|0)+(134058+(g<<2))>>0]|0;X=pa+20|0;Y=ta+2|0;a[Y>>0]=a[(b[X>>1]|0)+(134058+(g<<2))>>0]|0;Z=pa+22|0;_=ta+3|0;a[_>>0]=a[(b[Z>>1]|0)+(134058+(g<<2))>>0]|0;$=e+52|0;Ud[c[$>>2]&127](j+q|0,n,aa,ba,ta);a[ta>>0]=a[(b[r>>1]|0)+(134058+(g<<2))>>0]|0;a[V>>0]=a[(b[U>>1]|0)+(134058+(g<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(134058+(g<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(134058+(g<<2))>>0]|0;Ud[c[$>>2]&127](k+q|0,n,aa,ba,ta);break}else{g=h<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ba=d[133746+p>>0]|0;aa=d[133902+h>>0]|0;a[ta>>0]=(d[(b[r>>1]|0)+(134058+(h<<2))>>0]|0)+1;U=pa+18|0;V=ta+1|0;a[V>>0]=(d[(b[U>>1]|0)+(134058+(h<<2))>>0]|0)+1;X=pa+20|0;Y=ta+2|0;a[Y>>0]=(d[(b[X>>1]|0)+(134058+(h<<2))>>0]|0)+1;Z=pa+22|0;_=ta+3|0;a[_>>0]=(d[(b[Z>>1]|0)+(134058+(h<<2))>>0]|0)+1;$=e+76|0;Ud[c[$>>2]&127](j+g|0,o,aa,ba,ta);a[ta>>0]=(d[(b[r>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[V>>0]=(d[(b[U>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[Y>>0]=(d[(b[X>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[_>>0]=(d[(b[Z>>1]|0)+(134058+(h<<2))>>0]|0)+1;Ud[c[$>>2]&127](k+g|0,o,aa,ba,ta);break}}while(0);f=pa+24|0;ba=f;q=c[ba>>2]|0;if(!((q|0)==0&(c[ba+4>>2]|0)==0)){g=12<>>0<68|p>>>0<68)){ga=d[133746+p>>0]|0;ba=d[133902+h>>0]|0;a[ta>>0]=a[(q<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+26>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+28>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+30>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+52>>2]&127](i+g|0,n,ba,ga,ta)}if(oa?(ca=ra+qa|0,da=sa+qa|0,!(ca>>>0<68|da>>>0<68)):0){ga=d[133746+da>>0]|0;da=d[133902+ca>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(134058+(ca<<2))>>0]|0;X=pa+26|0;Y=ta+1|0;a[Y>>0]=a[(b[X>>1]|0)+(134058+(ca<<2))>>0]|0;Z=pa+28|0;_=ta+2|0;a[_>>0]=a[(b[Z>>1]|0)+(134058+(ca<<2))>>0]|0;$=pa+30|0;aa=ta+3|0;a[aa>>0]=a[(b[$>>1]|0)+(134058+(ca<<2))>>0]|0;ba=e+52|0;Ud[c[ba>>2]&127](j+g|0,n,da,ga,ta);a[ta>>0]=a[(b[f>>1]|0)+(134058+(ca<<2))>>0]|0;a[Y>>0]=a[(b[X>>1]|0)+(134058+(ca<<2))>>0]|0;a[_>>0]=a[(b[Z>>1]|0)+(134058+(ca<<2))>>0]|0;a[aa>>0]=a[(b[$>>1]|0)+(134058+(ca<<2))>>0]|0;Ud[c[ba>>2]&127](k+g|0,n,da,ga,ta)}}do if(ka|0?(fa=pa+32|0,ka=fa,ga=c[ka>>2]|0,ea=ga&65535,!((ga|0)==0&(c[ka+4>>2]|0)==0)):0){h=ja+ra|0;p=d[133902+h>>0]|0;ka=ja+sa|0;g=d[133746+ka>>0]|0;do if(!(h>>>0<68|ka>>>0<68))if(ea<<16>>16>3){Td[c[e+60>>2]&255](i,n,p,g);break}else{a[ta>>0]=a[(ea<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+48>>2]&127](i,n,p,g,ta);break}while(0);if(ma){p=la+ra|0;f=d[133902+p>>0]|0;g=la+sa|0;h=d[133746+g>>0]|0;g=p>>>0<68|g>>>0<68;if(oa){if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Td[c[e+60>>2]&255](j,n,f,h);else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](j,n,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Td[c[e+60>>2]&255](k,n,f,h);break}else{a[ta>>0]=a[(g<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](k,n,f,h,ta);break}}else{if(g)break;g=b[fa>>1]|0;if(g<<16>>16>3)Td[c[e+84>>2]&255](j,o,f,h);else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](j,o,f,h,ta)}g=b[fa>>1]|0;if(g<<16>>16>3){Td[c[e+84>>2]&255](k,o,f,h);break}else{a[ta>>0]=(d[(g<<16>>16)+(134058+(p<<2))>>0]|0)+1;a[ta+1>>0]=(d[(b[pa+34>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+2>>0]=(d[(b[pa+36>>1]|0)+(134058+(p<<2))>>0]|0)+1;a[ta+3>>0]=(d[(b[pa+38>>1]|0)+(134058+(p<<2))>>0]|0)+1;Ud[c[e+72>>2]&127](k,o,f,h,ta);break}}}}while(0);g=pa+40|0;la=g;h=c[la>>2]|0;if(!((h|0)==0&(c[la+4>>2]|0)==0)){p=n<<2;f=ra+na|0;q=sa+na|0;if(!(f>>>0<68|q>>>0<68)){la=d[133746+q>>0]|0;ka=d[133902+f>>0]|0;a[ta>>0]=a[(h<<16>>16)+(134058+(f<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+42>>1]|0)+(134058+(f<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+44>>1]|0)+(134058+(f<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+46>>1]|0)+(134058+(f<<2))>>0]|0;Ud[c[e+48>>2]&127](i+p|0,n,ka,la,ta)}if(oa?(ha=ra+qa|0,ia=sa+qa|0,!(ha>>>0<68|ia>>>0<68)):0){la=d[133746+ia>>0]|0;ka=d[133902+ha>>0]|0;a[ta>>0]=a[(b[g>>1]|0)+(134058+(ha<<2))>>0]|0;ca=pa+42|0;da=ta+1|0;a[da>>0]=a[(b[ca>>1]|0)+(134058+(ha<<2))>>0]|0;ea=pa+44|0;fa=ta+2|0;a[fa>>0]=a[(b[ea>>1]|0)+(134058+(ha<<2))>>0]|0;ga=pa+46|0;ia=ta+3|0;a[ia>>0]=a[(b[ga>>1]|0)+(134058+(ha<<2))>>0]|0;ja=e+48|0;Ud[c[ja>>2]&127](j+p|0,n,ka,la,ta);a[ta>>0]=a[(b[g>>1]|0)+(134058+(ha<<2))>>0]|0;a[da>>0]=a[(b[ca>>1]|0)+(134058+(ha<<2))>>0]|0;a[fa>>0]=a[(b[ea>>1]|0)+(134058+(ha<<2))>>0]|0;a[ia>>0]=a[(b[ga>>1]|0)+(134058+(ha<<2))>>0]|0;Ud[c[ja>>2]&127](k+p|0,n,ka,la,ta)}}q=pa+48|0;la=q;g=c[la>>2]|0;do if(!((g|0)==0&(c[la+4>>2]|0)==0)){f=n<<3;h=ra+na|0;p=sa+na|0;if(!(h>>>0<68|p>>>0<68)){la=d[133746+p>>0]|0;ka=d[133902+h>>0]|0;a[ta>>0]=a[(g<<16>>16)+(134058+(h<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+50>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+52>>1]|0)+(134058+(h<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+54>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e+48>>2]&127](i+f|0,n,ka,la,ta)}if(ma)if(oa){g=ra+qa|0;h=sa+qa|0;if(g>>>0<68|h>>>0<68)break;o=d[133746+h>>0]|0;ma=d[133902+g>>0]|0;a[ta>>0]=a[(b[q>>1]|0)+(134058+(g<<2))>>0]|0;fa=pa+50|0;ga=ta+1|0;a[ga>>0]=a[(b[fa>>1]|0)+(134058+(g<<2))>>0]|0;ha=pa+52|0;ia=ta+2|0;a[ia>>0]=a[(b[ha>>1]|0)+(134058+(g<<2))>>0]|0;ja=pa+54|0;ka=ta+3|0;a[ka>>0]=a[(b[ja>>1]|0)+(134058+(g<<2))>>0]|0;la=e+48|0;Ud[c[la>>2]&127](j+f|0,n,ma,o,ta);a[ta>>0]=a[(b[q>>1]|0)+(134058+(g<<2))>>0]|0;a[ga>>0]=a[(b[fa>>1]|0)+(134058+(g<<2))>>0]|0;a[ia>>0]=a[(b[ha>>1]|0)+(134058+(g<<2))>>0]|0;a[ka>>0]=a[(b[ja>>1]|0)+(134058+(g<<2))>>0]|0;Ud[c[la>>2]&127](k+f|0,n,ma,o,ta);break}else{g=o<<2;h=ra+qa|0;p=sa+qa|0;if(h>>>0<68|p>>>0<68)break;ma=d[133746+p>>0]|0;la=d[133902+h>>0]|0;a[ta>>0]=(d[(b[q>>1]|0)+(134058+(h<<2))>>0]|0)+1;ea=pa+50|0;fa=ta+1|0;a[fa>>0]=(d[(b[ea>>1]|0)+(134058+(h<<2))>>0]|0)+1;ga=pa+52|0;ha=ta+2|0;a[ha>>0]=(d[(b[ga>>1]|0)+(134058+(h<<2))>>0]|0)+1;ia=pa+54|0;ja=ta+3|0;a[ja>>0]=(d[(b[ia>>1]|0)+(134058+(h<<2))>>0]|0)+1;ka=e+72|0;Ud[c[ka>>2]&127](j+g|0,o,la,ma,ta);a[ta>>0]=(d[(b[q>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[fa>>0]=(d[(b[ea>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[ha>>0]=(d[(b[ga>>1]|0)+(134058+(h<<2))>>0]|0)+1;a[ja>>0]=(d[(b[ia>>1]|0)+(134058+(h<<2))>>0]|0)+1;Ud[c[ka>>2]&127](k+g|0,o,la,ma,ta);break}}while(0);f=pa+56|0;o=f;h=c[o>>2]|0;if(!((h|0)==0&(c[o+4>>2]|0)==0)){q=n*12|0;p=ra+na|0;g=sa+na|0;if(!(p>>>0<68|g>>>0<68)){o=d[133746+g>>0]|0;na=d[133902+p>>0]|0;a[ta>>0]=a[(h<<16>>16)+(134058+(p<<2))>>0]|0;a[ta+1>>0]=a[(b[pa+58>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+2>>0]=a[(b[pa+60>>1]|0)+(134058+(p<<2))>>0]|0;a[ta+3>>0]=a[(b[pa+62>>1]|0)+(134058+(p<<2))>>0]|0;Ud[c[e+48>>2]&127](i+q|0,n,na,o,ta)}if(oa){h=ra+qa|0;g=sa+qa|0;if(h>>>0<68|g>>>0<68)break;sa=d[133746+g>>0]|0;ra=d[133902+h>>0]|0;a[ta>>0]=a[(b[f>>1]|0)+(134058+(h<<2))>>0]|0;ma=pa+58|0;na=ta+1|0;a[na>>0]=a[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0;i=pa+60|0;oa=ta+2|0;a[oa>>0]=a[(b[i>>1]|0)+(134058+(h<<2))>>0]|0;qa=pa+62|0;o=ta+3|0;a[o>>0]=a[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0;e=e+48|0;Ud[c[e>>2]&127](j+q|0,n,ra,sa,ta);a[ta>>0]=a[(b[f>>1]|0)+(134058+(h<<2))>>0]|0;a[na>>0]=a[(b[ma>>1]|0)+(134058+(h<<2))>>0]|0;a[oa>>0]=a[(b[i>>1]|0)+(134058+(h<<2))>>0]|0;a[o>>0]=a[(b[qa>>1]|0)+(134058+(h<<2))>>0]|0;Ud[c[e>>2]&127](k+q|0,n,ra,sa,ta)}}}while(0)}else ua=3;while(0);if((ua|0)==3)xk(e,f,g,h,i,j,k,n,o);l=va;return}function zk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=a[d+28272+e>>0]|0;k=a[d+28272+f>>0]|0;h=j<<24>>24!=k<<24>>24;if(!(j<<24>>24==-1|h)){h=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=(((h|0)>-1?h:0-h|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6}do if((c[d+23412>>2]|0)==2){if(!h){i=a[d+28312+e>>0]|0;h=a[d+28312+f>>0]|0;l=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;if(!((i<<24>>24!=h<<24>>24?1:((b[d+28112+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|(((l|0)>-1?l:0-l|0)|0)>=(g|0))){h=0;break}}else{h=a[d+28312+f>>0]|0;i=a[d+28312+e>>0]|0}if(j<<24>>24!=h<<24>>24?1:i<<24>>24!=k<<24>>24)h=1;else{l=(b[d+27952+(e<<2)+2>>1]|0)-(b[d+28112+(f<<2)+2>>1]|0)|0;h=(b[d+28112+(e<<2)+2>>1]|0)-(b[d+27952+(f<<2)+2>>1]|0)|0;h=((((l|0)>-1?l:0-l|0)|0)>=(g|0)?1:((b[d+27952+(e<<2)>>1]|0)+3-(b[d+28112+(f<<2)>>1]|0)|0)>>>0>6)|((b[d+28112+(e<<2)>>1]|0)+3-(b[d+27952+(f<<2)>>1]|0)|0)>>>0>6|(((h|0)>-1?h:0-h|0)|0)>=(g|0)}}while(0);return h&1|0}function Ak(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[a>>2]|0;d=((b|0)>-1?b:0-b|0)+63&-32;f=a+27788|0;g=a+27804|0;cm(f,g,d*96|0);b=a+27792|0;cm(b,a+27808|0,d*42|0);d=a+27796|0;h=h+27012|0;dm(d,a+27812|0,(c[h>>2]|0)*96|0);e=a+27800|0;dm(e,a+27816|0,(c[h>>2]|0)*96|0);if((((c[f>>2]|0)!=0?(c[b>>2]|0)!=0:0)?(c[d>>2]|0)!=0:0)?(c[e>>2]|0)!=0:0)b=0;else{eg(f);eg(b);eg(d);eg(e);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;b=-12}return b|0}function Bk(a){a=a|0;var b=0;b=0-(Ck(a)|0)&7;if(b|0)bm(a,b);return}function Ck(a){a=a|0;return c[a+8>>2]|0}function Dk(a){a=a|0;var b=0;b=c[a+12>>2]|0;return b-(Ck(a)|0)|0}function Ek(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;g=a+16|0;c[a+12>>2]=b;c[a+20>>2]=b+e;h=b+1|0;c[g>>2]=h;f=(d[b>>0]|0)<<18;c[a>>2]=f;e=b+2|0;c[g>>2]=e;f=(d[h>>0]|0)<<10|f;c[a>>2]=f;if(!(e&1))e=512;else{c[g>>2]=b+3;e=(d[e>>0]|0)<<2|2}h=f+e|0;c[a>>2]=h;c[a+4>>2]=510;return ((h|0)>66846720?-1094995529:0)|0}function Fk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;b=(c[d+848>>2]|0)+48+(N(c[(c[b+28216>>2]|0)+1184>>2]|0,-6)|0)|0;b=(b|0)>0?((b|0)<51?b:51):0;if((c[d+840>>2]|0)==1)f=142390;else f=136246+(c[d+33928>>2]<<11)|0;e=0;while(1){if((e|0)==1024)break;g=(N(b,a[f+(e<<1)>>0]|0)|0)>>4;g=(g+(a[f+(e<<1)+1>>0]|0)<<1)+-127|0;g=g>>31^g;a[d+32904+e>>0]=(g|0)>124?g&1|124:g;e=e+1|0}return}function Gk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a>>2]|0;if(c[a+29672>>2]|0)am((c[a+25628>>2]|0)+24|0,b,d,e,f,g);return}function Hk(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;qa=l;l=l+80|0;if((l|0)>=(m|0))W(80);ia=qa+40|0;da=qa+32|0;s=qa+24|0;t=qa+16|0;p=qa+8|0;u=qa;la=qa+72|0;aa=qa+56|0;ba=qa+52|0;X=qa+48|0;ka=f+28216|0;fa=c[ka>>2]|0;ma=f+28212|0;o=c[(c[ma>>2]|0)+64>>2]|0;k=fa+12|0;ea=((c[k>>2]|0)+-1|0)>>>0<2;na=c[f+25664>>2]|0;ga=g+21788|0;h=c[ga>>2]|0;ha=g+21792|0;i=c[ha>>2]|0;_=f+27016|0;pa=(N(c[_>>2]|0,i)|0)+h|0;oa=g+21796|0;c[oa>>2]=pa;ca=g+840|0;Z=f+26376|0;if((c[ca>>2]|0)!=1){if(!((c[Z>>2]|0)==0|(i&1|0)==0)?(c[g+21648>>2]|0)!=0:0)h=c[g+21652>>2]|0;else h=Dl(f,g,h,i)|0;if(h){if((c[Z>>2]|0?(c[ha>>2]&1|0)==0:0)?(c[(c[f+24364>>2]|0)+(pa<<2)>>2]=2048,oa=Dl(f,g,c[ga>>2]|0,(c[ha>>2]|0)+1|0)|0,c[g+21652>>2]=oa,(oa|0)==0):0){oa=El(f,g)|0;c[g+21828>>2]=oa;c[g+21832>>2]=oa}Fl(f,g);b[(c[f+26392>>2]|0)+(pa<<1)>>1]=0;a[(c[f+26396>>2]|0)+pa>>0]=0;c[g+864>>2]=0;h=0}else ja=12}else ja=12;a:do if((ja|0)==12){if(c[Z>>2]|0?(c[ha>>2]&1|0)==0:0){$=El(f,g)|0;c[g+21828>>2]=$;c[g+21832>>2]=$}c[g+21648>>2]=0;Y=g+21828|0;Gl(f,g,0-(c[Y>>2]|0)|0);b:do switch(c[ca>>2]|0){case 3:{j=g+32856|0;c:do if(!(Hl(j,28-(((c[g+21740>>2]|0)+511|0)>>>8&1)+(((c[g+21732>>2]|0)+511|0)>>>8&1^1)+(g+32904)|0)|0)){c[la>>2]=0;h=0}else{if(!(Hl(j,g+32934|0)|0)){h=(Hl(j,g+32936|0)|0)+1|0;c[la>>2]=h;break}i=(Hl(j,g+32935|0)|0)<<3;h=g+32936|0;i=((Hl(j,h)|0)<<2)+i|0;i=i+((Hl(j,h)|0)<<1)|0;i=i+(Hl(j,h)|0)|0;if((i|0)<8){h=i+3|0;c[la>>2]=h;break}switch(i|0){case 13:{h=Il(g,32,0)|0;c[la>>2]=h;ja=36;break b}case 14:{c[la>>2]=11;h=11;break c}case 15:{c[la>>2]=22;h=22;break c}default:{h=(i<<1)+-4+(Hl(j,h)|0)|0;c[la>>2]=h;break c}}}while(0);i=a[114114+(h<<2)+2>>0]|0;h=e[114114+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}case 2:{h=g+32856|0;if(Hl(h,g+32918|0)|0){h=Il(g,17,0)|0;c[la>>2]=h;ja=36;break b}if(!(Hl(h,g+32919|0)|0))h=(Hl(h,g+32920|0)|0)*3|0;else h=2-(Hl(h,g+32921|0)|0)|0;i=a[114078+(h<<2)+2>>0]|0;h=e[114078+(h<<2)>>1]|0;c[la>>2]=h;$=0;break}default:{h=Il(g,3,1)|0;c[la>>2]=h;if(h|0?(c[g+836>>2]|0)==5:0){h=h+-1|0;c[la>>2]=h;ja=36}else ja=36}}while(0);if((ja|0)==36){$=d[113974+(h<<2)+3>>0]|0;c[g+21660>>2]=d[113974+(h<<2)+2>>0];h=e[113974+(h<<2)>>1]|0;c[la>>2]=h;i=0}if(c[Y>>2]|0){h=h|128;c[la>>2]=h}b[(c[f+26372>>2]|0)+(pa<<1)>>1]=c[g+832>>2];if(h&4|0){i=(N(c[fa+1184>>2]|0,e[114258+(c[k>>2]<<1)>>1]|0)|0)>>3;j=g+32856|0;h=c[g+32872>>2]|0;k=c[j>>2]|0;h=(k&1|0)==0?h:h+-1|0;h=(k&511|0)==0?h:h+-1|0;k=c[g+32876>>2]|0;if((k-h|0)<(i|0)){h=-1;break}c[g+27780>>2]=h;h=h+i|0;h=Ek(j,h,k-h|0)|0;if((h|0)<0)break;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=-2065;a[(c[f+26396>>2]|0)+pa>>0]=0;a[(c[f+24340>>2]|0)+pa>>0]=0;j=(c[f+25972>>2]|0)+(pa*48|0)|0;k=j+48|0;do{a[j>>0]=16;j=j+1|0}while((j|0)<(k|0));c[(c[f+24364>>2]|0)+(pa<<2)>>2]=c[la>>2];c[g+864>>2]=0;h=0;break}Jl(f,g,h);d:do if(!(h&7)){if(i<<24>>24==4){e:do if((c[ca>>2]|0)==3){h=0;while(1){if((h|0)==4)break;V=Ml(g)|0;c[aa+(h<<2)>>2]=d[114206+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114206+((V&65535)<<2)>>1]|0;h=h+1|0}if((b[g+28554>>1]|b[g+28552>>1]|b[g+28556>>1]|b[g+28558>>1])&256){_k(f,g,la);a[g+28342>>0]=-2;a[g+28302>>0]=-2;a[g+28326>>0]=-2;a[g+28286>>0]=-2;h=0;while(1){if((h|0)==4)break e;V=(d[146491+(h<<2)>>0]|0)+(g+28512)|0;U=((e[g+28552+(h<<1)>>1]|0)>>>1&255)*257&65535;b[V>>1]=U;b[V+8>>1]=U;h=h+1|0}}}else{h=0;while(1){if((h|0)==4)break e;V=Nl(g)|0;c[aa+(h<<2)>>2]=d[114098+((V&65535)<<2)+2>>0];b[g+28552+(h<<1)>>1]=b[114098+((V&65535)<<2)>>1]|0;h=h+1|0}}while(0);V=g+23412|0;r=g+21832|0;q=0;f:while(1){h=c[V>>2]|0;if(q>>>0>=h>>>0){ja=80;break}n=4096<<(q<<1);p=g+23404+(q<<2)|0;k=0;while(1){if((k|0)>=4)break;h=e[g+28552+(k<<1)>>1]|0;if(!(h&256)){if(n&h){i=c[p>>2]<>2];if(i>>>0>1){j=k<<2;h=Ol(g,q,j)|0;if(h>>>0>=i>>>0){ja=75;break f}}else{h=0;ja=76}}else{h=-1;ja=76}if((ja|0)==76){ja=0;j=k<<2}T=h&255;U=d[146491+j>>0]|0;a[U+9+(g+28272+(q*40|0))>>0]=T;a[U+8+(g+28272+(q*40|0))>>0]=T;a[U+1+(g+28272+(q*40|0))>>0]=T}k=k+1|0}q=q+1|0}do if((ja|0)==75){g=c[f+4>>2]|0;c[u>>2]=h;c[u+4>>2]=i;ig(g,16,135794,u);h=-1}else if((ja|0)==80){if(!o)o=0;else{U=(c[(c[ka>>2]|0)+72>>2]|0)==0;o=g+28552|0;o=(((U?24117616:7340144)&c[o>>2]|0)==0?((U?24117616:7340144)&c[o+4>>2]|0)==0:0)&1}Q=f+24312|0;R=g+21740|0;S=g+21720|0;T=f+26360|0;U=f+26368|0;P=0;g:while(1){if(P>>>0>=h>>>0){ja=129;break}L=P<<1;I=4096<=4)break;O=H<<2;h=d[146491+O>>0]|0;a[g+28272+(P*40|0)+h>>0]=a[h+1+(g+28272+(P*40|0))>>0]|0;i=e[g+28552+(H<<1)>>1]|0;h:do if(!(i&256)){if(!(I&i)){c[g+27952+(P*160|0)+(h<<2)>>2]=0;c[g+27952+(P*160|0)+(h<<2)+4>>2]=0;c[g+27952+(P*160|0)+(h<<2)+32>>2]=0;c[g+27952+(P*160|0)+(h<<2)+36>>2]=0;ja=125;break}D=i&24|0?2:1;E=c[aa+(H<<2)>>2]|0;F=(i&8|0)==0;G=(i&16|0)==0;z=(i&32|0)==0;y=0;while(1){if((y|0)>=(E|0))break h;h=a[146491+((N(y,D)|0)+O)>>0]|0;A=h&255;B=g+27952+(P*160|0)+(A<<2)|0;C=g+28352+(P*80|0)+(A<<1)|0;q=a[g+28272+(P*40|0)+A>>0]|0;r=q<<24>>24;w=A+-8|0;t=a[g+28272+(P*40|0)+w>>0]|0;x=A+-1|0;u=a[g+28272+(P*40|0)+x>>0]|0;s=g+27952+(P*160|0)+(x<<2)|0;v=g+27952+(P*160|0)+(w<<2)|0;i=w+D|0;j=a[g+28272+(P*40|0)+i>>0]|0;k=j<<24>>24;j=j<<24>>24==-2;do if((A&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[J>>0]|0)==-2){ja=99;break}p=c[(c[Q>>2]|0)+48>>2]|0;c[K>>2]=0;n=(c[R>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(n){ja=99;break}n=c[_>>2]|0;h=n+(c[S>>2]|0)|0;i=(c[ha>>2]<<1&2)+(A>>>5)|0;if(!(c[p+((N(i>>>2,n)|0)+h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=b[p+(n<<2)+2>>1]<<1;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+((i&14)+(h<<2|1))>>0]>>1;break}else{if(!n){ja=99;break}h=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;i=A>>>2;if(!(c[p+(h<<2)>>2]&L)){n=K;k=-1;break}k=c[Q>>2]|0;p=c[k+36+(P<<2)>>2]|0;n=(c[(c[T>>2]|0)+(h<<2)>>2]|0)+3+(N(c[U>>2]|0,i&3)|0)|0;b[K>>1]=b[p+(n<<2)>>1]|0;b[M>>1]=(b[p+(n<<2)+2>>1]|0)/2|0;n=K;k=a[(c[k+68+(P<<2)>>2]|0)+(i&2|h<<2|1)>>0]<<1;break}}else ja=99;while(0);do if((ja|0)==99){ja=0;if(j){k=A+-9|0;n=g+27952+(P*160|0)+(k<<2)|0;k=a[g+28272+(P*40|0)+k>>0]|0;break}else{n=g+27952+(P*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==q<<24>>24;i=u<<24>>24==q<<24>>24;h=(i&1)+(j&1)+((k|0)==(r|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){h=b[s>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(k|0)==-2)){i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}else{h=Pl(h,b[v>>1]|0,b[n>>1]|0)|0;i=Pl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0;break}}if(i){h=b[s>>1]|0;i=b[g+27952+(P*160|0)+(x<<2)+2>>1]|0;break}if(j){h=b[v>>1]|0;i=b[g+27952+(P*160|0)+(w<<2)+2>>1]|0;break}else{h=b[n>>1]|0;i=b[n+2>>1]|0;break}}else{h=Pl(b[s>>1]|0,b[v>>1]|0,b[n>>1]|0)|0;i=Pl(b[g+27952+(P*160|0)+(x<<2)+2>>1]|0,b[g+27952+(P*160|0)+(w<<2)+2>>1]|0,b[n+2>>1]|0)|0}while(0);p=(d[g+28352+(P*80|0)+(w<<1)+1>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)+1>>0]|0)|0;w=Ql(g,40,(d[g+28352+(P*80|0)+(w<<1)>>0]|0)+(d[g+28352+(P*80|0)+(x<<1)>>0]|0)|0,ba)|0;x=Ql(g,47,p,X)|0;p=w+h|0;n=x+i|0;if((w|0)==-2147483648|(x|0)==-2147483648){ja=123;break g}do if(F){if(!G){b[B+4>>1]=p;b[B+6>>1]=n;i=c[ba>>2]|0;a[C+2>>0]=i;h=c[X>>2]|0;j=h&255;k=1;ja=121;break}if(z){i=c[ba>>2]|0;h=c[X>>2]|0;break}else{b[B+32>>1]=p;b[B+34>>1]=n;i=c[ba>>2]|0;a[C+16>>0]=i;h=c[X>>2]|0;j=h&255;k=8;ja=121;break}}else{i=p&65535;b[B+36>>1]=i;b[B+32>>1]=i;b[B+4>>1]=i;i=n&65535;b[B+38>>1]=i;b[B+34>>1]=i;b[B+6>>1]=i;i=c[ba>>2]|0;h=i&255;a[C+18>>0]=h;a[C+16>>0]=h;a[C+2>>0]=h;h=c[X>>2]|0;j=h&255;a[C+19>>0]=j;a[C+17>>0]=j;k=1;ja=121}while(0);if((ja|0)==121){ja=0;a[C+(k<<1)+1>>0]=j}b[B>>1]=p;b[g+27952+(P*160|0)+(A<<2)+2>>1]=n;a[C>>0]=i;a[g+28352+(P*80|0)+(A<<1)+1>>0]=h;y=y+1|0}}else ja=125;while(0);if((ja|0)==125){ja=0;c[g+28352+(P*80|0)+(h<<1)>>2]=0;c[g+28352+(P*80|0)+(h<<1)+16>>2]=0}H=H+1|0}P=P+1|0;h=c[V>>2]|0}if((ja|0)==123){h=-1094995529;break}else if((ja|0)==129)break d}while(0);break a}if(h&256|0){_k(f,g,la);c[g+28376>>2]=0;c[g+28380>>2]=0;c[g+28392>>2]=0;c[g+28396>>2]=0;c[g+28408>>2]=0;c[g+28412>>2]=0;c[g+28424>>2]=0;c[g+28428>>2]=0;c[g+28456>>2]=0;c[g+28460>>2]=0;c[g+28472>>2]=0;c[g+28476>>2]=0;c[g+28488>>2]=0;c[g+28492>>2]=0;c[g+28504>>2]=0;c[g+28508>>2]=0;o=c[fa+72>>2]&o;break}if(h&8|0){v=g+23412|0;k=c[la>>2]|0;n=g+21832|0;j=0;while(1){h=c[v>>2]|0;if(j>>>0>=h>>>0)break;if(k&4096<<(j<<1)|0){i=c[g+23404+(j<<2)>>2]<>2];if(i>>>0>1){h=Ol(g,j,0)|0;if(h>>>0>=i>>>0){ja=140;break}}else h=0;_=N(h,16843009)|0;c[g+28272+(j*40|0)+12>>2]=_;c[g+28272+(j*40|0)+20>>2]=_;c[g+28272+(j*40|0)+28>>2]=_;c[g+28272+(j*40|0)+36>>2]=_}j=j+1|0}if((ja|0)==140){g=c[f+4>>2]|0;c[p>>2]=h;c[p+4>>2]=i;ig(g,16,135794,p);h=-1;break a}u=0;while(1){if(u>>>0>=h>>>0)break d;if(c[la>>2]&4096<<(u<<1)){i=a[g+28272+(u*40|0)+12>>0]|0;q=a[g+28272+(u*40|0)+4>>0]|0;r=a[g+28272+(u*40|0)+11>>0]|0;p=g+27952+(u*160|0)+44|0;s=g+27952+(u*160|0)+16|0;h=a[g+28272+(u*40|0)+8>>0]|0;if(h<<24>>24==-2){t=g+27952+(u*160|0)+12|0;n=a[g+28272+(u*40|0)+3>>0]|0}else{t=g+27952+(u*160|0)+32|0;n=h<<24>>24}j=q<<24>>24==i<<24>>24;k=r<<24>>24==i<<24>>24;h=(k&1)+(j&1)+((n|0)==(i<<24>>24|0)&1)|0;do if(h>>>0<=1){if((h|0)!=1){k=b[p>>1]|0;if(r<<24>>24!=-2&(q<<24>>24==-2&(n|0)==-2)){h=b[g+27952+(u*160|0)+46>>1]|0;break}else{k=Pl(k,b[s>>1]|0,b[t>>1]|0)|0;h=Pl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0;break}}if(k){k=b[p>>1]|0;h=b[g+27952+(u*160|0)+46>>1]|0;break}if(j){k=b[s>>1]|0;h=b[g+27952+(u*160|0)+18>>1]|0;break}else{k=b[t>>1]|0;h=b[t+2>>1]|0;break}}else{k=Pl(b[p>>1]|0,b[s>>1]|0,b[t>>1]|0)|0;h=Pl(b[g+27952+(u*160|0)+46>>1]|0,b[g+27952+(u*160|0)+18>>1]|0,b[t+2>>1]|0)|0}while(0);j=(d[g+28352+(u*80|0)+9>>0]|0)+(d[g+28352+(u*80|0)+23>>0]|0)|0;i=Ql(g,40,(d[g+28352+(u*80|0)+8>>0]|0)+(d[g+28352+(u*80|0)+22>>0]|0)|0,aa)|0;j=Ql(g,47,j,ba)|0;if((i|0)==-2147483648|(j|0)==-2147483648)break;_=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(u*80|0)+24>>2]=_;c[g+28352+(u*80|0)+28>>2]=_;c[g+28352+(u*80|0)+40>>2]=_;c[g+28352+(u*80|0)+44>>2]=_;c[g+28352+(u*80|0)+56>>2]=_;c[g+28352+(u*80|0)+60>>2]=_;c[g+28352+(u*80|0)+72>>2]=_;c[g+28352+(u*80|0)+76>>2]=_;h=j+h<<16|i+k&65535;c[g+27952+(u*160|0)+48>>2]=h;c[g+27952+(u*160|0)+52>>2]=h;c[g+27952+(u*160|0)+56>>2]=h;c[g+27952+(u*160|0)+60>>2]=h;c[g+27952+(u*160|0)+80>>2]=h;c[g+27952+(u*160|0)+84>>2]=h;c[g+27952+(u*160|0)+88>>2]=h;c[g+27952+(u*160|0)+92>>2]=h;c[g+27952+(u*160|0)+112>>2]=h;c[g+27952+(u*160|0)+116>>2]=h;c[g+27952+(u*160|0)+120>>2]=h;c[g+27952+(u*160|0)+124>>2]=h;c[g+27952+(u*160|0)+144>>2]=h;c[g+27952+(u*160|0)+148>>2]=h;c[g+27952+(u*160|0)+152>>2]=h;c[g+27952+(u*160|0)+156>>2]=h;h=c[v>>2]|0}u=u+1|0}h=-1094995529;break a}U=g+23412|0;q=c[la>>2]|0;r=g+21832|0;if(!(h&16))p=0;else{p=0;i:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Ol(g,p,j<<3)|0;if(h>>>0>=i>>>0){ja=171;break i}}else h=0;h=N(h,16843009)|0}X=(j<<4|12)+(g+28272+(p*40|0))|0;c[X>>2]=h;c[X+8>>2]=h;j=j+1|0}p=p+1|0}if((ja|0)==171){g=c[f+4>>2]|0;c[t>>2]=h;c[t+4>>2]=i;ig(g,16,135794,t);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;j:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+4|0;D=g+27952+(O*160|0)+16|0;E=g+27952+(O*160|0)+18|0;F=g+28272+(O*40|0)+11|0;G=g+27952+(O*160|0)+40|0;H=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+4>>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+20>>2]=0;V=g+27952+(O*160|0)+(X<<2)|0;X=g+27952+(O*160|0)+(X<<2)+32|0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[V+12>>2]=0;c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0}else{z=A<<3;M=A<<4|12;r=a[g+28272+(O*40|0)+M>>0]|0;s=r<<24>>24;do if(!A){if((a[C>>0]|0)!=r<<24>>24){ja=183;break}k=b[D>>1]|0;j=b[E>>1]|0}else{if((a[J>>0]|0)!=r<<24>>24){ja=183;break}k=b[K>>1]|0;j=b[L>>1]|0}while(0);do if((ja|0)==183){ja=0;k=a[146491+z>>0]|0;p=k&255;y=p+-8|0;w=a[g+28272+(O*40|0)+y>>0]|0;x=p+-1|0;u=a[g+28272+(O*40|0)+x>>0]|0;t=g+27952+(O*160|0)+(x<<2)|0;v=g+27952+(O*160|0)+(y<<2)|0;h=p+-4|0;i=a[g+28272+(O*40|0)+h>>0]|0;n=i<<24>>24;i=i<<24>>24==-2;do if((p&7|0)==4&((k&255)>19&(i&(c[Z>>2]|0)!=0))){if((a[F>>0]|0)==-2){ja=192;break}q=c[(c[P>>2]|0)+48>>2]|0;c[G>>2]=0;j=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(j){ja=192;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=b[X+(p<<2)+2>>1]<<1;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!j){ja=192;break}i=c[g+21720+(((k&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&H)){p=G;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[G>>1]=b[X+(p<<2)>>1]|0;b[I>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=G;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=192;while(0);do if((ja|0)==192){ja=0;if(i){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(h<<2)|0;break}}while(0);j=w<<24>>24==r<<24>>24;i=u<<24>>24==r<<24>>24;h=(i&1)+(j&1)+((n|0)==(s|0)&1)|0;if(h>>>0>1){k=Pl(b[t>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=Pl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[t>>1]|0;if(u<<24>>24!=-2&(w<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=Pl(k,b[v>>1]|0,b[p>>1]|0)|0;j=Pl(b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[t>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146491+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Ql(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Ql(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break j;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+4>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+20>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+8>>2]=X;c[g+27952+(O*160|0)+(M<<2)+12>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+40>>2]=X;c[g+27952+(O*160|0)+(M<<2)+44>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}k:while(1){h=c[U>>2]|0;if(p>>>0>=h>>>0)break;k=p<<1;n=g+23404+(p<<2)|0;j=0;while(1){if((j|0)>=2)break;if(!(q&4096<>2]<>2];if(i>>>0>1){h=Ol(g,p,j<<2)|0;if(h>>>0>=i>>>0){ja=220;break k}}else h=0;h=h*257&65535}X=(j<<1)+12+(g+28272+(p*40|0))|0;b[X>>1]=h;b[X+8>>1]=h;b[X+16>>1]=h;b[X+24>>1]=h;j=j+1|0}p=p+1|0}if((ja|0)==220){g=c[f+4>>2]|0;c[s>>2]=h;c[s+4>>2]=i;ig(g,16,135794,s);h=-1;break a}P=f+24312|0;Q=g+21740|0;R=g+21720|0;S=f+26360|0;T=f+26368|0;O=0;l:while(1){if(O>>>0>=h>>>0)break d;B=O<<1;C=g+28272+(O*40|0)+11|0;D=g+27952+(O*160|0)+44|0;E=g+27952+(O*160|0)+46|0;F=g+27952+(O*160|0)+40|0;G=12288<=2)break;if(!(c[la>>2]&4096<>2]=0;c[g+28352+(O*80|0)+(X<<1)+16>>2]=0;c[g+28352+(O*80|0)+(X<<1)+32>>2]=0;c[g+28352+(O*80|0)+(X<<1)+48>>2]=0;c[g+27952+(O*160|0)+(X<<2)>>2]=0;c[g+27952+(O*160|0)+(X<<2)+4>>2]=0;c[g+27952+(O*160|0)+(X<<2)+32>>2]=0;c[g+27952+(O*160|0)+(X<<2)+36>>2]=0;c[g+27952+(O*160|0)+(X<<2)+64>>2]=0;c[g+27952+(O*160|0)+(X<<2)+68>>2]=0;c[g+27952+(O*160|0)+(X<<2)+96>>2]=0;c[g+27952+(O*160|0)+(X<<2)+100>>2]=0}else{z=A<<2;M=(A<<1)+12|0;s=a[g+28272+(O*40|0)+M>>0]|0;w=s<<24>>24;do if(!A)if((a[C>>0]|0)==s<<24>>24){k=b[D>>1]|0;j=b[E>>1]|0}else ja=234;else{h=a[I>>0]|0;if(h<<24>>24==-2){i=J;h=a[K>>0]|0}else i=L;if(h<<24>>24!=s<<24>>24){ja=234;break}k=b[i>>1]|0;j=b[i+2>>1]|0}while(0);do if((ja|0)==234){ja=0;h=a[146491+z>>0]|0;p=h&255;x=p+-8|0;t=a[g+28272+(O*40|0)+x>>0]|0;y=p+-1|0;u=a[g+28272+(O*40|0)+y>>0]|0;r=g+27952+(O*160|0)+(y<<2)|0;v=g+27952+(O*160|0)+(x<<2)|0;i=p+-6|0;j=a[g+28272+(O*40|0)+i>>0]|0;n=j<<24>>24;j=j<<24>>24==-2;do if((p&7|0)==4&((h&255)>19&(j&(c[Z>>2]|0)!=0))){if((a[C>>0]|0)==-2){ja=243;break}q=c[(c[P>>2]|0)+48>>2]|0;c[F>>2]=0;k=(c[Q>>2]&128|0)==0;if(!(c[Y>>2]|0)){if(k){ja=243;break}X=c[_>>2]|0;i=X+(c[R>>2]|0)|0;h=(c[ha>>2]<<1&2)+(p>>>5)|0;if(!(c[q+((N(h>>>2,X)|0)+i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=b[X+(p<<2)+2>>1]<<1;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+((h&14)+(i<<2|1))>>0]>>1;break}else{if(!k){ja=243;break}i=c[g+21720+(((h&255)>35&1)<<2)>>2]|0;h=p>>>2;if(!(c[q+(i<<2)>>2]&G)){p=F;n=-1;break}n=c[P>>2]|0;X=c[n+36+(O<<2)>>2]|0;p=(c[(c[S>>2]|0)+(i<<2)>>2]|0)+3+(N(c[T>>2]|0,h&3)|0)|0;b[F>>1]=b[X+(p<<2)>>1]|0;b[H>>1]=(b[X+(p<<2)+2>>1]|0)/2|0;p=F;n=a[(c[n+68+(O<<2)>>2]|0)+(h&2|i<<2|1)>>0]<<1;break}}else ja=243;while(0);do if((ja|0)==243){ja=0;if(j){n=p+-9|0;p=g+27952+(O*160|0)+(n<<2)|0;n=a[g+28272+(O*40|0)+n>>0]|0;break}else{p=g+27952+(O*160|0)+(i<<2)|0;break}}while(0);j=t<<24>>24==s<<24>>24;i=u<<24>>24==s<<24>>24;h=(i&1)+(j&1)+((n|0)==(w|0)&1)|0;if(h>>>0>1){k=Pl(b[r>>1]|0,b[v>>1]|0,b[p>>1]|0)|0;j=Pl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}if((h|0)!=1){k=b[r>>1]|0;if(u<<24>>24!=-2&(t<<24>>24==-2&(n|0)==-2)){j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}else{k=Pl(k,b[v>>1]|0,b[p>>1]|0)|0;j=Pl(b[g+27952+(O*160|0)+(y<<2)+2>>1]|0,b[g+27952+(O*160|0)+(x<<2)+2>>1]|0,b[p+2>>1]|0)|0;break}}if(i){k=b[r>>1]|0;j=b[g+27952+(O*160|0)+(y<<2)+2>>1]|0;break}if(j){k=b[v>>1]|0;j=b[g+27952+(O*160|0)+(x<<2)+2>>1]|0;break}else{k=b[p>>1]|0;j=b[p+2>>1]|0;break}}while(0);X=d[146491+z>>0]|0;h=X+-1|0;X=X+-8|0;i=(d[g+28352+(O*80|0)+(X<<1)+1>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)+1>>0]|0)|0;h=Ql(g,40,(d[g+28352+(O*80|0)+(X<<1)>>0]|0)+(d[g+28352+(O*80|0)+(h<<1)>>0]|0)|0,aa)|0;i=Ql(g,47,i,ba)|0;if((h|0)==-2147483648|(i|0)==-2147483648)break l;X=(c[ba>>2]<<8&65280|c[aa>>2]&255)*65537|0;c[g+28352+(O*80|0)+(M<<1)>>2]=X;c[g+28352+(O*80|0)+(M<<1)+16>>2]=X;c[g+28352+(O*80|0)+(M<<1)+32>>2]=X;c[g+28352+(O*80|0)+(M<<1)+48>>2]=X;X=i+j<<16|h+k&65535;c[g+27952+(O*160|0)+(M<<2)>>2]=X;c[g+27952+(O*160|0)+(M<<2)+4>>2]=X;c[g+27952+(O*160|0)+(M<<2)+32>>2]=X;c[g+27952+(O*160|0)+(M<<2)+36>>2]=X;c[g+27952+(O*160|0)+(M<<2)+64>>2]=X;c[g+27952+(O*160|0)+(M<<2)+68>>2]=X;c[g+27952+(O*160|0)+(M<<2)+96>>2]=X;c[g+27952+(O*160|0)+(M<<2)+100>>2]=X}A=A+1|0}O=O+1|0;h=c[U>>2]|0}h=-1094995529;break a}else{if(!(h&1)){aa=g+21660|0;ba=Yk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,c[aa>>2]|0,0)|0;c[aa>>2]=ba;if((ba|0)<0){h=-1;break a}}else{m:do if((o|0)!=0?(Hl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)!=0:0){c[la>>2]=h|16777216;h=0;while(1){if((h|0)>=16)break m;ba=d[146491+h>>0]|0;aa=a[ba+-1+(g+21664)>>0]|0;_=a[ba+-8+(g+21664)>>0]|0;aa=(aa|0)>(_|0)?_:aa;ba=g+21664+ba|0;aa=(Kl(g,(aa|0)<0?2:aa)|0)*257&65535;b[ba>>1]=aa;b[ba+8>>1]=aa;h=h+4|0}}else{h=0;ja=50}while(0);n:do if((ja|0)==50)while(1){ja=0;if((h|0)==16)break n;ja=d[146491+h>>0]|0;ba=a[ja+-1+(g+21664)>>0]|0;aa=a[ja+-8+(g+21664)>>0]|0;ba=(ba|0)>(aa|0)?aa:ba;a[g+21664+ja>>0]=Kl(g,(ba|0)<0?2:ba)|0;h=h+1|0;ja=50}while(0);ba=(c[g+21704>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]|0)|0;c[ba>>2]=c[g+21700>>2];a[ba+4>>0]=a[g+21695>>0]|0;a[ba+5>>0]=a[g+21687>>0]|0;a[ba+6>>0]=a[g+21679>>0]|0;if((Xk(g+21664|0,c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0)|0)<0){h=-1;break a}}if(ea){h=Ll(f,g)|0;a[(c[f+26396>>2]|0)+pa>>0]=h;h=Yk(c[f+4>>2]|0,c[g+21760>>2]|0,c[g+21768>>2]|0,h,1)|0;if((h|0)<0){h=-1;break a}}else h=6;c[g+21656>>2]=h}while(0);if(c[la>>2]&120|0){a[(c[f+26396>>2]|0)+pa>>0]=0;k=c[la>>2]|0;h=c[f+26368>>2]|0;i=(N(h<<2,c[ha>>2]|0)|0)+(c[ga>>2]<<2)|0;n=c[oa>>2]<<2;if(!(k&12288)){ba=(c[f+24384>>2]|0)+n|0;b[ba>>1]=-1;b[ba+2>>1]=-1}else{j=(c[f+24352>>2]|0)+(i<<2)|0;aa=g+28e3|0;ba=c[aa+4>>2]|0;Z=j;c[Z>>2]=c[aa>>2];c[Z+4>>2]=ba;Z=g+28008|0;ba=c[Z+4>>2]|0;aa=j+8|0;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28032|0;ba=c[aa+4>>2]|0;Z=j+(h<<2)|0;_=Z;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28040|0;ba=c[_+4>>2]|0;Z=Z+8|0;c[Z>>2]=c[_>>2];c[Z+4>>2]=ba;Z=g+28064|0;ba=c[Z+4>>2]|0;_=j+(h<<1<<2)|0;aa=_;c[aa>>2]=c[Z>>2];c[aa+4>>2]=ba;aa=g+28072|0;ba=c[aa+4>>2]|0;_=_+8|0;c[_>>2]=c[aa>>2];c[_+4>>2]=ba;_=g+28096|0;ba=c[_+4>>2]|0;j=j+(h*3<<2)|0;aa=j;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28104|0;ba=c[aa+4>>2]|0;j=j+8|0;c[j>>2]=c[aa>>2];c[j+4>>2]=ba;j=(c[g+32848>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28424|0;aa=c[_+4>>2]|0;ba=j;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=j+6|0;b[ba+6>>1]=b[g+28382>>1]|0;b[ba+4>>1]=b[g+28398>>1]|0;b[ba+2>>1]=b[g+28414>>1]|0}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}ba=(c[f+24384>>2]|0)+n|0;a[ba>>0]=a[g+28284>>0]|0;a[ba+1>>0]=a[g+28286>>0]|0;a[ba+2>>0]=a[g+28300>>0]|0;a[ba+3>>0]=a[g+28302>>0]|0}if(k&49152|0){aa=(c[f+24356>>2]|0)+(i<<2)|0;Z=g+28160|0;ba=c[Z+4>>2]|0;Y=aa;c[Y>>2]=c[Z>>2];c[Y+4>>2]=ba;Y=g+28168|0;ba=c[Y+4>>2]|0;Z=aa+8|0;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28192|0;ba=c[Z+4>>2]|0;Y=aa+(h<<2)|0;_=Y;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28200|0;ba=c[_+4>>2]|0;Y=Y+8|0;c[Y>>2]=c[_>>2];c[Y+4>>2]=ba;Y=g+28224|0;ba=c[Y+4>>2]|0;_=aa+(h<<1<<2)|0;Z=_;c[Z>>2]=c[Y>>2];c[Z+4>>2]=ba;Z=g+28232|0;ba=c[Z+4>>2]|0;_=_+8|0;c[_>>2]=c[Z>>2];c[_+4>>2]=ba;_=g+28256|0;ba=c[_+4>>2]|0;h=aa+(h*3<<2)|0;aa=h;c[aa>>2]=c[_>>2];c[aa+4>>2]=ba;aa=g+28264|0;ba=c[aa+4>>2]|0;h=h+8|0;c[h>>2]=c[aa>>2];c[h+4>>2]=ba;h=(c[g+32852>>2]|0)+(c[(c[f+26364>>2]|0)+(c[oa>>2]<<2)>>2]<<1)|0;if(!(k&2048)){_=g+28504|0;aa=c[_+4>>2]|0;ba=h;c[ba>>2]=c[_>>2];c[ba+4>>2]=aa;ba=h+6|0;b[ba+6>>1]=b[g+28462>>1]|0;b[ba+4>>1]=b[g+28478>>1]|0;b[ba+2>>1]=b[g+28494>>1]|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}ba=(c[f+24388>>2]|0)+n|0;a[ba>>0]=a[g+28324>>0]|0;a[ba+1>>0]=a[g+28326>>0]|0;a[ba+2>>0]=a[g+28340>>0]|0;a[ba+3>>0]=a[g+28342>>0]|0}if(!((k&64|0)==0|(c[ca>>2]|0)!=3)){ca=(c[f+26408>>2]|0)+(c[oa>>2]<<2)|0;a[ca+1>>0]=(e[g+28554>>1]|0)>>>1;a[ca+2>>0]=(e[g+28556>>1]|0)>>>1;a[ca+3>>0]=(e[g+28558>>1]|0)>>>1}}if(!(c[la>>2]&2)){h=Rl(g)|0;if(ea)w=(Sl(g)|0)<<4|h;else w=h}else if($>>>0>15&(ea^1)){ig(c[f+4>>2]|0,16,135814,da);h=-1094995529;break}else w=$;c[g+21856>>2]=w;b[(c[f+26392>>2]|0)+(pa<<1)>>1]=w;u=(w&15|0)==0;if(!((o|0)==0|u)?(c[la>>2]&7|0)==0:0){ea=(Hl(g+32856|0,(c[g+21840>>2]|0)+399+(g+32904)|0)|0)<<24;c[la>>2]=c[la>>2]|ea}k=c[la>>2]|0;do if(!((k&16777216|0)==0?1:(c[(c[ka>>2]|0)+12>>2]|0)!=3)){if((c[f+25704>>2]|0)>>>0>=151){h=0;while(1){if((h|0)==2)break;i=c[g+21740+(h<<2)>>2]|0;if((i|0)!=0&(i&16777216|0)==0){da=i<<4&64;ea=h<<4;a[ea+99+(g+27824)>>0]=da;a[ea+91+(g+27824)>>0]=da;a[ea+59+(g+27824)>>0]=da;a[ea+51+(g+27824)>>0]=da;a[ea+19+(g+27824)>>0]=da;a[(ea|11)+(g+27824)>>0]=da}h=h+1|0}ea=c[g+21732>>2]|0;h=(ea&4|0)==0?0:1077952576;if(!((ea|0)!=0&(ea&16777216|0)==0))break;c[g+27828>>2]=h;c[g+27868>>2]=h;c[g+27908>>2]=h;break}i=k&7;j=i|0?64:0;h=0;while(1){if((h|0)==2)break;ea=c[g+21740+(h<<2)>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=h<<4;a[ea+99+(g+27824)>>0]=j;a[ea+91+(g+27824)>>0]=j;a[ea+59+(g+27824)>>0]=j;a[ea+51+(g+27824)>>0]=j;a[ea+19+(g+27824)>>0]=j;a[(ea|11)+(g+27824)>>0]=j}h=h+1|0}ea=c[g+21732>>2]|0;if((ea|0)!=0&(ea&16777216|0)==0){ea=(i|0)==0?0:1077952576;c[g+27828>>2]=ea;c[g+27868>>2]=ea;c[g+27908>>2]=ea}}while(0);c[(c[f+24364>>2]|0)+(pa<<2)>>2]=k;if((w|0)==0?(c[la>>2]&2|0)==0:0){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;c[g+864>>2]=0;h=g+848|0}else ja=302;o:do if((ja|0)==302){x=g+32856|0;o=g+864|0;do if(Hl(x,(c[o>>2]|0?61:60)+(g+32904)|0)|0){k=(c[fa+1184>>2]|0)*6|0;n=k+3|0;i=n<<1;h=62;j=1;while(1){if(!(Hl(x,g+32904+h|0)|0)){ja=306;break}if((j|0)<(i|0)){h=63;j=j+1|0}else{ja=429;break}}if((ja|0)==306){s=j+1>>1;s=(j&1|0)==0?0-s|0:s;c[o>>2]=s;h=g+848|0;s=(c[h>>2]|0)+s|0;s=(s>>>0>n>>>0?((s|0)<0?k+4|0:-4-k|0):0)+s|0;c[h>>2]=s;ja=c[ma>>2]|0;c[g+852>>2]=d[ja+548+s>>0];c[g+856>>2]=d[ja+636+s>>0];break}else if((ja|0)==429){h=c[f+4>>2]|0;g=c[ha>>2]|0;c[ia>>2]=c[ga>>2];c[ia+4>>2]=g;ig(h,16,135827,ia);h=-1;break a}}else{c[o>>2]=0;s=g+848|0;h=s;s=c[s>>2]|0}while(0);i=c[la>>2]|0;ja=(i&128|0)==0;t=(s|0)!=0;v=ja?(t?f+26428|0:f+26716|0):t?f+26572|0:f+26860|0;t=ja?(t?f+26444|0:f+26732|0):t?f+26588|0:f+26876|0;p:do if(!(i&2)){r=i&7|0?0:3;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break p;q:do if(!(1<>0]|0)+(g+27824)|0;b[ja>>1]=0;b[ja+8>>1]=0}else{if(!q){i=p<<2;j=g+28560+(p<<6<>2]|0)+173812+(r<<2)>>2]|0)+(s<<8)|0;do if((c[(c[ka>>2]|0)+12>>2]|0)==3){n=d[146491+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(Tl(x,((a[n+-8+(g+27824)>>0]|0?ja|2:ja)|1012)+(g+32904)|0)|0)break;ja=g+27824+n|0;b[ja>>1]=0;b[ja+8>>1]=0;break q}while(0);Vl(f,g,j,5,i,t,k,64);break}j=(c[(c[ma>>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=p<<2;i=0;while(1){if((i|0)==4)break q;n=i+k|0;o=d[146491+n>>0]|0;ja=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,(a[o+-8+(g+27824)>>0]|0?ja|2:ja)+93+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Vl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Tl(x,((c[g+21860>>2]|0)>>>7&2|(c[g+21864>>2]|0)>>>8&1)+85+(g+32904)|0)|0))a[g+27824>>0]=0;else Ul(f,g,i,0,48,v,16);if(u){c[g+27836>>2]=0;c[g+27844>>2]=0;c[g+27852>>2]=0;c[g+27860>>2]=0;break}j=(c[(c[ma>>2]|0)+173788>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break p;n=d[146491+i>>0]|0;ja=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,(a[n+-8+(g+27824)>>0]|0?ja|2:ja)+89+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Vl(f,g,g+28560+(i<<4<>2]|0)+12>>2]|0;if((j|0)!=3){i=(w&48|0)!=0;if((j|0)!=2){r:do if(i){j=g+21864|0;k=g+21860|0;i=0;while(1){if((i|0)==2)break r;n=i+49|0;ja=1<>2]&ja|0)!=0&1;if(!(Tl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146491+n>>0]|0)+(g+27824)>>0]=0;else Ul(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=v+1|0;i=0;s:while(1){if((i|0)==2)break o;p=i+1|0;q=(c[(c[ma>>2]|0)+173788+((c[la>>2]&7|0?0:3)+p<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;j=(i<<4)+16|0;i=0;while(1){if((i|0)==4){i=p;continue s}k=j+i|0;n=d[146491+k>>0]|0;ka=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,(a[n+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Vl(f,g,g+28560+(k<<4<>2]&ja|0)!=0&1;if(!(Tl(x,(c[k>>2]&ja|0?ka|2:ka)+97+(g+32904)|0)|0))a[(d[146491+n>>0]|0)+(g+27824)>>0]=0;else Wl(f,g,g+28560+((i<<8)+256<>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}w=16<>2]|0)+173788+((c[la>>2]&7|0?0:3)+v<<2)>>2]|0)+(c[g+852+(i<<2)>>2]<<6)|0;i=g+28560+(u<<4<>0]|0;ka=(a[r+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,(a[r+-8+(g+27824)>>0]|0?ka|2:ka)+101+(g+32904)|0)|0))a[g+27824+r>>0]=0;else Vl(f,g,n,4,q,s,o,15);k=k+1|0;n=n+(w<<1)|0}i=i+(t<<1)|0;j=j+1|0}}}i=c[la>>2]|0;s=c[g+852>>2]|0;v:do if(!(i&2)){r=i&7|0?1:4;q=(i&16777216|0)==0;p=0;while(1){if((p|0)==4)break v;w:do if(!(1<>0]|0)+(g+27824)|0;b[ka>>1]=0;b[ka+8>>1]=0}else{if(!q){i=(p<<2)+16|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146491+i>>0]|0;ka=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[k+-8+(g+27824)>>0]|0?ka|2:ka)|1016)+(g+32904)|0)|0)){ka=g+27824+k|0;b[ka>>1]=0;b[ka+8>>1]=0;break}else{Vl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+16|0;i=0;while(1){if((i|0)==4)break w;n=k+i|0;o=d[146491+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|468)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Vl(f,g,g+28560+(n<<4<>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Tl(x,((c[g+21864>>2]|0)>>>9&1|(c[g+21860>>2]|0)>>>8&2|460)+(g+32904)|0)|0))a[g+27864>>0]=0;else Ul(f,g,i,6,49,v,16);if(u){c[g+27876>>2]=0;c[g+27884>>2]=0;c[g+27892>>2]=0;c[g+27900>>2]=0;break}j=(c[(c[ma>>2]|0)+173792>>2]|0)+(s<<6)|0;k=v+1|0;i=0;while(1){if((i|0)==16)break v;n=i+16|0;o=d[146491+n>>0]|0;ka=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[o+-8+(g+27824)>>0]|0?ka|2:ka)|464)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Vl(f,g,g+28560+(n<<4<>2]|0;s=c[g+856>>2]|0;if(i&2|0){i=g+31760|0;j=i;k=j+64|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));if(!(Tl(x,((c[g+21864>>2]|0)>>>10&1|(c[g+21860>>2]|0)>>>9&2|472)+(g+32904)|0)|0))a[g+27904>>0]=0;else Ul(f,g,i,10,50,v,16);if(u){c[g+27916>>2]=0;c[g+27924>>2]=0;c[g+27932>>2]=0;c[g+27940>>2]=0;break}o=(c[(c[ma>>2]|0)+173796>>2]|0)+(s<<6)|0;j=v+1|0;i=0;while(1){if((i|0)==16)break o;k=i+32|0;n=d[146491+k>>0]|0;ma=(a[n+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[n+-8+(g+27824)>>0]|0?ma|2:ma)|476)+(g+32904)|0)|0))a[g+27824+n>>0]=0;else Vl(f,g,g+28560+(k<<4<>0]|0)+(g+27824)|0;b[la>>1]=0;b[la+8>>1]=0}else{if(!q){i=(p<<2)+32|0;j=c[(c[ma>>2]|0)+173812+(r<<2)>>2]|0;k=d[146491+i>>0]|0;la=(a[k+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[k+-8+(g+27824)>>0]|0?la|2:la)|1020)+(g+32904)|0)|0)){la=g+27824+k|0;b[la>>1]=0;b[la+8>>1]=0;break}else{Vl(f,g,g+28560+(i<<4<>2]|0)+173788+(r<<2)>>2]|0)+(s<<6)|0;k=(p<<2)+32|0;i=0;while(1){if((i|0)==4)break x;n=k+i|0;o=d[146491+n>>0]|0;la=(a[o+-1+(g+27824)>>0]|0)!=0&1;if(!(Tl(x,((a[o+-8+(g+27824)>>0]|0?la|2:la)|480)+(g+32904)|0)|0))a[g+27824+o>>0]=0;else Vl(f,g,g+28560+(n<<4<>2]|0)+pa>>0]=c[h>>2];h=c[oa>>2]|0;i=c[f+25972>>2]|0;c[i+(h*48|0)>>2]=c[g+27836>>2];c[i+(h*48|0)+4>>2]=c[g+27844>>2];c[i+(h*48|0)+8>>2]=c[g+27852>>2];c[i+(h*48|0)+12>>2]=c[g+27860>>2];c[i+(h*48|0)+16>>2]=c[g+27876>>2];c[i+(h*48|0)+20>>2]=c[g+27884>>2];c[i+(h*48|0)+32>>2]=c[g+27916>>2];c[i+(h*48|0)+36>>2]=c[g+27924>>2];if(!(c[f+25680>>2]|0)){c[i+(h*48|0)+24>>2]=c[g+27892>>2];c[i+(h*48|0)+28>>2]=c[g+27900>>2];c[i+(h*48|0)+40>>2]=c[g+27932>>2];c[i+(h*48|0)+44>>2]=c[g+27940>>2];h=0}else h=0}while(0);l=qa;return h|0}function Ik(a,b){a=a|0;b=b|0;if((c[(c[a+28216>>2]|0)+12>>2]|0)==3)ql(a,b);else rl(a,b);return}function Jk(a){a=a|0;var b=0,d=0;d=a+4|0;b=(c[d>>2]|0)+-2|0;c[d>>2]=b;if((c[a>>2]|0)<(b<<17|0)){ol(a);a=0}else a=(c[a+16>>2]|0)-(c[a+12>>2]|0)|0;return a|0}function Kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+26380|0;h=(c[i>>2]|0)!=3&1;k=c[b+21792>>2]>>h<<4;h=c[a+27008>>2]<<4>>h;g=c[a+26376>>2]|0;d=16<>2]|0)==0;d=(j|(k+d|0)<(h|0)?0:g)+d|0;g=k-(j?0:g)|0;if((!((h|0)<=(g|0)|(d+g|0)<0)?(f=h-g|0,e=(g|0)<0,f=((d|0)>(f|0)?f:d)+(e?g:0)|0,e=e?0:g,nl(a,b,e,f),(c[a+25684>>2]|0)==0):0)?(c[(c[(c[b>>2]|0)+25628>>2]|0)+600>>2]|0)==0:0)Oi((c[a+24312>>2]|0)+4|0,e+-1+f|0,(c[i>>2]|0)==2&1);return}function Lk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;f=c[a+27016>>2]|0;g=(N(f,c[b+21792>>2]|0)|0)+(c[b+21788>>2]|0)|0;h=c[a+26372>>2]|0;d=g+-1|0;i=c[b+832>>2]|0;if((i|0)!=(e[h+(d<<1)>>1]|0|0)){d=g-f|0;if((i|0)==(e[h+(d<<1)>>1]|0|0))j=3;else d=0}else j=3;if((j|0)==3)d=(c[(c[a+24364>>2]|0)+(d<<2)>>2]|0)>>>7&1;c[b+21828>>2]=d;c[b+21832>>2]=d;return} +function mV(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=nV(a)|0;break}d=(cU(a)|0)==0;b=nV(a)|0;if(!d)dU(a)}else{if(!(c[27112]|0))b=0;else b=mV(c[27112]|0)|0;a=c[(kV()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=cU(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=nV(a)|0|b;if(d|0)dU(a);a=c[a+56>>2]|0}while((a|0)!=0);lV()}while(0);return b|0}function nV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Ld[c[a+36>>2]&15](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Ld[c[a+40>>2]&15](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function oV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=pV(a,b,f)|0;l=e;return d|0}function pV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;if((l|0)>=(m|0))W(128);e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=13;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=rV(e,b,d)|0;l=g;return h|0}function qV(a,b,c){a=a|0;b=b|0;c=c|0;return vV(a,b,c)|0}function rV(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=l;l=l+288|0;if((l|0)>=(m|0))W(288);I=O+8|0;J=O+17|0;K=O;L=O+16|0;if((c[b+76>>2]|0)>-1)N=cU(b)|0;else N=0;i=a[e>>0]|0;a:do if(i<<24>>24){A=b+4|0;B=b+100|0;C=b+108|0;D=b+8|0;E=J+10|0;F=J+33|0;G=J+46|0;H=J+94|0;z=I+4|0;n=e;v=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(JT(k&255)|0)){o=(a[n>>0]|0)==37;d:do if(o){k=n+1|0;p=a[k>>0]|0;e:do switch(p<<24>>24){case 37:break d;case 42:{x=0;k=n+2|0;break}default:{if(_T(p&255)|0?(a[n+2>>0]|0)==36:0){x=sV(f,(d[k>>0]|0)+-48|0)|0;k=n+3|0;break e}w=(c[f>>2]|0)+(4-1)&~(4-1);x=c[w>>2]|0;c[f>>2]=w+4}}while(0);if(!(_T(d[k>>0]|0)|0)){t=0;p=k}else{n=0;do{n=(n*10|0)+-48+(d[k>>0]|0)|0;k=k+1|0}while((_T(d[k>>0]|0)|0)!=0);t=n;p=k}o=a[p>>0]|0;r=p+1|0;if(o<<24>>24==109){k=(x|0)!=0&1;j=0;n=r;p=p+2|0;o=a[r>>0]|0;i=0}else{k=0;n=p;p=r}switch(o<<24>>24){case 104:{w=(a[p>>0]|0)==104;o=w?-2:-1;n=w?n+2|0:p;break}case 108:{w=(a[p>>0]|0)==108;o=w?3:1;n=w?n+2|0:p;break}case 106:{o=3;n=p;break}case 116:case 122:{o=1;n=p;break}case 76:{o=2;n=p;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:{o=0;break}default:{M=143;break b}}s=d[n>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:o;r=s&255;switch(r<<24>>24){case 99:{t=(t|0)>1?t:1;break}case 91:break;case 110:{tV(x,u,v,((v|0)<0)<<31>>31);o=v;break c}default:{GT(b,0);do{o=c[A>>2]|0;if(o>>>0<(c[B>>2]|0)>>>0){c[A>>2]=o+1;o=d[o>>0]|0}else o=IT(b)|0}while((JT(o)|0)!=0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}v=(c[C>>2]|0)+v+o-(c[D>>2]|0)|0}}GT(b,t);p=c[A>>2]|0;o=c[B>>2]|0;if(p>>>0>>0)c[A>>2]=p+1;else{if((IT(b)|0)<0){M=143;break b}o=c[B>>2]|0}if(o|0)c[A>>2]=(c[A>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){yX(J|0,-1,257)|0;a[J>>0]=0;if((s|0)==115){a[F>>0]=0;a[E>>0]=0;a[E+1>>0]=0;a[E+2>>0]=0;a[E+3>>0]=0;a[E+4>>0]=0}}else{s=n+1|0;r=(a[s>>0]|0)==94;o=r&1;n=r?n+2|0:s;yX(J|0,o|0,257)|0;a[J>>0]=0;switch(a[n>>0]|0){case 45:{r=(o^1)&255;a[G>>0]=r;n=n+1|0;break}case 93:{r=(o^1)&255;a[H>>0]=r;n=n+1|0;break}default:r=(o^1)&255}while(1){o=a[n>>0]|0;h:do switch(o<<24>>24){case 0:{M=143;break b}case 93:break g;case 45:{p=n+1|0;o=a[p>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}n=a[n+-1>>0]|0;if((n&255)<(o&255)){n=n&255;do{n=n+1|0;a[J+n>>0]=r;o=a[p>>0]|0}while(n>>>0<(o&255)>>>0);n=p}else n=p;break}default:{}}while(0);a[J+((o&255)+1)>>0]=r;n=n+1|0}}while(0);o=w?t+1|0:31;s=(u|0)==1;u=(k|0)!=0;i:do if(s){if(u){i=pT(o<<2)|0;if(!i){j=0;i=0;M=143;break b}}else i=x;c[I>>2]=0;c[z>>2]=0;j=0;j:while(1){r=(i|0)==0;do{k:while(1){p=c[A>>2]|0;if(p>>>0<(c[B>>2]|0)>>>0){c[A>>2]=p+1;p=d[p>>0]|0}else p=IT(b)|0;if(!(a[J+(p+1)>>0]|0))break j;a[L>>0]=p;switch(YU(K,L,1,I)|0){case -1:{j=0;M=143;break b}case -2:break;default:break k}}if(!r){c[i+(j<<2)>>2]=c[K>>2];j=j+1|0}}while(!(u&(j|0)==(o|0)));o=o<<1|1;p=sT(i,o<<2)|0;if(!p){j=0;M=143;break b}else i=p}if(!(uV(I)|0)){j=0;M=143;break b}else{r=j;j=0;p=i}}else{if(u){j=pT(o)|0;if(!j){j=0;i=0;M=143;break b}i=0;while(1){r=i;do{i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0;if(!(a[J+(i+1)>>0]|0)){p=0;i=0;break i}p=r;r=r+1|0;a[j+p>>0]=i}while((r|0)!=(o|0));o=o<<1|1;p=sT(j,o)|0;if(!p){i=0;M=143;break b}else{i=r;j=p}}}if(!x)while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=0;j=0;p=0;i=0;break i}}j=0;while(1){i=c[A>>2]|0;if(i>>>0<(c[B>>2]|0)>>>0){c[A>>2]=i+1;i=d[i>>0]|0}else i=IT(b)|0;if(!(a[J+(i+1)>>0]|0)){r=j;j=x;p=0;i=0;break i}a[x+j>>0]=i;j=j+1|0}}while(0);if(!(c[B>>2]|0))o=c[A>>2]|0;else{o=(c[A>>2]|0)+-1|0;c[A>>2]=o}o=o-(c[D>>2]|0)+(c[C>>2]|0)|0;if(!o)break b;if(!((o|0)==(t|0)|w^1))break b;do if(u)if(s){c[x>>2]=p;break}else{c[x>>2]=j;break}while(0);if(!w){if(p|0)c[p+(r<<2)>>2]=0;if(!j){j=0;break f}a[j+r>>0]=0}break}case 120:case 88:case 112:{o=16;M=131;break}case 111:{o=8;M=131;break}case 117:case 100:{o=10;M=131;break}case 105:{o=0;M=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{q=+HU(b,u,0);if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if(x)switch(u|0){case 0:{g[x>>2]=q;break f}case 1:{h[x>>3]=q;break f}case 2:{h[x>>3]=q;break f}default:break f}break}default:{}}while(0);do if((M|0)==131){M=0;o=HT(b,o,0,-1,-1)|0;if((c[C>>2]|0)==((c[D>>2]|0)-(c[A>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){c[x>>2]=o;break}else{tV(x,u,o,y);break}}while(0);e=e+((x|0)!=0&1)|0;o=(c[C>>2]|0)+v+(c[A>>2]|0)-(c[D>>2]|0)|0;break c}while(0);n=n+(o&1)|0;GT(b,0);k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=IT(b)|0;if((k|0)!=(d[n>>0]|0)){M=23;break b}o=v+1|0}else{while(1){k=n+1|0;if(!(JT(d[k>>0]|0)|0))break;else n=k}GT(b,0);do{k=c[A>>2]|0;if(k>>>0<(c[B>>2]|0)>>>0){c[A>>2]=k+1;k=d[k>>0]|0}else k=IT(b)|0}while((JT(k)|0)!=0);if(!(c[B>>2]|0))k=c[A>>2]|0;else{k=(c[A>>2]|0)+-1|0;c[A>>2]=k}o=(c[C>>2]|0)+v+k-(c[D>>2]|0)|0}while(0);n=n+1|0;k=a[n>>0]|0;if(!(k<<24>>24))break a;else v=o}if((M|0)==23){if(c[B>>2]|0)c[A>>2]=(c[A>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{k=0;e=j;M=144}}else if((M|0)==143)if(!e){e=j;M=144}if((M|0)==144){j=e;e=-1}if(k){qT(j);qT(i)}}else e=0;while(0);if(N|0)dU(b);l=O;return e|0}function sV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function tV(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function uV(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function vV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=lU(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;wX(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function wV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=e;c[f>>2]=d;d=aU(a,b,f)|0;l=e;return d|0}function xV(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=SU(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=yV(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=zV(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=AV(b,c)|0;break}else{b=BV(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function yV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c>>0]|0)<<8|(d[c+1>>0]|0);c=b+1|0;e=a[c>>0]|0;a:do if(!(e<<24>>24))c=0;else{e=(d[b>>0]|0)<<8|e&255;while(1){b=e&65535;if((b|0)==(f|0))break;c=c+1|0;e=a[c>>0]|0;if(!(e<<24>>24)){c=0;break a}else e=b<<8|e&255}c=c+-1|0}while(0);return c|0}function zV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-2|0)|0}function AV(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);e=b+3|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((b|0)==(f|0)|c))do{e=e+1|0;c=a[e>>0]|0;b=b<<8|c&255;c=c<<24>>24==0}while(!((b|0)==(f|0)|c));return (c?0:e+-3|0)|0}function BV(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+1056|0;if((l|0)>=(m|0))W(1056);w=y+1024|0;x=y;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;f=a[e>>0]|0;a:do if(f<<24>>24){r=0;do{if(!(a[b+r>>0]|0)){f=0;break a}v=f&255;u=w+(v>>>5<<2)|0;c[u>>2]=c[u>>2]|1<<(v&31);r=r+1|0;c[x+(v<<2)>>2]=r;f=a[e+r>>0]|0}while(f<<24>>24!=0);o=r>>>0>1;if(o){k=1;j=1;n=0;i=-1;p=1;while(1){f=a[e+(j+i)>>0]|0;g=a[e+p>>0]|0;do if(f<<24>>24==g<<24>>24)if((j|0)==(k|0)){h=k;f=1;g=k+n|0;break}else{h=k;f=j+1|0;g=n;break}else if((f&255)>(g&255)){h=p-i|0;f=1;g=p;break}else{h=1;f=1;g=n+1|0;i=n;break}while(0);p=f+g|0;if(p>>>0>=r>>>0)break;else{k=h;j=f;n=g}}if(o){o=1;n=1;p=0;g=-1;q=1;while(1){f=a[e+(n+g)>>0]|0;j=a[e+q>>0]|0;do if(f<<24>>24==j<<24>>24)if((n|0)==(o|0)){f=o;j=1;k=o+p|0;break}else{f=o;j=n+1|0;k=p;break}else if((f&255)<(j&255)){f=q-g|0;j=1;k=q;break}else{f=1;j=1;k=p+1|0;g=p;break}while(0);q=j+k|0;if(q>>>0>=r>>>0){v=r;j=25;break}else{o=f;n=j;p=k}}}else{v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=r;f=1;g=-1;j=25}}else{h=1;i=-1;v=0;f=1;g=-1;j=25}while(0);b:do if((j|0)==25){t=(g+1|0)>>>0>(i+1|0)>>>0;f=t?f:h;t=t?g:i;u=t+1|0;if(!(YT(e,e+f|0,u)|0)){o=v-f|0;s=o;n=f}else{o=v-t+-1|0;o=(t>>>0>o>>>0?t:o)+1|0;s=0;n=o;o=v-o|0}p=v|63;q=v+-1|0;r=(s|0)!=0;f=b;k=0;g=b;while(1){h=f;do if((g-h|0)>>>0>>0){i=lU(g,0,p)|0;if(i)if((i-h|0)>>>0>>0){f=0;break b}else break;else{i=g+p|0;break}}else i=g;while(0);g=d[f+q>>0]|0;c:do if(!(1<<(g&31)&c[w+(g>>>5<<2)>>2])){h=0;g=v}else{g=v-(c[x+(g<<2)>>2]|0)|0;if(g|0){h=0;g=r&(k|0)!=0&g>>>0>>0?o:g;break}j=u>>>0>k>>>0;g=j?u:k;h=a[e+g>>0]|0;d:do if(h<<24>>24){while(1){if(h<<24>>24!=(a[f+g>>0]|0))break;g=g+1|0;h=a[e+g>>0]|0;if(!(h<<24>>24))break d}h=0;g=g-t|0;break c}while(0);if(!j)break b;g=u;while(1){g=g+-1|0;if((a[e+g>>0]|0)!=(a[f+g>>0]|0)){h=s;g=n;break c}if(g>>>0<=k>>>0)break b}}while(0);f=f+g|0;k=h;g=i}}while(0);l=y;return f|0}function CV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;if((l|0)>=(m|0))W(32);f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{i=e&255;h=f+(i>>>5<<2)|0;c[h>>2]=c[h>>2]|1<<(i&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{i=e&255;if(!(c[f+(i>>>5<<2)>>2]&1<<(i&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function DV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(cU(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=iV(d,b)|0;dU(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=iV(d,b)|0}while(0);return e|0}function EV(a,b){a=a|0;b=b|0;return +(+FV(a,b,1))}function FV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;if((l|0)>=(m|0))W(128);h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;GT(h,0);e=+HU(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=(d|0)==0?a:a+d|0;l=i;return +e}function GV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(N(g,d)|0)|0;f=Kd[e&15](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function HV(a){a=a|0;var b=0,d=0;b=l;l=l+32|0;if((l|0)>=(m|0))W(32);d=b;c[d>>2]=a;c[d+4>>2]=21523;c[d+8>>2]=b+16;a=(BT(ib(54,d|0)|0)|0)==0&1;l=b;return a|0}function IV(){Va(186528);return}function JV(){return 186512}function KV(){return 186520}function LV(){return 186524}function MV(){return 186528}function NV(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=pT(b)|0;if(a|0)break;a=dX()|0;if(!a){a=0;break}Pd[a&7]()}return a|0}function OV(a){a=a|0;qT(a);return}function PV(a,b){a=a|0;b=b|0;var d=0,e=0;e=RU(b)|0;d=NV(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=QV(d)|0;wX(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function QV(a){a=a|0;return a+12|0}function RV(a,b){a=a|0;b=b|0;c[a>>2]=108952;PV(a+4|0,b);return}function SV(a){a=a|0;return 1}function TV(a){a=a|0;Tb()}function UV(a){a=a|0;Tb()}function VV(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;if((l|0)>=(m|0))W(16);f=g;if(e>>>0>4294967279)TV(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=NV(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}WV(b,d,e)|0;a[f>>0]=0;XV(b+e|0,f);l=g;return}function WV(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)wX(a|0,b|0,c|0)|0;return a|0}function XV(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function YV(a){a=a|0;return RU(a)|0}function ZV(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)yX(a|0,(_V(c)|0)&255|0,b|0)|0;return a|0}function _V(a){a=a|0;return a&255|0}function $V(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;g=h?c[d+4>>2]|0:g&255;if(g>>>0>>0)UV(b);else{g=g-e|0;VV(b,(h?c[d>>2]|0:d)+e|0,g>>>0>>0?g:f);return}}function aW(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))W(16);p=q;if((-18-d|0)>>>0>>0)TV(b);if((a[b+11>>0]|0)<0)o=c[b>>2]|0;else o=b;if(d>>>0<2147483623){k=e+d|0;n=d<<1;k=k>>>0>>0?n:k;k=k>>>0<11?11:k+16&-16}else k=-17;n=NV(k)|0;if(g|0)WV(n,o,g)|0;if(i|0)WV(n+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)WV(n+g+i|0,o+g+h|0,f)|0;if((d|0)!=10)OV(o);c[b>>2]=n;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[p>>0]=0;XV(n+i|0,p);l=q;return}function bW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;XV(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;XV(b+d|0,g);a[h>>0]=d;break}else cW(b,d-f|0,e)|0;while(0);l=j;return}function cW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0>>0){dW(b,g,h+d-g|0,h,h,0,0);f=a[j>>0]|0}if(f<<24>>24<0)g=c[b>>2]|0;else g=b;ZV(g+h|0,d,e)|0;f=h+d|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;XV(g+f|0,i)}l=k;return b|0}function dW(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0>>0)TV(b);if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=NV(j)|0;if(g|0)WV(k,l,g)|0;e=f-h-g|0;if(e|0)WV(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)OV(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function eW(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;f=e<<24>>24<0;if(f)e=c[b+4>>2]|0;else e=e&255;if(e>>>0<=d>>>0)UV(b);if(f)b=c[b>>2]|0;return b+d|0}function fW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))W(16);i=k;j=b+11|0;f=a[j>>0]|0;h=f<<24>>24<0;if(h){g=(c[b+8>>2]&2147483647)+-1|0;f=c[b+4>>2]|0}else{g=10;f=f&255}if((g-f|0)>>>0>=e>>>0){if(e|0){if(h)g=c[b>>2]|0;else g=b;WV(g+f|0,d,e)|0;f=f+e|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;XV(g+f|0,i)}}else aW(b,g,f+e-g|0,f,f,0,e,d);l=k;return b|0}function gW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=l;l=l+16|0;if((l|0)>=(m|0))W(16);g=h;if(f>>>0>4294967279)TV(b);if(f>>>0<11)a[b+11>>0]=e;else{i=f+16&-16;f=NV(i)|0;c[b>>2]=f;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=f}WV(b,d,e)|0;a[g>>0]=0;XV(b+e|0,g);l=h;return}function hW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[b+(f<<2)>>2]=0;f=f+1|0}h=YV(d)|0;g=e+11|0;f=a[g>>0]|0;f=f<<24>>24<0?c[e+4>>2]|0:f&255;gW(b,d,h,f+h|0);fW(b,(a[g>>0]|0)<0?c[e>>2]|0:e,f)|0;return}function iW(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;a=l;l=l+48|0;if((l|0)>=(m|0))W(48);h=a+32|0;d=a+24|0;i=a+16|0;g=a;e=a+36|0;a=jW()|0;if(a|0?(f=c[a>>2]|0,f|0):0){a=f+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=182472;kW(182422,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[f+44>>2]|0;else a=f+80|0;c[e>>2]=a;f=c[f>>2]|0;a=c[f+4>>2]|0;if(Ld[c[(c[13160]|0)+16>>2]&15](52640,f,e)|0){i=c[e>>2]|0;i=Jd[c[(c[i>>2]|0)+8>>2]&31](i)|0;c[g>>2]=182472;c[g+4>>2]=a;c[g+8>>2]=i;kW(182336,g)}else{c[i>>2]=182472;c[i+4>>2]=a;kW(182381,i)}}kW(182460,h)}function jW(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(Bc(186532,6)|0)){b=wc(c[46634]|0)|0;l=a;return b|0}else kW(182611,a);return 0}function kW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=d;c[e>>2]=b;d=c[27049]|0;aU(d,a,e)|0;DV(10,d)|0;Tb()}function lW(a){a=a|0;return}function mW(a){a=a|0;lW(a);OV(a);return}function nW(a){a=a|0;return}function oW(a){a=a|0;return}function pW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;if((l|0)>=(m|0))W(64);f=h;if(!(tW(a,b,0)|0))if((b|0)!=0?(g=xW(b,52664,52648,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Td[c[(c[g>>2]|0)+28>>2]&255](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function qW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(tW(a,c[b+8>>2]|0,g)|0)wW(0,b,d,e,f);return}function rW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(tW(b,c[d+8>>2]|0,g)|0)){if(tW(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else vW(0,d,e,f);while(0);return}function sW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(tW(a,c[b+8>>2]|0,0)|0)uW(0,b,d,e);return}function tW(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function uW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function vW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function wW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function xW(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;if((l|0)>=(m|0))W(64);p=r;o=c[d>>2]|0;q=d+(c[o+-8>>2]|0)|0;o=c[o+-4>>2]|0;c[p>>2]=f;c[p+4>>2]=d;c[p+8>>2]=e;c[p+12>>2]=g;d=p+16|0;e=p+20|0;g=p+24|0;h=p+28|0;i=p+32|0;j=p+40|0;k=d;n=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(tW(o,f,0)|0){c[p+48>>2]=1;Vd[c[(c[o>>2]|0)+20>>2]&63](o,p,q,q,1,0);d=(c[g>>2]|0)==1?q:0}else{Ud[c[(c[o>>2]|0)+24>>2]&127](o,p,q,1,0);switch(c[p+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=r;return d|0}function yW(a){a=a|0;lW(a);OV(a);return}function zW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(tW(a,c[b+8>>2]|0,g)|0)wW(0,b,d,e,f);else{a=c[a+8>>2]|0;Vd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e,f,g)}return}function AW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if(!(tW(b,c[d+8>>2]|0,g)|0)){if(!(tW(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Ud[c[(c[i>>2]|0)+24>>2]&127](i,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;j=d+53|0;a[j>>0]=0;b=c[b+8>>2]|0;Vd[c[(c[b>>2]|0)+20>>2]&63](b,d,e,e,1,g);if(a[j>>0]|0)if(!(a[f>>0]|0)){f=1;b=11}else b=15;else{f=0;b=11}do if((b|0)==11){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(f){b=15;break}else{f=4;break}}if(f)b=15;else f=4}while(0);if((b|0)==15)f=3;c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else vW(0,d,e,f);while(0);return}function BW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(tW(a,c[b+8>>2]|0,0)|0)uW(0,b,d,e);else{a=c[a+8>>2]|0;Td[c[(c[a>>2]|0)+28>>2]&255](a,b,d,e)}return}function CW(a){a=a|0;return}function DW(){var a=0;a=l;l=l+16|0;if((l|0)>=(m|0))W(16);if(!(yc(186536,33)|0)){l=a;return}else kW(182660,a)}function EW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);qT(a);if(!(Cc(c[46634]|0,0)|0)){l=b;return}else kW(182710,b)}function FW(){var a=0,b=0;a=jW()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)GW(c[b+12>>2]|0);GW(HW()|0)}function GW(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))W(16);Pd[a&7]();kW(182763,b)}function HW(){var a=0;a=c[27215]|0;c[27215]=a+0;return a|0}function IW(a){a=a|0;return}function JW(a){a=a|0;c[a>>2]=108952;NW(a+4|0);return}function KW(a){a=a|0;JW(a);OV(a);return}function LW(a){a=a|0;return MW(a+4|0)|0}function MW(a){a=a|0;return c[a>>2]|0}function NW(a){a=a|0;var b=0,d=0;if(SV(a)|0?(b=OW(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)OV(b);return}function OW(a){a=a|0;return a+-12|0}function PW(a){a=a|0;JW(a);OV(a);return}function QW(a){a=a|0;lW(a);OV(a);return}function RW(a,b,c){a=a|0;b=b|0;c=c|0;return tW(a,b,0)|0}function SW(a){a=a|0;lW(a);OV(a);return}function TW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;if((l|0)>=(m|0))W(64);h=j;c[d>>2]=c[c[d>>2]>>2];if(!(UW(a,b,0)|0))if(((b|0)!=0?(e=xW(b,52664,52752,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(tW(c[a>>2]|0,c[b>>2]|0,0)|0)?!(tW(c[a>>2]|0,52784,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=xW(a,52664,52648,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=xW(f,52664,52648,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Td[c[(c[i>>2]|0)+28>>2]&255](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function UW(a,b,c){a=a|0;b=b|0;c=c|0;if(tW(a,b,0)|0)a=1;else a=tW(b,52792,0)|0;return a|0}function VW(a){a=a|0;lW(a);OV(a);return}function WW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(tW(b,c[d+8>>2]|0,h)|0)wW(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;_W(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;_W(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function XW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(tW(b,c[d+8>>2]|0,g)|0)){if(!(tW(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;$W(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;$W(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;$W(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;$W(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;_W(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else vW(0,d,e,f);while(0);return}function YW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(tW(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;ZW(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{ZW(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else uW(0,d,e,f);while(0);return}function ZW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Td[c[(c[a>>2]|0)+28>>2]&255](a,b,d+f|0,(g&2|0)==0?2:e);return}function _W(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Vd[c[(c[a>>2]|0)+20>>2]&63](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function $W(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ud[c[(c[a>>2]|0)+24>>2]&127](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function aX(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function bX(a){a=a|0;return}function cX(a){a=a|0;return}function dX(){var a=0;a=c[46635]|0;c[46635]=a+0;return a|0}function eX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))W(16);e=f;c[e>>2]=c[d>>2];a=Ld[c[(c[a>>2]|0)+16>>2]&15](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function fX(a){a=a|0;if(!a)a=0;else a=(xW(a,52664,52752,0)|0)!=0&1;return a|0}function gX(){}function hX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (y=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function iX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (y=d,a-c>>>0|0)|0}function jX(a){a=a|0;return (a?31-(Q(a^a-1)|0)|0:32)|0}function kX(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (y=n,f)|0}else{if(!g){n=0;f=0;return (y=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (y=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (y=n,f)|0}g=h-1|0;if(g&h|0){i=(Q(h|0)|0)+33-(Q(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (y=o,p)|0}else{p=jX(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (y=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (y=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (y=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jX(i|0)|0)>>>0);return (y=o,p)|0}g=(Q(i|0)|0)-(Q(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (y=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hX(m|0,l|0,-1,-1)|0;d=y;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;iX(k|0,d|0,e|0,n|0)|0;p=y;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=iX(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=y;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (y=o,p)|0}function lX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=iX(j^a|0,i^b|0,j|0,i|0)|0;g=y;a=f^j;b=e^i;return iX((kX(h,g,iX(f^c|0,e^d|0,f|0,e|0)|0,y,0)|0)^a|0,y^b|0,a|0,b|0)|0}function mX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=N(e,f)|0;d=a>>>16;a=(c>>>16)+(N(e,d)|0)|0;e=b>>>16;b=N(e,f)|0;return (y=(a>>>16)+(N(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function nX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=mX(e,f)|0;a=y;return (y=(N(b,f)|0)+(N(d,e)|0)+a|a&0,c|0|0)|0}function oX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=iX(h^a|0,g^b|0,h|0,g|0)|0;b=y;kX(a,b,iX(k^d|0,j^e|0,k|0,j|0)|0,y,i)|0;e=iX(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=y;l=f;return (y=d,e)|0}function pX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kX(a,b,c,d,0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>c;return a>>>c|(b&(1<>c-32|0}function rX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>>c;return a>>>c|(b&(1<>>c-32|0}function sX(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b<>>32-c;return a<>8&255|0}function uX(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function vX(a){a=+a;return a>=0.0?+z(a+.5):+M(a-.5)}function wX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return bc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function xX(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else wX(b,c,d)|0;return b|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function zX(a){a=a|0;return 0}function AX(a){a=a|0;return 0}function BX(a){a=a|0;return 0}function CX(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){V()|0;cb(12);return -1}c[i>>2]=b;if((b|0)>(U()|0)?(T()|0)==0:0){c[i>>2]=d;cb(12);return -1}return d|0}function DX(a,b){a=a|0;b=+b;return +Gd[a&15](+b)}function EX(a,b,c){a=a|0;b=b|0;c=+c;return +Hd[a&0](b|0,+c)}function FX(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return +Id[a&0](b|0,+c,+d)}function GX(a,b){a=a|0;b=b|0;return Jd[a&31](b|0)|0}function HX(a,b,c){a=a|0;b=b|0;c=c|0;return Kd[a&15](b|0,c|0)|0}function IX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ld[a&15](b|0,c|0,d|0)|0}function JX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Md[a&1](b|0,c|0,d|0,e|0)|0}function KX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Nd[a&63](b|0,c|0,d|0,e|0,f|0)|0}function LX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Od[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function MX(a){a=a|0;Pd[a&7]()}function NX(a,b){a=a|0;b=b|0;Qd[a&63](b|0)}function OX(a,b,c){a=a|0;b=b|0;c=c|0;Rd[a&255](b|0,c|0)}function PX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Sd[a&1023](b|0,c|0,d|0)}function QX(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Td[a&255](b|0,c|0,d|0,e|0)}function RX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ud[a&127](b|0,c|0,d|0,e|0,f|0)}function SX(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Vd[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function TX(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Wd[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function UX(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Xd[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function VX(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Yd[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function WX(a){a=+a;X(0);return 0.0}function XX(a){a=+a;return +Dc(+a)}function YX(a){a=+a;return +Yb(+a)}function ZX(a){a=+a;return +Fc(+a)}function _X(a){a=+a;return +Wb(+a)}function $X(a){a=+a;return +Vb(+a)}function aY(a){a=+a;return +Ub(+a)}function bY(a){a=+a;return +cc(+a)}function cY(a){a=+a;return +pc(+a)}function dY(a){a=+a;return +dc(+a)}function eY(a,b){a=a|0;b=+b;Y(1);return 0.0}function fY(a,b,c){a=a|0;b=+b;c=+c;Z(2);return 0.0}function gY(a){a=a|0;_(3);return 0}function hY(a,b){a=a|0;b=b|0;$(4);return 0}function iY(a,b,c){a=a|0;b=b|0;c=c|0;aa(5);return 0}function jY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(6);return 0}function kY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(7);return 0}function lY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;da(8);return 0}function mY(){ea(9)}function nY(){Za()}function oY(a){a=a|0;fa(10)}function pY(a,b){a=a|0;b=b|0;ga(11)}function qY(a,b,c){a=a|0;b=b|0;c=c|0;ha(12)}function rY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ia(13)}function sY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ja(14)}function tY(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(15)}function uY(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;la(16)}function vY(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ma(17)}function wY(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;na(18)} // EMSCRIPTEN_END_FUNCS -var Id=[b_,QV,PV,lX,c_,d_,e_,f_,g_,h_,i_,j_,k_,SS,b_,b_];var Jd=[l_];var Kd=[m_];var Ld=[n_,$h,_i,aj,cj,jk,gQ,kU,mU,nU,zU,vV,SY,Ne,We,Ye,Ze,Hj,Mj,No,xT,vT,KT,TT,XT,_U,n_,n_,n_,n_,n_,n_];var Md=[o_,$i,WR,lU,yU,Se,Ue,Yg,Yi,sm,YO,$O,oT,o_,o_,o_];var Nd=[p_,jQ,FQ,wV,xV,BV,CW,wY,YY,_Y,af,Af,lj,xX,p_,p_];var Od=[q_,bj];var Pd=[r_,yi,Oo,Po,Qo,Ro,So,To,Uo,Vo,Wo,Xo,Yo,Zo,_o,$o,ap,bp,cp,dp,ep,fp,gp,hp,ip,jp,kp,lp,mp,np,op,pp,qp,rp,sp,tp,up,vp,wp,xp,yp,jU,cV,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_,r_];var Qd=[s_,ai,hQ,DQ,iU,bV,s_,s_];var Rd=[t_,u_,pY,$P,PT,QT,KY,t_];var Sd=[v_,bf,cf,ef,hf,jf,kf,lf,mf,qf,rf,sf,bi,dj,iQ,EQ,sY,tY,uY,vY,FY,QY,RY,WY,XY,ZY,aZ,Oe,ke,le,Xe,$e,$U,LY,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_,v_];var Td=[w_,of,uf,ie,je,Re,me,ne,oe,pe,qe,re,se,te,_e,xj,Aj,Mp,RL,QL,zM,yM,hN,gN,RN,QN,zO,yO,Wq,Vq,Yq,Xq,_q,Zq,$q,ar,br,cr,dr,er,fr,gr,hr,ir,jr,kr,lr,mr,nr,or,pr,ur,tr,vr,wr,xr,yr,zr,Er,Fr,Gr,qs,ps,ss,rs,us,ts,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,Hs,Ms,Ls,Ns,Os,Ps,Qs,Ts,Us,Vs,Ft,Et,Ht,Gt,Jt,It,Kt,Lt,Mt,Nt,Ot,Pt,Qt,Rt,St,Tt,Ut,Vt,Wt,$t,_t,au,bu,cu,du,gu,hu,iu,Uu,Tu,Wu,Vu,Yu,Xu,Zu,_u,$u,av,bv,cv,dv,ev,fv,gv,hv,iv,jv,ov,nv,pv,qv,rv,sv,vv,wv,xv,hw,gw,jw,iw,lw,kw,mw,nw,ow,pw,qw,rw,sw,tw,uw,vw,ww,xw,yw,Dw,Cw,Ew,Fw,Gw,Hw,Kw,Lw,Mw,sr,rr,qr,Dr,Cr,Br,Ar,Ks,Js,Is,Ss,Rs,Zt,Yt,Xt,fu,eu,mv,lv,kv,uv,tv,Bw,Aw,zw,Jw,Iw,sR,fS,eS,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_,w_];var Ud=[x_,nf,pf,tf,Pe,Qe,Te,Ve,DL,CL,FL,EL,GL,HL,IL,JL,PL,oM,pM,qM,rM,xM,YM,ZM,_M,$M,fN,GN,HN,IN,JN,PN,oO,pO,qO,rO,xO,px,ux,zx,Ex,Jx,Ox,Tx,Yx,by,gy,ly,qy,vy,Ay,Fy,Ky,Py,Uy,Zy,cz,hz,mz,rz,wz,Bz,Gz,Lz,Qz,Vz,_z,dA,iA,nA,sA,xA,CA,HA,MA,RA,WA,$A,eB,jB,oB,tB,yB,DB,IB,NB,SB,XB,aC,fC,kC,pC,uC,zC,EC,JC,OC,TC,YC,bD,gD,lD,qD,vD,AD,FD,KD,PD,UD,ZD,cE,hE,mE,rE,wE,BE,GE,LE,QE,VE,_E,dF,iF,nF,sF,xF,CF,HF,MF,RF,WF,$F,eG,jG,oG,tG,yG,DG,IG,NG,SG,XG,aH,fH,kH,pH,uH,zH,EH,ox,tx,yx,Dx,Ix,Nx,Sx,Xx,ay,fy,ky,py,uy,zy,Ey,Jy,Oy,Ty,Yy,bz,gz,lz,qz,vz,Az,Fz,Kz,Pz,Uz,Zz,cA,hA,mA,rA,wA,BA,GA,LA,QA,VA,_A,dB,iB,nB,sB,xB,CB,HB,MB,RB,WB,$B,eC,jC,oC,tC,yC,DC,IC,NC,SC,XC,aD,fD,kD,pD,uD,zD,ED,JD,OD,TD,YD,bE,gE,lE,qE,vE,AE,FE,KE,PE,UE,ZE,cF,hF,mF,rF,wF,BF,GF,LF,QF,VF,_F,dG,iG,nG,sG,xG,CG,HG,MG,RG,WG,$G,eH,jH,oH,tH,yH,DH,nx,sx,xx,Cx,Hx,Mx,Rx,Wx,$x,ey,jy,oy,ty,yy,Dy,Iy,Ny,Sy,Xy,az,fz,kz,pz,uz,zz,Ez,Jz,Oz,Tz,Yz,bA,gA,lA,qA,vA,AA,FA,KA,PA,UA,ZA,cB,hB,mB,rB,wB,BB,GB,LB,QB,VB,_B,dC,iC,nC,sC,xC,CC,HC,MC,RC,WC,$C,eD,jD,oD,tD,yD,DD,ID,ND,SD,XD,aE,fE,kE,pE,uE,zE,EE,JE,OE,TE,YE,bF,gF,lF,qF,vF,AF,FF,KF,PF,UF,ZF,cG,hG,mG,rG,wG,BG,GG,LG,QG,VG,_G,dH,iH,nH,sH,xH,CH,mx,rx,wx,Bx,Gx,Lx,Qx,Vx,_x,dy,iy,ny,sy,xy,Cy,Hy,My,Ry,Wy,$y,ez,jz,oz,tz,yz,Dz,Iz,Nz,Sz,Xz,aA,fA,kA,pA,uA,zA,EA,JA,OA,TA,YA,bB,gB,lB,qB,vB,AB,FB,KB,PB,UB,ZB,cC,hC,mC,rC,wC,BC,GC,LC,QC,VC,_C,dD,iD,nD,sD,xD,CD,HD,MD,RD,WD,$D,eE,jE,oE,tE,yE,DE,IE,NE,SE,XE,aF,fF,kF,pF,uF,zF,EF,JF,OF,TF,YF,bG,gG,lG,qG,vG,AG,FG,KG,PG,UG,ZG,cH,hH,mH,rH,wH,BH,lx,qx,vx,Ax,Fx,Kx,Px,Ux,Zx,cy,hy,my,ry,wy,By,Gy,Ly,Qy,Vy,_y,dz,iz,nz,sz,xz,Cz,Hz,Mz,Rz,Wz,$z,eA,jA,oA,tA,yA,DA,IA,NA,SA,XA,aB,fB,kB,pB,uB,zB,EB,JB,OB,TB,YB,bC,gC,lC,qC,vC,AC,FC,KC,PC,UC,ZC,cD,hD,mD,rD,wD,BD,GD,LD,QD,VD,_D,dE,iE,nE,sE,xE,CE,HE,ME,RE,WE,$E,eF,jF,oF,tF,yF,DF,IF,NF,SF,XF,aG,fG,kG,pG,uG,zG,EG,JG,OG,TG,YG,bH,gH,lH,qH,vH,AH,oq,qq,pq,rq,sq,tq,vq,uq,wq,xq,yq,zq,Aq,kq,mq,Cq,Dq,Eq,Bq,Fq,Gq,Hq,Hr,Ir,Jr,Kr,Tr,Ur,Vr,Wr,Xr,Yr,Zr,_r,$r,as,Rr,Sr,bs,cs,Ws,Xs,Ys,Zs,gt,ht,it,jt,kt,lt,mt,nt,ot,pt,et,ft,qt,rt,ju,ku,lu,mu,vu,wu,xu,yu,zu,Au,Bu,Cu,Du,Eu,tu,uu,Fu,Gu,yv,zv,Av,Bv,Kv,Lv,Mv,Nv,Ov,Pv,Qv,Rv,Sv,Tv,Iv,Jv,Uv,Vv,Nw,Ow,Pw,Qw,lq,nq,Iq,hq,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_,x_];var Vd=[y_,zY,IY,dZ,ii,bM,cM,dM,jM,lM,kM,nM,mM,LM,MM,NM,TM,VM,UM,XM,WM,tN,uN,vN,BN,DN,CN,FN,EN,bO,cO,dO,jO,lO,kO,nO,mO,LO,MO,NO,TO,VO,UO,XO,WO,Jq,Kq,Lq,Mq,Nq,Oq,Pq,Qq,Rq,Sq,Tq,Uq,Or,Nr,Qr,Pr,ds,es,fs,gs,hs,is,js,ks,ls,ms,ns,os,bt,at,dt,ct,st,tt,ut,vt,wt,xt,yt,zt,At,Bt,Ct,Dt,qu,pu,su,ru,Hu,Iu,Ju,Ku,Lu,Mu,Nu,Ou,Pu,Qu,Ru,Su,Fv,Ev,Hv,Gv,Wv,Xv,Yv,Zv,_v,$v,aw,bw,cw,dw,ew,fw,Uw,Tw,Ww,Vw,$w,ex,_w,dx,Zw,cx,Yw,bx,Xw,ax,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_,y_];var Wd=[z_,yY,HY,cZ,KL,LL,NL,ML,OL,_L,$L,aM,eM,gM,fM,iM,hM,sM,tM,vM,uM,wM,IM,JM,KM,OM,QM,PM,SM,RM,aN,bN,dN,cN,eN,qN,rN,sN,wN,yN,xN,AN,zN,KN,LN,NN,MN,ON,_N,$N,aO,eO,gO,fO,iO,hO,sO,tO,vO,uO,wO,IO,JO,KO,OO,QO,PO,SO,RO,Lr,Mr,_s,$s,nu,ou,Cv,Dv,Rw,Sw,aV,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_,z_];var Xd=[A_,xY,GY,bZ,bk,SL,TL,UL,VL,AM,BM,CM,DM,iN,jN,kN,lN,SN,TN,UN,VN,AO,BO,CO,DO,nL,mL,pL,oL,rL,qL,tL,sL,vL,uL,xL,wL,zL,yL,BL,AL,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_,A_];var Yd=[B_,WL,XL,YL,ZL,EM,FM,GM,HM,mN,nN,oN,pN,WN,XN,YN,ZN,EO,FO,GO,HO,B_,B_,B_,B_,B_,B_,B_,B_,B_,B_,B_];var Zd=[C_,gq];var _d=[D_,jq,iq,D_];return{__GLOBAL__sub_I_H5LiveClient_cpp:Bf,__GLOBAL__sub_I_bind_cpp:kV,___cxa_can_catch:lZ,___cxa_is_pointer_type:mZ,___divdi3:sZ,___emscripten_environ_constructor:PX,___errno_location:zV,___getTypeName:mV,___muldi3:uZ,___remdi3:vZ,___udivdi3:wZ,__get_daylight:RX,__get_environ:TX,__get_timezone:SX,__get_tzname:QX,_bitshift64Ashr:xZ,_bitshift64Lshr:yZ,_bitshift64Shl:zZ,_fflush:tX,_free:oV,_i64Add:oZ,_i64Subtract:pZ,_llvm_bswap_i16:AZ,_llvm_bswap_i32:BZ,_llvm_round_f64:CZ,_main:ge,_malloc:nV,_memalign:sV,_memcpy:DZ,_memmove:EZ,_memset:FZ,_pthread_cond_broadcast:GZ,_pthread_mutex_lock:HZ,_pthread_mutex_unlock:IZ,_sbrk:JZ,_strlen:YW,dynCall_dd:KZ,dynCall_did:LZ,dynCall_didd:MZ,dynCall_ii:NZ,dynCall_iii:OZ,dynCall_iiii:PZ,dynCall_iiiii:QZ,dynCall_iiiiii:RZ,dynCall_iiiiiii:SZ,dynCall_v:TZ,dynCall_vi:UZ,dynCall_vii:VZ,dynCall_viii:WZ,dynCall_viiii:XZ,dynCall_viiiii:YZ,dynCall_viiiiii:ZZ,dynCall_viiiiiiii:_Z,dynCall_viiiiiiiii:$Z,dynCall_viiiiiiiiii:a_,establishStackSpace:ce,getTempRet0:fe,runPostSets:nZ,setTempRet0:ee,setThrew:de,stackAlloc:$d,stackRestore:be,stackSave:ae}}) +var Gd=[WX,TT,ST,eV,XX,YX,ZX,_X,$X,aY,bY,cY,dY,UQ,WX,WX];var Hd=[eY];var Id=[fY];var Jd=[gY,bg,ah,ch,eh,li,iO,mS,oS,pS,BS,yT,LW,Se,$e,bf,cf,Jh,Oh,Nm,zR,xR,MR,VR,ZR,aT,gY,gY,gY,gY,gY,gY];var Kd=[hY,bh,YP,nS,AS,Xe,Ze,_g,uk,_M,bN,qR,hY,hY,hY,hY];var Ld=[iY,lO,HO,zT,AT,ET,DU,pW,RW,TW,ff,Bf,nh,qV,iY,iY];var Md=[jY,dh];var Nd=[kY,Ag,Om,Pm,Qm,Rm,Sm,Tm,Um,Vm,Wm,Xm,Ym,Zm,_m,$m,an,bn,cn,dn,en,fn,gn,hn,jn,kn,ln,mn,nn,on,pn,qn,rn,sn,tn,un,vn,wn,xn,yn,zn,lS,eT,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY,kY];var Od=[lY,cg,jO,FO,kS,dT,lY,lY];var Pd=[mY,nY,iW,bO,RR,SR,DW,mY];var Qd=[oY,gf,hf,kf,mf,nf,of,pf,qf,uf,vf,wf,dg,fh,kO,GO,lW,mW,nW,oW,yW,JW,KW,PW,QW,SW,VW,Te,ie,je,af,ef,bT,EW,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY,oY];var Rd=[pY,sf,yf,ge,he,We,ke,le,me,ne,oe,pe,qe,re,df,zh,Ch,Nn,TJ,SJ,BK,AK,jL,iL,TL,SL,BM,AM,Yo,Xo,_o,Zo,ap,$o,bp,cp,dp,ep,fp,gp,hp,ip,jp,kp,lp,mp,np,op,pp,qp,rp,wp,vp,xp,yp,zp,Ap,Bp,Gp,Hp,Ip,sq,rq,uq,tq,wq,vq,xq,yq,zq,Aq,Bq,Cq,Dq,Eq,Fq,Gq,Hq,Iq,Jq,Oq,Nq,Pq,Qq,Rq,Sq,Vq,Wq,Xq,Hr,Gr,Jr,Ir,Lr,Kr,Mr,Nr,Or,Pr,Qr,Rr,Sr,Tr,Ur,Vr,Wr,Xr,Yr,bs,as,cs,ds,es,fs,is,js,ks,Ws,Vs,Ys,Xs,_s,Zs,$s,at,bt,ct,dt,et,ft,gt,ht,it,jt,kt,lt,qt,pt,rt,st,tt,ut,xt,yt,zt,ju,iu,lu,ku,nu,mu,ou,pu,qu,ru,su,tu,uu,vu,wu,xu,yu,zu,Au,Fu,Eu,Gu,Hu,Iu,Ju,Mu,Nu,Ou,up,tp,sp,Fp,Ep,Dp,Cp,Mq,Lq,Kq,Uq,Tq,$r,_r,Zr,hs,gs,ot,nt,mt,wt,vt,Du,Cu,Bu,Lu,Ku,uP,hQ,gQ,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY,pY];var Sd=[qY,rf,tf,xf,Ue,Ve,Ye,_e,FJ,EJ,HJ,GJ,IJ,JJ,KJ,LJ,RJ,qK,rK,sK,tK,zK,_K,$K,aL,bL,hL,IL,JL,KL,LL,RL,qM,rM,sM,tM,zM,rv,wv,Bv,Gv,Lv,Qv,Vv,_v,dw,iw,nw,sw,xw,Cw,Hw,Mw,Rw,Ww,$w,ex,jx,ox,tx,yx,Dx,Ix,Nx,Sx,Xx,ay,fy,ky,py,uy,zy,Ey,Jy,Oy,Ty,Yy,bz,gz,lz,qz,vz,Az,Fz,Kz,Pz,Uz,Zz,cA,hA,mA,rA,wA,BA,GA,LA,QA,VA,_A,dB,iB,nB,sB,xB,CB,HB,MB,RB,WB,$B,eC,jC,oC,tC,yC,DC,IC,NC,SC,XC,aD,fD,kD,pD,uD,zD,ED,JD,OD,TD,YD,bE,gE,lE,qE,vE,AE,FE,KE,PE,UE,ZE,cF,hF,mF,rF,wF,BF,GF,qv,vv,Av,Fv,Kv,Pv,Uv,Zv,cw,hw,mw,rw,ww,Bw,Gw,Lw,Qw,Vw,_w,dx,ix,nx,sx,xx,Cx,Hx,Mx,Rx,Wx,$x,ey,jy,oy,ty,yy,Dy,Iy,Ny,Sy,Xy,az,fz,kz,pz,uz,zz,Ez,Jz,Oz,Tz,Yz,bA,gA,lA,qA,vA,AA,FA,KA,PA,UA,ZA,cB,hB,mB,rB,wB,BB,GB,LB,QB,VB,_B,dC,iC,nC,sC,xC,CC,HC,MC,RC,WC,$C,eD,jD,oD,tD,yD,DD,ID,ND,SD,XD,aE,fE,kE,pE,uE,zE,EE,JE,OE,TE,YE,bF,gF,lF,qF,vF,AF,FF,pv,uv,zv,Ev,Jv,Ov,Tv,Yv,bw,gw,lw,qw,vw,Aw,Fw,Kw,Pw,Uw,Zw,cx,hx,mx,rx,wx,Bx,Gx,Lx,Qx,Vx,_x,dy,iy,ny,sy,xy,Cy,Hy,My,Ry,Wy,$y,ez,jz,oz,tz,yz,Dz,Iz,Nz,Sz,Xz,aA,fA,kA,pA,uA,zA,EA,JA,OA,TA,YA,bB,gB,lB,qB,vB,AB,FB,KB,PB,UB,ZB,cC,hC,mC,rC,wC,BC,GC,LC,QC,VC,_C,dD,iD,nD,sD,xD,CD,HD,MD,RD,WD,$D,eE,jE,oE,tE,yE,DE,IE,NE,SE,XE,aF,fF,kF,pF,uF,zF,EF,ov,tv,yv,Dv,Iv,Nv,Sv,Xv,aw,fw,kw,pw,uw,zw,Ew,Jw,Ow,Tw,Yw,bx,gx,lx,qx,vx,Ax,Fx,Kx,Px,Ux,Zx,cy,hy,my,ry,wy,By,Gy,Ly,Qy,Vy,_y,dz,iz,nz,sz,xz,Cz,Hz,Mz,Rz,Wz,$z,eA,jA,oA,tA,yA,DA,IA,NA,SA,XA,aB,fB,kB,pB,uB,zB,EB,JB,OB,TB,YB,bC,gC,lC,qC,vC,AC,FC,KC,PC,UC,ZC,cD,hD,mD,rD,wD,BD,GD,LD,QD,VD,_D,dE,iE,nE,sE,xE,CE,HE,ME,RE,WE,$E,eF,jF,oF,tF,yF,DF,nv,sv,xv,Cv,Hv,Mv,Rv,Wv,$v,ew,jw,ow,tw,yw,Dw,Iw,Nw,Sw,Xw,ax,fx,kx,px,ux,zx,Ex,Jx,Ox,Tx,Yx,by,gy,ly,qy,vy,Ay,Fy,Ky,Py,Uy,Zy,cz,hz,mz,rz,wz,Bz,Gz,Lz,Qz,Vz,_z,dA,iA,nA,sA,xA,CA,HA,MA,RA,WA,$A,eB,jB,oB,tB,yB,DB,IB,NB,SB,XB,aC,fC,kC,pC,uC,zC,EC,JC,OC,TC,YC,bD,gD,lD,qD,vD,AD,FD,KD,PD,UD,ZD,cE,hE,mE,rE,wE,BE,GE,LE,QE,VE,_E,dF,iF,nF,sF,xF,CF,qo,so,ro,to,uo,vo,xo,wo,yo,zo,Ao,Bo,Co,mo,oo,Eo,Fo,Go,Do,Ho,Io,Jo,Jp,Kp,Lp,Mp,Vp,Wp,Xp,Yp,Zp,_p,$p,aq,bq,cq,Tp,Up,dq,eq,Yq,Zq,_q,$q,ir,jr,kr,lr,mr,nr,or,pr,qr,rr,gr,hr,sr,tr,ls,ms,ns,os,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,vs,ws,Hs,Is,At,Bt,Ct,Dt,Mt,Nt,Ot,Pt,Qt,Rt,St,Tt,Ut,Vt,Kt,Lt,Wt,Xt,Pu,Qu,Ru,Su,no,po,Ko,jo,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY];var Td=[rY,sW,BW,YW,Pf,Of,kg,dK,eK,fK,lK,nK,mK,pK,oK,NK,OK,PK,VK,XK,WK,ZK,YK,vL,wL,xL,DL,FL,EL,HL,GL,dM,eM,fM,lM,nM,mM,pM,oM,NM,OM,PM,VM,XM,WM,ZM,YM,Lo,Mo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,Wo,Qp,Pp,Sp,Rp,fq,gq,hq,iq,jq,kq,lq,mq,nq,oq,pq,qq,dr,cr,fr,er,ur,vr,wr,xr,yr,zr,Ar,Br,Cr,Dr,Er,Fr,ss,rs,us,ts,Js,Ks,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Ht,Gt,Jt,It,Yt,Zt,_t,$t,au,bu,cu,du,eu,fu,gu,hu,Wu,Vu,Yu,Xu,bv,gv,av,fv,$u,ev,_u,dv,Zu,cv,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY,rY];var Ud=[sY,rW,AW,XW,MJ,NJ,PJ,OJ,QJ,aK,bK,cK,gK,iK,hK,kK,jK,uK,vK,xK,wK,yK,KK,LK,MK,QK,SK,RK,UK,TK,cL,dL,fL,eL,gL,sL,tL,uL,yL,AL,zL,CL,BL,ML,NL,PL,OL,QL,aM,bM,cM,gM,iM,hM,kM,jM,uM,vM,xM,wM,yM,KM,LM,MM,QM,SM,RM,UM,TM,Np,Op,ar,br,ps,qs,Et,Ft,Tu,Uu,cT,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY,sY];var Vd=[tY,qW,zW,WW,di,UJ,VJ,WJ,XJ,CK,DK,EK,FK,kL,lL,mL,nL,UL,VL,WL,XL,CM,DM,EM,FM,pJ,oJ,rJ,qJ,tJ,sJ,vJ,uJ,xJ,wJ,zJ,yJ,BJ,AJ,DJ,CJ,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY,tY];var Wd=[uY,YJ,ZJ,_J,$J,GK,HK,IK,JK,oL,pL,qL,rL,YL,ZL,_L,$L,GM,HM,IM,JM,uY,uY,uY,uY,uY,uY,uY,uY,uY,uY,uY];var Xd=[vY,io];var Yd=[wY,lo,ko,wY];return{__GLOBAL__sub_I_H5LiveClient_cpp:Cf,__GLOBAL__sub_I_bind_cpp:mT,___cxa_can_catch:eX,___cxa_is_pointer_type:fX,___divdi3:lX,___emscripten_environ_constructor:IV,___errno_location:CT,___getTypeName:oT,___muldi3:nX,___remdi3:oX,___udivdi3:pX,__get_daylight:KV,__get_environ:MV,__get_timezone:LV,__get_tzname:JV,_bitshift64Ashr:qX,_bitshift64Lshr:rX,_bitshift64Shl:sX,_fflush:mV,_free:qT,_i64Add:hX,_i64Subtract:iX,_llvm_bswap_i16:tX,_llvm_bswap_i32:uX,_llvm_round_f64:vX,_main:ee,_malloc:pT,_memalign:vT,_memcpy:wX,_memmove:xX,_memset:yX,_pthread_cond_broadcast:zX,_pthread_mutex_lock:AX,_pthread_mutex_unlock:BX,_sbrk:CX,_strlen:RU,dynCall_dd:DX,dynCall_did:EX,dynCall_didd:FX,dynCall_ii:GX,dynCall_iii:HX,dynCall_iiii:IX,dynCall_iiiii:JX,dynCall_iiiiii:KX,dynCall_iiiiiii:LX,dynCall_v:MX,dynCall_vi:NX,dynCall_vii:OX,dynCall_viii:PX,dynCall_viiii:QX,dynCall_viiiii:RX,dynCall_viiiiii:SX,dynCall_viiiiiiii:TX,dynCall_viiiiiiiii:UX,dynCall_viiiiiiiiii:VX,establishStackSpace:ae,getTempRet0:de,runPostSets:gX,setTempRet0:ce,setThrew:be,stackAlloc:Zd,stackRestore:$d,stackSave:_d}}) // EMSCRIPTEN_END_ASM diff --git a/public/index.html b/public/index.html index 3ee523bd..94371800 100644 --- a/public/index.html +++ b/public/index.html @@ -3,7 +3,7 @@ - FlvClient 1.0 + H5LiveClient 1.0 @@ -17,9 +17,33 @@ onerror = handleErr; var txt = ""; var h5lc = null; + var canvas = document.getElementById("canvas"); + disabledMouseWheel(canvas) function test() { - h5lc.play("ws://localhost:8080/live/user1", document.getElementById("canvas")) + // h5lc.play("ws://localhost:8080/live/user1", document.getElementById("canvas")) + h5lc.play("ws://test.qihaipi.com/gnddragon/h2642.flv", canvas) + } + + function disabledMouseWheel(ele) { + if (ele.addEventListener) { + ele.addEventListener('DOMMouseScroll', scrollFunc, false); + } //W3C + ele.onmousewheel = scrollFunc; //IE/Opera/Chrome + } + + function scrollFunc(evt) { + evt = evt || window.event; + if (evt.preventDefault) { + // Firefox + evt.preventDefault(); + evt.stopPropagation(); + } else { + // IE + evt.cancelBubble = true; + evt.returnValue = false; + } + return false; } function handleErr(msg, url, l) { @@ -31,7 +55,6 @@ return true; } var Module = { - noWebGL: false, print: (function() { return function(text) { if (arguments.length > 1) text = Array.prototype.slice.call(arguments).join(' '); @@ -55,7 +78,7 @@ }, postRun: function() { h5lc = new H5LiveClient(); - h5lc.videoBuffer = 0; + h5lc.videoBuffer = 1; } };